Commit graph

7048 commits

Author SHA1 Message Date
David Anderson
a480cc78ef Merge "Add an __ANDROID_RAMDISK__ preprocessor define." am: 7309742728 am: 6a3b60969e am: 13f34bef8d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1989090

Change-Id: Ibbd1c1130c90f28aa5822fe73c907d55bfd14df1
2022-02-19 00:56:11 +00:00
David Anderson
7309742728 Merge "Add an __ANDROID_RAMDISK__ preprocessor define." 2022-02-18 23:29:27 +00:00
Treehugger Robot
a7a2b3046b Merge "Add tidy_timeout_srcs property" am: 72518f45e9 am: 01ec0a21d2 am: 730f0b61c9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1991252

Change-Id: I37fb415d2fcea042c45ea1b722cf0b6c596a2409
2022-02-18 22:09:14 +00:00
Colin Cross
e46bd5363e Merge "Export sanitizer paths to Make" am: 2e91786932 am: 6ef7afc9fe am: 93d5b84636
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1990671

Change-Id: I139bb27c91f857fe6df4778cac08276f90a4ed3d
2022-02-18 22:08:52 +00:00
Treehugger Robot
1b8642069a Merge "Propagate data_bins from Soong to Make" am: 309ee8d398 am: ceb712dfe5 am: 534543e608
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1981828

Change-Id: I1da27920106c36208316d3bd4bcbb375b66b22b0
2022-02-18 22:08:36 +00:00
Yu Liu
d9202b0588 Merge "Enable cc_binary in mixed build." am: 9d7d9810e2 am: ea1aae2889 am: 4d7ec99d78
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1983488

Change-Id: Idfd7f6e90ef4dc78ef6b4ec777c81d0d40a71ecb
2022-02-18 10:39:42 +00:00
Florian Mayer
56ce8e4285 Merge "Reland^2 "Enable hwasan use after scope detection."" am: 939143a862 am: a8c5d3792d am: c516ab982e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1988614

Change-Id: Ib57f45fbb43fdd1a39536dd9b9024d867abb941b
2022-02-18 10:39:36 +00:00
Chih-hung Hsieh
d3bb913740 Merge "Do not add non-existing -Bprebuilts/gcc/.../bin" am: 70387c5d03 am: 1918a6120a am: a59f62bfdf
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1987029

Change-Id: I6086e708fab979e2f864997e087f2e5dc2e18af6
2022-02-18 10:39:27 +00:00
Pirama Arumuga Nainar
d9f0822a4e Merge "Reland "Switch to clang-r445002"" am: 2b31fbb805 am: c31610cbce am: 640d3f8587
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1985009

Change-Id: I9b8dadac0a0a7da292f3fec72d9035925219abf3
2022-02-18 10:39:18 +00:00
Treehugger Robot
72518f45e9 Merge "Add tidy_timeout_srcs property" 2022-02-18 03:57:01 +00:00
Colin Cross
2e91786932 Merge "Export sanitizer paths to Make" 2022-02-18 03:39:26 +00:00
Treehugger Robot
309ee8d398 Merge "Propagate data_bins from Soong to Make" 2022-02-18 01:26:07 +00:00
Colin Cross
dd5655b3a4 Export sanitizer paths to Make
system/core/rootdir/Android.mk writes a list of sanitizer libraries
to sanitizer.libraries.txt, and assumes that they are installed with
the same name as the module.  The next patch renames the module to
be the same for all architectures while keeping the installed name
as is.  Collect the output file names of the libraries to export
to make.

Bug: 220019988
Test: m out/target/produuct/coral/system/etc/sanitizer.libraries.txt
Change-Id: Idc51c2ad6f914977a286fe4e2fcb457bc1229339
2022-02-17 15:52:07 -08:00
Chih-Hung Hsieh
9db8a0c5b2 Add tidy_timeout_srcs property
Similar to `tidy_disabled_srcs`, a `tidy_timeout_srcs` list
can be used to include all source files that took long to compile
with clang-tidy. Files listed in `tidy_timeout_srcs` will not
be compiled by clang-tidy when `TIDY_TIMEOUT` is defined.

