Commit Graph

6652 Commits

Author SHA1 Message Date
Matthias Maennich
c2346f1c21 ndk_library: separate abidw and abitidy into separate rules
Both processes might consume a large amount of memory when analyzing
library ABIs. By chaining them via a pipe we keep the same
representation twice in memory. That can introduce a problematic peak
memory consumption. Hence, split them apart into separate rules that
depend on each other.

Bug: 191235788
Test: m out/soong/abi-dumps/ndk/28/x86_64/libc/abi.xml
Signed-off-by: Matthias Maennich <maennich@google.com>
Change-Id: Ia0264a5ede5b2c2a3c2e3fbe968c11d36acf33c2
2021-09-02 21:04:15 +01:00
Lukacs T. Berki
b838b0a147 Do not modules in files called "Blueprints".
The only case for this was Blueprint itself at build/blueprint, but with
that being a part of Soong, this special case is not necessary anymore.

Test: Presubmits.
Change-Id: Icc51cd80bd43f936a97018061cfbf76fc385e4c3
2021-09-02 11:46:24 +02:00
Chris Ye
50ef6e204a Add android.hardware.wifi.hostapd-V1-ndk_platform to VNDK list.
Bug: 194806512
Test: Boot up.
Change-Id: I50518b0291dd40dc051c340faa2641c4cf5952d4
2021-09-01 15:34:12 -07:00
Chih-hung Hsieh
d18b065f70 Merge "RBE should not copy source file back to local" am: 7686708a43 am: e1d5c9fdd0 am: bca91a4a30 am: 861bdbd093 am: 012b227dc7
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1814116

Change-Id: I5c7107d32771083288e440791d8ee0be9acda90f
2021-09-01 22:06:18 +00:00
Chih-hung Hsieh
e1d5c9fdd0 Merge "RBE should not copy source file back to local" am: 7686708a43
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1814116

Change-Id: Id774c8148eb900217d42d41258d6f2407395f24b
2021-09-01 20:55:02 +00:00
Chih-hung Hsieh
7686708a43 Merge "RBE should not copy source file back to local" 2021-09-01 20:43:00 +00:00
Treehugger Robot
b853ecc4ef Merge "Refactor SdkMemberType.AddDependencies()" am: a36ffdead5 am: 05ac706e6f am: d8269ba38e am: ca6392382e am: 05f8c679a0
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1808897

Change-Id: I98dcce7da0b466192658945a0ec2ef67efba9119
2021-08-31 20:24:51 +00:00
Treehugger Robot
05ac706e6f Merge "Refactor SdkMemberType.AddDependencies()" am: a36ffdead5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1808897

Change-Id: I0535c811329b9101059bf9a8953ee203335d2cb4
2021-08-31 19:08:38 +00:00
Treehugger Robot
a36ffdead5 Merge "Refactor SdkMemberType.AddDependencies()" 2021-08-31 18:53:59 +00:00
Treehugger Robot
ed3537a348 Merge "Deprecate group_static_libs property" am: add0b0880e am: e3e7ca657b am: 957e70508a am: 10cc07f086 am: b07c84d344
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1814113

Change-Id: I181475538ba78a8a0a7687c6e4317862e2d2a7ff
2021-08-31 17:59:55 +00:00
Treehugger Robot
e3e7ca657b Merge "Deprecate group_static_libs property" am: add0b0880e
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1814113

Change-Id: Ia5711d638317dcda58628e76b1ba3919f2314cb4
2021-08-31 16:47:56 +00:00
Treehugger Robot
add0b0880e Merge "Deprecate group_static_libs property" 2021-08-31 16:35:18 +00:00
Paul Duffin
296701e35b Refactor SdkMemberType.AddDependencies()
Replaces the BottomUpMutatorContext parameter with a new
SdkDependencyContext type that extends BottomUpMutatorContext. This is
to allow the sdk to pass additional information to the implementations
of that method to allow the behavior to be more finely tuned.

