aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-05-09 01:00:23 +0000
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2024-05-09 01:00:23 +0000
commit2fd6e348bdf057d572b9156484031fd1c9d2031c (patch)
tree5f77910436b3a54a2c589fcd943a4d657864f8e0
parent589fea600c5b8e155d2cac94382fa480b00f72e4 (diff)
parenta2357e90d7fdb4a8a2e23f6a351376511d61d25f (diff)
downloadbuild-2fd6e348bdf057d572b9156484031fd1c9d2031c.tar.gz
Snap for 11819063 from a2357e90d7fdb4a8a2e23f6a351376511d61d25f to sdk-release
Change-Id: Ida04deb01fd591633a94a9be1bbe6b60e237f0a8
-rw-r--r--CleanSpec.mk8
-rw-r--r--core/product.mk5
-rw-r--r--core/tasks/meta-lic.mk17
-rw-r--r--envsetup.sh4
-rw-r--r--target/product/module_common.mk5
-rw-r--r--tests/run_tool_with_logging_test.py41
-rw-r--r--tools/aconfig/aconfig_storage_file/protos/aconfig_storage_metadata.proto3
-rw-r--r--tools/aconfig/aconfig_storage_read_api/include/aconfig_storage/aconfig_storage_read_api.hpp2
-rw-r--r--tools/aconfig/aconfig_storage_write_api/aconfig_storage_write_api.cpp5
-rw-r--r--tools/aconfig/aconfig_storage_write_api/include/aconfig_storage/aconfig_storage_write_api.hpp6
-rw-r--r--tools/aconfig/aconfig_storage_write_api/tests/storage_write_api_test.cpp22
11 files changed, 44 insertions, 74 deletions
diff --git a/CleanSpec.mk b/CleanSpec.mk
index dfc0cd0fff..f8c96ffffe 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -779,6 +779,14 @@ $(call add-clean-step, rm -rf $(OUT_DIR)/bazel/output/execroot/__main__/bazel-ou
# Clear out rustc compiler intermediates after reverting rust compiler/linker split.
$(call add-clean-step, find $(OUT_DIR) -name "*.rsp.whole.a" -print0 | xargs -0 /bin/bash -c 'rm -f $$$${@}; rm -f $$$${@/.rsp.whole.a/.rsp.a}; rm -f $$$${@/.rsp.whole.a/.rsp}')
+# Remove obsolete java compilation artifacts
+$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/)
+$(call add-clean-step, find $(OUT_DIR) -type f -name "*.jar" -print0 | xargs -0 rm -f)
+
+# Remove obsolete java compilation artifacts
+$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/)
+$(call add-clean-step, find $(OUT_DIR) -type f -name "*.jar" -print0 | xargs -0 rm -f)
+
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
# ************************************************
diff --git a/core/product.mk b/core/product.mk
index f8634efd25..0a761fb44e 100644
--- a/core/product.mk
+++ b/core/product.mk
@@ -418,8 +418,9 @@ _product_single_value_vars += PRODUCT_INSTALL_DEBUG_POLICY_TO_SYSTEM_EXT
# /system/etc/security/fsverity/BuildManifest.apk
_product_single_value_vars += PRODUCT_FSVERITY_GENERATE_METADATA
-# If true, sets the default for MODULE_BUILD_FROM_SOURCE. This overrides
-# BRANCH_DEFAULT_MODULE_BUILD_FROM_SOURCE but not an explicitly set value.
+# If true, this builds the mainline modules from source. This overrides any
+# prebuilts selected via RELEASE_APEX_CONTRIBUTIONS_* build flags for the
+# current release config.
_product_single_value_vars += PRODUCT_MODULE_BUILD_FROM_SOURCE
# If true, installs a full version of com.android.virt APEX.
diff --git a/core/tasks/meta-lic.mk b/core/tasks/meta-lic.mk
index 33c8c118b2..2126bd02ba 100644
--- a/core/tasks/meta-lic.mk
+++ b/core/tasks/meta-lic.mk
@@ -101,6 +101,23 @@ $(eval $(call declare-copy-files-license-metadata,device/google/raviole,wpa_supp
$(eval $(call declare-1p-copy-files,device/google/raviole,audio_policy_configuration.xml))
+# Moved here from device/google/redfin/Android.mk
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,default-permissions.xml,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,libnfc-nci.conf,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,fstab.postinstall,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,ueventd.rc,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,wpa_supplicant.conf,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,hals.conf,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,media_profiles_V1_0.xml,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,media_codecs_performance.xml,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,device_state_configuration.xml,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,task_profiles.json,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,p2p_supplicant.conf,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,wpa_supplicant.conf,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+$(eval $(call declare-copy-files-license-metadata,device/google/redfin,wpa_supplicant_overlay.conf,SPDX-license-identifier-Apache-2.0,notice,build/soong/licenses/LICENSE,))
+
+$(eval $(call declare-1p-copy-files,device/google/redfin,audio_policy_configuration.xml))
+
# Moved here from device/sample/Android.mk
$(eval $(call declare-1p-copy-files,device/sample,))
diff --git a/envsetup.sh b/envsetup.sh
index 1ef9a54803..50fec5146a 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -1112,8 +1112,8 @@ function run_tool_with_logging() {
local tool_binary="$1"
shift
- # If logging is not enabled or the logger is not configured, run the original command and return.
- if [[ "${ANDROID_ENABLE_TOOL_LOGGING}" != "true" ]] || [[ -z "${ANDROID_TOOL_LOGGER}" ]]; then
+ # If the logger is not configured, run the original command and return.
+ if [[ -z "${ANDROID_TOOL_LOGGER}" ]]; then
"${tool_binary}" "${@}"
return $?
fi
diff --git a/target/product/module_common.mk b/target/product/module_common.mk
index bf146a0d2f..da4ea23ad9 100644
--- a/target/product/module_common.mk
+++ b/target/product/module_common.mk
@@ -24,8 +24,9 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/memtag-common.mk)
# uses -DENFORCE_VINTF_MANIFEST. See b/185759877
PRODUCT_SHIPPING_API_LEVEL := 29
-# Builds using a module product should build modules from source, even if
-# BRANCH_DEFAULT_MODULE_BUILD_FROM_SOURCE says otherwise.
+# If true, this builds the mainline modules from source. This overrides any
+# prebuilts selected via RELEASE_APEX_CONTRIBUTIONS_* build flags for the
+# current release config.
PRODUCT_MODULE_BUILD_FROM_SOURCE := true
# Build sdk from source if the branch is not using slim manifests.
diff --git a/tests/run_tool_with_logging_test.py b/tests/run_tool_with_logging_test.py
index 215d992cf0..18abd8e54f 100644
--- a/tests/run_tool_with_logging_test.py
+++ b/tests/run_tool_with_logging_test.py
@@ -59,37 +59,10 @@ class RunToolWithLoggingTest(unittest.TestCase):
self.working_dir.cleanup()
super().tearDown()
- def test_does_not_log_when_logging_disabled(self):
- test_tool = TestScript.create(self.working_dir)
- test_logger = TestScript.create(self.working_dir)
-
- self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=false
- ANDROID_TOOL_LOGGER="{test_logger.executable}"
- run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
- """)
-
- test_tool.assert_called_once_with_args("arg1 arg2")
- test_logger.assert_not_called()
-
- def test_does_not_log_when_logger_var_unset(self):
- test_tool = TestScript.create(self.working_dir)
- test_logger = TestScript.create(self.working_dir)
-
- self._run_script_and_wait(f"""
- unset ANDROID_ENABLE_TOOL_LOGGING
- ANDROID_TOOL_LOGGER="{test_logger.executable}"
- run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
- """)
-
- test_tool.assert_called_once_with_args("arg1 arg2")
- test_logger.assert_not_called()
-
def test_does_not_log_when_logger_var_empty(self):
test_tool = TestScript.create(self.working_dir)
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER=""
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -100,7 +73,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
test_tool = TestScript.create(self.working_dir)
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
unset ANDROID_TOOL_LOGGER
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -112,7 +84,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
test_logger = TestScript.create(self.working_dir)
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -130,7 +101,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
run_tool_with_logging_stdout, run_tool_with_logging_stderr = (
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -138,7 +108,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
run_tool_without_logging_stdout, run_tool_without_logging_stderr = (
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
{test_tool.executable} arg1 arg2
""")
@@ -156,7 +125,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
test_logger = TestScript.create(self.working_dir, "echo 'logger called'")
run_tool_with_logging_output, _ = self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -170,7 +138,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
)
_, err = self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -182,7 +149,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
test_logger = TestScript.create(self.working_dir)
process = self._run_script_in_build_env(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -207,9 +173,8 @@ class RunToolWithLoggingTest(unittest.TestCase):
test_logger = TestScript.create(self.working_dir)
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=false
+ ANDROID_TOOL_LOGGER=""
ANDROID_TOOL_LOGGER="{test_logger.executable}"
- ANDROID_ENABLE_TOOL_LOGGING=true
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -220,9 +185,8 @@ class RunToolWithLoggingTest(unittest.TestCase):
test_logger = TestScript.create(self.working_dir)
self._run_script_and_wait(f"""
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{test_logger.executable}"
- ANDROID_ENABLE_TOOL_LOGGING=false
+ ANDROID_TOOL_LOGGER=""
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
""")
@@ -234,7 +198,6 @@ class RunToolWithLoggingTest(unittest.TestCase):
self._run_script_and_wait(f"""
TMPDIR="{self.working_dir.name}"
- ANDROID_ENABLE_TOOL_LOGGING=true
ANDROID_TOOL_LOGGER="{logger_path}"
ANDROID_TOOL_LOGGER_EXTRA_ARGS="--dry_run"
run_tool_with_logging "FAKE_TOOL" {test_tool.executable} arg1 arg2
diff --git a/tools/aconfig/aconfig_storage_file/protos/aconfig_storage_metadata.proto b/tools/aconfig/aconfig_storage_file/protos/aconfig_storage_metadata.proto
index 7de43ca918..f6bf1a43c4 100644
--- a/tools/aconfig/aconfig_storage_file/protos/aconfig_storage_metadata.proto
+++ b/tools/aconfig/aconfig_storage_file/protos/aconfig_storage_metadata.proto
@@ -28,7 +28,8 @@ message storage_file_info {
optional string flag_val = 5;
optional string flag_info = 6;
optional string local_overrides = 7;
- optional int64 timestamp = 8;
+ optional string default_flag_val = 8;
+ optional int64 timestamp = 9;
}
message storage_files {
diff --git a/tools/aconfig/aconfig_storage_read_api/include/aconfig_storage/aconfig_storage_read_api.hpp b/tools/aconfig/aconfig_storage_read_api/include/aconfig_storage/aconfig_storage_read_api.hpp
index b8ee06a590..e6d75373a9 100644
--- a/tools/aconfig/aconfig_storage_read_api/include/aconfig_storage/aconfig_storage_read_api.hpp
+++ b/tools/aconfig/aconfig_storage_read_api/include/aconfig_storage/aconfig_storage_read_api.hpp
@@ -41,7 +41,7 @@ enum FlagInfoBit {
struct MappedStorageFile {
void* file_ptr;
size_t file_size;
- ~MappedStorageFile();
+ virtual ~MappedStorageFile();
};
/// Package read context query result
diff --git a/tools/aconfig/aconfig_storage_write_api/aconfig_storage_write_api.cpp b/tools/aconfig/aconfig_storage_write_api/aconfig_storage_write_api.cpp
index 197486d246..f529f7954c 100644
--- a/tools/aconfig/aconfig_storage_write_api/aconfig_storage_write_api.cpp
+++ b/tools/aconfig/aconfig_storage_write_api/aconfig_storage_write_api.cpp
@@ -17,11 +17,6 @@ using namespace android::base;
namespace aconfig_storage {
-/// destructor
-MutableMappedStorageFile::~MutableMappedStorageFile() {
- munmap(file_ptr, file_size);
-}
-
/// Map a storage file
Result<MutableMappedStorageFile*> map_mutable_storage_file(std::string const& file) {
struct stat file_stat;
diff --git a/tools/aconfig/aconfig_storage_write_api/include/aconfig_storage/aconfig_storage_write_api.hpp b/tools/aconfig/aconfig_storage_write_api/include/aconfig_storage/aconfig_storage_write_api.hpp
index 1eca1e0cda..ff06cbc6de 100644
--- a/tools/aconfig/aconfig_storage_write_api/include/aconfig_storage/aconfig_storage_write_api.hpp
+++ b/tools/aconfig/aconfig_storage_write_api/include/aconfig_storage/aconfig_storage_write_api.hpp
@@ -11,11 +11,7 @@ using namespace android::base;
namespace aconfig_storage {
/// Mapped flag value file
-struct MutableMappedStorageFile{
- void* file_ptr;
- size_t file_size;
- ~MutableMappedStorageFile();
-};
+struct MutableMappedStorageFile : MappedStorageFile {};
/// Map a storage file
Result<MutableMappedStorageFile*> map_mutable_storage_file(
diff --git a/tools/aconfig/aconfig_storage_write_api/tests/storage_write_api_test.cpp b/tools/aconfig/aconfig_storage_write_api/tests/storage_write_api_test.cpp
index aeede49306..54373798c9 100644
--- a/tools/aconfig/aconfig_storage_write_api/tests/storage_write_api_test.cpp
+++ b/tools/aconfig/aconfig_storage_write_api/tests/storage_write_api_test.cpp
@@ -80,13 +80,10 @@ TEST_F(AconfigStorageTest, test_boolean_flag_value_update) {
ASSERT_TRUE(mapped_file_result.ok());
auto mapped_file = std::unique_ptr<api::MutableMappedStorageFile>(*mapped_file_result);
- auto ro_mapped_file = api::MappedStorageFile();
- ro_mapped_file.file_ptr = mapped_file->file_ptr;
- ro_mapped_file.file_size = mapped_file->file_size;
for (int offset = 0; offset < 8; ++offset) {
auto update_result = api::set_boolean_flag_value(*mapped_file, offset, true);
ASSERT_TRUE(update_result.ok());
- auto value = api::get_boolean_flag_value(ro_mapped_file, offset);
+ auto value = api::get_boolean_flag_value(*mapped_file, offset);
ASSERT_TRUE(value.ok());
ASSERT_TRUE(*value);
}
@@ -97,7 +94,6 @@ TEST_F(AconfigStorageTest, test_invalid_boolean_flag_value_update) {
auto mapped_file_result = api::map_mutable_storage_file(flag_val);
ASSERT_TRUE(mapped_file_result.ok());
auto mapped_file = std::unique_ptr<api::MutableMappedStorageFile>(*mapped_file_result);
-
auto update_result = api::set_boolean_flag_value(*mapped_file, 8, true);
ASSERT_FALSE(update_result.ok());
ASSERT_EQ(update_result.error().message(),
@@ -110,16 +106,12 @@ TEST_F(AconfigStorageTest, test_flag_has_server_override_update) {
ASSERT_TRUE(mapped_file_result.ok());
auto mapped_file = std::unique_ptr<api::MutableMappedStorageFile>(*mapped_file_result);
- auto ro_mapped_file = api::MappedStorageFile();
- ro_mapped_file.file_ptr = mapped_file->file_ptr;
- ro_mapped_file.file_size = mapped_file->file_size;
-
for (int offset = 0; offset < 8; ++offset) {
auto update_result = api::set_flag_has_server_override(
*mapped_file, api::FlagValueType::Boolean, offset, true);
ASSERT_TRUE(update_result.ok()) << update_result.error();
auto attribute = api::get_flag_attribute(
- ro_mapped_file, api::FlagValueType::Boolean, offset);
+ *mapped_file, api::FlagValueType::Boolean, offset);
ASSERT_TRUE(attribute.ok());
ASSERT_TRUE(*attribute & api::FlagInfoBit::HasServerOverride);
@@ -127,7 +119,7 @@ TEST_F(AconfigStorageTest, test_flag_has_server_override_update) {
*mapped_file, api::FlagValueType::Boolean, offset, false);
ASSERT_TRUE(update_result.ok());
attribute = api::get_flag_attribute(
- ro_mapped_file, api::FlagValueType::Boolean, offset);
+ *mapped_file, api::FlagValueType::Boolean, offset);
ASSERT_TRUE(attribute.ok());
ASSERT_FALSE(*attribute & api::FlagInfoBit::HasServerOverride);
}
@@ -139,16 +131,12 @@ TEST_F(AconfigStorageTest, test_flag_has_local_override_update) {
ASSERT_TRUE(mapped_file_result.ok());
auto mapped_file = std::unique_ptr<api::MutableMappedStorageFile>(*mapped_file_result);
- auto ro_mapped_file = api::MappedStorageFile();
- ro_mapped_file.file_ptr = mapped_file->file_ptr;
- ro_mapped_file.file_size = mapped_file->file_size;
-
for (int offset = 0; offset < 8; ++offset) {
auto update_result = api::set_flag_has_local_override(
*mapped_file, api::FlagValueType::Boolean, offset, true);
ASSERT_TRUE(update_result.ok());
auto attribute = api::get_flag_attribute(
- ro_mapped_file, api::FlagValueType::Boolean, offset);
+ *mapped_file, api::FlagValueType::Boolean, offset);
ASSERT_TRUE(attribute.ok());
ASSERT_TRUE(*attribute & api::FlagInfoBit::HasLocalOverride);
@@ -156,7 +144,7 @@ TEST_F(AconfigStorageTest, test_flag_has_local_override_update) {
*mapped_file, api::FlagValueType::Boolean, offset, false);
ASSERT_TRUE(update_result.ok());
attribute = api::get_flag_attribute(
- ro_mapped_file, api::FlagValueType::Boolean, offset);
+ *mapped_file, api::FlagValueType::Boolean, offset);
ASSERT_TRUE(attribute.ok());
ASSERT_FALSE(*attribute & api::FlagInfoBit::HasLocalOverride);
}