Commit Graph

6123 Commits

Author SHA1 Message Date
Colin Cross
4fb4ef2242 Split the x86 host toolchain into glibc and musl variants
Create new musl toolchains that are based on the existing glibc
toolchains, and add the necessary flags for musl compiles.

Bug: 190084016
Test: TestArchMutator
Change-Id: Ifc02f9e5afa61ff758be98b0c962f3a4b53d0546
2021-07-23 08:57:17 -07:00
Christopher Parsons
b46b416998 Merge "Remove bp2build deps mutator" am: 2f1102fe58 am: ba5164965a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1774225

Change-Id: Ief47750896b9ffca5ac375e841288e1b7da8cca0
2021-07-23 15:22:52 +00:00
Colin Cross
1dd4b94aa3 Merge "Remove Fuchsia support from Soong" am: b8d69871a8 am: be588a31d1
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1774379

Change-Id: I9e0151ef36eb011f8c942469ca50eff0b781faf6
2021-07-23 15:22:42 +00:00
Christopher Parsons
2f1102fe58 Merge "Remove bp2build deps mutator" 2021-07-23 14:55:40 +00:00
Colin Cross
b8d69871a8 Merge "Remove Fuchsia support from Soong" 2021-07-23 14:54:49 +00:00
Yi Kong
f8e53703f0 Fix build on older Macs with universal binary Clang
Our Clang is not built to handle old linkers by default, so if we do not
configure this explicitly it may attempt to use flags that are not
supported by the version of the Darwin linker installed on the build
machine.

Bug: 191276541
Test: build rs on 10.13
Change-Id: Ia40170b6aeba11fb6997021ec3f73e911e0b057c
2021-07-23 07:54:01 +00:00
Jiyong Park
5b48d9a01b *-ndk.so libraries are added to VndkMustUseVendorVariantList
We will replace the ndk_platform backend with the ndk backend. The
former hasn't been deleted yet because there already are references to
it. When the existing references are all replaced with the ndk backend,
we will remove the ndk_platform backend and the corresponding libraries
will be removed from this list.

Bug: 161456198
Test: m

Merged-In: I7c7aa1025a876e45fc4779378825d91098164e84
Change-Id: I7c7aa1025a876e45fc4779378825d91098164e84
(cherry picked from commit b58719c156)
2021-07-23 12:56:50 +09:00
Jiyong Park
9259a7ee61 Reland: Add more target-specific properties
Following properties are added:

* vendor.header_libs
* platform.cflags
* platform.header_libs
* platform.exclude_shared_libs

These are used in the *-ndk libraries generated from the aidl_interface
modules, so that we can build the platform variants of the libraries
just like the *-ndk_platform libraries. Eventually, we will remove the
*-ndk_platform libraries.

Bug: 161456198
Test: m
Merged-In: I126e272cd29eb1e03662c54bfa8bd64e704adc74
Change-Id: I126e272cd29eb1e03662c54bfa8bd64e704adc74
(cherry picked from commit bb14481408)
2021-07-23 12:55:51 +09:00
Colin Cross
acf474e9bb Merge "Replace android.BuildOs with Config.BuildOS" am: 78fd15f7d6 am: bf2f93f8e8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1773108

Change-Id: Ib6e5eea644f359c59e597943222d3f1f51b564d0
2021-07-23 00:39:59 +00:00
Colin Cross
78fd15f7d6 Merge "Replace android.BuildOs with Config.BuildOS" 2021-07-23 00:07:01 +00:00
Chris Parsons
5a34ffb350 Remove bp2build deps mutator
Refactor bp2build to retrieve modules directly by name, instead of via
DirectDeps. This functions properly as bp2build has no need for variant
information of the blueprint graph.

Test: USE_BAZEL_ANALYSIS=1 m fmtlib
Change-Id: Ief4b67bc56f24929871af772f3a742f07085bf8c
2021-07-22 18:09:34 -04:00
Colin Cross
6b8f4253eb Remove default_shared_libs
system_shared_libs has been modified to have the same behavior as
the newly added default_shared_libs, remove default_shared_libs in
favor of system_shared_libs.

This reverts Ia2349d84c70e503916f90a5d2702e135248f73df and renames
the default_shared_libs property in cc_object (which never had
system_shared_libs) to system_shared_libs.