Bug: 201099167
Test: TIDY_TIME=90 make droid tidy-soong_subset
Change-Id: Ie0bfda66caae4445d10117ceefa1b5b8c1ecf256
2022-02-17 14:48:40 -08:00
Yu Liu
9d7d9810e2 Merge "Enable cc_binary in mixed build." 2022-02-17 21:54:04 +00:00
Florian Mayer
939143a862 Merge "Reland^2 "Enable hwasan use after scope detection."" 2022-02-17 21:19:36 +00:00
Florian Mayer
0b981f54e6 Reland^2 "Enable hwasan use after scope detection."
This CL enables HWASan to detect a new class of bugs, specifically
use-after-scope. An example for a bug like this is

int* y;
{
   int x = 1;
   y = &x;
}
*y = 2;

IF YOU FOUND THIS CL AS A POSSIBLE CULPRIT OF A TEST FAILURE:

While it is possible that there is a bug in HWASan and this CL needs
to be rolled back, please also consider that this might surface
actual problems in either the test code or the code under test. See
https://r.android.com/1956922 for an example of fix for a bug
detected by a previous rollout of this flag.

This reverts commit fd337b3963.

Reason for revert: Once https://r.android.com/1985009 is submitted the bug that caused the revert will be fixed.

Change-Id: Id9e81e8b7c26e044af00bdaeae6bb35abbbd9710
2022-02-17 20:52:15 +00:00
Yu Liu
7f3605fee1 Enable cc_binary in mixed build.
Bug: 216114082
Test: Run mixed build on adbd apex and verify the pavkaged adbd binary;
add unit test.
Change-Id: Id11549a7952a7ce5ac02988b88b747bbfe8339ff

Change-Id: If01efe076c223886278f466b65628602bff3a964
2022-02-17 11:15:59 -08:00
Chih-hung Hsieh
70387c5d03 Merge "Do not add non-existing -Bprebuilts/gcc/.../bin" 2022-02-17 18:25:38 +00:00
Pirama Arumuga Nainar
2b31fbb805 Merge "Reland "Switch to clang-r445002"" 2022-02-17 18:07:38 +00:00
David Anderson
2c8075cd6f Add an __ANDROID_RAMDISK__ preprocessor define.
There is no easy way to inform C++ targets whether they're building "not
in normal Android". In the past we used __ANDROID_RECOVERY__, but this
isn't defined for ramdisk targets, or for vendor_boot. Furthermore
there's no "target.ramdisk.cflags" option to add it.

Add a new __ANDROID_RAMDISK__ define that will be set in any ramdisk or
recovery target (since recovery by definition is in a ramdisk).

Bug: 205987817
Test: mm bootimage, vendorbootimage, recovery
Change-Id: If3cd34b07fe0e20abc5108cb338a56698d33e42e
2022-02-16 21:59:05 -08:00
yangbill
22bafec042 Propagate data_bins from Soong to Make
Write the list of a test module's data_bins value to the
`LOCAL_TEST_DATA_BINS` Makefile variable defined for each module.
This enables downstream tools to correctly set up the runtime
environment for execution. And currently only sh_test, cc_tests, and
rust_tests has this attribute in Android.bp.

Bug: 215234071
Test: m out/soong/Android-aosp_cf_x86_64_phone.mk
Change-Id: I8d47f5f9b25afdc5975c6b414405badb38dbde4b
2022-02-17 04:06:34 +00:00
Colin Cross
d42fcae75f Merge "Add --sysroot /dev/null to musl compiles" am: e4c400bef5 am: 69324f735d am: b5e24d257f
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1983627

Change-Id: Id40f845a799bc1ed8fc565ed9c909946bacbf6d2
2022-02-17 00:40:40 +00:00
Colin Cross
8e16fe0ab1 Merge "Fix transitive whole_static_libs on prebuilt static libraries" am: 4dac32ad1a am: a0c26cc3cc am: 2a102c8147
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1983626

