123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446 |
- // 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.
- package {
- // See: http://go/android-license-faq
- default_applicable_licenses: ["Android-Apache-2.0"],
- }
- min_launcher3_sdk_version = "26"
- // Common source files used to build launcher (java and kotlin)
- // All sources are split so they can be reused in many other libraries/apps in other folders
- filegroup {
- name: "launcher-src",
- srcs: [ "src/**/*.java", "src/**/*.kt" ],
- }
- filegroup {
- name: "launcher-quickstep-src",
- srcs: [ "quickstep/src/**/*.java", "quickstep/src/**/*.kt" ],
- }
- filegroup {
- name: "launcher-go-src",
- srcs: [ "go/src/**/*.java", "go/src/**/*.kt" ],
- }
- filegroup {
- name: "launcher-go-quickstep-src",
- srcs: [ "go/quickstep/src/**/*.java", "go/quickstep/src/**/*.kt" ],
- }
- filegroup {
- name: "launcher-src_shortcuts_overrides",
- srcs: [ "src_shortcuts_overrides/**/*.java", "src_shortcuts_overrides/**/*.kt" ],
- }
- filegroup {
- name: "launcher-src_ui_overrides",
- srcs: [ "src_ui_overrides/**/*.java", "src_ui_overrides/**/*.kt" ],
- }
- filegroup {
- name: "launcher-ext_tests",
- srcs: [ "ext_tests/**/*.java", "ext_tests/**/*.kt" ],
- }
- filegroup {
- name: "launcher-quickstep-ext_tests",
- srcs: [ "quickstep/ext_tests/**/*.java", "quickstep/ext_tests/**/*.kt" ],
- }
- // Proguard files for Launcher3
- filegroup {
- name: "launcher-proguard-rules",
- srcs: ["proguard.flags"],
- }
- android_library {
- name: "launcher-aosp-tapl",
- libs: [
- "framework-statsd",
- ],
- static_libs: [
- "androidx.annotation_annotation",
- "androidx.test.runner",
- "androidx.test.rules",
- "androidx.test.uiautomator_uiautomator",
- "androidx.preference_preference",
- "SystemUISharedLib",
- "SystemUIAnimationLib",
- "launcher-testing-shared",
- ],
- srcs: [
- "tests/tapl/**/*.java",
- ],
- resource_dirs: [ ],
- manifest: "tests/tapl/AndroidManifest.xml",
- platform_apis: true,
- }
- java_library_static {
- name: "launcher_log_protos_lite",
- srcs: [
- "protos/*.proto",
- "protos_overrides/*.proto",
- ],
- sdk_version: "current",
- proto: {
- type: "lite",
- local_include_dirs:[
- "protos",
- "protos_overrides",
- ],
- },
- static_libs: ["libprotobuf-java-lite"],
- }
- java_library_static {
- name: "launcher_quickstep_log_protos_lite",
- srcs: [
- "quickstep/protos_overrides/*.proto",
- ],
- sdk_version: "current",
- proto: {
- type: "lite",
- local_include_dirs:[
- "quickstep/protos_overrides",
- ],
- },
- static_libs: [
- "libprotobuf-java-lite",
- "launcher_log_protos_lite"
- ],
- }
- java_library {
- name: "LauncherPluginLib",
- static_libs: ["PluginCoreLib"],
- srcs: ["src_plugins/**/*.java"],
- sdk_version: "current",
- min_sdk_version: min_launcher3_sdk_version,
- }
- // Library with all the dependencies for building Launcher3
- android_library {
- name: "Launcher3ResLib",
- srcs: [ ],
- resource_dirs: ["res"],
- static_libs: [
- "LauncherPluginLib",
- "launcher_quickstep_log_protos_lite",
- "androidx-constraintlayout_constraintlayout",
- "androidx.recyclerview_recyclerview",
- "androidx.dynamicanimation_dynamicanimation",
- "androidx.fragment_fragment",
- "androidx.preference_preference",
- "androidx.slice_slice-view",
- "androidx.cardview_cardview",
- "com.google.android.material_material",
- "iconloader_base",
- "view_capture"
- ],
- manifest: "AndroidManifest-common.xml",
- sdk_version: "current",
- min_sdk_version: min_launcher3_sdk_version,
- lint: {
- baseline_filename: "lint-baseline-res-lib.xml",
- },
- }
- //
- // Build rule for Launcher3 dependencies lib.
- //
- android_library {
- name: "Launcher3CommonDepsLib",
- srcs: ["src_build_config/**/*.java"],
- static_libs: [
- "Launcher3ResLib",
- "launcher-testing-shared",
- ],
- sdk_version: "current",
- min_sdk_version: min_launcher3_sdk_version,
- manifest: "AndroidManifest-common.xml",
- lint: {
- baseline_filename: "lint-baseline-common-deps-lib.xml",
- },
- }
- //
- // Build rule for Launcher3 app.
- //
- android_app {
- name: "Launcher3",
- static_libs: [
- "Launcher3CommonDepsLib",
- ],
- srcs: [
- ":launcher-src",
- ":launcher-src_shortcuts_overrides",
- ":launcher-src_ui_overrides",
- ":launcher-ext_tests",
- ],
- resource_dirs: [
- "ext_tests/res",
- ],
- optimize: {
- proguard_flags_files: ["proguard.flags"],
- // Proguard is disable for testing. Derivarive prjects to keep proguard enabled
- enabled: false,
- },
- sdk_version: "current",
- min_sdk_version: min_launcher3_sdk_version,
- target_sdk_version: "current",
- privileged: true,
- system_ext_specific: true,
- overrides: [
- "Home",
- "Launcher2",
- ],
- required: ["privapp_whitelist_com.android.launcher3"],
- jacoco: {
- include_filter: ["com.android.launcher3.**"],
- },
- additional_manifests: [
- "AndroidManifest-common.xml",
- ],
- lint: {
- baseline_filename: "lint-baseline-launcher3.xml",
- },
- }
- // Library with all the dependencies for building quickstep
- android_library {
- name: "QuickstepResLib",
- srcs: [ ],
- resource_dirs: [
- "quickstep/res",
- ],
- libs: [
- "framework-statsd",
- ],
- static_libs: [
- "Launcher3ResLib",
- "lottie",
- "SystemUISharedLib",
- "SystemUI-statsd",
- "SystemUIAnimationLib",
- ],
- manifest: "quickstep/AndroidManifest.xml",
- min_sdk_version: "current",
- }
- // Library with all the dependencies for building Launcher Go
- android_library {
- name: "LauncherGoResLib",
- srcs: [
- ":launcher-src",
- ":launcher-quickstep-src",
- ":launcher-go-src",
- ":launcher-go-quickstep-src",
- ],
- resource_dirs: [
- "go/res",
- "go/quickstep/res",
- ],
- // Note the ordering here is important when it comes to resource
- // overriding. We want the most specific resource overrides defined
- // in QuickstepResLib to take precendece, so it should be the final
- // dependency. See b/205278434 for how this can go wrong.
- static_libs: [
- "Launcher3CommonDepsLib",
- "QuickstepResLib",
- "androidx.room_room-runtime",
- ],
- plugins: ["androidx.room_room-compiler-plugin"],
- manifest: "quickstep/AndroidManifest-launcher.xml",
- additional_manifests: [
- "go/AndroidManifest.xml",
- "AndroidManifest-common.xml",
- ],
- min_sdk_version: "current",
- lint: {
- baseline_filename: "lint-baseline-go-res-lib.xml",
- },
- }
- // Build rule for Quickstep library
- android_library {
- name: "Launcher3QuickStepLib",
- srcs: [
- ":launcher-src",
- ":launcher-quickstep-src",
- ":launcher-src_shortcuts_overrides",
- ],
- resource_dirs: [],
- libs: [
- "framework-statsd",
- ],
- // Note the ordering here is important when it comes to resource
- // overriding. We want the most specific resource overrides defined
- // in QuickstepResLib to take precendece, so it should be the final
- // dependency. See b/208647810 for how this can go wrong.
- static_libs: [
- "SystemUI-statsd",
- "SystemUISharedLib",
- "Launcher3CommonDepsLib",
- "QuickstepResLib",
- "SystemUIAnimationLib",
- ],
- manifest: "quickstep/AndroidManifest.xml",
- platform_apis: true,
- min_sdk_version: "current",
- lint: {
- baseline_filename: "lint-baseline-launcher3.xml",
- },
- }
- // Build rule for Launcher3 Go app for Android Go devices.
- android_app {
- name: "Launcher3Go",
- static_libs: ["Launcher3CommonDepsLib"],
- srcs: [
- ":launcher-src",
- ":launcher-go-src",
- ":launcher-src_ui_overrides",
- ],
- resource_dirs: ["go/res"],
- optimize: {
- proguard_flags_files: ["proguard.flags"],
- },
- sdk_version: "current",
- min_sdk_version: "current",
- target_sdk_version: "current",
- privileged: true,
- system_ext_specific: true,
- overrides: [
- "Home",
- "Launcher2",
- "Launcher3",
- "Launcher3QuickStep",
- ],
- required: ["privapp_whitelist_com.android.launcher3"],
- additional_manifests: [
- "AndroidManifest.xml",
- "AndroidManifest-common.xml",
- ],
- manifest: "go/AndroidManifest.xml",
- jacoco: {
- include_filter: ["com.android.launcher3.*"],
- }
- }
- // Build rule for Quickstep app.
- android_app {
- name: "Launcher3QuickStep",
- static_libs: ["Launcher3QuickStepLib"],
- optimize: {
- enabled: false,
- },
- platform_apis: true,
- min_sdk_version: "current",
- target_sdk_version: "current",
- privileged: true,
- system_ext_specific: true,
- overrides: [
- "Home",
- "Launcher2",
- "Launcher3",
- ],
- required: ["privapp_whitelist_com.android.launcher3"],
- resource_dirs: ["quickstep/res"],
- additional_manifests: [
- "quickstep/AndroidManifest-launcher.xml",
- "AndroidManifest-common.xml",
- ],
- manifest: "quickstep/AndroidManifest.xml",
- jacoco: {
- include_filter: ["com.android.launcher3.*"],
- }
- }
- // Build rule for Launcher3 Go app with quickstep for Android Go devices.
- android_app {
- name: "Launcher3QuickStepGo",
- static_libs: [
- "SystemUI-statsd",
- "SystemUISharedLib",
- "LauncherGoResLib",
- ],
- platform_apis: true,
- min_sdk_version: "current",
- target_sdk_version: "current",
- srcs: [ ],
- resource_dirs: [
- "go/quickstep/res",
- "go/res",
- "quickstep/res",
- ],
- optimize: {
- proguard_flags_files: ["proguard.flags"],
- enabled: true,
- },
- privileged: true,
- system_ext_specific: true,
- overrides: [
- "Home",
- "Launcher2",
- "Launcher3",
- "Launcher3QuickStep",
- ],
- required: ["privapp_whitelist_com.android.launcher3"],
- additional_manifests: [
- "go/AndroidManifest.xml",
- "go/AndroidManifest-launcher.xml",
- "AndroidManifest-common.xml",
- ],
- manifest: "quickstep/AndroidManifest.xml",
- jacoco: {
- include_filter: ["com.android.launcher3.*"],
- }
- }
|