Bug: 193559105
Test: m checkbuild
Change-Id: I46672e3a096b6ea94ff4c10e1c31e8fd010a163c
2021-07-22 12:10:11 -07:00
Treehugger Robot
9b95e0bc13 Merge "Apply system_shared_libs to all variants" am: 2e4c0eb90e am: 75c2ca900e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1765126

Change-Id: Ie18e6bb3aa92e5ac73301d06cf4426564c19a95a
2021-07-22 19:00:12 +00:00
Treehugger Robot
2e4c0eb90e Merge "Apply system_shared_libs to all variants" 2021-07-22 17:44:32 +00:00
Kalesh Singh
ada357aeb4 Update VndkMustUseVendorVariantList
Add android.system.suspend-V1-ndk_platform

Bug: 170260236
Test: m
Change-Id: I93b84112e0fcdd3593ca196308338945376acc1a
2021-07-22 06:34:13 +00:00
Colin Cross
cb0ac95bde Remove Fuchsia support from Soong
Bug: 194215932
Test: m checkbuild
Change-Id: Id7d3964d9417f8b0938af9b168bb4c00cebe9390
2021-07-21 20:37:46 -07:00
Kiyoung Kim
52b6b4a768 Merge changes I3574d2a1,Ifb69fb3d am: 5d96f64d04 am: 6a7257a450
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1771025

Change-Id: I39bdfdbd3ffe8e9471b54480f557206ec93a3e26
2021-07-22 01:30:55 +00:00
Kiyoung Kim
5d96f64d04 Merge changes I3574d2a1,Ifb69fb3d
* changes:
  Update prebuilt_etc available for snapshot
  Separate snapshot definition
2021-07-22 00:57:39 +00:00
Liz Kammer
5a084f028d Add deps for system_shared_libs for all axes am: 561923e10d am: 9919c2ea1a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1774005

Change-Id: I8bb43e96a011495d530ef8cbee7cd5f868729600
2021-07-21 17:56:05 +00:00
Liz Kammer
561923e10d Add deps for system_shared_libs for all axes
This is the same hack we have currently, but applying it to the various
axes to unblock a Soong/bionic refactoring CL.

Test: bp2build.sh
Change-Id: Ie068461201bb3c18b9f385026e96cca2c7fe6b97
2021-07-21 10:15:56 -04:00
Hsin-Yi Chen
9ce14e7d03 Merge "Specify working directory and OUT_DIR to ABI tools" am: 1f019f945d am: 28bca125df
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1760699

Change-Id: I526b9a95e11e4e36ff80a9d9387240f979a0e3b3
2021-07-21 07:45:55 +00:00
Hsin-Yi Chen
1f019f945d Merge "Specify working directory and OUT_DIR to ABI tools" 2021-07-21 07:19:13 +00:00
Colin Cross
0c66bc615b Replace android.BuildOs with Config.BuildOS
Replace the android.BuildOs constant with Config.BuildOS so that it
can vary based on the product config.

Bug: 190084016
Test: all Soong tests
Change-Id: Ia67f872d8b2ab788747a22e3a9659dc21c9775cd
2021-07-20 12:46:48 -07:00
Kiyoung Kim
ae11c233b5 Update prebuilt_etc available for snapshot
Make prebuilt_etc module available for the snapshot. This change
includes implementing snapshot interface for the prebuilt_etc module so
it can be added to the snapshot from the fake snapshot, or when the
module is specified in the list.

Bug: 192430376
Test: m nothing passed
Test: Checked if the module is included in the snapshot properly
Change-Id: I3574d2a1b8f8f4e5f083f3913e8768f5088d0c46
2021-07-20 11:24:03 +09:00
Colin Cross
9e7c62b79a Merge "Remove clang indirection, affects command line ordering" am: ae86338676 am: eeec86e85e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1767414

Change-Id: I9f209242598bb46a2f73cea6acd2fee88bf8cfc8
2021-07-19 22:16:15 +00:00
Colin Cross
ae86338676 Merge "Remove clang indirection, affects command line ordering" 2021-07-19 21:46:52 +00:00
Treehugger Robot
266d97fa2a Merge "Refactoring fuzz packaging code" am: 0b45f0b90f am: c62f2deb45
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1758711