Change-Id: I28cc4d8d706f3a58b36ecf5ef93163b6d54b7858
2022-02-17 00:40:28 +00:00
Chih-Hung Hsieh
57da82697a Do not add non-existing -Bprebuilts/gcc/.../bin
* Only prebuilts/gcc/linux-x86/host/x86_64-w64-mingw32-4.8/x86_64-w64-mingw32/bin
  exists for x86_windows_host.
* Remove config.ToolPath;
  add required -B flags into ToolchainCflags and ToolchainLdflags.

Bug: 218883919
Test: make droid tidy-soong_subset
Change-Id: I9a18bf8cc0cf84e091c7463b3bda316eaab53aa3
2022-02-16 15:49:39 -08:00
Colin Cross
e4c400bef5 Merge "Add --sysroot /dev/null to musl compiles" 2022-02-16 23:32:51 +00:00
Colin Cross
4dac32ad1a Merge "Fix transitive whole_static_libs on prebuilt static libraries" 2022-02-16 23:32:45 +00:00
Colin Cross
675695eb62 Merge "Add builtins and minimal runtime as dependencies instead of flags" am: 251d6500db am: 64ef5e9968 am: 5cf058abab
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1980448

Change-Id: Ie4790bbc44955a4762316eb2bb9657dd63af0364
2022-02-16 20:45:22 +00:00
Colin Cross
251d6500db Merge "Add builtins and minimal runtime as dependencies instead of flags" 2022-02-16 18:59:55 +00:00
Treehugger Robot
1cc29d1787 Merge "Compare tidy_disabled_srcs list by string values" am: ec76c2f072 am: 9f60d66aa9 am: 835b8ef450
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1987286

Change-Id: I57c369f5c2f457bd386d2f513857691ecb6312d4
2022-02-16 05:24:51 +00:00
Treehugger Robot
ec76c2f072 Merge "Compare tidy_disabled_srcs list by string values" 2022-02-16 03:02:37 +00:00
Chih-Hung Hsieh
8439a141a7 Compare tidy_disabled_srcs list by string values
* Cannot use android.Path as key because some srcs and
  and tidy_disabled_srcs items could have the same path
  string but different android.Paths objects.

Bug: 219783146
Test: make tidy-soong_subset
Change-Id: I82e25ec9678ce998feccf361d69ae66dae0905de
2022-02-15 15:32:57 -08:00
Pirama Arumuga Nainar
8a4804f53b Reland "Switch to clang-r445002"
Bug: http://b/214080353
Bug: http://b/218805949

Reland switch to clang-r445002.  The math test failures are fixed by
disabling FMA (-ffp-contract=off).

Test: - atest -a libcore.java.math.RunCSVTestsStrict
      - select bionic tests on go/abtd
      - atest -a \
gatm_algo_test:gatm_algo_test.TestAllGatmTestData/GatmAlgoTest#VerifyOutputValues/05temporaltracing_5frames_1lux_h_drc_free
      - presubmit

Change-Id: I8383edb116caa63884507932406a5f49a223d006
2022-02-15 17:27:30 +00:00
Yi Kong
2f9bef3426 Merge "Don't reduce inline limit for afdo enabled projects" am: 1ca54b2cfd am: 10b71eb414 am: 9e56a9cb3e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1984569

Change-Id: I84c2225a8bd74f8c784db56f1df373c562f71e45
2022-02-14 21:18:57 +00:00
Yi Kong
1ca54b2cfd Merge "Don't reduce inline limit for afdo enabled projects" 2022-02-14 20:33:40 +00:00
Yi Kong
4ef5459f7d Don't reduce inline limit for afdo enabled projects
Test: presubmit
Change-Id: Id964165c7af50da9cd5e92c25ad2c4191eb2147a
2022-02-14 20:02:04 +08:00
Chih-hung Hsieh
061c3b5234 Merge "Split the clangTidyRE rule" am: 1ead213e6d am: 44ec636d91 am: 00c541a9dc
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1980668

Change-Id: Iaca7fffc976bd0c91e5d829ec183ed2a9b8a3863
2022-02-12 05:40:11 +00:00
Chih-hung Hsieh
1ead213e6d Merge "Split the clangTidyRE rule" 2022-02-12 04:45:06 +00:00
Chih-Hung Hsieh
c74f63eeff Split the clangTidyRE rule
* Add clangTidyDepRE, which is an order-only dependent of
  the new simplified clangTidyRE rule.