Bug: 195754365
Test: m nothing
Change-Id: I69c6d2c523934eb67d7a7e6c55c241e9b8a81773
2021-08-31 17:07:07 +01:00
Treehugger Robot
142bcb7961 Merge "No clang-analyzer-* checks by default for generated files" am: 09d1c71abd am: 2ae5bdd01c am: ba51fd456b am: 496f238d3a am: 78bef2b7e4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1814102

Change-Id: Ib710884e3218773ce42b2ba8548a298f5ab4ae7f
2021-08-31 00:55:04 +00:00
Treehugger Robot
385c27faef Merge "include vendor linked-libraries in fuzz target bundles" am: c2ac3ee294 am: c149ae2622 am: 21f0ee9dfc am: a920d07399 am: 91f01cac98
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1811239

Change-Id: I627562cec47eab9170080295f4ca5a456b7931df
2021-08-31 00:31:22 +00:00
Treehugger Robot
2ae5bdd01c Merge "No clang-analyzer-* checks by default for generated files" am: 09d1c71abd
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1814102

Change-Id: Ief60efc7a45ff1cf7ab67b92b6cd2ef61d87fea7
2021-08-31 00:03:43 +00:00
Treehugger Robot
09d1c71abd Merge "No clang-analyzer-* checks by default for generated files" 2021-08-30 23:50:36 +00:00
Treehugger Robot
c149ae2622 Merge "include vendor linked-libraries in fuzz target bundles" am: c2ac3ee294
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1811239

Change-Id: Ib3eb68bff8e89b1d910a09d114a57a173bde3ce4
2021-08-30 23:24:55 +00:00
LaMont Jones
5569d6eb47 Deprecate group_static_libs property
We now default to lld for platform builds, removing all need for this
property.  For more details, see "Effecient archive file handling" in
https://lld.llvm.org/NewLLD.html#key-concepts

Bug: 189475744
Test: Manual build succeeds
Change-Id: If1104d68b13de8c7afab35c1741a68f64394b448
2021-08-30 23:13:03 +00:00
Treehugger Robot
c2ac3ee294 Merge "include vendor linked-libraries in fuzz target bundles" 2021-08-30 23:11:45 +00:00
Chih-Hung Hsieh
062e934a9e No clang-analyzer-* checks by default for generated files
Test: make with WITH_TIDY=1 CLANG_ANALYZER_CHECKS=1

Bug: 198098397
Change-Id: I386be0b4ee0fcc1785b2eeb8d1eb26ced68246d7
2021-08-30 15:08:24 -07:00
Chih-Hung Hsieh
fde8e6d387 RBE should not copy source file back to local
Test: make with default RBE variables plus:
WITH_TIDY=1 CLANG_ANALYZER_CHECKS=1
RBE_CLANG_TIDY=true
RBE_CLANG_TIDY_EXEC_STRATEGY=remote_local_fallback

Bug: b/157147559
Change-Id: I1c0106312910919cfda99b816cc8d0f9731b8bd1
2021-08-30 12:49:39 -07:00
Pirama Arumuga Nainar
b8b9e54c6b [cc] Switch to -fsanitize-ignorelist am: 582fc2d1dd am: a5bc4aaabd am: 5987cc00ff am: 6628c70ee1 am: 7962e4e0d7
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1811240

Change-Id: Ibb0d777b2d94e1ae63ac20b418eb922fb8bb4bcb
2021-08-30 05:35:58 +00:00
Pirama Arumuga Nainar
a5bc4aaabd [cc] Switch to -fsanitize-ignorelist am: 582fc2d1dd
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1811240

Change-Id: I67be5ca57a384a19b5425288f01af73ab65deda3
2021-08-30 04:54:30 +00:00
Pirama Arumuga Nainar
582fc2d1dd [cc] Switch to -fsanitize-ignorelist
Upstream added this flag to replace -fsanitize-blacklist.

Test: presubmit
Change-Id: Iad6a1ac47b3a5693ed2107f491cbb36ac9f630ff
2021-08-27 15:12:56 -07:00
Kris Alder
756ec8d8f1 include vendor linked-libraries in fuzz target bundles
Without this, any libraries with vendor: true set won't be included.

