| // Copyright (C) 2023 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. |
| |
| aconfig_declarations_group { |
| name: "framework-minus-apex-aconfig-declarations", |
| java_aconfig_libraries: [ |
| // !!! KEEP THIS LIST ALPHABETICAL !!! |
| "aconfig_mediacodec_flags_java_lib", |
| "android.content.pm.flags-aconfig-java", |
| "android.content.res.flags-aconfig-java", |
| "android.crashrecovery.flags-aconfig-java", |
| "android.hardware.biometrics.flags-aconfig-java", |
| "android.media.codec-aconfig-java", |
| "android.media.playback.flags-aconfig-java", |
| "android.net.platform.flags-aconfig-java", |
| "android.net.vcn.flags-aconfig-java", |
| "android.nfc.flags-aconfig-java", |
| "android.os.flags-aconfig-java", |
| "android.security.flags-aconfig-java", |
| "com.android.hardware.camera2-aconfig-java", |
| "com.android.hardware.input-aconfig-java", |
| "com.android.net.thread.platform.flags-aconfig-java", |
| "com.android.text.flags-aconfig-java", |
| "com.android.window.flags.window-aconfig-java", |
| // !!! KEEP THIS LIST ALPHABETICAL !!! |
| ], |
| } |
| |
| filegroup { |
| name: "framework-minus-apex-aconfig-srcjars", |
| srcs: [ |
| ":framework-minus-apex-aconfig-declarations{.srcjars}", |
| ], |
| } |
| |
| // Aconfig declarations and libraries for the core framework |
| java_defaults { |
| name: "framework-minus-apex-aconfig-libraries", |
| |
| // Add java_aconfig_libraries to here to add them to the core framework |
| // Add aconfig-annotations-lib as a dependency for the optimization |
| srcs: [ |
| ":framework-minus-apex-aconfig-declarations{.srcjars}", |
| ], |
| libs: ["aconfig-annotations-lib"], |
| } |
| |
| // Default flags for java_aconfig_libraries that go into framework-minus-apex |
| // These libraries will not work standalone |
| java_defaults { |
| name: "framework-minus-apex-aconfig-java-defaults", |
| sdk_version: "core_platform", |
| libs: ["fake_device_config"], |
| } |
| |
| // Camera |
| aconfig_declarations { |
| name: "com.android.hardware.camera2-aconfig", |
| package: "com.android.hardware.camera2", |
| srcs: ["core/java/android/hardware/camera2/camera_platform.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "com.android.hardware.camera2-aconfig-java", |
| aconfig_declarations: "com.android.hardware.camera2-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Window |
| aconfig_declarations { |
| name: "com.android.window.flags.window-aconfig", |
| package: "com.android.window.flags", |
| srcs: ["core/java/android/window/flags/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "com.android.window.flags.window-aconfig-java", |
| aconfig_declarations: "com.android.window.flags.window-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Input |
| aconfig_declarations { |
| name: "com.android.hardware.input.input-aconfig", |
| package: "com.android.hardware.input", |
| srcs: ["core/java/android/hardware/input/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "com.android.hardware.input-aconfig-java", |
| aconfig_declarations: "com.android.hardware.input.input-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Text |
| aconfig_declarations { |
| name: "com.android.text.flags-aconfig", |
| package: "com.android.text.flags", |
| srcs: ["core/java/android/text/flags/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "com.android.text.flags-aconfig-java", |
| aconfig_declarations: "com.android.text.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // OS |
| aconfig_declarations { |
| name: "android.os.flags-aconfig", |
| package: "android.os", |
| srcs: ["core/java/android/os/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.os.flags-aconfig-java", |
| aconfig_declarations: "android.os.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // NFC |
| aconfig_declarations { |
| name: "android.nfc.flags-aconfig", |
| package: "android.nfc", |
| srcs: ["nfc/java/android/nfc/*.aconfig"], |
| } |
| |
| cc_aconfig_library { |
| name: "android_nfc_flags_aconfig_c_lib", |
| vendor_available: true, |
| aconfig_declarations: "android.nfc.flags-aconfig", |
| apex_available: [ |
| "//apex_available:platform", |
| "com.android.nfcservices", |
| "nfc_nci.st21nfc.default", |
| ], |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| java_aconfig_library { |
| name: "android.nfc.flags-aconfig-java", |
| aconfig_declarations: "android.nfc.flags-aconfig", |
| min_sdk_version: "34", |
| apex_available: [ |
| "//apex_available:platform", |
| "com.android.nfcservices", |
| ], |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Security |
| aconfig_declarations { |
| name: "android.security.flags-aconfig", |
| package: "android.security", |
| srcs: ["core/java/android/security/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.security.flags-aconfig-java", |
| aconfig_declarations: "android.security.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| java_aconfig_library { |
| name: "android.security.flags-aconfig-java-host", |
| aconfig_declarations: "android.security.flags-aconfig", |
| host_supported: true, |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| rust_aconfig_library { |
| name: "libandroid_security_flags_rust", |
| crate_name: "android_security_flags", |
| aconfig_declarations: "android.security.flags-aconfig", |
| } |
| |
| // Package Manager |
| aconfig_declarations { |
| name: "android.content.pm.flags-aconfig", |
| package: "android.content.pm", |
| srcs: ["core/java/android/content/pm/flags.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.content.pm.flags-aconfig-java", |
| aconfig_declarations: "android.content.pm.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| java_aconfig_library { |
| name: "android.content.pm.flags-aconfig-java-host", |
| aconfig_declarations: "android.content.pm.flags-aconfig", |
| host_supported: true, |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Resources |
| aconfig_declarations { |
| name: "android.content.res.flags-aconfig", |
| package: "android.content.res", |
| srcs: ["core/java/android/content/res/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.content.res.flags-aconfig-java", |
| aconfig_declarations: "android.content.res.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Biometrics |
| aconfig_declarations { |
| name: "android.hardware.biometrics.flags-aconfig", |
| package: "android.hardware.biometrics", |
| srcs: ["core/java/android/hardware/biometrics/flags.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.hardware.biometrics.flags-aconfig-java", |
| aconfig_declarations: "android.hardware.biometrics.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Networking |
| aconfig_declarations { |
| name: "android.net.platform.flags-aconfig", |
| package: "android.net.platform.flags", |
| srcs: ["core/java/android/net/flags.aconfig"], |
| visibility: [":__subpackages__"], |
| } |
| |
| // Thread network |
| aconfig_declarations { |
| name: "com.android.net.thread.platform.flags-aconfig", |
| package: "com.android.net.thread.platform.flags", |
| srcs: ["core/java/android/net/thread/flags.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.net.platform.flags-aconfig-java", |
| aconfig_declarations: "android.net.platform.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| visibility: [":__subpackages__"], |
| } |
| |
| java_aconfig_library { |
| name: "com.android.net.thread.platform.flags-aconfig-java", |
| aconfig_declarations: "com.android.net.thread.platform.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // Media |
| aconfig_declarations { |
| name: "android.media.playback.flags-aconfig", |
| package: "com.android.media.playback.flags", |
| srcs: ["media/jni/playback_flags.aconfig"], |
| } |
| |
| cc_aconfig_library { |
| name: "android.media.playback.flags-aconfig-cc", |
| aconfig_declarations: "android.media.playback.flags-aconfig", |
| } |
| |
| java_aconfig_library { |
| name: "android.media.playback.flags-aconfig-java", |
| aconfig_declarations: "android.media.playback.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // VCN |
| aconfig_declarations { |
| name: "android.net.vcn.flags-aconfig", |
| package: "android.net.vcn", |
| srcs: ["core/java/android/net/vcn/*.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.net.vcn.flags-aconfig-java", |
| aconfig_declarations: "android.net.vcn.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |
| |
| // CrashRecovery Module |
| aconfig_declarations { |
| name: "android.crashrecovery.flags-aconfig", |
| package: "android.crashrecovery.flags", |
| srcs: ["packages/CrashRecovery/aconfig/flags.aconfig"], |
| } |
| |
| java_aconfig_library { |
| name: "android.crashrecovery.flags-aconfig-java", |
| aconfig_declarations: "android.crashrecovery.flags-aconfig", |
| defaults: ["framework-minus-apex-aconfig-java-defaults"], |
| } |