* Remove escapeSingleQuotes, used only by the old bash command.
* Remove extra space when TIDY_TIMEOUT is not defined.
* In clang-tidy calls,
  use moduleFlags to match the clang/clang++ commands.

Bug: 218937424
Test: make droid tidy-soong_subset
Change-Id: I162e2318410741ab61fb2bb338725b000a3f148d
2022-02-11 17:21:56 -08:00
Colin Cross
0728720d45 Merge changes Ibd19d9a5,Icfc42ad7,Ieafdcceb am: 7b2e5cd134 am: 4a9761befe am: 14eea8f7d5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1980449

Change-Id: I605243788a153758a9ebdddd4250d65efdf1f5ab
2022-02-11 23:57:03 +00:00
Colin Cross
7b2e5cd134 Merge changes Ibd19d9a5,Icfc42ad7,Ieafdcceb
* changes:
  Fix musl clang triple
  Add musl_<arch> and glibc_<arch> properties
  Add libc_musl as a dependency of RuleBuilderCommand.BuiltTool
2022-02-11 23:09:27 +00:00
Colin Cross
6745a8ef1d Add --sysroot /dev/null to musl compiles
Prevent linking against host glibc libraries by passing
--sysroot /dev/null to compile and link rules targeting musl.

Bug: 190084016
Test: m USE_HOST_MUSL=true host-native
Change-Id: Ief2c9507af9ae7cf5376cb874fcef0f2cbaf9994
2022-02-11 13:51:41 -08:00
Colin Cross
a2bcf2c4b8 Fix transitive whole_static_libs on prebuilt static libraries
whole_static_libs on static library usually uses the .o files from
the dependency, but on a prebuilt static library has to use the .a file.
whole_static_libs on a static library that itself has whole_static_libs
on a prebuilt static library also needs to use the .a file transitively.

Test: TestWholeStaticLibPrebuilts
Change-Id: I9d4aabf72be0941b461a72e610f2b28287251cb2
2022-02-11 13:51:41 -08:00
Treehugger Robot
ee18fb6589 Merge "Add error message for unsupported x86 arch variant" am: 104ecf6708 am: baeeb601cc am: ca7d468a5d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1980008

Change-Id: I02dff31376d00f8912036cb89956139fee9b60d6
2022-02-11 14:38:37 +00:00
Treehugger Robot
104ecf6708 Merge "Add error message for unsupported x86 arch variant" 2022-02-11 13:55:43 +00:00
Treehugger Robot
82f65281f6 Merge "Propagate runtime_libs from Soong to Make" am: b451101f6e am: 7966092c95 am: 3489f67ca8 am: 8a5ab8baf9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1976466

Change-Id: I2247f4ba15ced638933acc06735cbefd9a7b543f
2022-02-11 02:07:40 +00:00
Treehugger Robot
b451101f6e Merge "Propagate runtime_libs from Soong to Make" 2022-02-11 00:56:26 +00:00
Liz Kammer
f610a74f4c Add error message for unsupported x86 arch variant
Previously this would result in a Ninja variable lookup, instead, let's
error sooner in Soong.

Test: CI
Change-Id: Ib3e15dce84364e6f7a83b82cb5f0e8694ffc9d2a
2022-02-10 16:58:08 -05:00
Colin Cross
06c80eb851 Add builtins and minimal runtime as dependencies instead of flags
Use dependencies instead of libflags to link libclang_rt.builtins
and libclang_rt.ubsan_minimal.

Test: m checkbuild
Change-Id: I403cee0fb8cc21c347b42d8f8a3c20d6f43337a4
2022-02-10 11:50:31 -08:00
Colin Cross
72ee67659d Fix musl clang triple
Use x86_64-linux-musl and i686-linux-musl as the clang triple when
targeting musl.

Bug: 190084016
Test: m USE_HOST_MUSL=true host-native
Change-Id: Ibd19d9a5fbf4b67950745480d1e0ed8e02eeeba1
2022-02-10 11:50:31 -08:00