-
Notifications
You must be signed in to change notification settings - Fork 88
/
build.gradle
120 lines (106 loc) · 3.28 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.1'
}
}
apply plugin: 'com.android.application'
repositories {
mavenCentral()
mavenLocal()
}
dependencies {
compile "com.android.support:appcompat-v7:21.0.+"
compile 'com.googlecode.libphonenumber:libphonenumber:7.1.0'
compile 'org.slf4j:slf4j-android:1.6.1-RC1'
compile 'org.opentelecoms.ddds:nominet-ddds:1.0'
compile 'info.ganglia.gmetric4j:gmetric4j:1.0.10'
compile 'de.rtner:PBKDF2:1.1.1'
compile 'org.opentelecoms.sip:mjsip-fork:1.6+lumicall.3'
compile ('org.opentelecoms.zrtp:zorg-zrtp:1.0.0+f.2') {
// We exclude the transitive dependency Bouncy Castle and
// use Spongy Castle instead because of the classpath issues
// with Bouncy Castle on Android
exclude module: 'bcprov-jdk16'
}
compile 'com.madgag.spongycastle:prov:1.52.0.0'
compile ('org.opentelecoms.ice:ice4j-fork:1.0+f.4') {
// nist-sdp and jain-sip-ri are transitive dependencies, must exclude
// them here or we get errors about duplicate classes later. Some
// of these classes may be part of the Android platform.
exclude module: 'nist-sdp'
}
compile 'org.omnidial:omnidial-android:1.0.0'
}
// Manually copy or symlink to the app.properties-prod file before building
//
// e.g.
// $ ln -s app.properties-prod assets/app.properties
//
preBuild.doFirst {
assert file("./assets/app.properties").exists()
}
// run the ndk-build before running gradle. See the BUILD.txt file for
// more details
//
// e.g.
// $ ${NDK_HOME}/ndk-build
//
preBuild.doFirst {
assert file("./libs/armeabi-v7a/libopus_jni.so").exists()
}
android {
defaultConfig {
versionCode 192
versionName "1.13.3"
minSdkVersion 8
targetSdkVersion 8
}
compileSdkVersion 21
buildToolsVersion "21.1.2"
// FIXME: This project currently generates a lot of lint errors,
// they need to be cleaned up at some point
lintOptions {
abortOnError false
}
signingConfigs {
release {
storeFile file(System.getenv('HOME') + '/.keystore')
storePassword 'unset'
keyAlias System.getenv('SIGNING_KEY')
keyPassword 'unset'
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
// FIXME: JNI stuff must currently be built by running
// ndk-build before the gradle build
jni.srcDirs = []
jniLibs.srcDir 'libs'
}
}
}
task askForPassword << {
def mypassword = new String(System.console().readPassword("Signing password: "))
android.signingConfigs.release.storePassword = mypassword
android.signingConfigs.release.keyPassword = mypassword
}
tasks.whenTaskAdded { task ->
if(task.name == 'validateReleaseSigning') {
task.dependsOn askForPassword
}
}