16904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler/*
26904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * Copyright (C) 2015 The Android Open Source Project
36904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler *
46904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * Licensed under the Apache License, Version 2.0 (the "License");
56904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * you may not use this file except in compliance with the License.
66904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * You may obtain a copy of the License at
76904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler *
86904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler *      http://www.apache.org/licenses/LICENSE-2.0
96904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler *
106904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * Unless required by applicable law or agreed to in writing, software
116904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * distributed under the License is distributed on an "AS IS" BASIS,
126904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
136904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * See the License for the specific language governing permissions and
146904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler * limitations under the License
156904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler */
166904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
176904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
186904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
1902a9e8cbd0ac6c273f384b63f75c1e1fa31b61ffYigit Boyarapply plugin: 'com.android.library'
206904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
216904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony MantlerarchivesBaseName = 'preference-v14'
226904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
236904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantlerdependencies {
246904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    compile project(':support-v4')
256904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    compile project(':support-appcompat-v7')
266904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    compile project(':support-recyclerview-v7')
276904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    compile project(':support-preference-v7')
286904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler}
296904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
306904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantlerandroid {
3102a9e8cbd0ac6c273f384b63f75c1e1fa31b61ffYigit Boyar    compileSdkVersion project.ext.currentSdk
326904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
336904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    sourceSets {
346904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        main.manifest.srcFile 'AndroidManifest.xml'
356904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        main.java.srcDir 'src'
366904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        main.res.srcDir 'res'
376904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        main.assets.srcDir 'assets'
386904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        main.resources.srcDir 'src'
396904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
406904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        // this moves src/instrumentTest to tests so all folders follow:
416904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        // tests/java, tests/res, tests/assets, ...
426904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        // This is a *reset* so it replaces the default paths
436904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        androidTest.setRoot('tests')
446904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        androidTest.java.srcDir 'tests/src'
456904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    }
466904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
476904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    compileOptions {
486904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        sourceCompatibility JavaVersion.VERSION_1_7
496904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        targetCompatibility JavaVersion.VERSION_1_7
506904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    }
516904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler
526904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    lintOptions {
536904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        // TODO: fix errors and reenable.
546904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler        abortOnError false
556904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler    }
566904f67c96a28a0e5966b4fb6d37a0ad5f136858Tony Mantler}
57a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler
58523ece85eacfb6b14171233b91145c68a2a771e3Alan Viveretteandroid.libraryVariants.all { variant ->
59523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    def name = variant.buildType.name
60523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette
61523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) {
62523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        return; // Skip debug builds.
63523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    }
64523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    def suffix = name.capitalize()
65523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette
66523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    def jarTask = project.tasks.create(name: "jar${suffix}", type: Jar){
67523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        dependsOn variant.javaCompile
68523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        from variant.javaCompile.destinationDir
69523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        from 'LICENSE.txt'
70523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    }
71523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) {
72523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        source android.sourceSets.main.java
73523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        classpath = files(variant.javaCompile.classpath.files) + files(
74523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette                "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar")
75523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    }
76523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette
77523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) {
78523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        classifier = 'javadoc'
79523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        from 'build/docs/javadoc'
80523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    }
81523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette
82523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) {
83523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        classifier = 'sources'
84523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette        from android.sourceSets.main.java.srcDirs
85523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    }
86523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette
87523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    artifacts.add('archives', javadocJarTask);
88523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette    artifacts.add('archives', sourcesJarTask);
89523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette}
90523ece85eacfb6b14171233b91145c68a2a771e3Alan Viverette
91a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony MantleruploadArchives {
92a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler    repositories {
93a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler        mavenDeployer {
94a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler            repository(url: uri(rootProject.ext.supportRepoOut)) {
95a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler            }
96a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler
97a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler            pom.project {
98a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                name 'Android Support Preference v14'
99a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                description "Android Support Preference v14"
100a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                url 'http://developer.android.com/tools/extras/support-library.html'
101a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                inceptionYear '2015'
102a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler
103a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                licenses {
104a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                    license {
105a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                        name 'The Apache Software License, Version 2.0'
106a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                        url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
107a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                        distribution 'repo'
108a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                    }
109a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                }
110a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler
111a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                scm {
112a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                    url "http://source.android.com"
113a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                    connection "scm:git:https://android.googlesource.com/platform/frameworks/support"
114a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                }
115a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                developers {
116a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                    developer {
117a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                        name 'The Android Open Source Project'
118a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                    }
119a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler                }
120a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler            }
121a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler        }
122a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler    }
123a2dbc75adc15f0c0ebe930d60665acd8bc3273e8Tony Mantler}
124