plugins { id 'com.gladed.androidgitversion' version '0.3.4' } apply plugin: 'com.android.application' androidGitVersion { codeFormat = "MNPPBBBB" format = "%tag%%-count%%-branch%%-dirty%" prefix = "v" // Only tags beginning with v are considered. } android { signingConfigs { debug { storeFile file("debug.keystore") } optimized { storeFile file("debug.keystore") } // Set these in a system global (or project local, but not checked in) gradle.properties . if (project.hasProperty("RELEASE_STORE_FILE")) { release { storeFile file(RELEASE_STORE_FILE) storePassword RELEASE_STORE_PASSWORD keyAlias RELEASE_KEY_ALIAS keyPassword RELEASE_KEY_PASSWORD } } else { release { // Can't build release builds without a key store. println 'This build type should only be invoked from CI. Use Optimized builds instead.' } } } compileSdkVersion 25 buildToolsVersion '25.0.0' defaultConfig { applicationId 'org.ppsspp.ppsspp' if (androidGitVersion.name() != "unknown" && androidGitVersion.code() >= 14000000) { // Start using automatic Android version numbers from version 1.4. println "Overriding Android Version Name, Code: " + androidGitVersion.name() + " " + androidGitVersion.code(); versionName androidGitVersion.name() versionCode androidGitVersion.code() } else { println "(not using these:) Android Version Name, Code: " + androidGitVersion.name() + " " + androidGitVersion.code(); } new File("versionname.txt").write(androidGitVersion.name()) new File("versioncode.txt").write(androidGitVersion.code().toString()) minSdkVersion 9 targetSdkVersion 25 if (project.hasProperty("ANDROID_VERSION_CODE") && project.hasProperty("ANDROID_VERSION_NAME")) { versionCode ANDROID_VERSION_CODE versionName ANDROID_VERSION_NAME } ndk { abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' } signingConfig signingConfigs.debug } buildTypes { debug { minifyEnabled = false jniDebuggable true signingConfig signingConfigs.debug } optimized { // Debug signed but optimized. minifyEnabled = false signingConfig android.buildTypes.debug.signingConfig } release { minifyEnabled = false signingConfig signingConfigs.release } } externalNativeBuild { cmake { path '../CMakeLists.txt' } } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' res.srcDirs = ['res'] java.srcDirs = ['src'] aidl.srcDirs = ['src'] resources.srcDirs = ['src'] assets.srcDirs = [ '../assets', ] jni.srcDirs = ['..'] } gold { res.srcDirs = ['gold/res'] } } productFlavors { normal { applicationId 'org.ppsspp.ppsspp' externalNativeBuild { cmake { // Available arguments listed at https://developer.android.com/ndk/guides/cmake.html arguments '-DANDROID=true', '-DANDROID_PLATFORM=android-15', '-DANDROID_TOOLCHAIN=clang', '-DANDROID_CPP_FEATURES=', '-DANDROID_STL=gnustl_static', '-DANDROID_ARM_NEON=TRUE' } } } gold { applicationId 'org.ppsspp.ppssppgold' externalNativeBuild { cmake { // Available arguments listed at https://developer.android.com/ndk/guides/cmake.html arguments '-DANDROID=true', '-DANDROID_PLATFORM=android-15', '-DANDROID_TOOLCHAIN=clang', '-DANDROID_CPP_FEATURES=', '-DANDROID_STL=gnustl_static', '-DANDROID_ARM_NEON=TRUE', '-DGOLD=TRUE' } } } } } afterEvaluate { android.sourceSets.main.assets.getSrcDirs().each { println it } } dependencies { compile project(':com.bda.controller') }