aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/main.mk3
-rw-r--r--envsetup.sh2
-rw-r--r--target/product/gsi/current.txt2
-rw-r--r--target/product/gsi_release.mk4
-rwxr-xr-xtools/warn/warn_common.py38
5 files changed, 43 insertions, 6 deletions
diff --git a/core/main.mk b/core/main.mk
index e1cfeaddba..6b8080c7b5 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -1670,8 +1670,7 @@ droidcore-unbundled: $(filter $(HOST_OUT_ROOT)/%,$(modules_to_install)) \
$(INSTALLED_FILES_JSON_ROOT) \
$(INSTALLED_FILES_FILE_RECOVERY) \
$(INSTALLED_FILES_JSON_RECOVERY) \
- $(INSTALLED_ANDROID_INFO_TXT_TARGET) \
- soong_docs
+ $(INSTALLED_ANDROID_INFO_TXT_TARGET)
# The droidcore target depends on the droidcore-unbundled subset and any other
# targets for a non-unbundled (full source) full system build.
diff --git a/envsetup.sh b/envsetup.sh
index 6085f7a11b..d70e815657 100644
--- a/envsetup.sh
+++ b/envsetup.sh
@@ -1707,7 +1707,7 @@ function _trigger_build()
function b()
(
# Generate BUILD, bzl files into the synthetic Bazel workspace (out/soong/workspace).
- _trigger_build "all-modules" nothing GENERATE_BAZEL_FILES=true USE_BAZEL_ANALYSIS= || return 1
+ _trigger_build "all-modules" bp2build USE_BAZEL_ANALYSIS= || return 1
# Then, run Bazel using the synthetic workspace as the --package_path.
if [[ -z "$@" ]]; then
# If there are no args, show help.
diff --git a/target/product/gsi/current.txt b/target/product/gsi/current.txt
index 6f4b7f1c22..1752bc16c2 100644
--- a/target/product/gsi/current.txt
+++ b/target/product/gsi/current.txt
@@ -107,6 +107,8 @@ VNDK-core: android.hardware.vibrator-V1-ndk.so
VNDK-core: android.hardware.vibrator-V1-ndk_platform.so
VNDK-core: android.hardware.weaver-V1-ndk.so
VNDK-core: android.hardware.weaver-V1-ndk_platform.so
+VNDK-core: android.hardware.wifi.hostapd-V1-ndk.so
+VNDK-core: android.hardware.wifi.hostapd-V1-ndk_platform.so
VNDK-core: android.hidl.token@1.0-utils.so
VNDK-core: android.hidl.token@1.0.so
VNDK-core: android.system.keystore2-V1-ndk.so
diff --git a/target/product/gsi_release.mk b/target/product/gsi_release.mk
index d924d0bc11..bd7c4ab3eb 100644
--- a/target/product/gsi_release.mk
+++ b/target/product/gsi_release.mk
@@ -74,3 +74,7 @@ PRODUCT_BUILD_SUPER_EMPTY_IMAGE := false
# Always build modules from source
MODULE_BUILD_FROM_SOURCE := true
+
+# Additional settings used in all GSI builds
+PRODUCT_PRODUCT_PROPERTIES += \
+ ro.crypto.metadata_init_delete_all_keys.enabled=false \
diff --git a/tools/warn/warn_common.py b/tools/warn/warn_common.py
index 844f629a96..61c8676bec 100755
--- a/tools/warn/warn_common.py
+++ b/tools/warn/warn_common.py
@@ -236,7 +236,11 @@ def find_android_root(buildlog):
warning_pattern = re.compile('^/[^ ]*/[^ ]*: warning: .*')
count = 0
for line in buildlog:
- if warning_pattern.match(line):
+ # We want to find android_root of a local build machine.
+ # Do not use RBE warning lines, which has '/b/f/w/' path prefix.
+ # Do not use /tmp/ file warnings.
+ if warning_pattern.match(line) and (
+ '/b/f/w' not in line and not line.startswith('/tmp/')):
warning_lines.append(line)
count += 1
if count > 9999:
@@ -300,6 +304,7 @@ def parse_input_file_chrome(infile, flags):
architecture = 'unknown'
# only handle warning lines of format 'file_path:line_no:col_no: warning: ...'
+ # Bug: http://198657613, This might need change to handle RBE output.
chrome_warning_pattern = r'^[^ ]*/[^ ]*:[0-9]+:[0-9]+: warning: .*'
warning_pattern = re.compile(chrome_warning_pattern)
@@ -347,6 +352,8 @@ def parse_input_file_android(infile, flags):
platform_version = 'unknown'
target_product = 'unknown'
target_variant = 'unknown'
+ build_id = 'unknown'
+ use_rbe = False
android_root = find_android_root(infile)
infile.seek(0)
@@ -363,6 +370,14 @@ def parse_input_file_android(infile, flags):
warning_without_file = re.compile('^warning: .*')
rustc_file_position = re.compile('^[ ]+--> [^ ]*/[^ ]*:[0-9]+:[0-9]+')
+ # If RBE was used, try to reclaim some warning lines mixed with some
+ # leading chars from other concurrent job's stderr output .
+ # The leading characters can be any character, including digits and spaces.
+ # It's impossible to correctly identify the starting point of the source
+ # file path without the file directory name knowledge.
+ # Here we can only be sure to recover lines containing "/b/f/w/".
+ rbe_warning_pattern = re.compile('.*/b/f/w/[^ ]*: warning: .*')
+
# Collect all unique warning lines
# Remove the duplicated warnings save ~8% of time when parsing
# one typical build log than before
@@ -384,6 +399,12 @@ def parse_input_file_android(infile, flags):
prev_warning, flags, android_root, unique_warnings)
prev_warning = ''
+ if use_rbe and rbe_warning_pattern.match(line):
+ cleaned_up_line = re.sub('.*/b/f/w/', '', line)
+ unique_warnings = add_normalized_line_to_warnings(
+ cleaned_up_line, flags, android_root, unique_warnings)
+ continue
+
if warning_pattern.match(line):
if warning_without_file.match(line):
# save this line and combine it with the next line
@@ -399,15 +420,26 @@ def parse_input_file_android(infile, flags):
result = re.search('(?<=^PLATFORM_VERSION=).*', line)
if result is not None:
platform_version = result.group(0)
+ continue
result = re.search('(?<=^TARGET_PRODUCT=).*', line)
if result is not None:
target_product = result.group(0)
+ continue
result = re.search('(?<=^TARGET_BUILD_VARIANT=).*', line)
if result is not None:
target_variant = result.group(0)
+ continue
+ result = re.search('(?<=^BUILD_ID=).*', line)
+ if result is not None:
+ build_id = result.group(0)
+ continue
result = re.search('(?<=^TOP=).*', line)
if result is not None:
android_root = result.group(1)
+ continue
+ if re.search('USE_RBE=', line) is not None:
+ use_rbe = True
+ continue
if android_root:
new_unique_warnings = dict()
@@ -418,8 +450,8 @@ def parse_input_file_android(infile, flags):
warning_line, flags, android_root)
unique_warnings = new_unique_warnings
- header_str = '%s - %s - %s' % (platform_version, target_product,
- target_variant)
+ header_str = '%s - %s - %s (%s)' % (
+ platform_version, target_product, target_variant, build_id)
return unique_warnings, header_str