aboutsummaryrefslogtreecommitdiff
path: root/java/android/OlmLibSdk/olm-sdk/build.gradle
blob: 96eaaf7dc2c93fcab3eb9b564f9011c15e411e01 (plain)
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
import org.apache.tools.ant.taskdefs.condition.Os

apply plugin: 'com.android.library'

android {
    compileSdkVersion 21
    buildToolsVersion '21.1.2'

    defaultConfig {
        minSdkVersion 11
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    sourceSets.main {
        jniLibs.srcDir 'src/main/libs'
        jni.srcDirs = []
    }

    task ndkBuildNative(type: Exec, description: 'NDK building..') {
        workingDir file('src/main')
        commandLine getNdkBuildCmd() //, '-B', 'NDK_DEBUG=1'
    }

    task cleanNative(type: Exec, description: 'Clean NDK build') {
        workingDir file('src/main')
        commandLine getNdkBuildCmd(), 'clean'
    }

    tasks.withType(JavaCompile) {
        compileTask -> compileTask.dependsOn ndkBuildNative
    }

    clean.dependsOn cleanNative

}

def getNdkFolder() {
    Properties properties = new Properties()
    properties.load(project.rootProject.file('local.properties').newDataInputStream())
    def ndkFolder = properties.getProperty('ndk.dir', null)
    if (ndkFolder == null)
        throw new GradleException("NDK location missing. Define it with ndk.dir in the local.properties file")

    return ndkFolder
}

def getNdkBuildCmd() {
    def ndkBuildCmd = getNdkFolder() + "/ndk-build"
    if (Os.isFamily(Os.FAMILY_WINDOWS))
        ndkBuildCmd += ".cmd"

    return ndkBuildCmd
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile 'com.android.support:appcompat-v7:21.+'

    testCompile 'junit:junit:4.12'
    androidTestCompile 'junit:junit:4.12'
    androidTestCompile 'com.android.support:support-annotations:21.0.0'
    androidTestCompile 'com.android.support.test:runner:0.5'
    androidTestCompile 'com.android.support.test:rules:0.5'
}