/* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ buildscript { dependencies { classpath "com.android.tools.build:gradle:${dataBindingConfig.androidPluginVersion}" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } apply plugin: 'com.android.library' android { compileSdkVersion dataBindingConfig.compileSdkVersion buildToolsVersion dataBindingConfig.buildToolsVersion dataBinding { enabled = true addDefaultAdapters = false } defaultConfig { minSdkVersion 9 targetSdkVersion dataBindingConfig.targetSdkVersion versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility dataBindingConfig.javaTargetCompatibility targetCompatibility dataBindingConfig.javaSourceCompatibility } packagingOptions { exclude 'META-INF/services/javax.annotation.processing.Processor' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/NOTICE.txt' } } dependencies { // we don't care about version of these because they are not listed as dependencies in the // final maven artifact. provided 'com.android.support:support-core-utils:24.2.0' provided 'com.android.support:cardview-v7:24.2.0' provided 'com.android.support:appcompat-v7:24.2.0' } //create jar tasks android.libraryVariants.all { variant -> def name = variant.buildType.name if (name.equals(com.android.builder.core.BuilderConstants.DEBUG)) { return; // Skip debug builds. } def suffix = name.capitalize() def javadocTask = project.tasks.create(name: "javadoc${suffix}", type: Javadoc) { source variant.javaCompile.source classpath = files(variant.javaCompile.classpath.files) + files( "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar") } def javadocJarTask = project.tasks.create(name: "javadocJar${suffix}", type: Jar) { classifier = 'javadoc' from 'build/docs/javadoc' } javadocJarTask.dependsOn javadocTask def sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) { classifier = 'sources' from android.sourceSets.main.java.srcDirs } artifacts.add('archives', javadocJarTask); artifacts.add('archives', sourcesJarTask); } uploadArchives { repositories { mavenDeployer { pom.artifactId = "adapters" pom.project { licenses { license { name dataBindingConfig.licenseName url dataBindingConfig.licenseUrl distribution dataBindingConfig.licenseDistribution } } } } } } task prebuild(type : Copy) { dependsOn uploadArchives from "$buildDir/outputs/aar/baseAdapters-release.aar" into dataBindingConfig.prebuildFolder rename { String fileName -> "databinding-adapters.aar" } }