Bug: 197917632
Test: make haiku, run several fuzz targets on a device
Change-Id: Icab8d3f17d1f07f49940ee0ea52d9312a925affa
2021-08-27 22:08:29 +00:00
Nicolas Geoffray
998ec6ebc6 Merge "Add exclude_runtime_libs to more targets." am: 7e4c05fcc8 am: 9e1902daca am: 0206875094 am: ca0b409914 am: 0b7e80d82a
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1810756

Change-Id: I8b23823afdf2c8dcf83eb836003e859a825a124f
2021-08-27 12:43:00 +00:00
Nicolas Geoffray
9e1902daca Merge "Add exclude_runtime_libs to more targets." am: 7e4c05fcc8
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1810756

Change-Id: I170171b9b1edc4551e2c89452c49ed1274b0267f
2021-08-27 11:43:58 +00:00
Martin Stjernholm
3aa9544ec1 Add exclude_runtime_libs to more targets.
Test: `m droid` with https://r.android.com/1810717
Bug: 197856821
Change-Id: I4c93ae4b1f686796827a9635ba4ed50db00e6a8c
2021-08-26 17:29:49 +01:00
Jiyong Park
14df6ba335 Merge changes I15328e0b,I731227c2 am: 19312d4224 am: b4adefa58e am: 7c4d921152 am: a962911322 am: 4b3378d4ff
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1808218

Change-Id: I1b045c686649de3df06194cd232d6d56b0577de7
2021-08-25 23:42:03 +00:00
Jiyong Park
b4adefa58e Merge changes I15328e0b,I731227c2 am: 19312d4224
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1808218

Change-Id: I58224f0fc056f174567241a13d9eb54dbaef5d12
2021-08-25 22:48:34 +00:00
Jiyong Park
19312d4224 Merge changes I15328e0b,I731227c2
* changes:
  crt objects for APEX and vendor variants have correct target API levels
  crt modules produces cc rules for testing
2021-08-25 22:30:40 +00:00
Florian Mayer
665991a362 Merge "Use new pass manager for HWASan builds." am: 35fc86c9cf am: f38f955bdb am: 09bc16b652 am: faf69a1bb5 am: ef76f45c87
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1802330

Change-Id: I0f19f8250de41a81c636aa02c7102497da3fc93a
2021-08-25 11:43:38 +00:00
Florian Mayer
f38f955bdb Merge "Use new pass manager for HWASan builds." am: 35fc86c9cf
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1802330

Change-Id: Ieaef02fc55baa0fd76c79659192a29fde5876d73
2021-08-25 10:57:59 +00:00
Florian Mayer
35fc86c9cf Merge "Use new pass manager for HWASan builds." 2021-08-25 10:39:37 +00:00
Jiyong Park
5df7bd33f7 crt objects for APEX and vendor variants have correct target API levels
Previously, crt objects for APEX and vendor variants targetted API level
16 regardless of their context. For example, even if BOARD_VNDK_VERSION
is set to 29, or an APEX has `min_sdk_version: "29"`, the target API
level was from `min_sdk_version` property of the crt object which is set
to 16.

The meaning of min_sdk_version is quite different when it comes to crt
objects. It means the lowest API level that it CAN target for. It does
NOT mean the API level it SHOULD always target.

This has caused some other problems like TLS segment underalignment for
vendor libraries because the vendor libraries were all built with TLS
layout from API level 16.

This change fixes the problem by correctly implementing the different
semantic of min_sdk_version for crt objects.

Bug: N/A
Test: m nothing

Change-Id: I15328e0b6cbabbe151dd65c7469c6355e167b78a
2021-08-25 16:26:47 +09:00
Jiyong Park
7549d460f0 crt modules produces cc rules for testing
Previously, crt modules didn't produce cc rules because they didn't have
any input src files set. This prevented us from having a test which
checks the cflags of the crt modules.

Fixing that by adding source file to the crt modules. crtbrand is also
added as an 'objs' dep, because otherwise partialLd rules won't be
generated.

Bug: N/A
Test: m nothing
Change-Id: I731227c20c662c876c40f0c41e1769a271e2c643
2021-08-25 16:16:03 +09:00
Sophie Zheng
0d6217f413 Merge "Also generate api lists based on symbol files for cc_library rule during build time." am: d9287b6c35 am: 5e640b6b45 am: c5f6a553ec am: f2f495b02d am: fee8e9ae89
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1797135

