1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- apply plugin: 'com.android.library'
- apply plugin: 'kotlin-android'
- dependencies {
- implementation libraries.supportCoreUtils
- implementation libraries.kotlinStdLib
- implementation libraries.v4Support
- }
- def pathToRootDir = "../../../../"
- android {
- compileSdkVersion versions.compileSdk
- buildToolsVersion versions.buildTools
- defaultConfig {
- minSdkVersion versions.minSdk
- targetSdkVersion versions.targetSdk
- }
- compileOptions {
- sourceCompatibility versions.javaVersion
- targetCompatibility versions.javaVersion
- }
- lintOptions {
- abortOnError false
- disable 'MissingTranslation', 'UnusedResources'
- }
- packagingOptions {
- exclude 'META-INF/LICENSE'
- exclude 'META-INF/NOTICE'
- // Should be uncommented for development purpose within Android Studio
- // doNotStrip '**/*.so'
- }
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- res.srcDirs = ['res']
- aidl.srcDirs = ['aidl']
- assets.srcDirs = ['assets']
- }
- debug.jniLibs.srcDirs = ['libs/debug']
- release.jniLibs.srcDirs = ['libs/release']
- }
- libraryVariants.all { variant ->
- variant.outputs.all { output ->
- output.outputFileName = "godot-lib.${variant.name}.aar"
- }
- def buildType = variant.buildType.name.capitalize()
- def releaseTarget = buildType.toLowerCase()
- if (releaseTarget == null || releaseTarget == "") {
- throw new GradleException("Invalid build type: " + buildType)
- }
- if (!supportedAbis.contains(defaultAbi)) {
- throw new GradleException("Invalid default abi: " + defaultAbi)
- }
- // Creating gradle task to generate the native libraries for the default abi.
- def taskName = getSconsTaskName(buildType)
- tasks.create(name: taskName, type: Exec) {
- executable "scons" + sconsExt
- args "--directory=${pathToRootDir}", "platform=android", "target=${releaseTarget}", "android_arch=${defaultAbi}", "-j" + Runtime.runtime.availableProcessors()
- }
- // Schedule the tasks so the generated libs are present before the aar file is packaged.
- tasks["merge${buildType}JniLibFolders"].dependsOn taskName
- }
- }
|