Commit Graph

32780 Commits

Author SHA1 Message Date
Thiébaud Weksteen
9997ea73a3 Setup ANDROID_RUST_VERSION env variable
Some crates (i.e. rustversion) probe at build time the version of Rust
to enable features or tests. Pass the version via an environment
variable so it can be used by a patched crate.

Bug: 178357400
Test: m librustversion
Change-Id: If57a6339b71d2188c56e7dc6709075e4537403b4
2021-02-22 10:56:43 +01:00
Jingwen Chen
2391d08872 Merge "bp2build: add a simple UI to report migration progress." 2021-02-22 03:23:13 +00:00
Justin Yun
b4697b8125 Merge "Update test_min_api_level for cc_test" 2021-02-21 05:36:37 +00:00
Jeffrey Vander Stoep
8348e09173 Merge "Disable unnecessary_wraps clippy lint" 2021-02-20 07:06:41 +00:00
Jeffrey Vander Stoep
92c674dc32 Merge "Update Rust toolchain to 1.50.0" 2021-02-20 07:06:41 +00:00
Treehugger Robot
f0a869847a Merge "Remove EnforceRROExemptedTargets" 2021-02-20 01:47:43 +00:00
Justin Yun
107a4cb56c Update test_min_api_level for cc_test
By replacing MinApiLevelModuleController with
ShippingApiLevelModuleController, we don't need to define
api-level-prop option. The property name must not be a parameter but
be defined in the module controller.

test_min_sdk_version is removed as it is not used.

Bug: 178990561
Test: atest vts_core_liblp_test
Change-Id: Ib4660b91c7adb2ec8b970197dc6f65b8e6952a66
2021-02-20 00:46:21 +00:00
Elliott Hughes
272649ceb5 Merge "__ANDROID_UNGUARDED_AVAILABILITY__ is gone now." 2021-02-19 22:27:11 +00:00
Elliott Hughes
5a8c9531e4 __ANDROID_UNGUARDED_AVAILABILITY__ is gone now.
So no need to keep `-D`ing it.

Bug: http://b/179067538
Test: treehugger
Change-Id: If5bcead40d3bb355c241e363a8f1a956cb144438
2021-02-19 10:43:19 -08:00
Julien Desprez
251261d01b Merge "Switch cc_test host_supported: true to unit tests" 2021-02-19 16:55:04 +00:00
Jeff Vander Stoep
41f8157ba7 Disable unnecessary_wraps clippy lint
Bug: 180268112
Test: build
Fixes: 180703142
Change-Id: I13f3de49318a6a9d2141042836a08ba7e300648f
2021-02-19 17:19:39 +01:00
Anton Hansson
a6bf4a189c Merge "Disallow using error-prone merge strategies" 2021-02-19 15:27:29 +00:00
Thiébaud Weksteen
052398b1ce Merge "Enable size measurement for Rust binaries" 2021-02-19 14:32:01 +00:00
Jingwen Chen
164e0867fc bp2build: add a simple UI to report migration progress.
Sample output:

[bp2build] cc_library_headers: 5 targets
[bp2build] cc_object: 5 targets
[bp2build] filegroup: 4 targets
[bp2build] genrule: 4 targets
[bp2build] sh_binary: 1 targets
[bp2build] Generated 19 total BUILD targets from 39270 Android.bp modules.

This CL adds an additional CodegenMetrics return value to
GenerateBazelTargets calls, which are called from bp2build, queryview,
and their tests. For this UI, we only want to use it for bp2build, and
not queryview or tests, since it's not useful for the former, and can
pollute the CLI for the latter.

Test: build/bazel/scripts/milestone-2/demo.sh
Change-Id: Ic84307a1ed1a25e360c9b23459e5449d932bc2e7
2021-02-19 09:30:11 -05:00
Anton Hansson
771fd524f2 Disallow using error-prone merge strategies
DO NOT MERGE / RESTRICT AUTOMERGE and its cousin DO NOT MERGE
ANYWHERE are almost always misused. Make it an error to upload
commits with those merge strategies.

Bug: 156896646
Test: repo upload -n (with DNM and RM commits)
Change-Id: Iae3540fa35dbd7b87a14b53a20be0cd23a206f3a
2021-02-19 13:05:54 +00:00
Treehugger Robot
f4dd965933 Merge "Add bloaty package" 2021-02-19 09:54:28 +00:00
Treehugger Robot
999314fd98 Merge "Add bloaty_merger" 2021-02-19 09:45:39 +00:00
Jingwen Chen
4e86b6ae43 Merge "bp2build: cc_object converter." 2021-02-19 03:54:43 +00:00
Inseob Kim
525fdd57b5 Merge "Allow uninstallable prebuilt_etc to be packaged" 2021-02-19 03:49:33 +00:00
Jeongik Cha
cee5ba973d Remove EnforceRROExemptedTargets
There is no more target relying on EnforceRROExemptedTargets

