blob: 45ec21f10e34e94c7ecc1d4a24559fe02ddec84f [file] [log] [blame]
Yigit Boyar02a9e8c2016-01-26 20:41:00 -08001apply plugin: 'com.android.library'
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -08002
3archivesBaseName = 'appcompat-v7'
4
5dependencies {
Xavier Ducrohet855a9222014-01-02 19:00:43 -08006 compile project(':support-v4')
Chris Banese4beadb2015-11-10 10:45:58 +00007 compile project(':support-vector-drawable')
Chris Banesbd3494d2016-01-27 18:03:37 +00008 compile project(':support-animated-vector-drawable')
9
Aurimas Liutikasdfe75782016-08-03 14:27:20 -070010 androidTestCompile ("com.android.support.test:runner:${project.rootProject.ext.testRunnerVersion}") {
Chris Banesf6c82b62016-01-13 16:38:59 +000011 exclude module: 'support-annotations'
12 }
Aurimas Liutikasdfe75782016-08-03 14:27:20 -070013 androidTestCompile ("com.android.support.test.espresso:espresso-core:${project.rootProject.ext.espressoVersion}") {
Chris Banesf6c82b62016-01-13 16:38:59 +000014 exclude module: 'support-annotations'
15 }
Kirill Grouchnikov21f78eb2016-02-01 16:58:36 -050016 androidTestCompile 'org.mockito:mockito-core:1.9.5'
Kirill Grouchnikova9f4a782016-02-03 11:37:47 -050017 androidTestCompile 'com.google.dexmaker:dexmaker:1.2'
18 androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2'
Chris Banescdbdcb22015-07-10 11:05:06 +010019 testCompile 'junit:junit:4.12'
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -080020}
21
22android {
Yigit Boyar02a9e8c2016-01-26 20:41:00 -080023 compileSdkVersion project.ext.currentSdk
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -080024
Chris Banescdbdcb22015-07-10 11:05:06 +010025 defaultConfig {
Kirill Grouchnikovdf153992016-05-04 16:55:20 -040026 minSdkVersion 9
Chris Banescdbdcb22015-07-10 11:05:06 +010027 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
Alan Viveretteeb648622016-03-11 19:33:03 +000028 // This disables the builds tools automatic vector -> PNG generation
29 generatedDensities = []
Chris Banescdbdcb22015-07-10 11:05:06 +010030 }
31
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -080032 sourceSets {
33 main.manifest.srcFile 'AndroidManifest.xml'
34 main.java.srcDir 'src'
Tor Norbye47c59fb2015-04-08 14:42:16 -070035 main.res.srcDirs 'res', 'res-public'
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -080036 main.assets.srcDir 'assets'
37 main.resources.srcDir 'src'
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -080038
Xavier Ducrohet020e4322014-03-18 16:41:30 -070039 androidTest.setRoot('tests')
40 androidTest.java.srcDir 'tests/src'
Chris Banescdbdcb22015-07-10 11:05:06 +010041 androidTest.res.srcDir 'tests/res'
42 androidTest.manifest.srcFile 'tests/AndroidManifest.xml'
Xavier Ducrohet86fb8ef2013-02-22 15:04:37 -080043 }
Xavier Ducrohet61becda2014-01-29 19:02:16 -080044
Chris Banes5ba72322014-09-10 13:01:06 +010045 compileOptions {
46 sourceCompatibility JavaVersion.VERSION_1_7
47 targetCompatibility JavaVersion.VERSION_1_7
48 }
49
Alan Viveretteeb648622016-03-11 19:33:03 +000050 aaptOptions {
51 additionalParameters "--no-version-vectors"
52 }
53
Xavier Ducrohet61becda2014-01-29 19:02:16 -080054 lintOptions {
55 // TODO: fix errors and reenable.
56 abortOnError false
57 }
Jeff Hamilton5d522dd2014-05-19 12:50:02 -050058}
Xavier Ducrohet11b83982015-03-31 15:12:42 -070059
60android.libraryVariants.all { variant ->
61 def name = variant.buildType.name
62
63 if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) {
64 return; // Skip debug builds.
65 }
66 def suffix = name.capitalize()
67
68 def jarTask = project.tasks.create(name: "jar${suffix}", type: Jar){
69 dependsOn variant.javaCompile
70 from variant.javaCompile.destinationDir
71 from 'LICENSE.txt'
72 }
73 def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) {
74 source android.sourceSets.main.java
75 classpath = files(variant.javaCompile.classpath.files) + files(
76 "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar")
77 }
78
79 def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) {
80 classifier = 'javadoc'
81 from 'build/docs/javadoc'
82 }
83
84 def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) {
85 classifier = 'sources'
86 from android.sourceSets.main.java.srcDirs
87 }
88
89 artifacts.add('archives', javadocJarTask);
90 artifacts.add('archives', sourcesJarTask);
91}
92
93uploadArchives {
94 repositories {
95 mavenDeployer {
96 repository(url: uri(rootProject.ext.supportRepoOut)) {
97 }
98
99 pom.project {
100 name 'Android AppCompat Library v7'
101 description "The Support Library is a static library that you can add to your Android application in order to use APIs that are either not available for older platform versions or utility APIs that aren't a part of the framework APIs. Compatible on devices running API 4 or later."
102 url 'http://developer.android.com/tools/extras/support-library.html'
103 inceptionYear '2011'
104
105 licenses {
106 license {
107 name 'The Apache Software License, Version 2.0'
108 url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
109 distribution 'repo'
110 }
111 }
112
113 scm {
114 url "http://source.android.com"
115 connection "scm:git:https://android.googlesource.com/platform/frameworks/support"
116 }
117 developers {
118 developer {
119 name 'The Android Open Source Project'
120 }
121 }
122 }
123 }
124 }
125}