[go: nahoru, domu]

blob: 9c3122913d7398f6b89d1babfcaebe3f3b5d3570 [file] [log] [blame]
import groovy.transform.Field
pluginManagement {
repositories {
maven {
url = new File(buildscript.sourceFile.parent + "/../../prebuilts/androidx/external").getCanonicalFile()
}
}
}
rootProject.name = "androidx"
enableFeaturePreview("VERSION_CATALOGS")
boolean isMultiplatformEnabled() {
def mppParameter = properties.get("androidx.compose.multiplatformEnabled")
if (mppParameter == null) return false
return Boolean.parseBoolean(mppParameter)
}
/////////////////////////////
//
// Buildscript utils
//
/////////////////////////////
enum BuildType {
MAIN,
COMPOSE,
FLAN,
MEDIA,
WEAR,
}
private String getRequestedProjectSubsetName() {
if (startParameter.projectProperties.containsKey("androidx.projects")) {
return startParameter.projectProperties["androidx.projects"].toUpperCase()
}
if (System.getenv().containsKey("ANDROIDX_PROJECTS")) {
return System.getenv()["ANDROIDX_PROJECTS"].toUpperCase()
}
return null
}
boolean isAllProjects() {
String projectSubsetName = getRequestedProjectSubsetName()
return requestedProjectSubsetName == null || requestedProjectSubsetName == "ALL"
}
private Set<BuildType> createRequestedFilter() {
Set<BuildType> filter = new HashSet<>()
String projectSubsetName = getRequestedProjectSubsetName()
if (projectSubsetName == null) return null
String[] requestedFilter = projectSubsetName.split(",")
for (String requestedType : requestedFilter) {
switch (requestedType) {
case "MAIN":
filter.add(BuildType.MAIN)
break
case "COMPOSE":
filter.add(BuildType.COMPOSE)
break
case "FLAN":
filter.add(BuildType.FLAN)
break
case "MEDIA":
filter.add(BuildType.MEDIA)
break
case "WEAR":
filter.add(BuildType.WEAR)
break
case "ALL":
// Return null so that no filtering is done
return null
break
default:
throw new Exception("Unsupported project type $requestedType\n" +
"We only support the following:\n" +
"ALL - all androidx projects\n" +
"COMPOSE - compose projects\n" +
"MAIN - androidx projects that are not compose\n" +
"FLAN - fragment, lifecycle, activity, and navigation projects\n" +
"MEDIA - media, media2, and mediarouter projects\n" +
"WEAR - Wear OS projects")
}
}
return filter
}
/**
* Requested project filter based on STUDIO_PROJECT_FILTER env variable.
*
* Note that null value means all the projects should be included
*/
@Field
Set<BuildType> requestedFilter
requestedFilter = createRequestedFilter()
boolean shouldIncludeForFilter(List<BuildType> includeList) {
if (includeList.empty) return true
if (requestedFilter == null) return true
for (BuildType type : includeList) {
if (requestedFilter.contains(type)) return true
}
return false
}
// Calling includeProject(name, filePath) is shorthand for:
//
// include(name)
// project(name).projectDir = new File(filePath)
//
// Note that <name> directly controls the Gradle project name, and also indirectly sets:
// the project name in the IDE
// the Maven artifactId
//
def includeProject(name, filePath, List<BuildType> filter = []) {
if (!shouldIncludeForFilter(filter)) return
settings.include(name)
def file
if (filePath != null) {
if (filePath instanceof String) {
file = new File(rootDir, filePath)
} else {
file = filePath
}
project(name).projectDir = file
} else {
file = project(name).projectDir
}
if (!file.exists()) {
// This option is supported so that development/simplify_build_failure.sh can try
// deleting entire projects at once to identify the cause of a build failure
if (System.getenv("ALLOW_MISSING_PROJECTS") == null) {
throw new Exception("Path " + file + " does not exist; cannot include project " + name)
}
}
}
/////////////////////////////
//
// Libraries
//
/////////////////////////////
includeProject(":activity:activity", "activity/activity", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE, BuildType.WEAR])
includeProject(":activity:activity-compose", "activity/activity-compose", [BuildType.COMPOSE])
includeProject(":activity:activity-compose:activity-compose-samples", "activity/activity-compose/samples", [BuildType.COMPOSE])
includeProject(":activity:activity-compose:integration-tests:activity-demos", "activity/activity-compose/integration-tests/activity-demos", [BuildType.COMPOSE])
includeProject(":activity:activity-ktx", "activity/activity-ktx", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE])
includeProject(":activity:activity-lint", "activity/activity-lint", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE, BuildType.WEAR])
includeProject(":activity:integration-tests:testapp", "activity/integration-tests/testapp", [BuildType.MAIN])
includeProject(":ads-identifier", "ads/ads-identifier", [BuildType.MAIN])
includeProject(":ads-identifier-benchmark", "ads/ads-identifier-benchmark", [BuildType.MAIN])
includeProject(":ads-identifier-common", "ads/ads-identifier-common", [BuildType.MAIN])
includeProject(":ads-identifier-provider", "ads/ads-identifier-provider", [BuildType.MAIN])
includeProject(":ads-identifier-provider:integration-tests:testapp", "ads/ads-identifier-provider/integration-tests/testapp", [BuildType.MAIN])
includeProject(":ads-identifier-testing", "ads/ads-identifier-testing", [BuildType.MAIN])
includeProject(":ads-identifier:integration-tests:testapp", "ads/ads-identifier/integration-tests/testapp", [BuildType.MAIN])
includeProject(":annotation:annotation", "annotation/annotation")
includeProject(":annotation:annotation-experimental", "annotation/annotation-experimental")
includeProject(":annotation:annotation-experimental-lint", "annotation/annotation-experimental-lint")
includeProject(":annotation:annotation-experimental-lint-integration-tests", "annotation/annotation-experimental-lint/integration-tests")
includeProject(":annotation:annotation-sampled", "annotation/annotation-sampled")
includeProject(":appcompat:appcompat", "appcompat/appcompat", [BuildType.MAIN])
includeProject(":appcompat:appcompat-benchmark", "appcompat/appcompat-benchmark", [BuildType.MAIN])
includeProject(":appcompat:appcompat-lint", "appcompat/appcompat-lint", [BuildType.MAIN])
includeProject(":appcompat:appcompat-resources", "appcompat/appcompat-resources", [BuildType.MAIN])
includeProject(":appcompat:integration-tests:receive-content-testapp", "appcompat/integration-tests/receive-content-testapp", [BuildType.MAIN])
includeProject(":appsearch:appsearch", "appsearch/appsearch", [BuildType.MAIN])
includeProject(":appsearch:appsearch-compiler", "appsearch/compiler", [BuildType.MAIN])
includeProject(":appsearch:appsearch-local-storage", "appsearch/local-storage", [BuildType.MAIN])
includeProject(":arch:core:core-common", "arch/core/core-common", [BuildType.MAIN])
includeProject(":arch:core:core-runtime", "arch/core/core-runtime", [BuildType.MAIN])
includeProject(":arch:core:core-testing", "arch/core/core-testing", [BuildType.MAIN])
includeProject(":asynclayoutinflater:asynclayoutinflater", "asynclayoutinflater/asynclayoutinflater", [BuildType.MAIN])
includeProject(":autofill:autofill", "autofill/autofill", [BuildType.MAIN])
includeProject(":benchmark:benchmark-benchmark", "benchmark/benchmark", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":benchmark:benchmark-common", "benchmark/common")
includeProject(":benchmark:benchmark-gradle-plugin", "benchmark/gradle-plugin", [BuildType.MAIN])
includeProject(":benchmark:benchmark-junit4", "benchmark/junit4")
includeProject(":benchmark:benchmark-macro", "benchmark/macro", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":benchmark:benchmark-macro-junit4", "benchmark/macro-junit4", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":benchmark:integration-tests:crystalball-experiment", "benchmark/integration-tests/crystalball-experiment", [BuildType.MAIN])
includeProject(":benchmark:integration-tests:dry-run-benchmark", "benchmark/integration-tests/dry-run-benchmark", [BuildType.MAIN])
includeProject(":benchmark:integration-tests:macrobenchmark", "benchmark/integration-tests/macrobenchmark", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":benchmark:integration-tests:macrobenchmark-target", "benchmark/integration-tests/macrobenchmark-target", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":benchmark:integration-tests:startup-benchmark", "benchmark/integration-tests/startup-benchmark", [BuildType.MAIN])
includeProject(":biometric:biometric", "biometric/biometric", [BuildType.MAIN])
includeProject(":biometric:biometric-ktx", "biometric/biometric-ktx", [BuildType.MAIN])
includeProject(":biometric:biometric-ktx-samples", "biometric/biometric-ktx/samples", [BuildType.MAIN])
includeProject(":biometric:integration-tests:testapp", "biometric/integration-tests/testapp", [BuildType.MAIN])
includeProject(":browser:browser", "browser/browser", [BuildType.MAIN])
includeProject(":buildSrc-tests", "buildSrc-tests", [BuildType.MAIN])
// these projects intentionally fail to compile unless androidx.useMaxDepVersions is enabled
if (startParameter.projectProperties.containsKey("androidx.useMaxDepVersions")) {
includeProject(":buildSrc-tests:max-dep-versions:buildSrc-tests-max-dep-versions-dep", "buildSrc-tests/max-dep-versions/buildSrc-tests-max-dep-versions-dep", [BuildType.MAIN])
includeProject(":buildSrc-tests:max-dep-versions:buildSrc-tests-max-dep-versions-main", "buildSrc-tests/max-dep-versions/buildSrc-tests-max-dep-versions-main", [BuildType.MAIN])
}
includeProject(":buildSrc-tests:project-subsets", "buildSrc-tests/project-subsets", [BuildType.MAIN])
includeProject(":camera:camera-camera2", "camera/camera-camera2", [BuildType.MAIN])
includeProject(":camera:camera-camera2-pipe", "camera/camera-camera2-pipe", [BuildType.MAIN])
includeProject(":camera:camera-camera2-pipe-integration", "camera/camera-camera2-pipe-integration", [BuildType.MAIN])
includeProject(":camera:camera-camera2-pipe-testing", "camera/camera-camera2-pipe-testing", [BuildType.MAIN])
includeProject(":camera:camera-core", "camera/camera-core", [BuildType.MAIN])
includeProject(":camera:camera-extensions", "camera/camera-extensions", [BuildType.MAIN])
includeProject(":camera:camera-extensions-stub", "camera/camera-extensions-stub", [BuildType.MAIN])
includeProject(":camera:camera-lifecycle", "camera/camera-lifecycle", [BuildType.MAIN])
includeProject(":camera:camera-testing", "camera/camera-testing", [BuildType.MAIN])
includeProject(":camera:camera-video", "camera/camera-video", [BuildType.MAIN])
includeProject(":camera:camera-view", "camera/camera-view", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testapp-camera2-pipe", "camera/integration-tests/camerapipetestapp", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testapp-core", "camera/integration-tests/coretestapp", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testapp-extensions", "camera/integration-tests/extensionstestapp", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testapp-timing", "camera/integration-tests/timingtestapp", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testapp-uiwidgets", "camera/integration-tests/uiwidgetstestapp", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testapp-view", "camera/integration-tests/viewtestapp", [BuildType.MAIN])
includeProject(":camera:integration-tests:camera-testlib-extensions", "camera/integration-tests/extensionstestlib", [BuildType.MAIN])
includeProject(":car:app:app", "car/app/app", [BuildType.MAIN])
includeProject(":car:app:app-activity", "car/app/app-activity", [BuildType.MAIN])
includeProject(":car:app:app-property", "car/app/app-property", [BuildType.MAIN])
includeProject(":car:app:app-samples:helloworld-automotive", "car/app/app-samples/helloworld/automotive", [BuildType.MAIN])
includeProject(":car:app:app-samples:helloworld-common", "car/app/app-samples/helloworld/common", [BuildType.MAIN])
includeProject(":car:app:app-samples:helloworld-mobile", "car/app/app-samples/helloworld/mobile", [BuildType.MAIN])
includeProject(":car:app:app-samples:navigation-automotive", "car/app/app-samples/navigation/automotive", [BuildType.MAIN])
includeProject(":car:app:app-samples:navigation-common", "car/app/app-samples/navigation/common", [BuildType.MAIN])
includeProject(":car:app:app-samples:navigation-mobile", "car/app/app-samples/navigation/mobile", [BuildType.MAIN])
includeProject(":car:app:app-samples:places-automotive", "car/app/app-samples/places/automotive", [BuildType.MAIN])
includeProject(":car:app:app-samples:places-common", "car/app/app-samples/places/common", [BuildType.MAIN])
includeProject(":car:app:app-samples:places-mobile", "car/app/app-samples/places/mobile", [BuildType.MAIN])
includeProject(":car:app:app-samples:showcase-automotive", "car/app/app-samples/showcase/automotive", [BuildType.MAIN])
includeProject(":car:app:app-samples:showcase-common", "car/app/app-samples/showcase/common", [BuildType.MAIN])
includeProject(":car:app:app-samples:showcase-mobile", "car/app/app-samples/showcase/mobile", [BuildType.MAIN])
includeProject(":car:app:app-testing", "car/app/app-testing", [BuildType.MAIN])
includeProject(":cardview:cardview", "cardview/cardview", [BuildType.MAIN])
includeProject(":collection:collection", "collection/collection", [BuildType.MAIN])
includeProject(":collection:collection2", "collection/collection2", [BuildType.MAIN])
includeProject(":collection:collection-benchmark", "collection/collection-benchmark", [BuildType.MAIN])
includeProject(":collection:collection-ktx", "collection/collection-ktx", [BuildType.MAIN])
includeProject(":collection:integration-tests:testapp", "collection/integration-tests/testapp", [BuildType.MAIN])
includeProject(":compose:androidview", "compose/androidview", [BuildType.COMPOSE])
includeProject(":compose:androidview:androidview", "compose/androidview/androidview", [BuildType.COMPOSE])
includeProject(":compose:androidview:androidview:integration-tests:androidview-demos", "compose/androidview/androidview/integration-tests/androidview-demos", [BuildType.COMPOSE])
includeProject(":compose:animation", "compose/animation", [BuildType.COMPOSE])
includeProject(":compose:animation:animation", "compose/animation/animation", [BuildType.COMPOSE])
includeProject(":compose:animation:animation-lint", "compose/animation/animation-lint", [BuildType.COMPOSE])
includeProject(":compose:animation:animation-core", "compose/animation/animation-core", [BuildType.COMPOSE])
includeProject(":compose:animation:animation-core-lint", "compose/animation/animation-core-lint", [BuildType.COMPOSE])
includeProject(":compose:animation:animation-core:animation-core-benchmark", "compose/animation/animation-core/benchmark", [BuildType.COMPOSE])
includeProject(":compose:animation:animation-core:animation-core-samples", "compose/animation/animation-core/samples", [BuildType.COMPOSE])
includeProject(":compose:animation:animation:integration-tests:animation-demos", "compose/animation/animation/integration-tests/animation-demos", [BuildType.COMPOSE])
includeProject(":compose:animation:animation:animation-samples", "compose/animation/animation/samples", [BuildType.COMPOSE])
includeProject(":compose:benchmark-utils", "compose/benchmark-utils", [BuildType.COMPOSE])
includeProject(":compose:benchmark-utils:benchmark-utils-benchmark", "compose/benchmark-utils/benchmark", [BuildType.COMPOSE])
includeProject(":compose:compiler:compiler", "compose/compiler/compiler", [BuildType.COMPOSE])
includeProject(":compose:compiler:compiler-hosted", "compose/compiler/compiler-hosted", [BuildType.COMPOSE])
includeProject(":compose:compiler:compiler-hosted:integration-tests", "compose/compiler/compiler-hosted/integration-tests", [BuildType.COMPOSE])
includeProject(":compose:compiler:compiler-hosted:integration-tests:kotlin-compiler-repackaged", "compose/compiler/compiler-hosted/integration-tests/kotlin-compiler-repackaged", [BuildType.COMPOSE])
if (isMultiplatformEnabled()) {
includeProject(":compose:desktop", "compose/desktop", [BuildType.COMPOSE])
includeProject(":compose:desktop:desktop", "compose/desktop/desktop", [BuildType.COMPOSE])
includeProject(":compose:desktop:desktop:desktop-samples", "compose/desktop/desktop/samples", [BuildType.COMPOSE])
}
includeProject(":compose:foundation", "compose/foundation", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation", "compose/foundation/foundation", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation-benchmark", "compose/foundation/foundation/benchmark", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation-layout", "compose/foundation/foundation-layout", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation-layout:foundation-layout-benchmark", "compose/foundation/foundation-layout/benchmark", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation-layout:integration-tests:foundation-layout-demos", "compose/foundation/foundation-layout/integration-tests/layout-demos", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation-layout:foundation-layout-samples", "compose/foundation/foundation-layout/samples", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation:integration-tests:foundation-demos", "compose/foundation/foundation/integration-tests/foundation-demos", [BuildType.COMPOSE])
includeProject(":compose:foundation:foundation:foundation-samples", "compose/foundation/foundation/samples", [BuildType.COMPOSE])
includeProject(":compose:integration-tests", "compose/integration-tests", [BuildType.COMPOSE])
includeProject(":compose:integration-tests:demos", "compose/integration-tests/demos", [BuildType.COMPOSE])
includeProject(":compose:integration-tests:demos:common", "compose/integration-tests/demos/common", [BuildType.COMPOSE])
includeProject(":compose:integration-tests:docs-snippets", "compose/integration-tests/docs-snippets", [BuildType.COMPOSE])
includeProject(":compose:integration-tests:macrobenchmark", "compose/integration-tests/macrobenchmark", [BuildType.COMPOSE])
includeProject(":compose:integration-tests:macrobenchmark-target", "compose/integration-tests/macrobenchmark-target", [BuildType.COMPOSE])
includeProject(":compose:lint", "compose/lint", [BuildType.COMPOSE])
includeProject(":compose:lint:internal-lint-checks", "compose/lint/internal-lint-checks", [BuildType.COMPOSE])
includeProject(":compose:lint:common", "compose/lint/common", [BuildType.COMPOSE])
includeProject(":compose:material", "compose/material", [BuildType.COMPOSE])
includeProject(":compose:material:material", "compose/material/material", [BuildType.COMPOSE])
includeProject(":compose:material:material-benchmark", "compose/material/material/benchmark", [BuildType.COMPOSE])
includeProject(":compose:material:material-lint", "compose/material/material-lint", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-core", "compose/material/material-icons-core", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-core:material-icons-core-samples", "compose/material/material-icons-core/samples", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-extended", "compose/material/material-icons-extended", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-extended-filled", "compose/material/material-icons-extended/material-icons-extended-filled", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-extended-outlined", "compose/material/material-icons-extended/material-icons-extended-outlined", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-extended-rounded", "compose/material/material-icons-extended/material-icons-extended-rounded", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-extended-sharp", "compose/material/material-icons-extended/material-icons-extended-sharp", [BuildType.COMPOSE])
includeProject(":compose:material:material-icons-extended-twotone", "compose/material/material-icons-extended/material-icons-extended-twotone", [BuildType.COMPOSE])
includeProject(":compose:material:material-ripple", "compose/material/material-ripple", [BuildType.COMPOSE])
includeProject(":compose:material:material:icons:generator", "compose/material/material/icons/generator", [BuildType.COMPOSE])
includeProject(":compose:material:material:integration-tests:material-demos", "compose/material/material/integration-tests/material-demos", [BuildType.COMPOSE])
includeProject(":compose:material:material:integration-tests:material-catalog", "compose/material/material/integration-tests/material-catalog", [BuildType.COMPOSE])
includeProject(":compose:material:material:material-samples", "compose/material/material/samples", [BuildType.COMPOSE])
includeProject(":compose:runtime", "compose/runtime", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime", "compose/runtime/runtime", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-lint", "compose/runtime/runtime-lint", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-livedata", "compose/runtime/runtime-livedata", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-livedata:runtime-livedata-samples", "compose/runtime/runtime-livedata/samples", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-rxjava2", "compose/runtime/runtime-rxjava2", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-rxjava2:runtime-rxjava2-samples", "compose/runtime/runtime-rxjava2/samples", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-rxjava3", "compose/runtime/runtime-rxjava3", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-rxjava3:runtime-rxjava3-samples", "compose/runtime/runtime-rxjava3/samples", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-saveable", "compose/runtime/runtime-saveable", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-saveable-lint", "compose/runtime/runtime-saveable-lint", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime-saveable:runtime-saveable-samples", "compose/runtime/runtime-saveable/samples", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime:benchmark", "compose/runtime/runtime/compose-runtime-benchmark", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime:integration-tests", "compose/runtime/runtime/integration-tests", [BuildType.COMPOSE])
includeProject(":compose:runtime:runtime:runtime-samples", "compose/runtime/runtime/samples", [BuildType.COMPOSE])
includeProject(":compose:test-utils", "compose/test-utils", [BuildType.COMPOSE])
includeProject(":compose:ui", "compose/ui", [BuildType.COMPOSE])
includeProject(":compose:ui:ui", "compose/ui/ui", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-benchmark", "compose/ui/ui/benchmark", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-android-stubs", "compose/ui/ui-android-stubs", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-geometry", "compose/ui/ui-geometry", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-graphics", "compose/ui/ui-graphics", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-graphics-lint", "compose/ui/ui-graphics-lint", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-graphics:ui-graphics-benchmark", "compose/ui/ui-graphics/benchmark", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-graphics:ui-graphics-benchmark:test", "compose/ui/ui-graphics/benchmark/test", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-graphics:ui-graphics-samples", "compose/ui/ui-graphics/samples", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-inspection", "compose/ui/ui-inspection", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-lint", "compose/ui/ui-lint", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-test", "compose/ui/ui-test", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-test-font", "compose/ui/ui-test-font", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-test-junit4", "compose/ui/ui-test-junit4", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-test-manifest", "compose/ui/ui-test-manifest", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-test-manifest:integration-tests:testapp", "compose/ui/ui-test-manifest/integration-tests/testapp", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-text", "compose/ui/ui-text", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-text:ui-text-benchmark", "compose/ui/ui-text/benchmark", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-text:ui-text-samples", "compose/ui/ui-text/samples", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-tooling", "compose/ui/ui-tooling", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-tooling-data", "compose/ui/ui-tooling-data", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-unit", "compose/ui/ui-unit", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-unit:ui-unit-samples", "compose/ui/ui-unit/samples", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-util", "compose/ui/ui-util", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-viewbinding", "compose/ui/ui-viewbinding", [BuildType.COMPOSE])
includeProject(":compose:ui:ui-viewbinding:ui-viewbinding-samples", "compose/ui/ui-viewbinding/samples", [BuildType.COMPOSE])
includeProject(":compose:ui:ui:integration-tests:ui-demos", "compose/ui/ui/integration-tests/ui-demos", [BuildType.COMPOSE])
includeProject(":compose:ui:ui:ui-samples", "compose/ui/ui/samples", [BuildType.COMPOSE])
includeProject(":concurrent:concurrent-futures", "concurrent/futures", [BuildType.MAIN])
includeProject(":concurrent:concurrent-futures-ktx", "concurrent/futures-ktx", [BuildType.MAIN])
includeProject(":contentpager:contentpager", "contentpager/contentpager", [BuildType.MAIN])
includeProject(":coordinatorlayout:coordinatorlayout", "coordinatorlayout/coordinatorlayout", [BuildType.MAIN])
includeProject(":core-role", "core/core-role", [BuildType.MAIN])
includeProject(":core:core", "core/core", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":core:core-animation", "core/core-animation", [BuildType.MAIN])
includeProject(":core:core-animation-integration-tests:testapp", "core/core-animation-integration-tests/testapp", [BuildType.MAIN])
includeProject(":core:core-animation-testing", "core/core-animation-testing", [BuildType.MAIN])
includeProject(":core:core-appdigest", "core/core-appdigest", [BuildType.MAIN])
includeProject(":core:core-google-shortcuts", "core/core-google-shortcuts", [BuildType.MAIN])
includeProject(":core:core-ktx", "core/core-ktx", [BuildType.MAIN])
includeProject(":cursoradapter:cursoradapter", "cursoradapter/cursoradapter", [BuildType.MAIN])
includeProject(":customview:customview", "customview/customview", [BuildType.MAIN])
includeProject(":datastore:datastore", "datastore/datastore", [BuildType.MAIN])
includeProject(":datastore:datastore-core", "datastore/datastore-core", [BuildType.MAIN])
includeProject(":datastore:datastore-preferences", "datastore/datastore-preferences", [BuildType.MAIN])
includeProject(":datastore:datastore-preferences-core", "datastore/datastore-preferences-core",
[BuildType.MAIN])
includeProject(":datastore:datastore-preferences-core:datastore-preferences-proto",
"datastore/datastore-preferences-core/datastore-preferences-proto", [BuildType.MAIN])
includeProject(":datastore:datastore-preferences-rxjava2",
"datastore/datastore-preferences-rxjava2", [BuildType.MAIN])
includeProject(":datastore:datastore-preferences-rxjava3",
"datastore/datastore-preferences-rxjava3", [BuildType.MAIN])
includeProject(":datastore:datastore-proto", "datastore/datastore-proto", [BuildType.MAIN])
includeProject(":datastore:datastore-rxjava2", "datastore/datastore-rxjava2", [BuildType.MAIN])
includeProject(":datastore:datastore-rxjava3", "datastore/datastore-rxjava3", [BuildType.MAIN])
includeProject(":datastore:datastore-sampleapp", "datastore/datastore-sampleapp", [BuildType.MAIN])
includeProject(":documentfile:documentfile", "documentfile/documentfile", [BuildType.MAIN])
includeProject(":drawerlayout:drawerlayout", "drawerlayout/drawerlayout", [BuildType.MAIN])
includeProject(":dynamicanimation", "dynamic-animation", [BuildType.MAIN])
includeProject(":dynamicanimation:dynamicanimation", "dynamic-animation/dynamic-animation", [BuildType.MAIN])
includeProject(":dynamicanimation:dynamicanimation-ktx", "dynamic-animation/dynamic-animation-ktx", [BuildType.MAIN])
includeProject(":emoji", "emoji/core", [BuildType.MAIN])
includeProject(":emoji-appcompat", "emoji/appcompat", [BuildType.MAIN])
includeProject(":emoji-bundled", "emoji/bundled", [BuildType.MAIN])
includeProject(":emoji2:emoji2", "emoji2/emoji2", [BuildType.MAIN])
includeProject(":emoji2:emoji2-bundled", "emoji2/emoji2-bundled", [BuildType.MAIN])
includeProject(":emoji2:emoji2-views", "emoji2/emoji2-views", [BuildType.MAIN])
includeProject(":emoji2:emoji2-views-helper", "emoji2/emoji2-views-helper", [BuildType.MAIN])
includeProject(":emoji2:emoji2-benchmark", "emoji2/emoji2-benchmark", [BuildType.MAIN])
includeProject(":emoji2:integration-tests:init-disabled-macrobenchmark", "emoji2/integration-tests/init-disabled-macrobenchmark", [BuildType.MAIN])
includeProject(":emoji2:integration-tests:init-disabled-macrobenchmark-target", "emoji2/integration-tests/init-disabled-macrobenchmark-target", [BuildType.MAIN])
includeProject(":emoji2:integration-tests:init-enabled-macrobenchmark", "emoji2/integration-tests/init-enabled-macrobenchmark", [BuildType.MAIN])
includeProject(":emoji2:integration-tests:init-enabled-macrobenchmark-target", "emoji2/integration-tests/init-enabled-macrobenchmark-target", [BuildType.MAIN])
includeProject(":enterprise-feedback", "enterprise/feedback", [BuildType.MAIN])
includeProject(":enterprise-feedback-testing", "enterprise/feedback/testing", [BuildType.MAIN])
includeProject(":exifinterface:exifinterface", "exifinterface/exifinterface", [BuildType.MAIN])
includeProject(":fakeannotations", "fakeannotations", [BuildType.MAIN])
includeProject(":fragment:fragment", "fragment/fragment", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":fragment:fragment-ktx", "fragment/fragment-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":fragment:fragment-lint", "fragment/fragment-lint", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":fragment:fragment-testing", "fragment/fragment-testing", [BuildType.MAIN, BuildType.FLAN])
includeProject(":fragment:fragment-testing-lint", "fragment/fragment-testing-lint", [BuildType.MAIN, BuildType.FLAN])
includeProject(":fragment:fragment-truth", "fragment/fragment-truth", [BuildType.MAIN, BuildType.FLAN])
includeProject(":fragment:integration-tests:testapp", "fragment/integration-tests/testapp", [BuildType.MAIN, BuildType.FLAN])
includeProject(":gridlayout:gridlayout", "gridlayout/gridlayout", [BuildType.MAIN])
includeProject(":health:health-services-client", "health/health-services-client", [BuildType.MAIN])
includeProject(":heifwriter:heifwriter", "heifwriter/heifwriter", [BuildType.MAIN])
includeProject(":hilt:hilt-common", "hilt/hilt-common", [BuildType.MAIN])
includeProject(":hilt:hilt-compiler", "hilt/hilt-compiler", [BuildType.MAIN])
includeProject(":hilt:hilt-navigation", "hilt/hilt-navigation", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":hilt:hilt-navigation-compose", "hilt/hilt-navigation-compose", [BuildType.COMPOSE])
includeProject(":hilt:hilt-navigation-compose-samples", "hilt/hilt-navigation-compose/samples", [BuildType.COMPOSE])
includeProject(":hilt:hilt-navigation-fragment", "hilt/hilt-navigation-fragment", [BuildType.MAIN])
includeProject(":hilt:hilt-work", "hilt/hilt-work", [BuildType.MAIN])
includeProject(":hilt:integration-tests:hilt-testapp-viewmodel", "hilt/integration-tests/viewmodelapp", [BuildType.MAIN])
includeProject(":hilt:integration-tests:hilt-testapp-worker", "hilt/integration-tests/workerapp", [BuildType.MAIN])
includeProject(":inspection:inspection", "inspection/inspection", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":inspection:inspection-gradle-plugin", "inspection/inspection-gradle-plugin", [BuildType.MAIN])
includeProject(":inspection:inspection-testing", "inspection/inspection-testing", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":interpolator:interpolator", "interpolator/interpolator", [BuildType.MAIN])
includeProject(":jetifier-core", "jetifier/jetifier/core", [BuildType.MAIN])
includeProject(":jetifier-preprocessor", "jetifier/jetifier/preprocessor", [BuildType.MAIN])
includeProject(":jetifier-processor", "jetifier/jetifier/processor", [BuildType.MAIN])
includeProject(":jetifier-standalone", "jetifier/jetifier/standalone", [BuildType.MAIN])
includeProject(":leanback:leanback", "leanback/leanback", [BuildType.MAIN])
includeProject(":leanback:leanback-paging", "leanback/leanback-paging", [BuildType.MAIN])
includeProject(":leanback:leanback-preference", "leanback/leanback-preference", [BuildType.MAIN])
includeProject(":leanback:leanback-tab", "leanback/leanback-tab", [BuildType.MAIN])
includeProject(":lifecycle:integration-tests:incrementality", "lifecycle/integration-tests/incrementality", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:integration-tests:lifecycle-testapp", "lifecycle/integration-tests/testapp", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:integration-tests:lifecycle-testapp-kotlin", "lifecycle/integration-tests/kotlintestapp", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-common", "lifecycle/lifecycle-common", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-common-java8", "lifecycle/lifecycle-common-java8", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-compiler", "lifecycle/lifecycle-compiler", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-extensions", "lifecycle/lifecycle-extensions", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-livedata", "lifecycle/lifecycle-livedata", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-livedata-core", "lifecycle/lifecycle-livedata-core", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-livedata-core-ktx", "lifecycle/lifecycle-livedata-core-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-livedata-core-ktx-lint", "lifecycle/lifecycle-livedata-core-ktx-lint", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-livedata-core-truth", "lifecycle/lifecycle-livedata-core-truth", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-livedata-ktx", "lifecycle/lifecycle-livedata-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-process", "lifecycle/lifecycle-process", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-reactivestreams", "lifecycle/lifecycle-reactivestreams", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-reactivestreams-ktx", "lifecycle/lifecycle-reactivestreams-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-runtime", "lifecycle/lifecycle-runtime", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-runtime-ktx", "lifecycle/lifecycle-runtime-ktx", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-runtime-ktx-lint", "lifecycle/lifecycle-runtime-ktx-lint", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-runtime-testing", "lifecycle/lifecycle-runtime-testing", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-service", "lifecycle/lifecycle-service", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-viewmodel", "lifecycle/lifecycle-viewmodel", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lifecycle:lifecycle-viewmodel-compose", "lifecycle/lifecycle-viewmodel-compose", [BuildType.COMPOSE])
includeProject(":lifecycle:lifecycle-viewmodel-compose:lifecycle-viewmodel-compose-samples", "lifecycle/lifecycle-viewmodel-compose/samples", [BuildType.COMPOSE])
includeProject(":lifecycle:lifecycle-viewmodel-compose:integration-tests:lifecycle-viewmodel-demos", "lifecycle/lifecycle-viewmodel-compose/integration-tests/lifecycle-viewmodel-demos", [BuildType.COMPOSE])
includeProject(":lifecycle:lifecycle-viewmodel-ktx", "lifecycle/lifecycle-viewmodel-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":lifecycle:lifecycle-viewmodel-savedstate", "lifecycle/lifecycle-viewmodel-savedstate", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":lint-checks", "lint-checks")
includeProject(":lint-checks:integration-tests", "lint-checks/integration-tests")
includeProject(":lint-demos:lint-demo-appcompat", "lint-demos/lint-demo-appcompat", [BuildType.MAIN])
includeProject(":loader:loader", "loader/loader", [BuildType.MAIN])
includeProject(":loader:loader-ktx", "loader/loader-ktx", [BuildType.MAIN])
includeProject(":localbroadcastmanager:localbroadcastmanager", "localbroadcastmanager/localbroadcastmanager", [BuildType.MAIN])
includeProject(":media2:integration-tests:testapp", "media2/integration-tests/testapp", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-common", "media2/media2-common", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-exoplayer", "media2/media2-exoplayer", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-player", "media2/media2-player", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-session", "media2/media2-session", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-widget", "media2/media2-widget", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media:media", "media/media", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":mediarouter:mediarouter", "mediarouter/mediarouter", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":navigation:navigation-benchmark", "navigation/benchmark", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-common", "navigation/navigation-common", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE])
includeProject(":navigation:navigation-common-ktx", "navigation/navigation-common-ktx", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE])
includeProject(":navigation:navigation-compose", "navigation/navigation-compose", [BuildType.COMPOSE])
includeProject(":navigation:navigation-compose:navigation-compose-samples", "navigation/navigation-compose/samples", [BuildType.COMPOSE])
includeProject(":navigation:navigation-compose:integration-tests:navigation-demos", "navigation/navigation-compose/integration-tests/navigation-demos", [BuildType.COMPOSE])
includeProject(":navigation:navigation-dynamic-features-fragment", "navigation/navigation-dynamic-features-fragment", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-dynamic-features-runtime", "navigation/navigation-dynamic-features-runtime", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-fragment", "navigation/navigation-fragment", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-fragment-ktx", "navigation/navigation-fragment-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-integration-tests", "navigation/integration-tests", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-integration-tests:testapp", "navigation/integration-tests/testapp", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-runtime", "navigation/navigation-runtime", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE])
includeProject(":navigation:navigation-runtime-ktx", "navigation/navigation-runtime-ktx", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE])
includeProject(":navigation:navigation-runtime-truth", "navigation/navigation-runtime-truth", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-safe-args-generator", "navigation/navigation-safe-args-generator", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-safe-args-gradle-plugin", "navigation/navigation-safe-args-gradle-plugin", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-testing", "navigation/navigation-testing", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE])
includeProject(":navigation:navigation-ui", "navigation/navigation-ui", [BuildType.MAIN, BuildType.FLAN])
includeProject(":navigation:navigation-ui-ktx", "navigation/navigation-ui-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":paging:integration-tests:testapp", "paging/integration-tests/testapp", [BuildType.MAIN])
includeProject(":paging:paging-common", "paging/common", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":paging:paging-common-ktx", "paging/common/ktx", [BuildType.MAIN])
includeProject(":paging:paging-compose", "paging/paging-compose", [BuildType.COMPOSE])
includeProject(":paging:paging-compose:paging-compose-samples", "paging/paging-compose/samples", [BuildType.COMPOSE])
includeProject(":paging:paging-compose:integration-tests:paging-demos", "paging/paging-compose/integration-tests/paging-demos", [BuildType.COMPOSE])
includeProject(":paging:paging-guava", "paging/guava", [BuildType.MAIN])
includeProject(":paging:paging-runtime", "paging/runtime", [BuildType.MAIN])
includeProject(":paging:paging-runtime-ktx", "paging/runtime/ktx", [BuildType.MAIN])
includeProject(":paging:paging-rxjava2", "paging/rxjava2", [BuildType.MAIN])
includeProject(":paging:paging-rxjava2-ktx", "paging/rxjava2/ktx", [BuildType.MAIN])
includeProject(":paging:paging-rxjava3", "paging/rxjava3", [BuildType.MAIN])
includeProject(":paging:paging-samples", "paging/samples", [BuildType.MAIN])
includeProject(":palette:palette", "palette/palette", [BuildType.MAIN])
includeProject(":palette:palette-ktx", "palette/palette-ktx", [BuildType.MAIN])
includeProject(":percentlayout:percentlayout", "percentlayout/percentlayout", [BuildType.MAIN])
includeProject(":preference:preference", "preference/preference", [BuildType.MAIN])
includeProject(":preference:preference-ktx", "preference/preference-ktx", [BuildType.MAIN])
includeProject(":print:print", "print/print", [BuildType.MAIN])
includeProject(":profileinstaller:profileinstaller", "profileinstaller/profileinstaller", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":profileinstaller:profileinstaller:integration-tests:testapp", "profileinstaller/profileinstaller/integration-tests/testapp", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":recommendation:recommendation", "recommendation/recommendation", [BuildType.MAIN])
includeProject(":recyclerview:recyclerview", "recyclerview/recyclerview", [BuildType.MAIN])
includeProject(":recyclerview:recyclerview-benchmark", "recyclerview/recyclerview-benchmark", [BuildType.MAIN])
includeProject(":recyclerview:recyclerview-lint", "recyclerview/recyclerview-lint", [BuildType.MAIN])
includeProject(":recyclerview:recyclerview-selection", "recyclerview/recyclerview-selection", [BuildType.MAIN])
includeProject(":remotecallback:remotecallback", "remotecallback/remotecallback", [BuildType.MAIN])
includeProject(":remotecallback:remotecallback-processor", "remotecallback/processor", [BuildType.MAIN])
includeProject(":resourceinspection:resourceinspection-annotation", "resourceinspection/resourceinspection-annotation")
includeProject(":resourceinspection:resourceinspection-processor", "resourceinspection/resourceinspection-processor", [BuildType.MAIN])
includeProject(":room:integration-tests:room-incremental-annotation-processing", "room/integration-tests/incremental-annotation-processing", [BuildType.MAIN])
includeProject(":room:integration-tests:room-testapp", "room/integration-tests/testapp", [BuildType.MAIN])
includeProject(":room:integration-tests:room-testapp-autovalue", "room/integration-tests/autovaluetestapp", [BuildType.MAIN])
includeProject(":room:integration-tests:room-testapp-kotlin", "room/integration-tests/kotlintestapp", [BuildType.MAIN])
includeProject(":room:integration-tests:room-testapp-noappcompat", "room/integration-tests/noappcompattestapp", [BuildType.MAIN])
includeProject(":room:room-benchmark", "room/benchmark", [BuildType.MAIN])
includeProject(":room:room-common", "room/common", [BuildType.MAIN])
includeProject(":room:room-compiler", "room/compiler", [BuildType.MAIN])
includeProject(":room:room-compiler-processing", "room/compiler-processing", [BuildType.MAIN])
includeProject(":room:room-compiler-processing-testing", "room/compiler-processing-testing", [BuildType.MAIN])
includeProject(":room:room-guava", "room/guava", [BuildType.MAIN])
includeProject(":room:room-ktx", "room/ktx", [BuildType.MAIN])
includeProject(":room:room-migration", "room/migration", [BuildType.MAIN])
includeProject(":room:room-runtime", "room/runtime", [BuildType.MAIN])
includeProject(":room:room-rxjava2", "room/rxjava2", [BuildType.MAIN])
includeProject(":room:room-rxjava3", "room/rxjava3", [BuildType.MAIN])
includeProject(":room:room-testing", "room/testing", [BuildType.MAIN])
includeProject(":savedstate:savedstate", "savedstate/savedstate", [BuildType.MAIN, BuildType.FLAN, BuildType.WEAR])
includeProject(":savedstate:savedstate-ktx", "savedstate/savedstate-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":security:security-app-authenticator", "security/security-app-authenticator", [BuildType.MAIN])
includeProject(":security:security-biometric", "security/security-biometric", [BuildType.MAIN])
includeProject(":security:security-crypto", "security/crypto", [BuildType.MAIN])
includeProject(":security:security-crypto-ktx", "security/security-crypto-ktx", [BuildType.MAIN])
includeProject(":security:security-identity-credential", "security/identity-credential", [BuildType.MAIN])
includeProject(":sharetarget:integration-tests:testapp", "sharetarget/integration-tests/testapp", [BuildType.MAIN])
includeProject(":sharetarget:sharetarget", "sharetarget/sharetarget", [BuildType.MAIN])
includeProject(":slice-benchmark", "slices/benchmark", [BuildType.MAIN])
includeProject(":slice-builders", "slices/builders", [BuildType.MAIN])
includeProject(":slice-builders-ktx", "slices/builders/ktx", [BuildType.MAIN])
includeProject(":slice-core", "slices/core", [BuildType.MAIN])
includeProject(":slice-remotecallback", "slices/remotecallback", [BuildType.MAIN])
includeProject(":slice-test", "slices/test", [BuildType.MAIN])
includeProject(":slice-view", "slices/view", [BuildType.MAIN])
includeProject(":slidingpanelayout:slidingpanelayout", "slidingpanelayout/slidingpanelayout", [BuildType.MAIN])
includeProject(":sqlite:integration-tests:inspection-room-testapp", "sqlite/integration-tests/inspection-room-testapp", [BuildType.MAIN])
includeProject(":sqlite:integration-tests:inspection-sqldelight-testapp", "sqlite/integration-tests/inspection-sqldelight-testapp", [BuildType.MAIN])
includeProject(":sqlite:sqlite", "sqlite/sqlite", [BuildType.MAIN])
includeProject(":sqlite:sqlite-framework", "sqlite/sqlite-framework", [BuildType.MAIN])
includeProject(":sqlite:sqlite-inspection", "sqlite/sqlite-inspection", [BuildType.MAIN])
includeProject(":sqlite:sqlite-ktx", "sqlite/sqlite-ktx", [BuildType.MAIN])
includeProject(":startup:integration-tests:first-library", "startup/integration-tests/first-library", [BuildType.MAIN])
includeProject(":startup:integration-tests:second-library", "startup/integration-tests/second-library", [BuildType.MAIN])
includeProject(":startup:integration-tests:test-app", "startup/integration-tests/test-app", [BuildType.MAIN])
includeProject(":startup:startup-runtime", "startup/startup-runtime", [BuildType.MAIN])
includeProject(":startup:startup-runtime-lint", "startup/startup-runtime-lint", [BuildType.MAIN])
includeProject(":swiperefreshlayout:swiperefreshlayout", "swiperefreshlayout/swiperefreshlayout", [BuildType.MAIN])
includeProject(":test-screenshot", "test/screenshot")
includeProject(":test-screenshot-proto", "test/screenshot/proto", [BuildType.MAIN])
includeProject(":text:text", "text/text", [BuildType.COMPOSE])
includeProject(":textclassifier:integration-tests:testapp", "textclassifier/integration-tests/testapp", [BuildType.MAIN])
includeProject(":textclassifier:textclassifier", "textclassifier/textclassifier", [BuildType.MAIN])
includeProject(":tracing:tracing", "tracing/tracing")
includeProject(":tracing:tracing-ktx", "tracing/tracing-ktx")
includeProject(":transition:transition", "transition/transition", [BuildType.MAIN, BuildType.FLAN])
includeProject(":transition:transition-ktx", "transition/transition-ktx", [BuildType.MAIN, BuildType.FLAN])
includeProject(":tvprovider", "tv-provider", [BuildType.MAIN])
includeProject(":tvprovider:tvprovider", "tv-provider/tv-provider", [BuildType.MAIN])
includeProject(":ui", "ui/ui", [BuildType.COMPOSE])
includeProject(":ui:ui-animation-tooling-internal", "ui/ui-animation-tooling-internal", [BuildType.COMPOSE])
includeProject(":vectordrawable:integration-tests:testapp", "vectordrawable/integration-tests/testapp", [BuildType.MAIN])
includeProject(":vectordrawable:vectordrawable", "vectordrawable/vectordrawable", [BuildType.MAIN])
includeProject(":vectordrawable:vectordrawable-animated", "vectordrawable/vectordrawable-animated", [BuildType.MAIN])
includeProject(":vectordrawable:vectordrawable-seekable", "vectordrawable/vectordrawable-seekable", [BuildType.MAIN])
includeProject(":versionedparcelable:versionedparcelable", "versionedparcelable/versionedparcelable", [BuildType.MAIN])
includeProject(":versionedparcelable:versionedparcelable-compiler", "versionedparcelable/versionedparcelable-compiler", [BuildType.MAIN, BuildType.MEDIA, BuildType.WEAR])
includeProject(":viewpager2:integration-tests:testapp", "viewpager2/integration-tests/testapp", [BuildType.MAIN])
includeProject(":viewpager2:viewpager2", "viewpager2/viewpager2", [BuildType.MAIN])
includeProject(":viewpager:viewpager", "viewpager/viewpager", [BuildType.MAIN])
includeProject(":wear:wear", "wear/wear", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-complications-data", "wear/wear-complications-data", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-complications-provider", "wear/wear-complications-provider", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-complications-provider-samples", "wear/wear-complications-provider/samples", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:compose:compose-foundation", "wear/compose/foundation", [BuildType.COMPOSE])
includeProject(":wear:compose:compose-material", "wear/compose/material", [BuildType.COMPOSE])
includeProject(":wear:wear-input", "wear/wear-input", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-input-testing", "wear/wear-input-testing", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-ongoing", "wear/wear-ongoing", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-phone-interactions", "wear/wear-phone-interactions", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-remote-interactions", "wear/wear-remote-interactions", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:tiles:tiles", "wear/tiles/tiles", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:tiles:tiles-proto", "wear/tiles/tiles-proto", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:tiles:tiles-renderer", "wear/tiles/tiles-renderer", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface", "wear/wear-watchface", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-complications-rendering", "wear/wear-watchface-complications-rendering", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-client", "wear/wear-watchface-client", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-client-guava", "wear/wear-watchface-client/guava", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-data", "wear/wear-watchface-data", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-editor", "wear/wear-watchface-editor", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-editor-guava", "wear/wear-watchface-editor/guava", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-editor-samples", "wear/wear-watchface-editor/samples", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-guava", "wear/wear-watchface/guava", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-samples", "wear/wear-watchface/samples", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-samples-app", "wear/wear-watchface/samples/app", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-samples-minimal", "wear/wear-watchface/samples/minimal", [BuildType.MAIN, BuildType.WEAR])
includeProject(":wear:wear-watchface-style", "wear/wear-watchface-style", [BuildType.MAIN, BuildType.WEAR])
includeProject(":webkit:integration-tests:testapp", "webkit/integration-tests/testapp", [BuildType.MAIN])
includeProject(":webkit:webkit", "webkit/webkit", [BuildType.MAIN])
includeProject(":window:window", "window/window", [BuildType.MAIN])
includeProject(":window:window-extensions", "window/window-extensions", [BuildType.MAIN])
includeProject(":window:window-samples", "window/window-samples", [BuildType.MAIN])
includeProject(":window:window-sidecar", "window/window-sidecar", [BuildType.MAIN])
includeProject(":work:integration-tests:testapp", "work/integration-tests/testapp", [BuildType.MAIN])
includeProject(":work:work-benchmark", "work/workmanager-benchmark", [BuildType.MAIN])
includeProject(":work:work-gcm", "work/workmanager-gcm", [BuildType.MAIN])
includeProject(":work:work-inspection", "work/workmanager-inspection", [BuildType.MAIN])
includeProject(":work:work-multiprocess", "work/workmanager-multiprocess", [BuildType.MAIN])
includeProject(":work:work-runtime", "work/workmanager", [BuildType.MAIN])
includeProject(":work:work-runtime-ktx", "work/workmanager-ktx", [BuildType.MAIN])
includeProject(":work:work-runtime-lint", "work/workmanager-lint", [BuildType.MAIN])
includeProject(":work:work-rxjava2", "work/workmanager-rxjava2", [BuildType.MAIN])
includeProject(":work:work-rxjava3", "work/workmanager-rxjava3", [BuildType.MAIN])
includeProject(":work:work-testing", "work/workmanager-testing", [BuildType.MAIN])
/////////////////////////////
//
// Legacy
//
/////////////////////////////
includeProject(":legacy-support-core-utils", "legacy/core-utils", [BuildType.MAIN])
/////////////////////////////
//
// Samples
//
/////////////////////////////
File samplesRoot = new File(rootDir, "samples")
// Note: don't add new samples/ apps. Instead, Create
// <module>/integration-tests/testapp in the "Libraries" section above.
includeProject(":support-animation-demos", new File(samplesRoot, "SupportAnimationDemos"), [BuildType.MAIN])
includeProject(":support-content-demos", new File(samplesRoot, "SupportContentDemos"), [BuildType.MAIN])
includeProject(":support-emoji-demos", new File(samplesRoot, "SupportEmojiDemos"), [BuildType.MAIN])
includeProject(":support-leanback-demos", new File(samplesRoot, "SupportLeanbackDemos"), [BuildType.MAIN])
includeProject(":support-preference-demos", new File(samplesRoot, "SupportPreferenceDemos"), [BuildType.MAIN])
includeProject(":support-remotecallback-demos", new File(samplesRoot, "SupportRemoteCallbackDemos"), [BuildType.MAIN])
includeProject(":support-slices-demos", new File(samplesRoot, "SupportSliceDemos"), [BuildType.MAIN])
includeProject(":support-transition-demos", new File(samplesRoot, "SupportTransitionDemos"), [BuildType.MAIN])
includeProject(":support-v4-demos", new File(samplesRoot, "Support4Demos"), [BuildType.MAIN])
includeProject(":support-v7-demos", new File(samplesRoot, "Support7Demos"), [BuildType.MAIN])
includeProject(":support-wear-demos", new File(samplesRoot, "SupportWearDemos"), [BuildType.MAIN])
/////////////////////////////
//
// Testing libraries
//
/////////////////////////////
includeProject(":internal-testutils-common", "testutils/testutils-common", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":internal-testutils-runtime", "testutils/testutils-runtime", [BuildType.MAIN, BuildType.FLAN, BuildType.COMPOSE, BuildType.MEDIA, BuildType.WEAR])
includeProject(":internal-testutils-appcompat", "testutils/testutils-appcompat", [BuildType.MAIN])
includeProject(":internal-testutils-espresso", "testutils/testutils-espresso", [BuildType.MAIN])
includeProject(":internal-testutils-truth", "testutils/testutils-truth", [BuildType.MAIN, BuildType.FLAN])
includeProject(":internal-testutils-ktx", "testutils/testutils-ktx", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":internal-testutils-macrobenchmark", "testutils/testutils-macrobenchmark", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":internal-testutils-navigation", "testutils/testutils-navigation", [BuildType.MAIN, BuildType.COMPOSE, BuildType.FLAN])
includeProject(":internal-testutils-paging", "testutils/testutils-paging", [BuildType.MAIN, BuildType.COMPOSE])
includeProject(":internal-testutils-gradle-plugin", "testutils/testutils-gradle-plugin", [BuildType.MAIN, BuildType.FLAN])
includeProject(":internal-testutils-mockito", "testutils/testutils-mockito", [BuildType.MAIN, BuildType.MEDIA])
/////////////////////////////
//
// Applications and libraries for tests
//
/////////////////////////////
includeProject(":media:version-compat-tests:client",
"media/version-compat-tests/current/client", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media:version-compat-tests:client-previous",
"media/version-compat-tests/previous/client", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media:version-compat-tests:service",
"media/version-compat-tests/current/service", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media:version-compat-tests:service-previous",
"media/version-compat-tests/previous/service", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media:version-compat-tests:lib", "media/version-compat-tests/lib",
[BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-session:version-compat-tests:client",
"media2/media2-session/version-compat-tests/current/client", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-session:version-compat-tests:client-previous",
"media2/media2-session/version-compat-tests/previous/client", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-session:version-compat-tests:service",
"media2/media2-session/version-compat-tests/current/service", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-session:version-compat-tests:service-previous",
"media2/media2-session/version-compat-tests/previous/service", [BuildType.MAIN, BuildType.MEDIA])
includeProject(":media2:media2-session:version-compat-tests:common",
"media2/media2-session/version-compat-tests/common", [BuildType.MAIN, BuildType.MEDIA])
/////////////////////////////
//
// External
//
/////////////////////////////
apply(from: "include-composite-deps.gradle")
File externalRoot = new File(rootDir, "../../external")
includeProject(":icing", new File(externalRoot, "icing"), [BuildType.MAIN])
includeProject(":icing:nativeLib", new File(externalRoot, "icing/nativeLib"), [BuildType.MAIN])
includeProject(":noto-emoji-compat-font", new File(externalRoot, "noto-fonts/emoji-compat"), [BuildType.MAIN])
includeProject(":noto-emoji-compat-flatbuffers", new File(externalRoot, "noto-fonts/emoji-compat-flatbuffers"), [BuildType.MAIN])
if (isAllProjects()) {
includeProject(":docs-tip-of-tree", "docs-tip-of-tree")
includeProject(":docs-public", "docs-public")
}
// placeholder test project that has a test for each size to ensure that at least one test is run
// for each size and test runner is happy when there is nothing to test.
includeProject(":placeholder-tests", "placeholder-tests")
includeProject(":fakeannotations", "fakeannotations")
/////////////////////////////
//
// Remote build cache set up
//
/////////////////////////////
apply from: new File("buildSrc/remoteBuildCache.gradle")