buildscript { repositories { google() jcenter() } dependencies { classpath "com.android.tools.build:gradle:3.4.1" } } allprojects { repositories { google() jcenter() } } apply plugin: 'com.android.application' android { compileSdkVersion 28 buildToolsVersion "28.0.3" flavorDimensions "variant" defaultConfig { minSdkVersion 16 externalNativeBuild { ndkBuild { arguments "-j${Runtime.runtime.availableProcessors()}" } } targetSdkVersion 28 } productFlavors { normal { dimension "variant" } aarch64 { applicationIdSuffix '.aarch64' resValue "string", "app_name", "RetroArch (AArch64)" dimension "variant" ndk { abiFilters 'arm64-v8a', 'x86_64' } } ra32 { applicationIdSuffix '.ra32' resValue "string", "app_name", "RetroArch (32-bit)" dimension "variant" ndk { abiFilters 'armeabi-v7a', 'x86' } } } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' assets.srcDirs = ['assets'] java.srcDirs = ['src', '../phoenix-common/src'] jniLibs.srcDir '../phoenix-common/libs' jni.srcDirs = [] res.srcDirs = ['../phoenix-common/res'] } aarch64 { res.srcDirs = ['res64'] } } externalNativeBuild { ndkBuild { path '../phoenix-common/jni/Android.mk' } } signingConfigs { if (project.hasProperty("RELEASE_STORE_FILE")) { release { storeFile file(RELEASE_STORE_FILE) storePassword RELEASE_STORE_PASSWORD keyAlias RELEASE_KEY_ALIAS keyPassword RELEASE_KEY_PASSWORD } } } buildTypes { if (project.hasProperty("RELEASE_STORE_FILE")) { release { signingConfig signingConfigs.release } } else { release { signingConfig signingConfigs.debug } } } }