/* * Copyright (C) 2018 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. */ def standaloneProject = project(":jetifier-standalone") def jetifierBin = file("${standaloneProject.buildDir}/install/jetifier-standalone/bin/jetifier-standalone") task stripArchive(type: Zip) { dependsOn tasks['createArchive'] from zipTree(project.tasks['createArchive'].archivePath) destinationDir rootProject.buildDir archiveName "stripped_archive.zip" include "m2repository/androidx/annotation/**", "m2repository/androidx/appcompat/**", "m2repository/androidx/asynclayoutinflater/**", "m2repository/androidx/browser/**", "m2repository/androidx/car/**", "m2repository/androidx/cardview/**", "m2repository/androidx/collection/collection/**", "m2repository/androidx/coordinatorlayout/**", "m2repository/androidx/core/core/**", "m2repository/androidx/cursoradapter/**", "m2repository/androidx/customview/**", "m2repository/androidx/documentfile/**", "m2repository/androidx/drawerlayout/**", "m2repository/androidx/dynamicanimation/**", "m2repository/androidx/emoji/**", "m2repository/androidx/exifinterface/**", "m2repository/androidx/fragment/fragment/**", "m2repository/androidx/gridlayout/**", "m2repository/androidx/heifwriter/**", "m2repository/androidx/interpolator/**", "m2repository/androidx/leanback/**", "m2repository/androidx/legacy/**", "m2repository/androidx/loader/**", "m2repository/androidx/localbroadcastmanager/**", "m2repository/androidx/media/media/**", "m2repository/androidx/mediarouter/**", "m2repository/androidx/palette/palette/**", "m2repository/androidx/percentlayout/**", "m2repository/androidx/preference/**", "m2repository/androidx/print/**", "m2repository/androidx/recommendation/**", "m2repository/androidx/recyclerview/**", "m2repository/androidx/slice/**", "m2repository/androidx/slidingpanelayout/**", "m2repository/androidx/swiperefreshlayout/**", "m2repository/androidx/transition/**", "m2repository/androidx/tvprovider/**", "m2repository/androidx/vectordrawable/**", "m2repository/androidx/viewpager/**", "m2repository/androidx/wear/**", "m2repository/androidx/webkit/**" } task dejetifyArchive(type: Exec) { description "Produces a zip of dejetified artifacts by running Dejetifier against refactored" + " artifacts, for temporary usage by external clients that haven't upgraded to Jetpack" + " yet." dependsOn ':jetifier-standalone:installDist' dependsOn project.tasks['stripArchive'] inputs.file project.tasks['stripArchive'].archivePath outputs.file "${rootProject.ext.distDir}/top-of-tree-m2repository-dejetified-${project.ext.buildNumber}.zip" commandLine ( "${jetifierBin}", "-i", "${inputs.files.singleFile}", "-o", "${outputs.files.singleFile}", "--versions", "inDev", "--log", "warning", "--reversed", "--rebuildTopOfTree" ) }