Change-Id: Ib7b2a903e1f5a8a52c38272704c67b9e92cfef94
2021-07-19 20:34:57 +00:00
Hsin-Yi Chen
79781a94f0 Specify working directory and OUT_DIR to ABI tools
This commit adds `--root-dir . --root-dir $OUT_DIR:out` to the commands
of ABI tools. If the user sets non-default $OUT_DIR, the tools write
"out" instead of the actual $OUT_DIR to the ABI dumps.

Test: export OUT_DIR=~/aosp_out ; \
      make libstagefright_bufferqueue_helper.vendor
Bug: 192157880
Change-Id: I4e2d1b252273106fb6a3ecfa1727d5c91ba03444
2021-07-19 03:46:31 +00:00
Kiyoung Kim
48f3778cb4 Separate snapshot definition
Current snapshot definition is located in the CC module, so it is
difficult to capture non-CC module (such as prebuilt_etc) to the
snapshot. Separate general snapshot definition from cc so other modules
can also define its own snapshot.

Bug: 192430376
Test: m nothing passed
Change-Id: Ifb69fb3d2ec555b629aa31ec03e7ce5831fd3063
2021-07-19 11:42:32 +09:00
hamzeh
41ad881e16 Refactoring fuzz packaging code
Rust and cc fuzz packaging have common. This change is to put this
common methods and fields into fuzz_common.

Test: make haiku and make haiku-rust ran locally and verify corpus,
dict and config are packaged along with the executable.

Change-Id: I04bf535cd2597ed8b2bd3d8e6ea8c28f38bdc18b
2021-07-16 17:43:33 -07:00
Colin Cross
0369572907 Merge "Rename ninja variables with Clang in the name" am: 51736b82fc am: ac5a348ce9
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1767413

Change-Id: Ib314260932248c5f2d0ca0f2e567fa61eb91c1e2
2021-07-16 01:06:04 +00:00
Colin Cross
7a19faf969 Merge changes I29bf144b,Id2879453 am: 908fbe200e am: a103247992
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1767412

Change-Id: Ib40d4dae318eb81f1bd04cd061af664cd4994238
2021-07-16 00:30:14 +00:00
Colin Cross
51736b82fc Merge "Rename ninja variables with Clang in the name" 2021-07-16 00:28:13 +00:00
Colin Cross
908fbe200e Merge changes I29bf144b,Id2879453
* changes:
  Remove more clang indirection without affecting command lines
  Remove clang indirection without affecting build.ninja
2021-07-16 00:00:22 +00:00
Colin Cross
9cc59c1cbd Remove clang indirection, affects command line ordering
Move the last clang-specific list into the common global list.  This
affects the command line flag ordering due to the the -fdebug-prefix-map=
flag that is added by an init() function, which will force every native
rule to recompile.

Bug: 68947919
Test: m checkbuild
Change-Id: Ic2509e61e9555e9483b92a18d7e8d9913b7125cc
2021-07-14 20:55:25 -07:00
Colin Cross
0523ba2675 Rename ninja variables with Clang in the name
Rename the ninja variables that have an extraneous Clang in the name,
since there are no longer any non-Clang variables.

Bug: 68947919
Test: no change to command lines used to build mmma bionic
Change-Id: I081d5e1d423a66d55faece6cb1d265cd5e504d5f
2021-07-14 20:55:23 -07:00
Colin Cross
c8bed31f56 Remove more clang indirection without affecting command lines
Squash the contents of some clang-specific ninja variables into
the main ninja variables.

Bug: 68947919
Test: no change to command lines used to build mmma bionic
Change-Id: I29bf144b03307a7893376e68d82f12f5c40e8e95
2021-07-14 20:55:02 -07:00
Colin Cross
33bac24bb9 Remove clang indirection without affecting build.ninja
Remove cflags that are not handled by clang from the global defaults,
and remove calls to ClangFilterUnknownCflags.

Squash lists of clang-specific default flags into the main default
flags lists.

Rename Toolchain.Clang*flags to Toolchain.*flags.

Rename Go variables with Clang in the name that have no non-Clang
equivalent.

Remove unused ninja variables.

Bug: 68947919
Test: no change to build.ninja for aosp_cf_x86_64_phone-userdebug or aosp_crosshatch-userdebug
Change-Id: Id287945315d53e5eaef197adbbb4f1302f2e3680
2021-07-14 20:54:22 -07:00
Treehugger Robot
cb656bb1ca Merge "Export paths for the snapshot modules" am: 5445c84f4d am: e7154ca8e7
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1762847