Bug: 150820813
Test: m
Change-Id: If50d22c0e4f99e8c50d6a30cb94a0c3a5646b6fa
2021-02-19 12:16:12 +09:00
Eric Holk
277b0e7f41 Make statsd apex available as a prebuilt
Bug: 178236337
Test: build-mainline-modules.sh
Change-Id: I807eca7c5296227f4b593fc9f52d29bd20e78645
2021-02-18 17:39:51 +00:00
Martijn Coenen
15679b7b27 Merge "Add MediaProvider dependencies to allowed_deps.txt" 2021-02-18 16:55:38 +00:00
Pedro Loureiro
8a75058d3f Merge "Add support for lint baseline files" 2021-02-18 15:53:13 +00:00
Thiébaud Weksteen
df229cb00a Enable size measurement for Rust binaries
Bug: 172339742
Test: m out/soong/binary_sizes.pb
Change-Id: Ibc9feaa1c806b888d8850303ab7eeaf5e5337e35
2021-02-18 15:46:19 +01:00
Thiébaud Weksteen
6d48aad0ff Add bloaty package
This package can be used by other binary generator to gather the section
sizes at build time. It uses bloaty_merger to export all the measured
data into a single proto file.

Bug: 172339742
Test: m out/soong/binary_sizes.pb
Change-Id: I0ca87cdb2fb8b77226e79d9dcd762abe64aeea51
2021-02-18 15:46:14 +01:00
Treehugger Robot
ca52bfcf0f Merge "Further simplify the link type check routine" 2021-02-18 13:54:27 +00:00
Jiyong Park
4941e4b9d1 Merge "Linktype check error message becomes more correct" 2021-02-18 11:32:03 +00:00
Jiyong Park
7f87e1ab49 Further simplify the link type check routine
Bug: 180477804
Test: m nothing
Change-Id: I216be96cf844fe42ba0cec467eea8520ff4ef4f2
2021-02-18 20:29:05 +09:00
Pedro Loureiro
5d190cc24e Add support for lint baseline files
Test: m droid
Test: go test ^TestJavaLint # (from soong/build/java)

Change-Id: I249a0a0597b0bf8495460ed283b476ad2eb36edc
2021-02-18 11:15:30 +00:00
vichang
2a4bbb8061 Merge "Add first_perfer32 option to compile_multilib" 2021-02-18 10:09:52 +00:00
vichang
cd821d8283 Merge "Non-installable module should not be installed into a fuzzer .zip package" 2021-02-18 09:59:06 +00:00
Anton Hansson
3de06eae5b Merge "Use genrule instead of filegroup for api files" 2021-02-18 09:28:01 +00:00
Thiébaud Weksteen
713db480cd Add bloaty_merger
This script will be used to merge the csv outputs from bloaty into a
single proto file.

Bug: 172339795
Test: atest --host bloaty_merger_test
Change-Id: I9a3c12d7b0c4b5e347fec04e6758bcc1fbc8ab40
2021-02-18 10:25:25 +01:00
Martijn Coenen
fd66847ac1 Add MediaProvider dependencies to allowed_deps.txt
Bug: 180375550
Test: builds
Change-Id: I0f5acf1f2de1f9f16294c0ef0e62a7bf48929aff
Merged-In: I0f5acf1f2de1f9f16294c0ef0e62a7bf48929aff
2021-02-18 09:17:07 +00:00
Jingwen Chen
8c1b97e01b bp2build: cc_object converter.
This CL introduces a basic bp2build converter for cc_object modules.
cc_objects maps cleanly to cc_library targets, but with -fnoaddrsig.

This CL also demonstrates generating include deps within a macro to
allow the cc_object compilation to depend on a relative-include header
within an include dir.

e.g. if "foo.cc" includes "android/log.h" and the latter is located at
"include/android/log.h", the autogenerated header deps would export
"android/log.h" correctly to the foo.cc upstream target.

Test: GENERATE_BAZEL_FILES=true m nothing && bp2build-sync write && bazel build //bionic/libc:crtbegin_so1

Change-Id: Ifd9e097051ec184ab0a1929d07918f0ff4f24d98
2021-02-18 03:27:28 -05:00
Martin Stjernholm
71c139dced Merge "Move the logic to add jacocoagent in instrumentation builds to make." 2021-02-18 07:52:09 +00:00
Jiyong Park
670e0f62a6 Linktype check error message becomes more correct
The type linkType has String() method and the error message is created
using it.

