Files
android/libwvdrmengine/apex/Android.bp
Robert Shih 6f03887937 Widevine version genrules (2nd attempt)
Bug: 327241925
Bug: 328438268
Test: dumpsys android.hardware.drm.IDrmFactory/widevine
Change-Id: I0336f366910de9c4ea8903b09d64c32b8d68c977
2024-03-06 11:18:07 -08:00

127 lines
3.8 KiB
Plaintext

// Copyright (C) 2022 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_team: "trendy_team_media_framework_drm",
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "vendor_widevine_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
// legacy_proprietary (by exception only)
default_applicable_licenses: ["vendor_widevine_license"],
}
soong_config_module_type {
name: "widevine_apex_defaults",
module_type: "apex_defaults",
config_namespace: "ANDROID",
bool_variables: ["TARGET_ENABLE_MEDIADRM_64"],
properties: ["compile_multilib"],
}
widevine_apex_defaults {
name: "com.google.android.widevine-defaults",
compile_multilib: "prefer32",
soong_config_variables: {
TARGET_ENABLE_MEDIADRM_64: {
compile_multilib: "first",
},
},
prebuilts: [
"com.google.android.widevine.xml", // etc/vintf
],
// TODO(b/274041915) remove updatable:false
updatable: false,
// TODO(b/268439003) We need an API to get apex version. Until then
// we'll read apex_manifest.pb to get the version. To label apex_manifest.pb
// as vendor_configs_file (which the apex can access), turn off force-label.
use_file_contexts_as_is: true,
min_sdk_version: "34",
vendor: true,
}
soong_config_module_type {
name: "widevine_key_apex_defaults",
module_type: "apex_defaults",
config_namespace: "widevine",
bool_variables: ["use_devkey"],
properties: [
"key",
"certificate",
],
}
widevine_key_apex_defaults {
name: "com.google.android.widevine-key-defaults",
key: "com.google.android.widevine.key",
certificate: ":com.google.android.widevine.certificate",
soong_config_variables: {
use_devkey: {
key: "com_google_android_widevine-image.key",
certificate: ":com_google_android_widevine-container",
},
},
}
apex {
name: "com.google.android.widevine",
manifest: ":widevine_apex_manifest.json",
prebuilts: [
"com.google.android.widevine.rc",
"com.google.android.widevine.xml", // etc/vintf
],
defaults: [
"com.google.android.widevine-defaults",
"com.google.android.widevine-key-defaults",
],
binaries: ["android.hardware.drm-service.widevine"],
file_contexts: "file_contexts",
// install sysconfig to allow the apex to be updatable
required: [
"allowlist_com.google.android.widevine.xml",
],
}
apex_key {
name: "com.google.android.widevine.key",
public_key: "com.google.android.widevine.avbpubkey",
private_key: "com.google.android.widevine.pem",
}
android_app_certificate {
name: "com.google.android.widevine.certificate",
certificate: "com.google.android.widevine",
}
prebuilt_etc {
name: "com.google.android.widevine.rc",
src: "com.google.android.widevine.rc",
}
prebuilt_etc {
name: "com.google.android.widevine.xml",
src: "com.google.android.widevine.xml",
sub_dir: "vintf",
installable: false,
}
prebuilt_etc {
name: "allowlist_com.google.android.widevine.xml",
src: "allowlist_com.google.android.widevine.xml",
vendor: true,
sub_dir: "sysconfig",
}