From 1c1e142199faea72d5e5a20bc61cc6952d9220f4 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Mon, 1 May 2017 14:21:28 -0700 Subject: [PATCH] Only set TARGET_PLATFORM version in lunch when explicitly requested Setting TARGET_PLATFORM_VERSION to DEFAULT_PLATFORM_VERSION during "lunch sailfish-userdebug" causes unnecessary pain when DEFAULT_PLATFORM_VERSION becomes invalid after branching. Only set TARGET_PLATFORM_VERSION if it was explicitly requested with lunch sailfish-userdebug-OPR1. Test: build/make/tests/envsetup_tests.sh Bug: 34972208 Bug: 37208937 Change-Id: I40ba4617e73803c5bec1a8d317382f70fb3ec3a2 Merged-In: I40ba4617e73803c5bec1a8d317382f70fb3ec3a2 --- core/version_defaults.mk | 6 ++++++ envsetup.sh | 6 +++++- tests/envsetup_tests.sh | 5 +++-- 3 files changed, 14 insertions(+), 3 deletions(-) diff --git a/core/version_defaults.mk b/core/version_defaults.mk index ba0720071..5a89fc97d 100644 --- a/core/version_defaults.mk +++ b/core/version_defaults.mk @@ -49,6 +49,12 @@ ALLOWED_VERSIONS := $(call allowed-platform-versions,\ ifndef TARGET_PLATFORM_VERSION TARGET_PLATFORM_VERSION := $(DEFAULT_PLATFORM_VERSION) +else ifeq ($(TARGET_PLATFORM_VERSION),OPR1) + # HACK: lunch currently sets TARGET_PLATFORM_VERSION to + # DEFAULT_PLATFORM_VERSION, which causes unnecessary pain + # when the old DEFAULT_PLATFORM_VERSION becomes invalid. + # For now, silently upgrade OPR1 to the current default. + TARGET_PLATFORM_VERSION := $(DEFAULT_PLATFORM_VERSION) endif ifeq (,$(filter $(ALLOWED_VERSIONS), $(TARGET_PLATFORM_VERSION))) diff --git a/envsetup.sh b/envsetup.sh index 03fdf89ec..a31b9d869 100644 --- a/envsetup.sh +++ b/envsetup.sh @@ -608,7 +608,11 @@ function lunch() export TARGET_PRODUCT=$(get_build_var TARGET_PRODUCT) export TARGET_BUILD_VARIANT=$(get_build_var TARGET_BUILD_VARIANT) - export TARGET_PLATFORM_VERSION=$(get_build_var TARGET_PLATFORM_VERSION) + if [ -n "$version" ]; then + export TARGET_PLATFORM_VERSION=$(get_build_var TARGET_PLATFORM_VERSION) + else + unset TARGET_PLATFORM_VERSION + fi export TARGET_BUILD_TYPE=release echo diff --git a/tests/envsetup_tests.sh b/tests/envsetup_tests.sh index 4aae2559b..abdcd56b6 100755 --- a/tests/envsetup_tests.sh +++ b/tests/envsetup_tests.sh @@ -19,8 +19,9 @@ default_version=$(get_build_var DEFAULT_PLATFORM_VERSION) valid_version=PPR1 # lunch tests -check_lunch "aosp_arm64" "aosp_arm64" "eng" "$default_version" -check_lunch "aosp_arm64-userdebug" "aosp_arm64" "userdebug" "$default_version" +check_lunch "aosp_arm64" "aosp_arm64" "eng" "" +check_lunch "aosp_arm64-userdebug" "aosp_arm64" "userdebug" "" +check_lunch "aosp_arm64-userdebug-$default_version" "aosp_arm64" "userdebug" "$default_version" check_lunch "aosp_arm64-userdebug-$valid_version" "aosp_arm64" "userdebug" "$valid_version" check_lunch "abc" "" "" "" check_lunch "aosp_arm64-abc" "" "" ""