apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android {
    signingConfigs {
        config {
            keyAlias = 'key0'
            keyPassword = '123456'
            storeFile = file('../scolsignkey.jks')
            storePassword = '123456'
        }
    }
    compileOptions {
        encoding = "ISO-8859-1"
        sourceCompatibility = JavaVersion.VERSION_11
        targetCompatibility = JavaVersion.VERSION_11
    }
    buildFeatures {
        buildConfig = true
    }
    compileSdk = 35
    defaultConfig {
        applicationId = "org.imaginer.scol"
        minSdkVersion 24
        targetSdkVersion 35
        versionCode = 1
        versionName = "1.0"
        //testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

        externalNativeBuild {
            cmake {
                arguments "-DANDROID_STL=c++_static",
                        "-DANDROID_STL_FORCE_FEATURES=ON",
                        "-DANDROID_ARM_NEON=ON",
                        "-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=BOTH",
                        "-DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH",
                        "-DCMAKE_FIND_ROOT_PATH_MODE_PACKAGE=BOTH"
            }
        }
    }
    buildTypes {
        release {
            minifyEnabled = true
            shrinkResources = true
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            signingConfig = signingConfigs.config
            ndk {
                debugSymbolLevel = 'SYMBOL_TABLE'
            }
        }
        debug {
            signingConfig = signingConfigs.config
            packagingOptions {
                doNotStrip "**/*/*.so"
            }
            jniDebuggable = true
        }
        RelWithDebInfo {
            debuggable = true
            jniDebuggable = true
            renderscriptOptimLevel = 3
            renderscriptDebuggable = false
            signingConfig = signingConfigs.config
        }
    }
    externalNativeBuild {
        cmake {
            path = file('../../CMakeLists.txt')
        }
    }
    /*aaptOptions {
        noCompress '.json', '.txt', '.aif', '.cda', '.mpa', '.wpl', '.csv', '.db', '.log', '.sql', '.xml', '.bmp', '.svg', '.tif', '.tiff', '.avi', '.flv', '.h264', '.mov', '.pdf', '.odt', '.doc', '.docx'
    }*/
    sourceSets {
        main.java.srcDirs 'src/main/../../../../vm/kernel5/java/src'
    }

    ndkVersion = '21.1.6352462'
    namespace = 'org.imaginer.scol'
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'androidx.appcompat:appcompat:1.7.0'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'
    testImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.test.ext:junit:1.2.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.6.1'

    implementation "androidx.camera:camera-camera2:1.2.3"
    implementation "androidx.camera:camera-lifecycle:1.2.3"
    implementation "androidx.camera:camera-view:1.2.3"

    // Add Kotlin standard library dependencies, needed for cameraX
    implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}