blob: fdd050538eccf7a84d6f9b282c1e08e1551ff1c3 [file] [log] [blame]
// 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_srcjars = [
":android.content.pm.flags-aconfig-java{.generated_srcjars}",
":android.hardware.biometrics.flags-aconfig-java{.generated_srcjars}",
":android.net.vcn.flags-aconfig-java{.generated_srcjars}",
":android.nfc.flags-aconfig-java{.generated_srcjars}",
":android.os.flags-aconfig-java{.generated_srcjars}",
":android.security.flags-aconfig-java{.generated_srcjars}",
":com.android.hardware.camera2-aconfig-java{.generated_srcjars}",
":com.android.window.flags.window-aconfig-java{.generated_srcjars}",
":com.android.hardware.input-aconfig-java{.generated_srcjars}",
":com.android.text.flags-aconfig-java{.generated_srcjars}",
":com.android.net.flags-aconfig-java{.generated_srcjars}",
]
filegroup {
name: "framework-minus-apex-aconfig-srcjars",
srcs: aconfig_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: aconfig_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: ["core/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: "VanillaIceCream",
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,
mode: "test",
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"],
}
// 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"],
}
// CoreNetworking
java_aconfig_library {
name: "com.android.net.flags-aconfig-java",
aconfig_declarations: "com.android.net.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"],
}