blob: 25b686d47c6c9df6f3a2ef580d0de2cacafd3921 [file] [log] [blame]
Jaekyun Seokd2f102c2014-04-14 09:26:11 +09001apply plugin: 'android-library'
2
3archivesBaseName = 'recyclerview-v7'
4
5dependencies {
6 compile project(':support-v4')
Yigit Boyarffff7c92014-10-08 17:24:29 -07007 compile project(':support-annotations')
Yigit Boyarbe7a54a2015-04-07 13:23:50 -07008 androidTestCompile 'com.android.support.test:testing-support-lib:0.1'
9 androidTestCompile 'com.android.support.test.espresso:espresso-core:2.0'
10 testCompile 'junit:junit:4.12'
Jaekyun Seokd2f102c2014-04-14 09:26:11 +090011}
12
13android {
Yigit Boyare71a1df2015-01-05 16:41:03 -080014 compileSdkVersion 21
15 buildToolsVersion "19.1.0"
Jaekyun Seokd2f102c2014-04-14 09:26:11 +090016
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070017 defaultConfig {
18 minSdkVersion 7
Yigit Boyarbe7a54a2015-04-07 13:23:50 -070019 testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070020 }
21
Jaekyun Seokd2f102c2014-04-14 09:26:11 +090022 sourceSets {
23 main.manifest.srcFile 'AndroidManifest.xml'
24 main.java.srcDir 'src'
Deepanshu Gupta0194ed82015-04-15 16:40:02 -070025 main.res.srcDir 'res'
26
Yigit Boyaredc25dd2014-04-23 15:40:36 -070027 androidTest.setRoot('tests')
Yigit Boyarbe7a54a2015-04-07 13:23:50 -070028 test.java.srcDir 'jvm-tests'
Yigit Boyaredc25dd2014-04-23 15:40:36 -070029 androidTest.java.srcDir 'tests/src'
Deepanshu Gupta0194ed82015-04-15 16:40:02 -070030 androidTest.res.srcDir 'tests/res'
31 androidTest.manifest.srcFile 'tests/AndroidManifest.xml'
Jaekyun Seokd2f102c2014-04-14 09:26:11 +090032 }
33
34 lintOptions {
35 // TODO: fix errors and reenable.
36 abortOnError false
37 }
Yigit Boyarbe7a54a2015-04-07 13:23:50 -070038
39 packagingOptions {
40 exclude 'LICENSE.txt'
41 }
42
43 testOptions {
44 unitTests.returnDefaultValues = true
45 }
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070046}
47
48android.libraryVariants.all { variant ->
49 def name = variant.buildType.name
50
Chris Banes6a4c14b2015-03-05 20:04:05 +000051 if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) {
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070052 return; // Skip debug builds.
53 }
54 def suffix = name.capitalize()
55
56 def jarTask = project.tasks.create(name: "jar${suffix}", type: Jar){
57 dependsOn variant.javaCompile
58 from variant.javaCompile.destinationDir
59 from 'LICENSE.txt'
60 }
61 def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) {
Chris Banes6a4c14b2015-03-05 20:04:05 +000062 source android.sourceSets.main.java
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070063 classpath = files(variant.javaCompile.classpath.files) + files(
Chris Banes6a4c14b2015-03-05 20:04:05 +000064 "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar")
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070065 }
66
67 def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) {
68 classifier = 'javadoc'
69 from 'build/docs/javadoc'
70 }
71
72 def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) {
73 classifier = 'sources'
Chris Banes6a4c14b2015-03-05 20:04:05 +000074 from android.sourceSets.main.java.srcDirs
Xavier Ducrohet9acddc72014-05-28 22:20:01 -070075 }
76
77 artifacts.add('archives', javadocJarTask);
78 artifacts.add('archives', sourcesJarTask);
79}
80
81uploadArchives {
82 repositories {
83 mavenDeployer {
84 repository(url: uri(rootProject.ext.supportRepoOut)) {
85 }
86
87 pom.project {
88 name 'Android Support RecyclerView v7'
89 description "Android Support RecyclerView v7"
90 url 'http://developer.android.com/tools/extras/support-library.html'
91 inceptionYear '2011'
92
93 licenses {
94 license {
95 name 'The Apache Software License, Version 2.0'
96 url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
97 distribution 'repo'
98 }
99 }
100
101 scm {
102 url "http://source.android.com"
103 connection "scm:git:https://android.googlesource.com/platform/frameworks/support"
104 }
105 developers {
106 developer {
107 name 'The Android Open Source Project'
108 }
109 }
110 }
111 }
112 }
113}