blob: e4344cd73b9e1aab413e004c5d098eae47e2d4e2 [file] [log] [blame]
pluginManagement {
repositories {
maven {
url = new File(buildscript.sourceFile.parent + "/../../../prebuilts/androidx/external").getCanonicalFile()
}
}
}
// 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) {
settings.include(name)
def file
if (filePath instanceof String) {
file = new File(rootDir, filePath)
} else {
file = filePath
}
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)
}
}
project(name).projectDir = file
}
includeProject(":annotation", "../annotation")
includeProject(":annotation:annotation-sampled", "../annotation/annotation-sampled")
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(":benchmark", "../benchmark")
includeProject(":benchmark:benchmark-common", "../benchmark/common")
includeProject(":benchmark:benchmark-junit4", "../benchmark/junit4")
includeProject(":compose", "../compose")
includeProject(":compose:compose-compiler", "../compose/compose-compiler")
includeProject(":compose:compose-compiler-hosted", "../compose/compose-compiler-hosted")
includeProject(":compose:compose-compiler-hosted:integration-tests", "../compose/compose-compiler-hosted/integration-tests")
includeProject(":compose:runtime:runtime-dispatch", "../compose/compose-dispatch")
includeProject(":compose:runtime:runtime", "../compose/compose-runtime")
includeProject(":compose:runtime:runtime:benchmark", "../compose/compose-runtime/compose-runtime-benchmark")
includeProject(":compose:runtime:runtime:samples", "../compose/compose-runtime/samples")
includeProject(":compose:runtime", "../compose/runtime")
includeProject(":lint-checks", "../lint-checks")
includeProject(":tracing", "../tracing")
includeProject(":tracing:tracing", "../tracing/tracing")
includeProject(":tracing:tracing-ktx", "../tracing/tracing-ktx")
includeProject(":compose:integration-tests:benchmark", "integration-tests/benchmark")
includeProject(":compose:integration-tests:demos", "integration-tests/demos")
includeProject(":compose:integration-tests:demos:common", "integration-tests/demos/common")
includeProject(":compose:integration-tests", "integration-tests")
includeProject(":compose:ui:ui-text-android", "ui-text-android")
includeProject(":compose:android-view", "../compose/android-view")
includeProject(":compose:android-view:android-view", "ui-android-view")
includeProject(":compose:android-view:android-view:integration-tests:android-view-demos", "ui-android-view/integration-tests/android-view-demos")
includeProject(":compose:android-view:android-view:samples", "ui-android-view/samples")
includeProject(":compose:animation", "../compose/animation")
includeProject(":compose:animation:animation", "ui-animation")
includeProject(":compose:animation:animation-core", "ui-animation-core")
includeProject(":compose:animation:animation-core:samples", "ui-animation-core/samples")
includeProject(":compose:animation:animation:integration-tests:animation-demos", "ui-animation/integration-tests/animation-demos")
includeProject(":compose:animation:animation:samples", "ui-animation/samples")
includeProject(":ui", "ui")
includeProject(":ui:ui-animation-tooling-internal", "ui-animation-tooling-internal")
includeProject(":compose:ui:ui", "ui-core")
includeProject(":compose:ui:ui:integration-tests:ui-demos", "ui-core/integration-tests/ui-core-demos")
includeProject(":compose:ui:ui:samples", "ui-core/samples")
if (!startParameter.projectProperties.containsKey('compose.desktop.disable')) {
includeProject(":compose:desktop", "../compose/desktop")
includeProject(":compose:desktop:desktop", "ui-desktop")
includeProject(":compose:desktop:desktop:samples", "ui-desktop/samples")
}
includeProject(":compose:foundation", "../compose/foundation")
includeProject(":compose:foundation:foundation", "ui-foundation")
includeProject(":compose:foundation:foundation:integration-tests:foundation-demos", "ui-foundation/integration-tests/foundation-demos")
includeProject(":compose:foundation:foundation:samples", "ui-foundation/samples")
includeProject(":compose:internal-lint-checks", "ui-internal-lint-checks")
includeProject(":compose:ui", "../compose/ui")
includeProject(":compose:ui:ui-geometry", "ui-geometry")
includeProject(":compose:ui:ui-graphics", "ui-graphics")
includeProject(":compose:ui:ui-graphics:samples", "ui-graphics/samples")
includeProject(":compose:foundation:foundation-layout", "ui-layout")
includeProject(":compose:foundation:foundation-layout:integration-tests:foundation-layout-demos", "ui-layout/integration-tests/layout-demos")
includeProject(":compose:foundation:foundation-layout:samples", "ui-layout/samples")
includeProject(":compose:material", "../compose/material")
includeProject(":compose:material:material", "ui-material")
includeProject(":compose:material:material:integration-tests:material-demos", "ui-material/integration-tests/material-demos")
includeProject(":compose:material:material:integration-tests:material-studies", "ui-material/integration-tests/material-studies")
includeProject(":compose:material:material:samples", "ui-material/samples")
includeProject(":compose:material:material-icons-core", "ui-material/icons/core")
includeProject(":compose:material:material-icons-core:samples", "ui-material/icons/core/samples")
includeProject(":compose:material:material-icons-extended", "ui-material/icons/extended")
includeProject(":compose:material:material:icons:generator", "ui-material/icons/generator")
includeProject(":ui:ui-test", "ui-test")
includeProject(":compose:ui:ui-test-font", "ui-test-font")
includeProject(":compose:foundation:foundation-text", "ui-text")
includeProject(":compose:foundation:foundation-text:integration-tests:foundation-text-demos", "ui-text/integration-tests/ui-text-compose-demos")
includeProject(":compose:foundation:foundation-text:samples", "ui-text/samples")
includeProject(":compose:ui:ui-text", "ui-text-core")
includeProject(":compose:ui:ui-text:samples", "ui-text-core/samples")
includeProject(":ui:ui-tooling", "ui-tooling")
includeProject(":compose:ui:ui-unit", "ui-unit")
includeProject(":compose:ui:ui-unit:samples", "ui-unit/samples")
includeProject(":compose:ui:ui-util", "ui-util")
includeProject(":compose:runtime:runtime-saved-instance-state", "ui-saved-instance-state")
includeProject(":compose:runtime:runtime-saved-instance-state:samples", "ui-saved-instance-state/samples")
includeProject(":compose:runtime:runtime-livedata", "ui-livedata")
includeProject(":compose:runtime:runtime-livedata:samples", "ui-livedata/samples")
includeProject(":test-screenshot", "../test/screenshot")
includeProject(":compose:runtime:runtime-rxjava2", "ui-rxjava2")
includeProject(":compose:runtime:runtime-rxjava2:samples", "ui-rxjava2/samples")
includeProject(":compose:ui:ui-viewbinding", "ui-core-viewbinding")
includeProject(":compose:ui:ui-viewbinding:samples", "ui-core-viewbinding/samples")
/////////////////////////////
//
// External
//
/////////////////////////////
apply(from: "../include-composite-deps.gradle")
if (!startParameter.projectProperties.containsKey('android.injected.invoked.from.ide')) {
// we don't need it in ide, so we don't configure it there
includeProject(":docs-fake", "../docs-fake")
includeProject(":docs-runner", "../docs-runner")
}
// 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')