summaryrefslogtreecommitdiff
path: root/platforms/android/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'platforms/android/build.gradle')
-rw-r--r--platforms/android/build.gradle94
1 files changed, 94 insertions, 0 deletions
diff --git a/platforms/android/build.gradle b/platforms/android/build.gradle
new file mode 100644
index 0000000..9d1d45a
--- /dev/null
+++ b/platforms/android/build.gradle
@@ -0,0 +1,94 @@
+import java.util.regex.Pattern
+
+apply plugin: 'android'
+
+buildscript {
+ repositories {
+ mavenCentral()
+ }
+
+ dependencies {
+ classpath 'com.android.tools.build:gradle:0.10.+'
+ }
+}
+
+ext.multiarch=false
+
+dependencies {
+ compile fileTree(dir: 'libs', include: '*.jar')
+ for (subproject in getProjectList()) {
+ compile project(subproject)
+ }
+}
+
+android {
+ sourceSets {
+ main {
+ manifest.srcFile 'AndroidManifest.xml'
+ java.srcDirs = ['src']
+ resources.srcDirs = ['src']
+ aidl.srcDirs = ['src']
+ renderscript.srcDirs = ['src']
+ res.srcDirs = ['res']
+ assets.srcDirs = ['assets']
+ }
+ }
+
+ defaultConfig {
+ versionCode Integer.parseInt("" + getVersionCodeFromManifest() + "0")
+ }
+
+ compileSdkVersion 19
+ buildToolsVersion "19.0.0"
+
+ if (multiarch || System.env.BUILD_MULTIPLE_APKS) {
+ productFlavors {
+ armv7 {
+ versionCode defaultConfig.versionCode + 2
+ ndk {
+ abiFilters "armeabi-v7a", ""
+ }
+ }
+ x86 {
+ versionCode defaultConfig.versionCode + 4
+ ndk {
+ abiFilters "x86", ""
+ }
+ }
+ all {
+ ndk {
+ abiFilters "all", ""
+ }
+ }
+ }
+ }
+
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_7
+ targetCompatibility JavaVersion.VERSION_1_7
+ }
+
+}
+
+task wrapper(type: Wrapper) {
+ gradleVersion = '1.12'
+}
+
+def getVersionCodeFromManifest() {
+ def manifestFile = file(android.sourceSets.main.manifest.srcFile)
+ def pattern = Pattern.compile("versionCode=\"(\\d+)\"")
+ def matcher = pattern.matcher(manifestFile.getText())
+ matcher.find()
+ return Integer.parseInt(matcher.group(1))
+}
+
+def getProjectList() {
+ def manifestFile = file("project.properties")
+ def pattern = Pattern.compile("android.library.reference.(\\d+)\\s*=\\s*(.*)")
+ def matcher = pattern.matcher(manifestFile.getText())
+ def projects = []
+ while (matcher.find()) {
+ projects.add(":" + matcher.group(2).replace("/",":"))
+ }
+ return projects
+}