// 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"], }