DO NOT MERGE - Merge Android 13

Bug: 242648940
Merged-In: Id4aaefbc53b4250b7308701493d151f9408f47f1
Change-Id: Ibbf423b395e45fb552c9d0b993378afac28b4a25
This commit is contained in:
Xin Li
2022-08-15 21:59:09 -07:00
25 changed files with 418 additions and 133 deletions

View File

@@ -6863,8 +6863,6 @@ else
sdk_atree_files += $(atree_dir)/sdk.atree sdk_atree_files += $(atree_dir)/sdk.atree
endif endif
include $(BUILD_SYSTEM)/sdk_font.mk
deps := \ deps := \
$(OUT_DOCS)/offline-sdk-timestamp \ $(OUT_DOCS)/offline-sdk-timestamp \
$(SDK_METADATA_FILES) \ $(SDK_METADATA_FILES) \
@@ -6872,8 +6870,7 @@ deps := \
$(ATREE_FILES) \ $(ATREE_FILES) \
$(sdk_atree_files) \ $(sdk_atree_files) \
$(HOST_OUT_EXECUTABLES)/atree \ $(HOST_OUT_EXECUTABLES)/atree \
$(HOST_OUT_EXECUTABLES)/line_endings \ $(HOST_OUT_EXECUTABLES)/line_endings
$(SDK_FONT_DEPS)
INTERNAL_SDK_TARGET := $(sdk_dir)/$(sdk_name).zip INTERNAL_SDK_TARGET := $(sdk_dir)/$(sdk_name).zip
$(INTERNAL_SDK_TARGET): PRIVATE_NAME := $(sdk_name) $(INTERNAL_SDK_TARGET): PRIVATE_NAME := $(sdk_name)
@@ -6896,7 +6893,6 @@ $(INTERNAL_SDK_TARGET): $(deps)
fi; \ fi; \
done; \ done; \
if [ $$FAIL ]; then exit 1; fi if [ $$FAIL ]; then exit 1; fi
$(hide) echo $(notdir $(SDK_FONT_DEPS)) | tr " " "\n" > $(SDK_FONT_TEMP)/fontsInSdk.txt
$(hide) ( \ $(hide) ( \
ATREE_STRIP="$(HOST_STRIP) -x" \ ATREE_STRIP="$(HOST_STRIP) -x" \
$(HOST_OUT_EXECUTABLES)/atree \ $(HOST_OUT_EXECUTABLES)/atree \
@@ -6912,7 +6908,6 @@ $(INTERNAL_SDK_TARGET): $(deps)
-v "TARGET_ARCH=$(TARGET_ARCH)" \ -v "TARGET_ARCH=$(TARGET_ARCH)" \
-v "TARGET_CPU_ABI=$(TARGET_CPU_ABI)" \ -v "TARGET_CPU_ABI=$(TARGET_CPU_ABI)" \
-v "DLL_EXTENSION=$(HOST_SHLIB_SUFFIX)" \ -v "DLL_EXTENSION=$(HOST_SHLIB_SUFFIX)" \
-v "FONT_OUT=$(SDK_FONT_TEMP)" \
-o $(PRIVATE_DIR) && \ -o $(PRIVATE_DIR) && \
HOST_OUT_EXECUTABLES=$(HOST_OUT_EXECUTABLES) HOST_OS=$(HOST_OS) \ HOST_OUT_EXECUTABLES=$(HOST_OUT_EXECUTABLES) HOST_OS=$(HOST_OS) \
development/build/tools/sdk_clean.sh $(PRIVATE_DIR) && \ development/build/tools/sdk_clean.sh $(PRIVATE_DIR) && \
@@ -7001,6 +6996,10 @@ $(call dist-for-goals,haiku-java,$(SOONG_JAVA_FUZZ_PACKAGING_ARCH_MODULES))
haiku-rust: $(SOONG_RUST_FUZZ_PACKAGING_ARCH_MODULES) $(ALL_RUST_FUZZ_TARGETS) haiku-rust: $(SOONG_RUST_FUZZ_PACKAGING_ARCH_MODULES) $(ALL_RUST_FUZZ_TARGETS)
$(call dist-for-goals,haiku-rust,$(SOONG_RUST_FUZZ_PACKAGING_ARCH_MODULES)) $(call dist-for-goals,haiku-rust,$(SOONG_RUST_FUZZ_PACKAGING_ARCH_MODULES))
# -----------------------------------------------------------------
# Extract platform fonts used in Layoutlib
include $(BUILD_SYSTEM)/layoutlib_fonts.mk
# ----------------------------------------------------------------- # -----------------------------------------------------------------
# OS Licensing # OS Licensing

View File

@@ -76,7 +76,9 @@ $(call soong_config_set,art_module,source_build,$(ART_MODULE_BUILD_FROM_SOURCE))
# are controlled by the MODULE_BUILD_FROM_SOURCE environment variable by # are controlled by the MODULE_BUILD_FROM_SOURCE environment variable by
# default. # default.
INDIVIDUALLY_TOGGLEABLE_PREBUILT_MODULES := \ INDIVIDUALLY_TOGGLEABLE_PREBUILT_MODULES := \
bluetooth \
permission \ permission \
uwb \
wifi \ wifi \
$(foreach m, $(INDIVIDUALLY_TOGGLEABLE_PREBUILT_MODULES),\ $(foreach m, $(INDIVIDUALLY_TOGGLEABLE_PREBUILT_MODULES),\
@@ -117,3 +119,11 @@ else
SYSTEM_OPTIMIZE_JAVA ?= true SYSTEM_OPTIMIZE_JAVA ?= true
endif endif
$(call add_soong_config_var,ANDROID,SYSTEM_OPTIMIZE_JAVA) $(call add_soong_config_var,ANDROID,SYSTEM_OPTIMIZE_JAVA)
# Check for SupplementalApi module.
ifeq ($(wildcard packages/modules/SupplementalApi),)
$(call add_soong_config_var_value,ANDROID,include_nonpublic_framework_api,false)
else
$(call add_soong_config_var_value,ANDROID,include_nonpublic_framework_api,true)
endif

View File

@@ -128,6 +128,9 @@ else
LOCAL_CERTIFICATE := $(dir $(DEFAULT_SYSTEM_DEV_CERTIFICATE))$(LOCAL_CERTIFICATE) LOCAL_CERTIFICATE := $(dir $(DEFAULT_SYSTEM_DEV_CERTIFICATE))$(LOCAL_CERTIFICATE)
endif endif
# NOTE(ruperts): Consider moving the logic below out of a conditional,
# to avoid the possibility of silently ignoring user settings.
PACKAGES.$(LOCAL_MODULE).PRIVATE_KEY := $(LOCAL_CERTIFICATE).pk8 PACKAGES.$(LOCAL_MODULE).PRIVATE_KEY := $(LOCAL_CERTIFICATE).pk8
PACKAGES.$(LOCAL_MODULE).CERTIFICATE := $(LOCAL_CERTIFICATE).x509.pem PACKAGES.$(LOCAL_MODULE).CERTIFICATE := $(LOCAL_CERTIFICATE).x509.pem
PACKAGES := $(PACKAGES) $(LOCAL_MODULE) PACKAGES := $(PACKAGES) $(LOCAL_MODULE)
@@ -142,6 +145,8 @@ else
$(built_module): $(LOCAL_CERTIFICATE_LINEAGE) $(built_module): $(LOCAL_CERTIFICATE_LINEAGE)
$(built_module): PRIVATE_CERTIFICATE_LINEAGE := $(LOCAL_CERTIFICATE_LINEAGE) $(built_module): PRIVATE_CERTIFICATE_LINEAGE := $(LOCAL_CERTIFICATE_LINEAGE)
$(built_module): PRIVATE_ROTATION_MIN_SDK_VERSION := $(LOCAL_ROTATION_MIN_SDK_VERSION)
endif endif
ifneq ($(LOCAL_MODULE_STEM),) ifneq ($(LOCAL_MODULE_STEM),)

View File

@@ -820,7 +820,7 @@ BUILD_DATETIME_FROM_FILE := $$(cat $(BUILD_DATETIME_FILE))
# is made which breaks compatibility with the previous platform sepolicy version, # is made which breaks compatibility with the previous platform sepolicy version,
# not just on every increase in PLATFORM_SDK_VERSION. The minor version should # not just on every increase in PLATFORM_SDK_VERSION. The minor version should
# be reset to 0 on every bump of the PLATFORM_SDK_VERSION. # be reset to 0 on every bump of the PLATFORM_SDK_VERSION.
sepolicy_major_vers := 32 sepolicy_major_vers := 33
sepolicy_minor_vers := 0 sepolicy_minor_vers := 0
ifneq ($(sepolicy_major_vers), $(PLATFORM_SDK_VERSION)) ifneq ($(sepolicy_major_vers), $(PLATFORM_SDK_VERSION))

View File

@@ -2822,6 +2822,7 @@ define sign-package-arg
$(hide) mv $(1) $(1).unsigned $(hide) mv $(1) $(1).unsigned
$(hide) $(JAVA) -Djava.library.path=$$(dirname $(SIGNAPK_JNI_LIBRARY_PATH)) -jar $(SIGNAPK_JAR) \ $(hide) $(JAVA) -Djava.library.path=$$(dirname $(SIGNAPK_JNI_LIBRARY_PATH)) -jar $(SIGNAPK_JAR) \
$(if $(strip $(PRIVATE_CERTIFICATE_LINEAGE)), --lineage $(PRIVATE_CERTIFICATE_LINEAGE)) \ $(if $(strip $(PRIVATE_CERTIFICATE_LINEAGE)), --lineage $(PRIVATE_CERTIFICATE_LINEAGE)) \
$(if $(strip $(PRIVATE_ROTATION_MIN_SDK_VERSION)), --rotation-min-sdk-version $(PRIVATE_ROTATION_MIN_SDK_VERSION)) \
$(PRIVATE_CERTIFICATE) $(PRIVATE_PRIVATE_KEY) \ $(PRIVATE_CERTIFICATE) $(PRIVATE_PRIVATE_KEY) \
$(PRIVATE_ADDITIONAL_CERTIFICATES) $(1).unsigned $(1).signed $(PRIVATE_ADDITIONAL_CERTIFICATES) $(1).unsigned $(1).signed
$(hide) mv $(1).signed $(1) $(hide) mv $(1).signed $(1)

35
core/layoutlib_fonts.mk Normal file
View File

@@ -0,0 +1,35 @@
# Fonts for layoutlib
FONT_TEMP := $(call intermediates-dir-for,PACKAGING,fonts,HOST,COMMON)
# The font configuration files - system_fonts.xml, fallback_fonts.xml etc.
font_config := $(sort $(wildcard frameworks/base/data/fonts/*.xml))
font_config := $(addprefix $(FONT_TEMP)/, $(notdir $(font_config)))
$(font_config): $(FONT_TEMP)/%.xml: \
frameworks/base/data/fonts/%.xml
$(hide) mkdir -p $(dir $@)
$(hide) cp -vf $< $@
# List of fonts on the device that we want to ship. This is all .ttf, .ttc and .otf fonts.
fonts_device := $(filter $(TARGET_OUT)/fonts/%.ttf $(TARGET_OUT)/fonts/%.ttc $(TARGET_OUT)/fonts/%.otf, $(INTERNAL_SYSTEMIMAGE_FILES))
fonts_device := $(addprefix $(FONT_TEMP)/, $(notdir $(fonts_device)))
# TODO: If the font file is a symlink, reuse the font renamed from the symlink
# target.
$(fonts_device): $(FONT_TEMP)/%: $(TARGET_OUT)/fonts/%
$(hide) mkdir -p $(dir $@)
$(hide) cp -vf $< $@
# List of all dependencies - all fonts and configuration files.
FONT_FILES := $(fonts_device) $(font_config)
.PHONY: layoutlib layoutlib-tests
layoutlib layoutlib-tests: $(FONT_FILES)
$(call dist-for-goals, layoutlib, $(foreach m,$(FONT_FILES), $(m):layoutlib_native/fonts/$(notdir $(m))))
FONT_TEMP :=
font_config :=
fonts_device :=
FONT_FILES :=

View File

@@ -481,6 +481,8 @@ $(LOCAL_BUILT_MODULE): PRIVATE_ADDITIONAL_CERTIFICATES := $(additional_certifica
$(LOCAL_BUILT_MODULE): $(LOCAL_CERTIFICATE_LINEAGE) $(LOCAL_BUILT_MODULE): $(LOCAL_CERTIFICATE_LINEAGE)
$(LOCAL_BUILT_MODULE): PRIVATE_CERTIFICATE_LINEAGE := $(LOCAL_CERTIFICATE_LINEAGE) $(LOCAL_BUILT_MODULE): PRIVATE_CERTIFICATE_LINEAGE := $(LOCAL_CERTIFICATE_LINEAGE)
$(LOCAL_BUILT_MODULE): PRIVATE_ROTATION_MIN_SDK_VERSION := $(LOCAL_ROTATION_MIN_SDK_VERSION)
# Set a actual_partition_tag (calculated in base_rules.mk) for the package. # Set a actual_partition_tag (calculated in base_rules.mk) for the package.
PACKAGES.$(LOCAL_PACKAGE_NAME).PARTITION := $(actual_partition_tag) PACKAGES.$(LOCAL_PACKAGE_NAME).PARTITION := $(actual_partition_tag)

View File

@@ -429,7 +429,7 @@ endif
# Show a warning wall of text if non-compliance-GSI products set this option. # Show a warning wall of text if non-compliance-GSI products set this option.
ifdef PRODUCT_INSTALL_DEBUG_POLICY_TO_SYSTEM_EXT ifdef PRODUCT_INSTALL_DEBUG_POLICY_TO_SYSTEM_EXT
ifeq (,$(filter gsi_arm gsi_arm64 gsi_x86 gsi_x86_64 gsi_car_arm64 gsi_car_x86_64,$(PRODUCT_NAME))) ifeq (,$(filter gsi_arm gsi_arm64 gsi_x86 gsi_x86_64 gsi_car_arm64 gsi_car_x86_64 gsi_tv_arm gsi_tv_arm64,$(PRODUCT_NAME)))
$(warning PRODUCT_INSTALL_DEBUG_POLICY_TO_SYSTEM_EXT is set but \ $(warning PRODUCT_INSTALL_DEBUG_POLICY_TO_SYSTEM_EXT is set but \
PRODUCT_NAME ($(PRODUCT_NAME)) doesn't look like a GSI for compliance \ PRODUCT_NAME ($(PRODUCT_NAME)) doesn't look like a GSI for compliance \
testing. This is a special configuration for compliance GSI, so do make \ testing. This is a special configuration for compliance GSI, so do make \

View File

@@ -46,12 +46,6 @@ ifneq ($(filter-out false,$(USE_RBE)),)
cxx_compare := false cxx_compare := false
endif endif
ifdef RBE_CXX_COMPARE
cxx_compare := $(RBE_CXX_COMPARE)
else
cxx_compare := "false"
endif
ifdef RBE_JAVAC_EXEC_STRATEGY ifdef RBE_JAVAC_EXEC_STRATEGY
javac_exec_strategy := $(RBE_JAVAC_EXEC_STRATEGY) javac_exec_strategy := $(RBE_JAVAC_EXEC_STRATEGY)
else else

View File

@@ -1,66 +0,0 @@
###############################################################################
# Fonts shipped with the SDK need to be renamed for Java to handle them
# properly. Hence, a special script is used to rename the fonts. We bundle all
# the fonts that are shipped on a newer non-space-constrained device. However,
# OpenType fonts used on these devices are not supported by Java. Their
# replacements are added separately.
###############################################################################
# The script that renames the font.
sdk_font_rename_script := frameworks/layoutlib/rename_font/build_font_single.py
# Location of the fonttools library that the above script depends on.
fonttools_lib := external/fonttools/Lib
# A temporary location to store the renamed fonts. atree picks all files in
# this directory and bundles it with the SDK.
SDK_FONT_TEMP := $(call intermediates-dir-for,PACKAGING,sdk-fonts,HOST,COMMON)
# The font configuration files - system_fonts.xml, fallback_fonts.xml etc.
sdk_font_config := $(sort $(wildcard frameworks/base/data/fonts/*.xml))
sdk_font_config := $(addprefix $(SDK_FONT_TEMP)/standard/, $(notdir $(sdk_font_config)))
$(sdk_font_config): $(SDK_FONT_TEMP)/standard/%.xml: \
frameworks/base/data/fonts/%.xml
$(hide) mkdir -p $(dir $@)
$(hide) cp -vf $< $@
# List of fonts on the device that we want to ship. This is all .ttf fonts.
sdk_fonts_device := $(filter $(TARGET_OUT)/fonts/%.ttf, $(INTERNAL_SYSTEMIMAGE_FILES))
sdk_fonts_device := $(addprefix $(SDK_FONT_TEMP)/, $(notdir $(sdk_fonts_device)))
# Macro to rename the font.
sdk_rename_font = PYTHONPATH=$$PYTHONPATH:$(fonttools_lib) $(sdk_font_rename_script) \
$1 $2
# TODO: If the font file is a symlink, reuse the font renamed from the symlink
# target.
$(sdk_fonts_device): $(SDK_FONT_TEMP)/%.ttf: $(TARGET_OUT)/fonts/%.ttf \
$(sdk_font_rename_script)
$(hide) mkdir -p $(dir $@)
$(hide) $(call sdk_rename_font,$<,$@)
# List of all dependencies - all fonts and configuration files.
SDK_FONT_DEPS := $(sdk_fonts_device) $(sdk_font_config)
# Define a macro to create rule for addititional fonts that we want to include
# in the SDK.
# $1 Output font name
# $2 Source font path
define sdk-extra-font-rule
fontfullname := $$(SDK_FONT_TEMP)/$1
ifeq ($$(filter $$(fontfullname),$$(sdk_fonts_device)),)
SDK_FONT_DEPS += $$(fontfullname)
$$(fontfullname): $2 $$(sdk_font_rename_script)
$$(hide) mkdir -p $$(dir $$@)
$$(hide) $$(call sdk_rename_font,$$<,$$@)
endif
fontfullname :=
endef
# These extra fonts are used as a replacement for OpenType fonts.
$(eval $(call sdk-extra-font-rule,NanumGothic.ttf,external/naver-fonts/NanumGothic.ttf))
$(eval $(call sdk-extra-font-rule,DroidSansFallback.ttf,frameworks/base/data/fonts/DroidSansFallbackFull.ttf))
sdk-extra-font-rule :=

View File

@@ -42,24 +42,23 @@ endif
DEFAULT_PLATFORM_VERSION := UP1A DEFAULT_PLATFORM_VERSION := UP1A
.KATI_READONLY := DEFAULT_PLATFORM_VERSION .KATI_READONLY := DEFAULT_PLATFORM_VERSION
MIN_PLATFORM_VERSION := TP1A MIN_PLATFORM_VERSION := UP1A
MAX_PLATFORM_VERSION := UP1A MAX_PLATFORM_VERSION := UP1A
# The last stable version name of the platform that was released. During # The last stable version name of the platform that was released. During
# development, this stays at that previous version, while the codename indicates # development, this stays at that previous version, while the codename indicates
# further work based on the previous version. # further work based on the previous version.
PLATFORM_VERSION_LAST_STABLE := 12 PLATFORM_VERSION_LAST_STABLE := 13
.KATI_READONLY := PLATFORM_VERSION_LAST_STABLE .KATI_READONLY := PLATFORM_VERSION_LAST_STABLE
# These are the current development codenames, if the build is not a final # These are the current development codenames, if the build is not a final
# release build. If this is a final release build, it is simply "REL". # release build. If this is a final release build, it is simply "REL".
PLATFORM_VERSION_CODENAME.TP1A := Tiramisu
PLATFORM_VERSION_CODENAME.UP1A := UpsideDownCake PLATFORM_VERSION_CODENAME.UP1A := UpsideDownCake
# This is the user-visible version. In a final release build it should # This is the user-visible version. In a final release build it should
# be empty to use PLATFORM_VERSION as the user-visible version. For # be empty to use PLATFORM_VERSION as the user-visible version. For
# a preview release it can be set to a user-friendly value like `12 Preview 1` # a preview release it can be set to a user-friendly value like `12 Preview 1`
PLATFORM_DISPLAY_VERSION := PLATFORM_DISPLAY_VERSION := 13
ifndef PLATFORM_SDK_VERSION ifndef PLATFORM_SDK_VERSION
# This is the canonical definition of the SDK version, which defines # This is the canonical definition of the SDK version, which defines
@@ -74,16 +73,16 @@ ifndef PLATFORM_SDK_VERSION
# When you increment the PLATFORM_SDK_VERSION please ensure you also # When you increment the PLATFORM_SDK_VERSION please ensure you also
# clear out the following text file of all older PLATFORM_VERSION's: # clear out the following text file of all older PLATFORM_VERSION's:
# cts/tests/tests/os/assets/platform_versions.txt # cts/tests/tests/os/assets/platform_versions.txt
PLATFORM_SDK_VERSION := 32 PLATFORM_SDK_VERSION := 33
endif endif
.KATI_READONLY := PLATFORM_SDK_VERSION .KATI_READONLY := PLATFORM_SDK_VERSION
# This is the sdk extension version of this tree. # This is the sdk extension version of this tree.
PLATFORM_SDK_EXTENSION_VERSION := 1 PLATFORM_SDK_EXTENSION_VERSION := 3
.KATI_READONLY := PLATFORM_SDK_EXTENSION_VERSION .KATI_READONLY := PLATFORM_SDK_EXTENSION_VERSION
# This is the sdk extension version that PLATFORM_SDK_VERSION ships with. # This is the sdk extension version that PLATFORM_SDK_VERSION ships with.
PLATFORM_BASE_SDK_EXTENSION_VERSION := 1 PLATFORM_BASE_SDK_EXTENSION_VERSION := 3
.KATI_READONLY := PLATFORM_BASE_SDK_EXTENSION_VERSION .KATI_READONLY := PLATFORM_BASE_SDK_EXTENSION_VERSION
# This are all known codenames. # This are all known codenames.
@@ -104,9 +103,7 @@ ifndef PLATFORM_SECURITY_PATCH
# It must be of the form "YYYY-MM-DD" on production devices. # It must be of the form "YYYY-MM-DD" on production devices.
# It must match one of the Android Security Patch Level strings of the Public Security Bulletins. # It must match one of the Android Security Patch Level strings of the Public Security Bulletins.
# If there is no $PLATFORM_SECURITY_PATCH set, keep it empty. # If there is no $PLATFORM_SECURITY_PATCH set, keep it empty.
PLATFORM_SECURITY_PATCH := 2022-07-05 PLATFORM_SECURITY_PATCH := 2022-08-05
endif endif
.KATI_READONLY := PLATFORM_SECURITY_PATCH
include $(BUILD_SYSTEM)/version_util.mk include $(BUILD_SYSTEM)/version_util.mk

View File

@@ -799,6 +799,10 @@ function lunch()
set_stuff_for_environment set_stuff_for_environment
[[ -n "${ANDROID_QUIET_BUILD:-}" ]] || printconfig [[ -n "${ANDROID_QUIET_BUILD:-}" ]] || printconfig
destroy_build_var_cache destroy_build_var_cache
if [[ -n "${CHECK_MU_CONFIG:-}" ]]; then
check_mu_config
fi
} }
unset COMMON_LUNCH_CHOICES_CACHE unset COMMON_LUNCH_CHOICES_CACHE

View File

@@ -5,6 +5,7 @@
# Using sha256 for dm-verity partitions. b/156162446 # Using sha256 for dm-verity partitions. b/156162446
# system, system_other, system_ext and product. # system, system_other, system_ext and product.
BOARD_AVB_SYSTEM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256 BOARD_AVB_SYSTEM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
BOARD_AVB_SYSTEM_DLKM_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
BOARD_AVB_SYSTEM_OTHER_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256 BOARD_AVB_SYSTEM_OTHER_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
BOARD_AVB_SYSTEM_EXT_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256 BOARD_AVB_SYSTEM_EXT_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256
BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256 BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS += --hash_algorithm sha256

View File

@@ -50,7 +50,9 @@ PRODUCT_PACKAGES += \
charger \ charger \
cmd \ cmd \
com.android.adbd \ com.android.adbd \
com.android.adservices \
com.android.appsearch \ com.android.appsearch \
com.android.btservices \
com.android.conscrypt \ com.android.conscrypt \
com.android.cronet \ com.android.cronet \
com.android.extservices \ com.android.extservices \
@@ -60,15 +62,16 @@ PRODUCT_PACKAGES += \
com.android.media \ com.android.media \
com.android.media.swcodec \ com.android.media.swcodec \
com.android.mediaprovider \ com.android.mediaprovider \
com.android.ondevicepersonalization \
com.android.os.statsd \ com.android.os.statsd \
com.android.permission \ com.android.permission \
com.android.resolv \ com.android.resolv \
com.android.neuralnetworks \ com.android.neuralnetworks \
com.android.scheduling \ com.android.scheduling \
com.android.sdkext \ com.android.sdkext \
com.android.sepolicy \
com.android.tethering \ com.android.tethering \
com.android.tzdata \ com.android.tzdata \
com.android.uwb \
com.android.wifi \ com.android.wifi \
ContactsProvider \ ContactsProvider \
content \ content \
@@ -366,7 +369,6 @@ PRODUCT_SYSTEM_PROPERTIES += persist.traced.enable=1
PRODUCT_PACKAGES_DEBUG := \ PRODUCT_PACKAGES_DEBUG := \
adb_keys \ adb_keys \
arping \ arping \
com.android.sepolicy.cert-debug.der \
dmuserd \ dmuserd \
idlcli \ idlcli \
init-debug.rc \ init-debug.rc \

View File

@@ -51,12 +51,16 @@ PRODUCT_BOOT_JARS += \
# Note: core-icu4j is moved back to PRODUCT_BOOT_JARS in product_config.mk at a later stage. # Note: core-icu4j is moved back to PRODUCT_BOOT_JARS in product_config.mk at a later stage.
# Note: For modules available in Q, DO NOT add new entries here. # Note: For modules available in Q, DO NOT add new entries here.
PRODUCT_APEX_BOOT_JARS := \ PRODUCT_APEX_BOOT_JARS := \
com.android.adservices:framework-adservices \
com.android.adservices:framework-sdksandbox \
com.android.appsearch:framework-appsearch \ com.android.appsearch:framework-appsearch \
com.android.btservices:framework-bluetooth \
com.android.conscrypt:conscrypt \ com.android.conscrypt:conscrypt \
com.android.i18n:core-icu4j \ com.android.i18n:core-icu4j \
com.android.ipsec:android.net.ipsec.ike \ com.android.ipsec:android.net.ipsec.ike \
com.android.media:updatable-media \ com.android.media:updatable-media \
com.android.mediaprovider:framework-mediaprovider \ com.android.mediaprovider:framework-mediaprovider \
com.android.ondevicepersonalization:framework-ondevicepersonalization \
com.android.os.statsd:framework-statsd \ com.android.os.statsd:framework-statsd \
com.android.permission:framework-permission \ com.android.permission:framework-permission \
com.android.permission:framework-permission-s \ com.android.permission:framework-permission-s \
@@ -65,12 +69,15 @@ PRODUCT_APEX_BOOT_JARS := \
com.android.tethering:framework-connectivity \ com.android.tethering:framework-connectivity \
com.android.tethering:framework-connectivity-t \ com.android.tethering:framework-connectivity-t \
com.android.tethering:framework-tethering \ com.android.tethering:framework-tethering \
com.android.wifi:framework-wifi com.android.uwb:framework-uwb \
com.android.wifi:framework-wifi \
# List of system_server classpath jars delivered via apex. # List of system_server classpath jars delivered via apex.
# Keep the list sorted by module names and then library names. # Keep the list sorted by module names and then library names.
# Note: For modules available in Q, DO NOT add new entries here. # Note: For modules available in Q, DO NOT add new entries here.
PRODUCT_APEX_SYSTEM_SERVER_JARS := \ PRODUCT_APEX_SYSTEM_SERVER_JARS := \
com.android.adservices:service-adservices \
com.android.adservices:service-sdksandbox \
com.android.appsearch:service-appsearch \ com.android.appsearch:service-appsearch \
com.android.art:service-art \ com.android.art:service-art \
com.android.media:service-media-s \ com.android.media:service-media-s \
@@ -90,9 +97,11 @@ PRODUCT_STANDALONE_SYSTEM_SERVER_JARS := \
# Keep the list sorted by module names and then library names. # Keep the list sorted by module names and then library names.
# Note: For modules available in Q, DO NOT add new entries here. # Note: For modules available in Q, DO NOT add new entries here.
PRODUCT_APEX_STANDALONE_SYSTEM_SERVER_JARS := \ PRODUCT_APEX_STANDALONE_SYSTEM_SERVER_JARS := \
com.android.btservices:service-bluetooth \
com.android.os.statsd:service-statsd \ com.android.os.statsd:service-statsd \
com.android.scheduling:service-scheduling \ com.android.scheduling:service-scheduling \
com.android.tethering:service-connectivity \ com.android.tethering:service-connectivity \
com.android.uwb:service-uwb \
com.android.wifi:service-wifi \ com.android.wifi:service-wifi \
# Minimal configuration for running dex2oat (default argument values). # Minimal configuration for running dex2oat (default argument values).

View File

@@ -28,12 +28,6 @@ PRODUCT_PACKAGES += \
PhotoTable \ PhotoTable \
preinstalled-packages-platform-full-base.xml preinstalled-packages-platform-full-base.xml
# Bluetooth:
# audio.a2dp.default is a system module. Generic system image includes
# audio.a2dp.default to support A2DP if board has the capability.
PRODUCT_PACKAGES += \
audio.a2dp.default
# Net: # Net:
# Vendors can use the platform-provided network configuration utilities (ip, # Vendors can use the platform-provided network configuration utilities (ip,
# iptable, etc.) to configure the Linux networking stack, but these utilities # iptable, etc.) to configure the Linux networking stack, but these utilities

View File

@@ -52,11 +52,6 @@ PRODUCT_PACKAGES += \
cppreopts.sh \ cppreopts.sh \
otapreopt_script \ otapreopt_script \
# Bluetooth libraries
PRODUCT_PACKAGES += \
audio.a2dp.default \
audio.hearing_aid.default \
# For ringtones that rely on forward lock encryption # For ringtones that rely on forward lock encryption
PRODUCT_PACKAGES += libfwdlockengine PRODUCT_PACKAGES += libfwdlockengine

254
target/product/gsi/33.txt Normal file
View File

@@ -0,0 +1,254 @@
LLNDK: libEGL.so
LLNDK: libGLESv1_CM.so
LLNDK: libGLESv2.so
LLNDK: libGLESv3.so
LLNDK: libRS.so
LLNDK: libandroid_net.so
LLNDK: libbinder_ndk.so
LLNDK: libc.so
LLNDK: libcgrouprc.so
LLNDK: libdl.so
LLNDK: libft2.so
LLNDK: liblog.so
LLNDK: libm.so
LLNDK: libmediandk.so
LLNDK: libnativewindow.so
LLNDK: libneuralnetworks.so
LLNDK: libselinux.so
LLNDK: libsync.so
LLNDK: libvndksupport.so
LLNDK: libvulkan.so
VNDK-SP: android.hardware.common-V2-ndk.so
VNDK-SP: android.hardware.common.fmq-V1-ndk.so
VNDK-SP: android.hardware.graphics.allocator-V1-ndk.so
VNDK-SP: android.hardware.graphics.common-V3-ndk.so
VNDK-SP: android.hardware.graphics.common@1.0.so
VNDK-SP: android.hardware.graphics.common@1.1.so
VNDK-SP: android.hardware.graphics.common@1.2.so
VNDK-SP: android.hardware.graphics.composer3-V1-ndk.so
VNDK-SP: android.hardware.graphics.mapper@2.0.so
VNDK-SP: android.hardware.graphics.mapper@2.1.so
VNDK-SP: android.hardware.graphics.mapper@3.0.so
VNDK-SP: android.hardware.graphics.mapper@4.0.so
VNDK-SP: android.hardware.renderscript@1.0.so
VNDK-SP: android.hidl.memory.token@1.0.so
VNDK-SP: android.hidl.memory@1.0-impl.so
VNDK-SP: android.hidl.memory@1.0.so
VNDK-SP: android.hidl.safe_union@1.0.so
VNDK-SP: libRSCpuRef.so
VNDK-SP: libRSDriver.so
VNDK-SP: libRS_internal.so
VNDK-SP: libbacktrace.so
VNDK-SP: libbase.so
VNDK-SP: libbcinfo.so
VNDK-SP: libblas.so
VNDK-SP: libc++.so
VNDK-SP: libcompiler_rt.so
VNDK-SP: libcutils.so
VNDK-SP: libdmabufheap.so
VNDK-SP: libgralloctypes.so
VNDK-SP: libhardware.so
VNDK-SP: libhidlbase.so
VNDK-SP: libhidlmemory.so
VNDK-SP: libion.so
VNDK-SP: libjsoncpp.so
VNDK-SP: liblzma.so
VNDK-SP: libprocessgroup.so
VNDK-SP: libunwindstack.so
VNDK-SP: libutils.so
VNDK-SP: libutilscallstack.so
VNDK-SP: libz.so
VNDK-core: android.hardware.audio.common-V1-ndk.so
VNDK-core: android.hardware.audio.common@2.0.so
VNDK-core: android.hardware.authsecret-V1-ndk.so
VNDK-core: android.hardware.automotive.occupant_awareness-V1-ndk.so
VNDK-core: android.hardware.bluetooth.audio-V2-ndk.so
VNDK-core: android.hardware.camera.common-V1-ndk.so
VNDK-core: android.hardware.camera.device-V1-ndk.so
VNDK-core: android.hardware.camera.metadata-V1-ndk.so
VNDK-core: android.hardware.camera.provider-V1-ndk.so
VNDK-core: android.hardware.configstore-utils.so
VNDK-core: android.hardware.configstore@1.0.so
VNDK-core: android.hardware.configstore@1.1.so
VNDK-core: android.hardware.confirmationui-support-lib.so
VNDK-core: android.hardware.drm-V1-ndk.so
VNDK-core: android.hardware.dumpstate-V1-ndk.so
VNDK-core: android.hardware.gnss-V2-ndk.so
VNDK-core: android.hardware.graphics.allocator@2.0.so
VNDK-core: android.hardware.graphics.allocator@3.0.so
VNDK-core: android.hardware.graphics.allocator@4.0.so
VNDK-core: android.hardware.graphics.bufferqueue@1.0.so
VNDK-core: android.hardware.graphics.bufferqueue@2.0.so
VNDK-core: android.hardware.health-V1-ndk.so
VNDK-core: android.hardware.health.storage-V1-ndk.so
VNDK-core: android.hardware.identity-V4-ndk.so
VNDK-core: android.hardware.ir-V1-ndk.so
VNDK-core: android.hardware.keymaster-V3-ndk.so
VNDK-core: android.hardware.light-V2-ndk.so
VNDK-core: android.hardware.media.bufferpool@2.0.so
VNDK-core: android.hardware.media.omx@1.0.so
VNDK-core: android.hardware.media@1.0.so
VNDK-core: android.hardware.memtrack-V1-ndk.so
VNDK-core: android.hardware.memtrack@1.0.so
VNDK-core: android.hardware.nfc-V1-ndk.so
VNDK-core: android.hardware.oemlock-V1-ndk.so
VNDK-core: android.hardware.power-V3-ndk.so
VNDK-core: android.hardware.power.stats-V1-ndk.so
VNDK-core: android.hardware.radio-V1-ndk.so
VNDK-core: android.hardware.radio.config-V1-ndk.so
VNDK-core: android.hardware.radio.data-V1-ndk.so
VNDK-core: android.hardware.radio.messaging-V1-ndk.so
VNDK-core: android.hardware.radio.modem-V1-ndk.so
VNDK-core: android.hardware.radio.network-V1-ndk.so
VNDK-core: android.hardware.radio.sim-V1-ndk.so
VNDK-core: android.hardware.radio.voice-V1-ndk.so
VNDK-core: android.hardware.rebootescrow-V1-ndk.so
VNDK-core: android.hardware.security.dice-V1-ndk.so
VNDK-core: android.hardware.security.keymint-V2-ndk.so
VNDK-core: android.hardware.security.secureclock-V1-ndk.so
VNDK-core: android.hardware.security.sharedsecret-V1-ndk.so
VNDK-core: android.hardware.sensors-V1-ndk.so
VNDK-core: android.hardware.soundtrigger3-V1-ndk.so
VNDK-core: android.hardware.soundtrigger@2.0-core.so
VNDK-core: android.hardware.soundtrigger@2.0.so
VNDK-core: android.hardware.usb-V1-ndk.so
VNDK-core: android.hardware.uwb-V1-ndk.so
VNDK-core: android.hardware.vibrator-V2-ndk.so
VNDK-core: android.hardware.weaver-V1-ndk.so
VNDK-core: android.hardware.wifi.hostapd-V1-ndk.so
VNDK-core: android.hardware.wifi.supplicant-V1-ndk.so
VNDK-core: android.hidl.token@1.0-utils.so
VNDK-core: android.hidl.token@1.0.so
VNDK-core: android.media.audio.common.types-V1-ndk.so
VNDK-core: android.media.soundtrigger.types-V1-ndk.so
VNDK-core: android.system.keystore2-V2-ndk.so
VNDK-core: android.system.suspend-V1-ndk.so
VNDK-core: android.system.suspend@1.0.so
VNDK-core: libaudioroute.so
VNDK-core: libaudioutils.so
VNDK-core: libbinder.so
VNDK-core: libbufferqueueconverter.so
VNDK-core: libcamera_metadata.so
VNDK-core: libcap.so
VNDK-core: libcn-cbor.so
VNDK-core: libcodec2.so
VNDK-core: libcrypto.so
VNDK-core: libcrypto_utils.so
VNDK-core: libcurl.so
VNDK-core: libdiskconfig.so
VNDK-core: libdumpstateutil.so
VNDK-core: libevent.so
VNDK-core: libexif.so
VNDK-core: libexpat.so
VNDK-core: libfmq.so
VNDK-core: libgatekeeper.so
VNDK-core: libgui.so
VNDK-core: libhardware_legacy.so
VNDK-core: libhidlallocatorutils.so
VNDK-core: libjpeg.so
VNDK-core: libldacBT_abr.so
VNDK-core: libldacBT_enc.so
VNDK-core: liblz4.so
VNDK-core: libmedia_helper.so
VNDK-core: libmedia_omx.so
VNDK-core: libmemtrack.so
VNDK-core: libminijail.so
VNDK-core: libmkbootimg_abi_check.so
VNDK-core: libnetutils.so
VNDK-core: libnl.so
VNDK-core: libpcre2.so
VNDK-core: libpiex.so
VNDK-core: libpng.so
VNDK-core: libpower.so
VNDK-core: libprocinfo.so
VNDK-core: libradio_metadata.so
VNDK-core: libspeexresampler.so
VNDK-core: libsqlite.so
VNDK-core: libssl.so
VNDK-core: libstagefright_bufferpool@2.0.so
VNDK-core: libstagefright_bufferqueue_helper.so
VNDK-core: libstagefright_foundation.so
VNDK-core: libstagefright_omx.so
VNDK-core: libstagefright_omx_utils.so
VNDK-core: libstagefright_xmlparser.so
VNDK-core: libsysutils.so
VNDK-core: libtinyalsa.so
VNDK-core: libtinyxml2.so
VNDK-core: libui.so
VNDK-core: libusbhost.so
VNDK-core: libwifi-system-iface.so
VNDK-core: libxml2.so
VNDK-core: libyuv.so
VNDK-core: libziparchive.so
VNDK-private: libbacktrace.so
VNDK-private: libblas.so
VNDK-private: libcompiler_rt.so
VNDK-private: libft2.so
VNDK-private: libgui.so
VNDK-product: android.hardware.audio.common@2.0.so
VNDK-product: android.hardware.configstore@1.0.so
VNDK-product: android.hardware.configstore@1.1.so
VNDK-product: android.hardware.graphics.allocator@2.0.so
VNDK-product: android.hardware.graphics.allocator@3.0.so
VNDK-product: android.hardware.graphics.allocator@4.0.so
VNDK-product: android.hardware.graphics.bufferqueue@1.0.so
VNDK-product: android.hardware.graphics.bufferqueue@2.0.so
VNDK-product: android.hardware.graphics.common@1.0.so
VNDK-product: android.hardware.graphics.common@1.1.so
VNDK-product: android.hardware.graphics.common@1.2.so
VNDK-product: android.hardware.graphics.mapper@2.0.so
VNDK-product: android.hardware.graphics.mapper@2.1.so
VNDK-product: android.hardware.graphics.mapper@3.0.so
VNDK-product: android.hardware.graphics.mapper@4.0.so
VNDK-product: android.hardware.media.bufferpool@2.0.so
VNDK-product: android.hardware.media.omx@1.0.so
VNDK-product: android.hardware.media@1.0.so
VNDK-product: android.hardware.memtrack@1.0.so
VNDK-product: android.hardware.renderscript@1.0.so
VNDK-product: android.hardware.soundtrigger@2.0.so
VNDK-product: android.hidl.memory.token@1.0.so
VNDK-product: android.hidl.memory@1.0.so
VNDK-product: android.hidl.safe_union@1.0.so
VNDK-product: android.hidl.token@1.0.so
VNDK-product: android.system.suspend@1.0.so
VNDK-product: libaudioutils.so
VNDK-product: libbacktrace.so
VNDK-product: libbase.so
VNDK-product: libc++.so
VNDK-product: libcamera_metadata.so
VNDK-product: libcap.so
VNDK-product: libcompiler_rt.so
VNDK-product: libcrypto.so
VNDK-product: libcurl.so
VNDK-product: libcutils.so
VNDK-product: libevent.so
VNDK-product: libexpat.so
VNDK-product: libfmq.so
VNDK-product: libhidlbase.so
VNDK-product: libhidlmemory.so
VNDK-product: libion.so
VNDK-product: libjpeg.so
VNDK-product: libjsoncpp.so
VNDK-product: libldacBT_abr.so
VNDK-product: libldacBT_enc.so
VNDK-product: liblz4.so
VNDK-product: liblzma.so
VNDK-product: libminijail.so
VNDK-product: libnl.so
VNDK-product: libpcre2.so
VNDK-product: libpiex.so
VNDK-product: libpng.so
VNDK-product: libprocessgroup.so
VNDK-product: libprocinfo.so
VNDK-product: libspeexresampler.so
VNDK-product: libssl.so
VNDK-product: libtinyalsa.so
VNDK-product: libtinyxml2.so
VNDK-product: libunwindstack.so
VNDK-product: libutils.so
VNDK-product: libutilscallstack.so
VNDK-product: libwifi-system-iface.so
VNDK-product: libxml2.so
VNDK-product: libyuv.so
VNDK-product: libz.so
VNDK-product: libziparchive.so

View File

@@ -20,10 +20,12 @@ LLNDK: libvndksupport.so
LLNDK: libvulkan.so LLNDK: libvulkan.so
VNDK-SP: android.hardware.common-V2-ndk.so VNDK-SP: android.hardware.common-V2-ndk.so
VNDK-SP: android.hardware.common.fmq-V1-ndk.so VNDK-SP: android.hardware.common.fmq-V1-ndk.so
VNDK-SP: android.hardware.graphics.common-V2-ndk.so VNDK-SP: android.hardware.graphics.allocator-V1-ndk.so
VNDK-SP: android.hardware.graphics.common-V3-ndk.so
VNDK-SP: android.hardware.graphics.common@1.0.so VNDK-SP: android.hardware.graphics.common@1.0.so
VNDK-SP: android.hardware.graphics.common@1.1.so VNDK-SP: android.hardware.graphics.common@1.1.so
VNDK-SP: android.hardware.graphics.common@1.2.so VNDK-SP: android.hardware.graphics.common@1.2.so
VNDK-SP: android.hardware.graphics.composer3-V1-ndk.so
VNDK-SP: android.hardware.graphics.mapper@2.0.so VNDK-SP: android.hardware.graphics.mapper@2.0.so
VNDK-SP: android.hardware.graphics.mapper@2.1.so VNDK-SP: android.hardware.graphics.mapper@2.1.so
VNDK-SP: android.hardware.graphics.mapper@3.0.so VNDK-SP: android.hardware.graphics.mapper@3.0.so

View File

@@ -34,7 +34,6 @@ $(call inherit-product-if-exists, frameworks/webview/chromium/chromium.mk)
PRODUCT_PACKAGES += \ PRODUCT_PACKAGES += \
BasicDreams \ BasicDreams \
BlockedNumberProvider \ BlockedNumberProvider \
Bluetooth \
BluetoothMidiService \ BluetoothMidiService \
BookmarkProvider \ BookmarkProvider \
BuiltInPrintService \ BuiltInPrintService \

View File

@@ -1,14 +0,0 @@
# Copyright (C) 2020 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.
#

Binary file not shown.

View File

@@ -0,0 +1,36 @@
-----BEGIN CERTIFICATE-----
MIIGOzCCBCOgAwIBAgIUEiZapaWZVSter06CJMf2kHi8PIswDQYJKoZIhvcNAQEL
BQAwgasxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMRYwFAYDVQQH
DA1Nb3VudGFpbiBWaWV3MRAwDgYDVQQKDAdBbmRyb2lkMRAwDgYDVQQLDAdBbmRy
b2lkMScwJQYDVQQDDB5jb20uYW5kcm9pZC5ibHVldG9vdGguc2VydmljZXMxIjAg
BgkqhkiG9w0BCQEWE2FuZHJvaWRAYW5kcm9pZC5jb20wIBcNMjIwMzE1MDAzNjAz
WhgPNDc2MDAyMDkwMDM2MDNaMIGrMQswCQYDVQQGEwJVUzETMBEGA1UECAwKQ2Fs
aWZvcm5pYTEWMBQGA1UEBwwNTW91bnRhaW4gVmlldzEQMA4GA1UECgwHQW5kcm9p
ZDEQMA4GA1UECwwHQW5kcm9pZDEnMCUGA1UEAwweY29tLmFuZHJvaWQuYmx1ZXRv
b3RoLnNlcnZpY2VzMSIwIAYJKoZIhvcNAQkBFhNhbmRyb2lkQGFuZHJvaWQuY29t
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAsVlq9pozUREGlb8u8Y0A
fYwPs5OuavNx/EsX03aTjmAXUfSOMAewqzUXDIRjw8UQvOW63utaZ0go9osDPzNf
VEftmGxW/AUC+HWGaLDQfCYO3ficPPOS7xpEhGZERNbnhvh5qX0NBt6mJygsfpOm
RPThbi6Ig2Brxh1eqVYqRkTjhNFKD6gCd1PdMmUSF88xEYaZWvTkET89Zh38lLza
2x/wfNZmCSAVurNw1Kf9NQfYsaGHwMsjrvTyhG93TTYXzRBFzAO2WlBiw6R0tQr8
ZW5XCM9Yo6AS0KXiU0ZWwOXxhGdr38rNd7j9nZtpFwWmN1kgeb/vpEfq0Ylua9By
uURnfJZu2K4TbFamuyjihItra2ZKOtFNPDeuggKMCkuZz6WU8FCoMEpnq5P2agxN
OGAa7ynXdNzek98N3TGX8qtfEgCv6vyuM0gakJ6D9nM43nsCm1LkB/JA0CacWyRz
ljaLL1C4S43azEOYyOOb94ITnkZCQGtH33kxzamyPLIZ37VF4+v6yTXySLBzOnhe
Os5uBIDohVJuI838bLhZf8e5mIrnjiKwsmExXiQvgidbwvZKCz9n8YT4iUhWPx4F
W+GPcivZsvsECcnJ2QURK1zhir5QuLS7ZbAth4kiEUxJ6ujF5jftE+L/ClK2LiY0
2IXWRCct8J1hfJZZx8lm3PUCAwEAAaNTMFEwHQYDVR0OBBYEFO5CgtQzKbTEd/Q9
rxK14a9BBwFZMB8GA1UdIwQYMBaAFO5CgtQzKbTEd/Q9rxK14a9BBwFZMA8GA1Ud
EwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggIBAGrGS1zmaoARVq7qhoY+xzSc
1I/Tzf6vG6aHBC+CcIoSM2oqr6TGH+ADHAY6jhu/qzv1ij3gtoInAkBtkWvYsCIV
eISPj8Qomcd8EIeW77p+ArKzS4HY5m1c/O4D/5rkl6c0exFq4Pdw9V8xyM98QtLd
oj4xzzXUTPOIwkROHkj8otcML28m/MC0l/4b+flHnPqKFuLBjhxi9b/ZfwaXfjkx
TcXpM3nPH8zN7kaJpS1fPW1IJyxJYvT022uK+afpezTmyS/50aOncUGjDJRw8CcO
B88O8lpizDD3tD7P6jVOpRRJS4SnkVErbIn1xdWER6ubhnnycH7UmDVIx+vNd/t6
YDa377au8Za+LnbDPfV1+Og+RaJSEIjJgfYyqnjBxGdRGN21VbqJdRzo/eO4ZFd2
mGVtMosVr0jw4O8r60o9oMMWBTbFpxOI929QdcV+X1Lz8A8BZz0faXfZ2Z9usctu
W2FtZge3tsJ07z7kuhNdbnm2yQVfd0FqiJsapUjlhgcdFVoDWPuqOfWAoG31ble6
eiNnxfjiCckPWyciIE6lw97nvavGjlUacH5qVG86hOWU7xyBgeQ0PH4e+Nxr50yU
A0GMxni1gefZFG8qEPdNRuDT1QdqDGh/8Ea11GEUMXdAxk0UzqyAtLDr6MbwK6lV
mqmeueFdogdjvQ3mXe94
-----END CERTIFICATE-----

View File

@@ -99,15 +99,15 @@ Usage: sign_target_files_apks [flags] input_target_files output_target_files
The second dir will be used for lookup if BOARD_USES_RECOVERY_AS_BOOT is The second dir will be used for lookup if BOARD_USES_RECOVERY_AS_BOOT is
set to true. set to true.
--avb_{boot,system,system_other,vendor,dtbo,vbmeta,vbmeta_system, --avb_{boot,recovery,system,system_other,vendor,dtbo,vbmeta,vbmeta_system,
vbmeta_vendor}_algorithm <algorithm> vbmeta_vendor}_algorithm <algorithm>
--avb_{boot,system,system_other,vendor,dtbo,vbmeta,vbmeta_system, --avb_{boot,recovery,system,system_other,vendor,dtbo,vbmeta,vbmeta_system,
vbmeta_vendor}_key <key> vbmeta_vendor}_key <key>
Use the specified algorithm (e.g. SHA256_RSA4096) and the key to AVB-sign Use the specified algorithm (e.g. SHA256_RSA4096) and the key to AVB-sign
the specified image. Otherwise it uses the existing values in info dict. the specified image. Otherwise it uses the existing values in info dict.
--avb_{apex,boot,system,system_other,vendor,dtbo,vbmeta,vbmeta_system, --avb_{apex,boot,recovery,system,system_other,vendor,dtbo,vbmeta,
vbmeta_vendor}_extra_args <args> vbmeta_system,vbmeta_vendor}_extra_args <args>
Specify any additional args that are needed to AVB-sign the image Specify any additional args that are needed to AVB-sign the image
(e.g. "--signing_helper /path/to/helper"). The args will be appended to (e.g. "--signing_helper /path/to/helper"). The args will be appended to
the existing ones in info dict. the existing ones in info dict.
@@ -1450,6 +1450,12 @@ def main(argv):
OPTIONS.avb_algorithms['dtbo'] = a OPTIONS.avb_algorithms['dtbo'] = a
elif o == "--avb_dtbo_extra_args": elif o == "--avb_dtbo_extra_args":
OPTIONS.avb_extra_args['dtbo'] = a OPTIONS.avb_extra_args['dtbo'] = a
elif o == "--avb_recovery_key":
OPTIONS.avb_keys['recovery'] = a
elif o == "--avb_recovery_algorithm":
OPTIONS.avb_algorithms['recovery'] = a
elif o == "--avb_recovery_extra_args":
OPTIONS.avb_extra_args['recovery'] = a
elif o == "--avb_system_key": elif o == "--avb_system_key":
OPTIONS.avb_keys['system'] = a OPTIONS.avb_keys['system'] = a
elif o == "--avb_system_algorithm": elif o == "--avb_system_algorithm":
@@ -1539,6 +1545,9 @@ def main(argv):
"avb_dtbo_algorithm=", "avb_dtbo_algorithm=",
"avb_dtbo_key=", "avb_dtbo_key=",
"avb_dtbo_extra_args=", "avb_dtbo_extra_args=",
"avb_recovery_algorithm=",
"avb_recovery_key=",
"avb_recovery_extra_args=",
"avb_system_algorithm=", "avb_system_algorithm=",
"avb_system_key=", "avb_system_key=",
"avb_system_extra_args=", "avb_system_extra_args=",

View File

@@ -1097,6 +1097,7 @@ class SignApk {
boolean signUsingApkSignatureSchemeV2 = true; boolean signUsingApkSignatureSchemeV2 = true;
boolean signUsingApkSignatureSchemeV4 = false; boolean signUsingApkSignatureSchemeV4 = false;
SigningCertificateLineage certLineage = null; SigningCertificateLineage certLineage = null;
Integer rotationMinSdkVersion = null;
int argstart = 0; int argstart = 0;
while (argstart < args.length && args[argstart].startsWith("-")) { while (argstart < args.length && args[argstart].startsWith("-")) {
@@ -1157,6 +1158,15 @@ class SignApk {
"Error reading lineage file: " + e.getMessage()); "Error reading lineage file: " + e.getMessage());
} }
++argstart; ++argstart;
} else if ("--rotation-min-sdk-version".equals(args[argstart])) {
String rotationMinSdkVersionString = args[++argstart];
try {
rotationMinSdkVersion = Integer.parseInt(rotationMinSdkVersionString);
} catch (NumberFormatException e) {
throw new IllegalArgumentException(
"--rotation-min-sdk-version must be a decimal number: " + rotationMinSdkVersionString);
}
++argstart;
} else { } else {
usage(); usage();
} }
@@ -1248,15 +1258,22 @@ class SignApk {
} }
} }
try (ApkSignerEngine apkSigner = DefaultApkSignerEngine.Builder builder = new DefaultApkSignerEngine.Builder(
new DefaultApkSignerEngine.Builder( createSignerConfigs(privateKey, publicKey), minSdkVersion)
createSignerConfigs(privateKey, publicKey), minSdkVersion) .setV1SigningEnabled(true)
.setV1SigningEnabled(true) .setV2SigningEnabled(signUsingApkSignatureSchemeV2)
.setV2SigningEnabled(signUsingApkSignatureSchemeV2) .setOtherSignersSignaturesPreserved(false)
.setOtherSignersSignaturesPreserved(false) .setCreatedBy("1.0 (Android SignApk)");
.setCreatedBy("1.0 (Android SignApk)")
.setSigningCertificateLineage(certLineage) if (certLineage != null) {
.build()) { builder = builder.setSigningCertificateLineage(certLineage);
}
if (rotationMinSdkVersion != null) {
builder = builder.setMinSdkVersionForRotation(rotationMinSdkVersion);
}
try (ApkSignerEngine apkSigner = builder.build()) {
// We don't preserve the input APK's APK Signing Block (which contains v2 // We don't preserve the input APK's APK Signing Block (which contains v2
// signatures) // signatures)
apkSigner.inputApkSigningBlock(null); apkSigner.inputApkSigningBlock(null);