mirror of
https://github.com/syncthing/syncthing-android.git
synced 2024-11-26 14:21:16 +00:00
134 lines
3.2 KiB
Groovy
134 lines
3.2 KiB
Groovy
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
jcenter()
|
|
|
|
}
|
|
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:1.3.1'
|
|
classpath 'com.github.ben-manes:gradle-versions-plugin:0.11.3'
|
|
}
|
|
}
|
|
|
|
apply plugin: 'com.android.application'
|
|
apply plugin: 'com.github.ben-manes.versions'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
jcenter()
|
|
}
|
|
|
|
dependencies {
|
|
compile 'eu.chainfire:libsuperuser:1.0.0.201510071325'
|
|
compile 'com.android.support:appcompat-v7:23.1.0'
|
|
compile 'com.android.support:design:23.1.0'
|
|
compile 'com.android.support:appcompat-v7:23.1.0'
|
|
androidTestCompile 'com.squareup.okhttp:mockwebserver:2.4.0'
|
|
}
|
|
|
|
preBuild {
|
|
dependsOn 'buildNative'
|
|
}
|
|
|
|
project.archivesBaseName = 'syncthing'
|
|
|
|
android {
|
|
compileSdkVersion 23
|
|
buildToolsVersion "23.0.0"
|
|
|
|
useLibrary 'org.apache.http.legacy'
|
|
|
|
defaultConfig {
|
|
applicationId "com.nutomic.syncthingandroid"
|
|
minSdkVersion 11
|
|
targetSdkVersion 22
|
|
versionCode 76
|
|
versionName "0.7.1"
|
|
testApplicationId 'com.nutomic.syncthingandroid.test'
|
|
testInstrumentationRunner 'android.test.InstrumentationTestRunner'
|
|
testHandleProfiling true
|
|
testFunctionalTest true
|
|
}
|
|
|
|
sourceSets {
|
|
main {
|
|
jniLibs.srcDir file("libs/")
|
|
}
|
|
}
|
|
|
|
signingConfigs {
|
|
release {
|
|
if (System.getenv("key_alias")) {
|
|
storeFile = file(System.getenv("key_store"))
|
|
storePassword = System.getenv("key_store_password")
|
|
keyAlias = System.getenv("key_alias")
|
|
keyPassword = System.getenv("key_alias_password")
|
|
}
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
debug {
|
|
applicationIdSuffix ".debug"
|
|
debuggable true
|
|
testCoverageEnabled true
|
|
}
|
|
release {
|
|
minifyEnabled true
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-android.txt'
|
|
if (System.getenv("key_alias")) {
|
|
signingConfig signingConfigs.release
|
|
}
|
|
}
|
|
}
|
|
|
|
productFlavors {
|
|
x86 {
|
|
versionCode Integer.parseInt("4" + defaultConfig.versionCode)
|
|
ndk {
|
|
abiFilter "x86"
|
|
}
|
|
}
|
|
armeabi {
|
|
versionCode Integer.parseInt("3" + defaultConfig.versionCode)
|
|
ndk {
|
|
abiFilter "armeabi"
|
|
}
|
|
}
|
|
fat {
|
|
versionCode Integer.parseInt("0" + defaultConfig.versionCode)
|
|
}
|
|
}
|
|
}
|
|
|
|
task buildNative(type: Exec) {
|
|
outputs.upToDateWhen { false }
|
|
executable = './build-syncthing.sh'
|
|
}
|
|
|
|
task copyNative(type: Copy) {
|
|
def lib_dir = "libs/"
|
|
new File(lib_dir).mkdirs()
|
|
def st_dir = "bin/";
|
|
from st_dir + 'syncthing-x86', st_dir + 'syncthing-armeabi';
|
|
into lib_dir
|
|
rename('syncthing-x86', 'x86/libsyncthing.so')
|
|
rename('syncthing-armeabi', 'armeabi/libsyncthing.so')
|
|
}
|
|
buildNative.finalizedBy copyNative
|
|
|
|
task cleanBin(type: Delete) {
|
|
delete 'bin/'
|
|
}
|
|
copyNative.finalizedBy cleanBin
|
|
|
|
task cleanNative(type: Delete) {
|
|
delete 'bin/'
|
|
delete 'build/'
|
|
delete 'libs/'
|
|
delete 'ext/syncthing/bin/'
|
|
delete 'ext/syncthing/pkg/'
|
|
}
|
|
clean.dependsOn cleanNative
|
|
|