aboutsummaryrefslogtreecommitdiffstats
path: root/build.gradle
blob: bb67b6bb30e49949789d9a5c812a29c241dc6b01 (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
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
buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.0'
        classpath files('libs/gradle-witness.jar')
    }
}

apply plugin: 'com.android.library'
apply plugin: 'witness'
apply plugin: 'maven'
apply plugin: 'signing'

archivesBaseName = "axolotl-android"
version          = "1.0.0"
group            = "org.whispersystems"

repositories {
    mavenCentral()
}

dependencies {
    compile 'com.google.protobuf:protobuf-java:2.5.0'
}

dependencyVerification {
    verify = [
      'com.google.protobuf:protobuf-java:e0c1c64575c005601725e7c6a02cebf9e1285e888f756b2a1d73ffa8d725cc74',
    ]
}

android {
    compileSdkVersion 21
    buildToolsVersion '21.1.1'

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

    android {
        sourceSets {
            main {
                jniLibs.srcDirs = ['libs']
            }
        }
    }

    libraryVariants.all { variant ->
        variant.outputs.each { output ->
            def outputFile = output.outputFile
            if (outputFile != null && outputFile.name.endsWith('.aar')) {
                def fileName = "${archivesBaseName}-${version}.aar"
                output.outputFile = new File(outputFile.parent, fileName)
            }
        }
    }
}

signing {
    required { has("release") && gradle.taskGraph.hasTask("uploadArchives") }
    sign configurations.archives
}

uploadArchives {
    configuration = configurations.archives
    repositories.mavenDeployer {
        beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) }

        repository(url: sonatypeRepo) {
            authentication(userName: whisperSonatypeUsername, password: whisperSonatypePassword)
        }

        pom.project {
            name 'axolotl-android'
            packaging 'aar'
            description 'Axolotl encryption library for Android'
            url 'https://github.com/WhisperSystems/libaxolotl-android'

            scm {
                url 'scm:git@github.com:WhisperSystems/libaxolotl-android.git'
                connection 'scm:git@github.com:WhisperSystems/libaxolotl-android.git'
                developerConnection 'scm:git@github.com:WhisperSystems/libaxolotl-android.git'
            }

            licenses {
                license {
                    name 'GPLv3'
                    url 'https://www.gnu.org/licenses/gpl-3.0.txt'
                    distribution 'repo'
                }
            }

            developers {
                developer {
                    name 'Moxie Marlinspike'
                }
            }
        }
    }
}

tasks.whenTaskAdded { task ->
    if (task.name.equals("lint")) {
        task.enabled = false
    }
}