Change-Id: I878703ad9b1f6f2fb36909603023110f9e88cf3a
2021-07-14 00:36:06 +00:00
Treehugger Robot
5445c84f4d Merge "Export paths for the snapshot modules" 2021-07-14 00:08:12 +00:00
Colin Cross
72bf8e1310 Apply system_shared_libs to all variants
Remove the odd semantics of system_shared_libs that ignore the property
for non-bionic variants by always honoring it.  For the common case
of system_shared_libs: [] this is generally correct, a non-bionic
variant of a module that doesn't compile against bionic libc probably
also doesn't want some other libc.  For modules that use something
like system_shard_libs: ["libc"] to link against libc but not libdl
and libm this may cause problems, as it will cause a host varaint to
try to link against the non-existent host "libc" module, but there
aren't very many of those and they can be fixed to use a target.bionic
clause.

Bug: 193559105
Test: m checkbuild
Change-Id: I94454a71144e3e68c7148b8d0bf2d974d2ad2bc6
2021-07-13 16:23:23 -07:00
Christopher Parsons
76da607830 Merge "Seperate asflags and cflags" am: ace3b7f0a2 am: 7e8be02166
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1764626

Change-Id: I2edbc9c29d57af80df67f5bc90bc45b29df5de77
2021-07-13 21:36:06 +00:00
Chris Parsons
69fa9f9e5e Seperate asflags and cflags
This fixes a bug which was a misunderstanding of soong properties:
Soong's cflags pertain only to C and C++ language, whereas bazel's copts
pertain to all three languages. This change ensures that asflags are
added as specifically asflags, and the 'copts' for the static library
macro pertains only to C and C++ languages.

This requires a somewhat hacky workaround for asflags, however: Since
assembly sources also need includepath-related flags, this duplicates
these flags between copts and asflags. To reduce verbosity of
bp2build-generated targets, this also ensures that asflags are omitted
in cases where there are no assembly sources.

Test: Mixed build droid CI
Change-Id: Ic0babed1f90d6dc82e5788638681ce5b995043f8
2021-07-13 14:06:14 -04:00
Treehugger Robot
90fd09de6b Merge changes from topic "vendor_snapshot-192647618" am: da70df7277 am: 4ba5a02a4d
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1755250

Change-Id: Iee6ae2a99d36117e9099a6c926b0c0c46ec42436
2021-07-13 09:24:26 +00:00
Treehugger Robot
da70df7277 Merge changes from topic "vendor_snapshot-192647618"
* changes:
  cc/cc.go: Harden GetSnapshot() against nil pointer panic
  cc/cc.go: Add Device() method to LinkableInterface
2021-07-13 08:54:11 +00:00
Justin Yun
d9e05750ba Export paths for the snapshot modules
Some makefiles require the paths to the snapshot to use the snapshot
resources. Export SOONG_{IMAGE}_{VERSION}_SNAPSHOT_DIR to make.

Bug: 187222756
Test: check ninja depedency with and without snasphots.
Change-Id: Ie817285d43db094335e4c81ebb6eca7007c5f37d
2021-07-13 11:36:24 +09:00
Treehugger Robot
322af7d65a Merge "Share EffectiveLicenseFiles for snapshot modules" am: b9386b703e am: 56ff4c5c08
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1751244

Change-Id: Ia7eea45d703289ad943f1e818c88e736265bfb67
2021-07-12 22:38:31 +00:00
Treehugger Robot
b9386b703e Merge "Share EffectiveLicenseFiles for snapshot modules" 2021-07-12 22:06:59 +00:00
Liz Kammer
7b6484325b Merge changes If89b7d0b,I630c06f0,Id861a62b,If71bb468 am: 1a0e2d20b3 am: 60cd3b9609
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1749407

Change-Id: I4346f2ae9432e2cd375bdbacb4a422105d73f3c5
2021-07-09 21:12:19 +00:00
Liz Kammer
75db931843 Iterate over sanitizers
Test: go test soong tests
Change-Id: If89b7d0b04cad79b42a08504d4fcff36e914b7a4
2021-07-08 11:19:15 -04:00