import org.apache.tools.ant.taskdefs.condition.Os plugins { id 'com.android.library' id 'org.jetbrains.kotlin.android' } android { namespace 'org.oxycblt.ktaglib' compileSdk 34 ndkVersion "26.3.11579264" defaultConfig { minSdk 24 testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" consumerProguardFiles "consumer-rules.pro" externalNativeBuild { cmake { cppFlags "" } } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } externalNativeBuild { cmake { path "src/main/cpp/CMakeLists.txt" version "3.22.1" } } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } kotlinOptions { jvmTarget = '11' } } task assembleTaglib(type: Exec) { def jniDir = "$projectDir/src/main/cpp" def libs = new File("$jniDir/taglib/pkg") if (libs.exists()) { commandLine "true" return } commandLine "sh", "-c", "$jniDir/build_taglib.sh $android.ndkDirectory" } afterEvaluate { preDebugBuild.dependsOn assembleTaglib preReleaseBuild.dependsOn assembleTaglib } clean { delete "$projectDir/src/main/cpp/taglib/pkg" }