| /* |
| * Copyright (C) 2019 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. |
| */ |
| |
| apply plugin: 'com.android.library' |
| |
| android { |
| namespace "android.viewbinding" |
| compileSdkVersion dataBindingConfig.compileSdkVersion |
| buildToolsVersion dataBindingConfig.buildToolsVersion |
| |
| defaultConfig { |
| minSdkVersion 14 |
| targetSdkVersion dataBindingConfig.targetSdkVersion |
| } |
| compileOptions { |
| sourceCompatibility dataBindingConfig.javaTargetCompatibility |
| targetCompatibility dataBindingConfig.javaSourceCompatibility |
| } |
| |
| publishing { |
| singleVariant("release") |
| } |
| } |
| |
| dependencies { |
| api libs.android_support_annotations |
| } |
| |
| //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 sourcesJarTask = project.tasks.create(name: "sourceJar${suffix}", type: Jar) { |
| classifier = 'sources' |
| from android.sourceSets.main.java.srcDirs |
| } |
| } |
| |
| afterEvaluate { |
| publishing { |
| publications { |
| release(MavenPublication) { |
| artifactId = 'viewbinding' |
| from components.release |
| artifact project.tasks.named("sourceJarRelease") |
| |
| pom { |
| licenses { |
| license { |
| name = dataBindingConfig.licenseName |
| url = dataBindingConfig.licenseUrl |
| distribution = dataBindingConfig.licenseDistribution |
| } |
| } |
| } |
| } |
| } |
| } |
| } |
| |
| task prebuildAar(type : Copy) { |
| dependsOn tasks.named("publish") |
| from "$buildDir/outputs/aar/viewbinding-release.aar" |
| into dataBindingConfig.prebuildFolder |
| rename { String fileName -> |
| "viewbinding.aar" |
| } |
| } |