blob: 296f748dd5edfb790f25b55dac0ef3f0bab4ccb5 [file] [log] [blame]
// Copyright (C) 2021 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 {
default_applicable_licenses: ["Android-Apache-2.0"],
}
apex {
name: "com.android.car.framework",
defaults: ["com.android.car.framework-defaults"],
manifest: "apex_manifest.json",
}
apex_defaults {
bootclasspath_fragments: ["com.android.car.framework-bootclasspath-fragment"],
systemserverclasspath_fragments: ["com.android.car.framework-systemserverclasspath-fragment"],
// TODO(b/202031799) Fix jni dependencies
//jni_libs: [
// "libcarservicejni",
//],
apps: [
"CarServiceUpdatable",
"ScriptExecutor",
],
compile_multilib: "both",
name: "com.android.car.framework-defaults",
min_sdk_version: "33",
file_contexts: ":com.android.car.framework-file_contexts",
key: "com.android.car.framework.key",
certificate: ":com.android.car.framework.certificate",
// TODO(b/202773532) Enable this after all dependencies are resolved.
updatable: false,
}
apex_key {
name: "com.android.car.framework.key",
public_key: "com.android.car.framework.avbpubkey",
private_key: "com.android.car.framework.pem",
}
android_app_certificate {
name: "com.android.car.framework.certificate",
// This will use com.android.car.framework.x509.pem (the cert) and
// com.android.car.framework.pk8 (the private key)
certificate: "com.android.car.framework",
}
systemserverclasspath_fragment {
name: "com.android.car.framework-systemserverclasspath-fragment",
contents: ["car-frameworks-service-module"],
apex_available: ["com.android.car.framework"],
}
bootclasspath_fragment {
name: "com.android.car.framework-bootclasspath-fragment",
contents: ["android.car-module"],
apex_available: ["com.android.car.framework"],
// The bootclasspath_fragments that provide APIs on which this depends.
fragments: [
{
apex: "com.android.art",
module: "art-bootclasspath-fragment",
},
// framework-statsd
{
apex: "com.android.os.statsd",
module: "com.android.os.statsd-bootclasspath-fragment",
},
// frameworks-wifi
{
apex: "com.android.wifi",
module: "com.android.wifi-bootclasspath-fragment",
},
],
// Additional stubs libraries that this fragment's contents use which are
// not provided by another bootclasspath_fragment.
additional_stubs: [
"android-non-updatable",
],
hidden_api: {
// This module does not contain any split packages.
split_packages: [],
// The following packages currently only contain classes from this
// bootclasspath_fragment but some of their sub-packages contain classes
// from other bootclasspath modules. Packages should only be listed here
// when necessary for legacy purposes, new packages should match a
// package prefix.
single_packages: [
"android.car",
],
// The following packages and all their subpackages currently only
// contain classes from this bootclasspath_fragment. Listing a package
// here won't prevent other bootclasspath modules from adding classes in
// any of those packages but it will prevent them from adding those
// classes into an API surface, e.g. public, system, etc.. Doing so will
// result in a build failure due to inconsistent flags.
package_prefixes: [
"android.car.admin",
"android.car.annotation",
"android.car.app",
"android.car.cluster",
"android.car.content",
"android.car.diagnostic",
"android.car.drivingstate",
"android.car.evs",
"android.car.hardware",
"android.car.input",
"android.car.media",
"android.car.navigation",
"android.car.occupantawareness",
"android.car.occupantconnection",
"android.car.oem",
"android.car.os",
"android.car.projection",
"android.car.remoteaccess",
"android.car.settings",
"android.car.storagemonitoring",
"android.car.telemetry",
"android.car.test",
"android.car.user",
"android.car.util",
"android.car.view",
"android.car.vms",
"android.car.watchdog",
"com.android.car",
],
},
}