Bug: 180477804
Test: m nothing
Change-Id: I74fe9c93b74904177dbe9d29cd3aa3304b67ba4f
2021-02-18 13:10:18 +09:00
Inseob Kim
916901e361 Allow uninstallable prebuilt_etc to be packaged
Till now, prebuilt_etc has to be installable to be packaged. With this
commit, packaging modules like filesystem now can include uninstallable
prebuilt_etc. This can help when prebuilt_etc can conflict with other
partitions e.g. system.

Bug: 179340780
Test: build filesystem with uninstallable prebuilt_etc
Change-Id: Id981fe7ce41f1189eb0f85f2d1677d973004423c
2021-02-18 09:27:53 +09:00
Inseob Kim
abf3f3c0ef Merge changes from topics "deps_base_dir_filesystem", "filesystem_rootdir"
* changes:
  Add dirs and symlinks property to filesystem
  Add base_dir property to filesystem
2021-02-18 00:19:48 +00:00
Jooyung Han
847f230c78 Merge "clean up hard-coded min_sdk_version (statsd)" 2021-02-18 00:00:00 +00:00
Victor Chang
9448e8fd56 Add first_perfer32 option to compile_multilib
NDK has 4 ABIs, i.e. x86, x86_64, armv7-a, armv8-a, but cintltst
can only compiled into single ABI, or otherwise, the java_test_host
CtsIcu4cTestCases can't include cintltst in the "data" property
because the "data" property can only include dependecies with
a single variant/ABI.

CtsIcu4cTestCases needs to use "data" property instead of
"host_required" dependency because "host_required" relationship
does not work for streaming the "general_tests" in the post-submit
infra-strucuture. See https://r.android.com/1175350 for the details.

Bug: 168445204
Bug: 160350521
Test: OUT_DIR=ndk_out build/soong/scripts/build-ndk-prebuilts.sh
Change-Id: I81429cc261ec4e25aefe363abb099048ff026505
2021-02-17 23:48:59 +00:00
Jeff Vander Stoep
dc79fe85e7 Update Rust toolchain to 1.50.0
Bug: 180268112
Test: mm crosvm
Change-Id: Ib36f252a99e06059b413326b8f9d1733534facbc
2021-02-17 23:53:18 +01:00
Dan Albert
a175126009 Merge "[arm64] Build NDK with PAuth and BTI" 2021-02-17 21:37:41 +00:00
Chih-hung Hsieh
6e304f5a88 Merge "Change default DEFAULT_TIDY_HEADER_DIRS to empty" 2021-02-17 18:34:48 +00:00
Bob Badour
1bf6765def Add license to hiddenapi
Test: m all
Change-Id: Ic61a74d94bea0e4de2a47be7e15fcf874fb397c3
2021-02-17 09:46:26 -08:00
Anton Hansson
c79d412b8a Use genrule instead of filegroup for api files
filegroups have the unfortunate limitation that they don't create phony
targets for building them in a convenient way. Also, having a single
output file fits better with the genrule concept.

Test: m framework-sdkextensions.api.public.latest
Change-Id: I229410658b04403ff1ff6abd4116a65aaa02b83b
2021-02-17 17:16:43 +00:00
Victor Chang
00c144f930 Non-installable module should not be installed into a fuzzer .zip package
libicu_* fuzzer depends on installable cc modules and non-installable
cc modules with the same name, because the non-installable modules are
stubs used in the compile-time, and shouldn't be used in runtime.

Bug: 175583039
Test: make haiku dist
Test: Run 2 arbitrary binaries from out/dist/fuzz-target-x86_64.zip on device
Test: Run 2 arbitrary binaries from out/dist/fuzz-host-x86_64.zip on host
Change-Id: I0ecf24bb83e3985da3b8f393adab8c87ab7400c6
2021-02-17 16:40:25 +00:00
Martin Stjernholm
0a9dae6e9a Move the logic to add jacocoagent in instrumentation builds to make.
Test: m nothing
Test: m nothing EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true
Bug: 180325915
Change-Id: Ieec8c8a122ff930e14cef4b5a0a2f9fc9e3b70ad
2021-02-17 14:41:07 +00:00
Rupert Shuttleworth
a0516f76ab Merge "Add cc_library_headers support to bp2build." 2021-02-17 08:57:19 +00:00
Treehugger Robot
cc84c8846d Merge changes from topic "vendor_property_enforce"
* changes:
  Add BUILD_BROKEN_VENDOR_PROPERTY_NAMESPACE to BoardConfig
  Add PRODUCT_SHIPPING_API_LEVEL to device config
2021-02-17 07:12:30 +00:00