Change-Id: I6758ab4d053c45e455928bef734dd05beccc70a0
2021-08-25 05:26:00 +00:00
Sophie Zheng
5e640b6b45 Merge "Also generate api lists based on symbol files for cc_library rule during build time." am: d9287b6c35
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1797135

Change-Id: Ie272b922a62dbb655535fef3a4c1888d4019cedb
2021-08-25 04:29:18 +00:00
Sophie Zheng
d9287b6c35 Merge "Also generate api lists based on symbol files for cc_library rule during build time." 2021-08-25 04:16:34 +00:00
Treehugger Robot
3ee2e8a969 Merge changes from topic "ninja_static" am: c5e452b2c5 am: c07549c715 am: b43c2da3b9 am: d46f1b424b am: 2564643bac
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1801111

Change-Id: I4c198a31e8fb4261aec6f7c7aae79ab169e5e614
2021-08-25 03:43:00 +00:00
Treehugger Robot
c07549c715 Merge changes from topic "ninja_static" am: c5e452b2c5
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1801111

Change-Id: Ia8cacb28044eb4496c1d713dcf5ffada6b68c907
2021-08-25 02:41:54 +00:00
Treehugger Robot
c5e452b2c5 Merge changes from topic "ninja_static"
* changes:
  Fix crtend for musl static binaries
  Support static_executable: true for musl builds
  Use SystemSharedLibs as StaticLibs for static executables
2021-08-25 02:28:07 +00:00
sophiez
4c4f80326d Also generate api lists based on symbol files for cc_library rule during build time.
Test: build/soong/soong_ui.bash --make-mode SKIP_ABI_CHECKS=true TARGET_PRODUCT=aosp_cf_x86_phone TARGET_BUILD_VARIANT=userdebug droid dist DIST_DIR=/usr/local/google/home/sophiez/my_dist_dir EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true CLANG_COVERAGE=true SKIP_BOOT_JARS_CHECK=true

Change-Id: Ic857c14c5c258b8f4d150cc71ce9eabce33d7d54
2021-08-24 17:39:45 -07:00
Colin Cross
f26b466cad Fix crtend for musl static binaries
Bug: 190084016
Test: aosp-build-tools linux_musl build
Change-Id: Ia78884cd24f5b7d8aa8207268539cfb453666699
2021-08-24 13:39:02 -07:00
Colin Cross
a793db33a2 Support static_executable: true for musl builds
Bug: 190084016
Test: aosp-build-tools linux_musl build
Change-Id: I630c54033c44ddd6b54388ed36642629cf2e4e5b
2021-08-24 13:39:02 -07:00
Colin Cross
450744e718 Use SystemSharedLibs as StaticLibs for static executables
Shared libraries are ignored for static executables, treat
SystemSharedLibs as StaticLibs to avoid every static executable
having to list libc as a static dependency.

Test: m checkbuild
Change-Id: I02442a1a2a8d4164ec3dd389a16da2346e2d8751
2021-08-24 13:39:02 -07:00
Treehugger Robot
256a4e44d8 Merge "Apply pylint to build/soong/cc/ndk_api_coverage_parser" am: 373e71c5d4 am: a41f24c545 am: 88e568051c am: 12f8fc3b9b am: c1a5d49636
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1797008

Change-Id: Iaa4463d936bc682e5ba1a53b1db1af31b516796a
2021-08-23 23:50:11 +00:00
Treehugger Robot
a41f24c545 Merge "Apply pylint to build/soong/cc/ndk_api_coverage_parser" am: 373e71c5d4
Original change: https://android-review.googlesource.com/c/platform/build/soong/+/1797008

Change-Id: I4bfd96c5da8cba12fb1db0059db6f85e2aede684
2021-08-23 22:57:13 +00:00
Treehugger Robot
373e71c5d4 Merge "Apply pylint to build/soong/cc/ndk_api_coverage_parser" 2021-08-23 22:42:05 +00:00