aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'OpenKeychain/build.gradle')
-rw-r--r--OpenKeychain/build.gradle105
1 files changed, 105 insertions, 0 deletions
diff --git a/OpenKeychain/build.gradle b/OpenKeychain/build.gradle
new file mode 100644
index 000000000..3fcdf790b
--- /dev/null
+++ b/OpenKeychain/build.gradle
@@ -0,0 +1,105 @@
+apply plugin: 'android'
+
+sourceSets {
+ testLocal {
+ java.srcDir file('src/test/java')
+ resources.srcDir file('src/test/resources')
+ }
+}
+
+dependencies {
+ compile 'com.android.support:support-v4:19.0.1'
+ compile 'com.android.support:appcompat-v7:19.0.1'
+ compile project(':OpenKeychain-API:libraries:openpgp-api-library')
+ compile project(':OpenKeychain-API:libraries:openkeychain-api-library')
+ compile project(':libraries:HtmlTextView')
+ compile project(':libraries:StickyListHeaders:library')
+ compile project(':libraries:AndroidBootstrap')
+ compile project(':libraries:zxing')
+ compile project(':libraries:zxing-android-integration')
+ compile project(':libraries:spongycastle:core')
+ compile project(':libraries:spongycastle:pg')
+ compile project(':libraries:spongycastle:pkix')
+ compile project(':libraries:spongycastle:prov')
+ compile project(':libraries:Android-AppMsg:library')
+
+ // Dependencies for the `testLocal` task, make sure to list all your global dependencies here as well
+ testLocalCompile 'junit:junit:4.11'
+ testLocalCompile 'org.robolectric:robolectric:2.1.+'
+ testLocalCompile 'com.google.android:android:4.1.1.4'
+ testLocalCompile 'com.android.support:support-v4:19.0.1'
+ testLocalCompile 'com.android.support:appcompat-v7:19.0.1'
+ testLocalCompile project(':OpenKeychain-API:libraries:openpgp-api-library')
+ testLocalCompile project(':OpenKeychain-API:libraries:openkeychain-api-library')
+ testLocalCompile project(':libraries:HtmlTextView')
+ testLocalCompile project(':libraries:StickyListHeaders:library')
+ testLocalCompile project(':libraries:AndroidBootstrap')
+ testLocalCompile project(':libraries:zxing')
+ testLocalCompile project(':libraries:zxing-android-integration')
+ testLocalCompile project(':libraries:spongycastle:core')
+ testLocalCompile project(':libraries:spongycastle:pg')
+ testLocalCompile project(':libraries:spongycastle:pkix')
+ testLocalCompile project(':libraries:spongycastle:prov')
+ testLocalCompile project(':libraries:Android-AppMsg:library')
+}
+
+android {
+ compileSdkVersion 19
+ buildToolsVersion "19.0.3"
+
+ defaultConfig {
+ minSdkVersion 9
+ targetSdkVersion 19
+ }
+
+ /*
+ * To sign release build, create file gradle.properties in ~/.gradle/ with this content:
+ *
+ * signingStoreLocation=/home/key.store
+ * signingStorePassword=xxx
+ * signingKeyAlias=alias
+ * signingKeyPassword=xxx
+ */
+ if (project.hasProperty('signingStoreLocation') &&
+ project.hasProperty('signingStorePassword') &&
+ project.hasProperty('signingKeyAlias') &&
+ project.hasProperty('signingKeyPassword')) {
+ println "Found sign properties in gradle.properties! Signing build…"
+
+ signingConfigs {
+ release {
+ storeFile file(signingStoreLocation)
+ storePassword signingStorePassword
+ keyAlias signingKeyAlias
+ keyPassword signingKeyPassword
+ }
+ }
+
+ buildTypes.release.signingConfig = signingConfigs.release
+ } else {
+ buildTypes.release.signingConfig = null
+ }
+
+ // Do not abort build if lint finds errors
+ lintOptions {
+ abortOnError false
+ htmlReport true
+ htmlOutput file("lint-report.html")
+ }
+}
+
+task localTest(type: Test, dependsOn: assemble) {
+ testClassesDir = sourceSets.testLocal.output.classesDir
+
+ android.sourceSets.main.java.srcDirs.each { dir ->
+ def buildDir = dir.getAbsolutePath().split('/')
+ buildDir = (buildDir[0..(buildDir.length - 4)] + ['build', 'classes', 'debug']).join('/')
+
+ sourceSets.testLocal.compileClasspath += files(buildDir)
+ sourceSets.testLocal.runtimeClasspath += files(buildDir)
+ }
+
+ classpath = sourceSets.testLocal.runtimeClasspath
+}
+
+//check.dependsOn localTest