summaryrefslogtreecommitdiff
path: root/Source/Android
diff options
context:
space:
mode:
authorRyan Houdek <Sonicadvance1@gmail.com>2013-12-24 15:28:24 -0600
committerRyan Houdek <Sonicadvance1@gmail.com>2013-12-24 15:28:24 -0600
commit2ed24d5311349c4627dfffcab5b13f37d2323695 (patch)
treeb1147967f51ca96c9fe8b5dbbe5338832b0e751d /Source/Android
parenta87e0e7489b995741657825289ab0f35817fcf91 (diff)
[Android] Fix the gradle build system to allow for building from terminal. It will now copy the library files correctly and sign the resulting apk.
Diffstat (limited to 'Source/Android')
-rw-r--r--Source/Android/build.gradle85
1 files changed, 55 insertions, 30 deletions
diff --git a/Source/Android/build.gradle b/Source/Android/build.gradle
index 4307c65824..a262d6043c 100644
--- a/Source/Android/build.gradle
+++ b/Source/Android/build.gradle
@@ -1,42 +1,67 @@
buildscript {
- repositories {
- mavenCentral()
- }
- dependencies {
- classpath 'com.android.tools.build:gradle:0.5.+'
- }
+ repositories {
+ mavenCentral()
+ }
+ dependencies {
+ classpath 'com.android.tools.build:gradle:0.5.+'
+ }
}
apply plugin: 'android'
dependencies {
- compile fileTree(dir: 'libs', include: '*.jar')
+ compile fileTree(dir: 'libs', include: '*.jar')
+ compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
}
android {
- compileSdkVersion 18
- buildToolsVersion "18.0.1"
+ compileSdkVersion 19
+ buildToolsVersion "19.0.1"
- sourceSets {
- main {
- manifest.srcFile 'AndroidManifest.xml'
- java.srcDirs = ['src']
- resources.srcDirs = ['src']
- aidl.srcDirs = ['src']
- renderscript.srcDirs = ['src']
- res.srcDirs = ['res']
- assets.srcDirs = ['assets']
- }
+ task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') {
+ destinationDir file("$buildDir/native-libs")
+ baseName 'native-libs'
+ extension 'jar'
+ from fileTree(dir: 'libs', include: '**/*.so')
+ into 'lib/'
+ }
- // Move the tests to tests/java, tests/res, etc...
- instrumentTest.setRoot('tests')
+ tasks.withType(Compile) {
+ compileTask -> compileTask.dependsOn(nativeLibsToJar)
+ }
+ sourceSets {
+ main {
+ manifest.srcFile 'AndroidManifest.xml'
+ java.srcDirs = ['src']
+ resources.srcDirs = ['src']
+ aidl.srcDirs = ['src']
+ renderscript.srcDirs = ['src']
+ res.srcDirs = ['res']
+ assets.srcDirs = ['assets']
+ }
- // Move the build types to build-types/<type>
- // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
- // This moves them out of them default location under src/<type>/... which would
- // conflict with src/ being used by the main source set.
- // Adding new build types or product flavors should be accompanied
- // by a similar customization.
- debug.setRoot('build-types/debug')
- release.setRoot('build-types/release')
- }
+ // Move the tests to tests/java, tests/res, etc...
+ instrumentTest.setRoot('tests')
+
+ // Move the build types to build-types/<type>
+ // For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
+ // This moves them out of them default location under src/<type>/... which would
+ // conflict with src/ being used by the main source set.
+ // Adding new build types or product flavors should be accompanied
+ // by a similar customization.
+ debug.setRoot('build-types/debug')
+ release.setRoot('build-types/release')
+ }
+ signingConfigs {
+ release {
+ storeFile file(System.getenv("KEYSTORE"))
+ storePassword System.getenv("KEYSTORE_PASSWORD")
+ keyAlias System.getenv("KEY_ALIAS")
+ keyPassword System.getenv("KEY_PASSWORD")
+ }
+ }
+ buildTypes {
+ release {
+ signingConfig signingConfigs.release
+ }
+ }
}