| Yigit Boyar | 02a9e8c | 2016-01-26 20:41:00 -0800 | [diff] [blame] | 1 | apply plugin: 'com.android.library' |
| Xavier Ducrohet | 86fb8ef | 2013-02-22 15:04:37 -0800 | [diff] [blame] | 2 | archivesBaseName = 'support-v4' |
| 3 | |
| Xavier Ducrohet | 9acddc7 | 2014-05-28 22:20:01 -0700 | [diff] [blame] | 4 | |
| Yigit Boyar | 3986e04 | 2016-02-08 18:31:38 -0800 | [diff] [blame] | 5 | createApiSourceSets(project, gradle.ext.studioCompat.modules.v4.apiTargets) |
| Xavier Ducrohet | 86fb8ef | 2013-02-22 15:04:37 -0800 | [diff] [blame] | 6 | dependencies { |
| Kirill Grouchnikov | 39e8447 | 2016-01-25 14:25:41 -0500 | [diff] [blame] | 7 | androidTestCompile ('com.android.support.test:runner:0.4.1') { |
| 8 | exclude module: 'support-annotations' |
| 9 | } |
| 10 | androidTestCompile ('com.android.support.test.espresso:espresso-core:2.2.1') { |
| 11 | exclude module: 'support-annotations' |
| 12 | } |
| Kirill Grouchnikov | 74bad8b | 2016-02-02 14:52:23 -0500 | [diff] [blame] | 13 | androidTestCompile 'org.mockito:mockito-core:1.9.5' |
| Kirill Grouchnikov | a9f4a78 | 2016-02-03 11:37:47 -0500 | [diff] [blame] | 14 | androidTestCompile 'com.google.dexmaker:dexmaker:1.2' |
| 15 | androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2' |
| Kirill Grouchnikov | d9d9aec | 2015-11-18 15:57:56 -0500 | [diff] [blame] | 16 | testCompile 'junit:junit:4.12' |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 17 | } |
| 18 | |
| Justin Klaassen | 68e7adb | 2016-01-21 12:50:47 -0800 | [diff] [blame] | 19 | sourceCompatibility = JavaVersion.VERSION_1_7 |
| 20 | targetCompatibility = JavaVersion.VERSION_1_7 |
| Yigit Boyar | 3986e04 | 2016-02-08 18:31:38 -0800 | [diff] [blame] | 21 | setApiModuleDependencies(project, dependencies, gradle.ext.studioCompat.modules.v4.dependencies) |
| Justin Klaassen | 68e7adb | 2016-01-21 12:50:47 -0800 | [diff] [blame] | 22 | |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 23 | android { |
| 24 | compileSdkVersion 4 |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 25 | |
| 26 | defaultConfig { |
| 27 | minSdkVersion 4 |
| 28 | // TODO: get target from branch |
| 29 | //targetSdkVersion 19 |
| Kirill Grouchnikov | d9d9aec | 2015-11-18 15:57:56 -0500 | [diff] [blame] | 30 | |
| 31 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 32 | } |
| 33 | |
| 34 | sourceSets { |
| 35 | main.manifest.srcFile 'AndroidManifest.xml' |
| 36 | main.java.srcDirs = ['java'] |
| 37 | main.aidl.srcDirs = ['java'] |
| 38 | |
| 39 | androidTest.setRoot('tests') |
| 40 | androidTest.java.srcDir 'tests/java' |
| Kirill Grouchnikov | d9d9aec | 2015-11-18 15:57:56 -0500 | [diff] [blame] | 41 | androidTest.res.srcDir 'tests/res' |
| 42 | androidTest.manifest.srcFile 'tests/AndroidManifest.xml' |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 43 | } |
| 44 | |
| 45 | lintOptions { |
| 46 | // TODO: fix errors and reenable. |
| 47 | abortOnError false |
| 48 | } |
| Chris Banes | af26d9f | 2015-01-20 19:13:52 +0000 | [diff] [blame] | 49 | |
| Chris Banes | 8f27603 | 2016-04-04 13:28:51 +0100 | [diff] [blame] | 50 | buildTypes.all { |
| 51 | consumerProguardFiles 'proguard-rules.pro' |
| 52 | } |
| 53 | |
| Chris Banes | af26d9f | 2015-01-20 19:13:52 +0000 | [diff] [blame] | 54 | compileOptions { |
| 55 | sourceCompatibility JavaVersion.VERSION_1_7 |
| 56 | targetCompatibility JavaVersion.VERSION_1_7 |
| 57 | } |
| Kirill Grouchnikov | d9d9aec | 2015-11-18 15:57:56 -0500 | [diff] [blame] | 58 | |
| 59 | testOptions { |
| 60 | unitTests.returnDefaultValues = true |
| Yigit Boyar | 02a9e8c | 2016-01-26 20:41:00 -0800 | [diff] [blame] | 61 | compileSdkVersion project.ext.currentSdk |
| Kirill Grouchnikov | d9d9aec | 2015-11-18 15:57:56 -0500 | [diff] [blame] | 62 | } |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 63 | } |
| 64 | |
| 65 | android.libraryVariants.all { variant -> |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 66 | def name = variant.buildType.name |
| 67 | |
| Chris Banes | 4efd038 | 2015-03-05 20:04:05 +0000 | [diff] [blame] | 68 | if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) { |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 69 | return; // Skip debug builds. |
| 70 | } |
| 71 | def suffix = name.capitalize() |
| 72 | |
| 73 | def jarTask = project.tasks.create(name: "jar${suffix}", type: Jar){ |
| 74 | dependsOn variant.javaCompile |
| 75 | from variant.javaCompile.destinationDir |
| 76 | from 'LICENSE.txt' |
| 77 | } |
| 78 | def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) { |
| Chris Banes | 4efd038 | 2015-03-05 20:04:05 +0000 | [diff] [blame] | 79 | source android.sourceSets.main.java |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 80 | classpath = files(variant.javaCompile.classpath.files) + files( |
| Chris Banes | 4efd038 | 2015-03-05 20:04:05 +0000 | [diff] [blame] | 81 | "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar") |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 82 | } |
| 83 | |
| 84 | def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) { |
| 85 | classifier = 'javadoc' |
| 86 | from 'build/docs/javadoc' |
| 87 | } |
| 88 | |
| 89 | def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) { |
| 90 | classifier = 'sources' |
| Chris Banes | 4efd038 | 2015-03-05 20:04:05 +0000 | [diff] [blame] | 91 | from android.sourceSets.main.java.srcDirs |
| Sungsoo Lim | 9703a1e | 2015-10-24 00:25:29 +0900 | [diff] [blame] | 92 | exclude('android/content/pm/**') |
| 93 | exclude('android/service/media/**') |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 94 | } |
| 95 | |
| 96 | project.ext.allSS.each { ss -> |
| Chris Banes | 4efd038 | 2015-03-05 20:04:05 +0000 | [diff] [blame] | 97 | javadocTask.source ss.java |
| 98 | sourcesJarTask.from ss.java.srcDirs |
| Griff Hazen | 43227bb | 2014-05-28 07:59:33 -0700 | [diff] [blame] | 99 | } |
| 100 | |
| 101 | artifacts.add('archives', javadocJarTask); |
| 102 | artifacts.add('archives', sourcesJarTask); |
| Xavier Ducrohet | 86fb8ef | 2013-02-22 15:04:37 -0800 | [diff] [blame] | 103 | } |
| 104 | |
| Xavier Ducrohet | 86fb8ef | 2013-02-22 15:04:37 -0800 | [diff] [blame] | 105 | uploadArchives { |
| 106 | repositories { |
| 107 | mavenDeployer { |
| Xavier Ducrohet | 855a922 | 2014-01-02 19:00:43 -0800 | [diff] [blame] | 108 | repository(url: uri(rootProject.ext.supportRepoOut)) { |
| Xavier Ducrohet | 86fb8ef | 2013-02-22 15:04:37 -0800 | [diff] [blame] | 109 | } |
| 110 | |
| 111 | pom.project { |
| 112 | name 'Android Support Library v4' |
| 113 | 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." |
| 114 | url 'http://developer.android.com/tools/extras/support-library.html' |
| 115 | inceptionYear '2011' |
| 116 | |
| 117 | licenses { |
| 118 | license { |
| 119 | name 'The Apache Software License, Version 2.0' |
| 120 | url 'http://www.apache.org/licenses/LICENSE-2.0.txt' |
| 121 | distribution 'repo' |
| 122 | } |
| 123 | } |
| 124 | |
| 125 | scm { |
| 126 | url "http://source.android.com" |
| 127 | connection "scm:git:https://android.googlesource.com/platform/frameworks/support" |
| 128 | } |
| 129 | developers { |
| 130 | developer { |
| 131 | name 'The Android Open Source Project' |
| 132 | } |
| 133 | } |
| 134 | } |
| 135 | } |
| 136 | } |
| Yigit Boyar | 3986e04 | 2016-02-08 18:31:38 -0800 | [diff] [blame] | 137 | } |