1bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seokapply plugin: 'android-library'
2bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok
39cfef1926060699e91dd2ce2f8225a108681dc37Xavier DucrohetarchivesBaseName = 'leanback-v17'
4bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok
5bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seokdependencies {
6bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok    compile project(':support-v4')
7bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok    compile project(':support-recyclerview-v7')
8bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok}
9bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok
10bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seokandroid {
119acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    // WARNING: should be 17
123074ebe5fe086d8b7c9837a7357b330864214e05Xavier Ducrohet    compileSdkVersion 'current'
139acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
149acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    defaultConfig {
159acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        minSdkVersion 17
169acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        // TODO: get target from branch
179acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        //targetSdkVersion 19
189acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
199acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
20bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok    sourceSets {
21bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok        main.manifest.srcFile 'AndroidManifest.xml'
223074ebe5fe086d8b7c9837a7357b330864214e05Xavier Ducrohet        main.java.srcDirs = ['common', 'jbmr2', 'kitkat', 'api21', 'src']
233074ebe5fe086d8b7c9837a7357b330864214e05Xavier Ducrohet        main.aidl.srcDirs = ['common', 'jbmr2', 'kitkat', 'api21', 'src']
249acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        main.res.srcDirs = ['res']
259acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
269acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        androidTest.setRoot('tests')
279acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        androidTest.java.srcDir 'tests/java'
28bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok    }
29bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok
3027a731e4e1b68e5b87c9839143d4d8231643eecfTony Mantler    compileOptions {
3127a731e4e1b68e5b87c9839143d4d8231643eecfTony Mantler        sourceCompatibility JavaVersion.VERSION_1_7
3227a731e4e1b68e5b87c9839143d4d8231643eecfTony Mantler        targetCompatibility JavaVersion.VERSION_1_7
3327a731e4e1b68e5b87c9839143d4d8231643eecfTony Mantler    }
3427a731e4e1b68e5b87c9839143d4d8231643eecfTony Mantler
35bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok    lintOptions {
36bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok        // TODO: fix errors and reenable.
37bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok        abortOnError false
38bc73409a6af1377a9821ebb1a0d7165c3798ed04Jaekyun Seok    }
399acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet}
409acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
419acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohetandroid.libraryVariants.all { variant ->
429acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    def name = variant.buildType.name
439acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
444efd038be1300cefd5abc6cb1324b4fc8508ebaaChris Banes    if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) {
459acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        return; // Skip debug builds.
469acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
479acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    def suffix = name.capitalize()
489acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
499acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    def jarTask = project.tasks.create(name: "jar${suffix}", type: Jar){
509acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        dependsOn variant.javaCompile
519acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        from variant.javaCompile.destinationDir
529acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        from 'LICENSE.txt'
539acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
549acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) {
554efd038be1300cefd5abc6cb1324b4fc8508ebaaChris Banes        source android.sourceSets.main.java
569acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        classpath = files(variant.javaCompile.classpath.files) + files(
574efd038be1300cefd5abc6cb1324b4fc8508ebaaChris Banes                "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar")
589acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
599acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
609acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) {
619acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        classifier = 'javadoc'
629acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        from 'build/docs/javadoc'
639acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
649acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
659acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) {
669acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        classifier = 'sources'
674efd038be1300cefd5abc6cb1324b4fc8508ebaaChris Banes        from android.sourceSets.main.java.srcDirs
689acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
699acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
709acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    artifacts.add('archives', javadocJarTask);
719acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    artifacts.add('archives', sourcesJarTask);
729acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet}
739acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
749acddc722ab99de101b1af05be076c0945ffadb7Xavier DucrohetuploadArchives {
759acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    repositories {
769acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        mavenDeployer {
779acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet            repository(url: uri(rootProject.ext.supportRepoOut)) {
789acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet            }
799acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
809acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet            pom.project {
819acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                name 'Android Support Leanback v17'
829acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                description "Android Support Leanback v17"
839acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                url 'http://developer.android.com/tools/extras/support-library.html'
849acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                inceptionYear '2011'
859acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
869acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                licenses {
879acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                    license {
889acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                        name 'The Apache Software License, Version 2.0'
899acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                        url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
909acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                        distribution 'repo'
919acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                    }
929acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                }
939acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet
949acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                scm {
959acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                    url "http://source.android.com"
969acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                    connection "scm:git:https://android.googlesource.com/platform/frameworks/support"
979acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                }
989acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                developers {
999acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                    developer {
1009acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                        name 'The Android Open Source Project'
1019acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                    }
1029acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet                }
1039acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet            }
1049acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet        }
1059acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet    }
1069acddc722ab99de101b1af05be076c0945ffadb7Xavier Ducrohet}
107