Produce ro.build.version.preview_sdk_fingerprint
This is just a hash of the current.txt and system-current.txt right now, though it may expand to include other API surfaces in the future. Once prebuilts/sdk/current is populated with api_fingerprint.txt files, we can use those for unbundled builds, but until then, just use the PLATFORM_PREVIEW_SDK_VERSION as a placeholder. MD5 was just the most convenient, since we don't have a sha tool that we can use on Mac currently. I'm hoping we can get a toybox-based tool in the future that standardizes that, but we aren't currently using sha*sum from toybox on Linux, much less on Darwin yet. Test: m dist out/dist/api_fingerprint.txt Test: m out/target/product/.../system/build.prop Change-Id: If69f270560d05135cb81a9bb2d1b208ea78f86df
This commit is contained in:
@@ -121,6 +121,33 @@ ndk-docs: $(ndk_doxygen_out)/index.html
|
|||||||
.PHONY: ndk-docs
|
.PHONY: ndk-docs
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------
|
||||||
|
# generate preview API fingerprint
|
||||||
|
api_fingerprint := $(call intermediates-dir-for,PACKAGING,api_fingerprint)/api_fingerprint.txt
|
||||||
|
.KATI_READONLY := api_fingerprint
|
||||||
|
|
||||||
|
ifeq (REL,$(PLATFORM_VERSION_CODENAME))
|
||||||
|
$(api_fingerprint):
|
||||||
|
echo REL >$@
|
||||||
|
else ifneq ($(TARGET_BUILD_APPS),)
|
||||||
|
# TODO: use a prebuilt api_fingerprint.txt from prebuilts/sdk/current.txt once we have one
|
||||||
|
#$(eval $(call copy-one-file,prebuilts/sdk/current/api_fingerprint.txt,$(api_fingerprint)))
|
||||||
|
$(api_fingerprint):
|
||||||
|
echo $(PLATFORM_PREVIEW_SDK_VERSION) >$@
|
||||||
|
else ifneq ($(TARGET_BUILD_PDK),)
|
||||||
|
$(eval $(call copy-one-file,$(_pdk_fusion_intermediates)/api_fingerprint.txt,$(api_fingerprint)))
|
||||||
|
else
|
||||||
|
ifeq ($(HOST_OS),darwin)
|
||||||
|
$(api_fingerprint): PRIVATE_HASH := md5
|
||||||
|
else
|
||||||
|
$(api_fingerprint): PRIVATE_HASH := md5sum
|
||||||
|
endif
|
||||||
|
$(api_fingerprint): $(sort $(wildcard frameworks/base/api/*current.txt))
|
||||||
|
cat $^ | $(PRIVATE_HASH) | cut -d' ' -f1 >$@
|
||||||
|
|
||||||
|
$(call dist-for-goals,sdk,$(api_fingerprint))
|
||||||
|
endif
|
||||||
|
|
||||||
# -----------------------------------------------------------------
|
# -----------------------------------------------------------------
|
||||||
# property_overrides_split_enabled
|
# property_overrides_split_enabled
|
||||||
property_overrides_split_enabled :=
|
property_overrides_split_enabled :=
|
||||||
@@ -368,7 +395,7 @@ system_prop_file := $(TARGET_SYSTEM_PROP)
|
|||||||
else
|
else
|
||||||
system_prop_file := $(wildcard $(TARGET_DEVICE_DIR)/system.prop)
|
system_prop_file := $(wildcard $(TARGET_DEVICE_DIR)/system.prop)
|
||||||
endif
|
endif
|
||||||
$(intermediate_system_build_prop): $(BUILDINFO_SH) $(BUILDINFO_COMMON_SH) $(INTERNAL_BUILD_ID_MAKEFILE) $(BUILD_SYSTEM)/version_defaults.mk $(system_prop_file) $(INSTALLED_ANDROID_INFO_TXT_TARGET)
|
$(intermediate_system_build_prop): $(BUILDINFO_SH) $(BUILDINFO_COMMON_SH) $(INTERNAL_BUILD_ID_MAKEFILE) $(BUILD_SYSTEM)/version_defaults.mk $(system_prop_file) $(INSTALLED_ANDROID_INFO_TXT_TARGET) $(api_fingerprint)
|
||||||
@echo Target buildinfo: $@
|
@echo Target buildinfo: $@
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
$(hide) echo > $@
|
$(hide) echo > $@
|
||||||
@@ -401,6 +428,7 @@ endif
|
|||||||
PLATFORM_BASE_OS="$(PLATFORM_BASE_OS)" \
|
PLATFORM_BASE_OS="$(PLATFORM_BASE_OS)" \
|
||||||
PLATFORM_SDK_VERSION="$(PLATFORM_SDK_VERSION)" \
|
PLATFORM_SDK_VERSION="$(PLATFORM_SDK_VERSION)" \
|
||||||
PLATFORM_PREVIEW_SDK_VERSION="$(PLATFORM_PREVIEW_SDK_VERSION)" \
|
PLATFORM_PREVIEW_SDK_VERSION="$(PLATFORM_PREVIEW_SDK_VERSION)" \
|
||||||
|
PLATFORM_PREVIEW_SDK_FINGERPRINT="$$(cat $(api_fingerprint))" \
|
||||||
PLATFORM_VERSION_CODENAME="$(PLATFORM_VERSION_CODENAME)" \
|
PLATFORM_VERSION_CODENAME="$(PLATFORM_VERSION_CODENAME)" \
|
||||||
PLATFORM_VERSION_ALL_CODENAMES="$(PLATFORM_VERSION_ALL_CODENAMES)" \
|
PLATFORM_VERSION_ALL_CODENAMES="$(PLATFORM_VERSION_ALL_CODENAMES)" \
|
||||||
PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION="$(PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION)" \
|
PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION="$(PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION)" \
|
||||||
@@ -2199,7 +2227,7 @@ $(INSTALLED_PLATFORM_ZIP): PRIVATE_ODEX_CONFIG := $(pdk_odex_config_mk)
|
|||||||
$(INSTALLED_PLATFORM_ZIP) : $(SOONG_ZIP)
|
$(INSTALLED_PLATFORM_ZIP) : $(SOONG_ZIP)
|
||||||
# dependencies for the other partitions are defined below after their file lists
|
# dependencies for the other partitions are defined below after their file lists
|
||||||
# are known
|
# are known
|
||||||
$(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_SYSTEMIMAGE_FILES) $(pdk_classes_dex) $(pdk_odex_config_mk)
|
$(INSTALLED_PLATFORM_ZIP) : $(INTERNAL_SYSTEMIMAGE_FILES) $(pdk_classes_dex) $(pdk_odex_config_mk) $(api_fingerprint)
|
||||||
$(call pretty,"Platform zip package: $(INSTALLED_PLATFORM_ZIP)")
|
$(call pretty,"Platform zip package: $(INSTALLED_PLATFORM_ZIP)")
|
||||||
rm -f $@ $@.lst
|
rm -f $@ $@.lst
|
||||||
echo "-C $(PRODUCT_OUT)" >> $@.lst
|
echo "-C $(PRODUCT_OUT)" >> $@.lst
|
||||||
@@ -2232,6 +2260,7 @@ endif
|
|||||||
@# Add dex-preopt files and config.
|
@# Add dex-preopt files and config.
|
||||||
$(if $(PRIVATE_DEX_FILES),\
|
$(if $(PRIVATE_DEX_FILES),\
|
||||||
echo "-C $(OUT_DIR) $(addprefix -f ,$(PRIVATE_DEX_FILES))") >> $@.lst
|
echo "-C $(OUT_DIR) $(addprefix -f ,$(PRIVATE_DEX_FILES))") >> $@.lst
|
||||||
|
echo "-C $(dir $(api_fingerprint)) -f $(api_fingerprint)" >> $@.lst
|
||||||
touch $(PRODUCT_OUT)/pdk.mk
|
touch $(PRODUCT_OUT)/pdk.mk
|
||||||
echo "-C $(PRODUCT_OUT) -f $(PRIVATE_ODEX_CONFIG) -f $(PRODUCT_OUT)/pdk.mk" >> $@.lst
|
echo "-C $(PRODUCT_OUT) -f $(PRIVATE_ODEX_CONFIG) -f $(PRODUCT_OUT)/pdk.mk" >> $@.lst
|
||||||
$(SOONG_ZIP) --ignore_missing_files -o $@ @$@.lst
|
$(SOONG_ZIP) --ignore_missing_files -o $@ @$@.lst
|
||||||
|
@@ -8,6 +8,7 @@ echo "ro.build.display.id=$BUILD_DISPLAY_ID"
|
|||||||
echo "ro.build.version.incremental=$BUILD_NUMBER"
|
echo "ro.build.version.incremental=$BUILD_NUMBER"
|
||||||
echo "ro.build.version.sdk=$PLATFORM_SDK_VERSION"
|
echo "ro.build.version.sdk=$PLATFORM_SDK_VERSION"
|
||||||
echo "ro.build.version.preview_sdk=$PLATFORM_PREVIEW_SDK_VERSION"
|
echo "ro.build.version.preview_sdk=$PLATFORM_PREVIEW_SDK_VERSION"
|
||||||
|
echo "ro.build.version.preview_sdk_fingerprint=$PLATFORM_PREVIEW_SDK_FINGERPRINT"
|
||||||
echo "ro.build.version.codename=$PLATFORM_VERSION_CODENAME"
|
echo "ro.build.version.codename=$PLATFORM_VERSION_CODENAME"
|
||||||
echo "ro.build.version.all_codenames=$PLATFORM_VERSION_ALL_CODENAMES"
|
echo "ro.build.version.all_codenames=$PLATFORM_VERSION_ALL_CODENAMES"
|
||||||
echo "ro.build.version.release=$PLATFORM_VERSION"
|
echo "ro.build.version.release=$PLATFORM_VERSION"
|
||||||
|
Reference in New Issue
Block a user