Commit Graph

4624 Commits

Author SHA1 Message Date
Paul Duffin
ac897cfdf7 Allow compile_multilib to be specified on module exports
This is needed to allow the art-host-module-exports to restrict itself
to just managing the linux 64 bit version of the host tools as that is
the only variant that is currently supported by all host tools. This
greatly simplifies that process and allows us to make progress on the
unbundling.

Bug: 142935992
Bug: 153306490
Test: m nothing
Merged-In: I62d016d97c2df73e5feecf912638f477fedd97c9
Change-Id: I62d016d97c2df73e5feecf912638f477fedd97c9
2020-04-22 12:51:06 +01:00
Inseob Kim
eb59165dee Add C++ Host support on sysprop_library
With Host_supported: true, C++ part of sysprop_library will create host
variant which can be used from host modules. As there are no native
system property support on host, libbase functions will be used instead.
Adding support on host will help reduce code complexity of other
host_supported modules.

Bug: 147708854
Bug: 153306490
Test: m, sysprop_test, manually test host binary
Merged-In: I850d91fea298ef1a0c16c6a7a9ec1aca5cf37e69
Change-Id: I850d91fea298ef1a0c16c6a7a9ec1aca5cf37e69
2020-04-22 12:50:22 +01:00
TreeHugger Robot
32d330aaa1 Merge "Skip version mutator for host/ramdisk/recovery" into rvc-dev am: d50865fcec
Change-Id: Id594730855bbafe731f46474a09859990f881bc9
2020-04-22 09:23:01 +00:00
TreeHugger Robot
d50865fcec Merge "Skip version mutator for host/ramdisk/recovery" into rvc-dev 2020-04-22 09:08:17 +00:00
Treehugger Robot
80abaaa6a5 Merge "cc: add min_sdk_version prop" am: 1b7599d918 am: 9e6db091f5
Change-Id: I9a8c4b261a6eaab1aff7f32c9fdf49bba59940c0
2020-04-22 01:18:38 +00:00
Stephen Hines
2cc74a9621 Merge "Switch to clang-r377782d (10.0.6)." into rvc-dev 2020-04-21 21:43:18 +00:00
Oliver Nguyen
6f641c1cac Only package gcno files for gcov coverage builds.
Bug: 154550223
Test: m -j NATIVE_COVERAGE=true droid dist tests
Test: m -j CLANG_COVERAGE=true droid dist tests
Change-Id: I81598bcab8db105de6692156c001fc961409ce63
2020-04-21 12:40:27 -07:00
Jooyung Han
379660c9c2 cc: add min_sdk_version prop
min_sdk_version is the minimum version of the sdk that the compiled
artifacts will run against.

For example, when a module is used by two APEXes and their
min_sdk_versions are set to 29 and 30, then the module should support
both versions even if it is compiled against 30. Therefore,
min_sdk_version of the module needs to be set 29 in that case. In
general, this is set as the minimum value of min_sdk_vesions of APEXes.

For now, there's no build-time checks about this prop even if the prop
is set.

Bug: 145796956
Bug: 152655956
Bug: 153333044
Test: m nothing
Change-Id: I072ad8c317d2615e8b08e4e7ea2db8e7955b4b12
2020-04-21 15:24:00 +09:00
Jiyong Park
24eec07f47 Make ndk_prebuilt_* be available to any apex
The NDK prebuilts are implicitly used when building with sdk_version set.
Make the module types be available to any apex so that we don't need to
manually add apex_available property to the module definitions manually.

Exempt-From-Owner-Approval: cherry-pick from AOSP

Bug: 150999716
Test: m

Merged-In: I0870afa4c74b4a06ab1273dff84615778561ecc9
(cherry picked from commit e01e228270)
Change-Id: I0870afa4c74b4a06ab1273dff84615778561ecc9
2020-04-20 16:23:46 +09:00
Jiyong Park
2416c2903e Remove some apex_available whitelist
The marked library(ies) were available to the APEXes via the hand-written
whitelist in build/soong/apex/apex.go. Trying to remove the whitelist
by adding apex_available property to the Android.bp of the libraries.

Exempt-From-Owner-Approval: cherry-pick from AOSP

Bug: 150999716
Test: m
Merged-In: I91d1b1076733a949ca2a959ba640ce34d0233492
(cherry picked from commit 541142ce6b)
Change-Id: I91d1b1076733a949ca2a959ba640ce34d0233492
2020-04-20 16:22:56 +09:00
Treehugger Robot
14e7a2d77d Merge "Do not check ABI for coverage variants" am: acc5448f2b am: 49840b9cdc
Change-Id: If5e8e09c422a79851e45183905f291e9d7bedf88
2020-04-20 04:29:41 +00:00
Treehugger Robot
acc5448f2b Merge "Do not check ABI for coverage variants" 2020-04-20 03:50:03 +00:00
Stephen Hines
57a45f1304 Switch to clang-r377782d (10.0.6).
Bug: http://b/153164546
Test: Built aosp_blueline successfully. Kernel also verified without
needing workarounds from LLD crash.

Change-Id: I41ae5a5be0065da98dd941b16196a3f4888b86b1
Merged-In: I41ae5a5be0065da98dd941b16196a3f4888b86b1
(cherry picked from commit 883a0fdfd9)
2020-04-17 17:39:04 -07:00
Ramy Medhat
be1bce758a Merge "Allow remote execution of link actions." am: 383683559c am: 10e9d6dff8
Change-Id: I009b5fa5234f2895651b2b6c650ea518d32b20b3
2020-04-17 14:40:30 +00:00
Ramy Medhat
383683559c Merge "Allow remote execution of link actions." 2020-04-17 13:59:26 +00:00
Yo Chiang
69e6ded091 Merge "cc_prebuilt_library respect module name and stem" am: ff6bd149dd am: ebc40b9cb0
Change-Id: I846e10f07eb35eb18a54fc7267847e5dff3964ec
2020-04-17 01:41:39 +00:00
Ramy Medhat
9a90fe5e23 Allow remote execution of link actions.
This CL adds a remoteexec package that allows adding a configurable RBE
prefix to the template.

Test: built aosp crosshatch userdebug with and without RBE_CXX_LINKS.
Change-Id: Ica920c3d7f79f2996210b9cbd448126451c1707c
2020-04-16 21:18:10 -04:00
Yo Chiang
ff6bd149dd Merge "cc_prebuilt_library respect module name and stem" 2020-04-17 01:07:03 +00:00
Treehugger Robot
08931de17f Merge "Clean up unused flags for LLD." am: 7f64ed9dcf am: f0f0f071a4
Change-Id: Ia1f63c05f14ebeae2e09ba02e9d5b47e3c493758
2020-04-14 22:45:44 +00:00
Treehugger Robot
7f64ed9dcf Merge "Clean up unused flags for LLD." 2020-04-14 22:17:16 +00:00
Martin Stjernholm
2a6e9d0b01 Fix missing NOTICE targets for static libs that aren't available to
platform.

The NOTICE file generation depends on the NOTICE targets for all static
library dependencies. If such a dependency didn't have
//apex_available:platform it didn't get any AndroidMk entry and hence
no NOTICE target via soong_cc_prebuilt.mk. If it was then depended upon
by a binary or library that is accessible to platform, the NOTICE
dependency failed.

Normally such a dependency is invalid, but there are corner cases where
binaries go neither into platform nor any APEX module, and they can
legitimately have such dependencies (cf. b/152241137).

With this CL requests to skip installation of such a static libraries
are ignored so that they get AndroidMk entries, which will always have
LOCAL_UNINSTALLABLE_MODULE set.

Test: "m simpleperf_ndk" with https://r.android.com/1273016, which
  removes //apex_available:platform from libs that simpleperf_ndk
  depends on statically.
Bug: 152241137
Bug: 149217815
Change-Id: If36e85dd16ade56d4ec1d6744811df5a15b6242c
Merged-In: If36e85dd16ade56d4ec1d6744811df5a15b6242c
2020-04-14 17:09:47 +01:00
Treehugger Robot
3f18c55cc0 Merge "Fix missing NOTICE targets for static libs that aren't available to platform." am: e152ada4e7 am: b7c30e8a0c
Change-Id: If72192000b2eb215dec0f793db63fcec61fc9f49
2020-04-14 14:20:08 +00:00
Treehugger Robot
e152ada4e7 Merge "Fix missing NOTICE targets for static libs that aren't available to platform." 2020-04-14 13:43:46 +00:00
Jooyung Han
e5fce6cdbf Merge "Remove PLATFORM_VERSION_FUTURE_CODENAMES" 2020-04-14 04:00:03 +00:00
Jooyung Han
03302eee13 Remove PLATFORM_VERSION_FUTURE_CODENAMES
It has been wrong to split ALL_VERSIONS into exclusive two sets of
before/after TARGET_PLATFORM_VERSION.

And PLATFORM_VERSION_ALL_CODENAMES supports all *active* list of
non-finalized codenames.

Bug: 152960049
Test: m
Exempt-From-Owner-Approval: cp from master
Merged-In: I78ca88758998e440bea72ba2d56d90eea3ec99ae
Change-Id: I78ca88758998e440bea72ba2d56d90eea3ec99ae
(cherry picked from commit 424175d72a)
2020-04-14 02:06:57 +00:00
Yo Chiang
a3ad9b204e cc_prebuilt_library respect module name and stem
Installed name of prebuilt shared library should be stem or module name.
For example:

cc_prebuilt_library_shared {
  name: "libfoo",
  srcs: ["libbar.so"],
}
should install with the filename libfoo.so, and

cc_prebuilt_library_shared {
  name: "libfoo",
  stem: "libbaz",
  srcs: ["libbar.so"],
}
should install with the filename libbaz.so.

Prebuilt Windows PE library should specify its import library.
For example:

cc_prebuilt_library_shared {
  name: "libfoo",
  srcs: ["libfoo.dll"],
  windows_import_lib: "libfoo.lib",
  enabled: false,
  target: {
    windows: {
      enabled: true,
    },
  },
}

Bug: 151744695
Test: prebuilt_test.go && built walleye-userdebug
Change-Id: Ia8d0afb7fa46783c670870440432779c5fc7321a
2020-04-13 17:02:27 +08:00
Treehugger Robot
47404a61d5 Merge "Don't allow a lib having stubs to become a member of VNDK" am: 624dec0b03 am: 5cb3f62fee
Change-Id: I57a67d58f432a9a3131cd9a71ba5ec2e4dbac0f5
2020-04-13 04:39:36 +00:00
Jiyong Park
be024ad673 Don't allow a lib having stubs to become a member of VNDK
If a lib has stubs, that means the library provides stable C APIs and
the APIs are guaranteed to be maintained in a backwards compatible
manner. Then there is no reason to have the same library in VNDK,
because VNDK is for libraries (usually having C++ interfaces) where API
stability across the yearly releases is hard (or impossible) to be
guaranteed.

This change triggers an error when the build system finds a VNDK lib
which has stubs defined. Users are suggested to make the lib an LLNDK
one.

Exempt-From-Owner-Approval: cherry-pick from AOSP

Bug: 151303316
Test: m
Merged-In: Id305196a9d5a6fc7e7f9c02f3fa076859dc9a282
(cherry picked from commit ea97f51a29)
Change-Id: Id305196a9d5a6fc7e7f9c02f3fa076859dc9a282
2020-04-13 13:08:16 +09:00
Treehugger Robot
624dec0b03 Merge "Don't allow a lib having stubs to become a member of VNDK" 2020-04-13 04:05:31 +00:00
Yabin Cui
cf3e46dc77 Merge "Disable cert-dcl51-cpp and -cert-dcl37-c." am: bb5ee50e29 am: e9cc2985c4
Change-Id: I6ab31fbafaf2b5c601251fc4c76791c0b6e7ec6a
2020-04-10 06:52:59 +00:00
Yi Kong
343eae73b7 Merge "Pass -Brepro ldflag to Windows builds" into rvc-dev 2020-04-10 06:01:03 +00:00
Yi Kong
dd7531160b Pass -Brepro ldflag to Windows builds
The default build-id is generated using timestamp. Pass -Brepro to
avoid using timestamp for deterministic build.

Bug: 153462962
Test: build fastboot.exe twice, got same shasum
Change-Id: I38fe993eec23c60bfcf1b76188774bfe06839fa4
Merged-In: I38fe993eec23c60bfcf1b76188774bfe06839fa4
(cherry picked from commit a3c22e7ee2)
Exempt-From-Owner-Approval: backport
2020-04-10 06:00:49 +00:00
Yabin Cui
bb5ee50e29 Merge "Disable cert-dcl51-cpp and -cert-dcl37-c." 2020-04-10 05:39:59 +00:00
Jooyung Han
c40b5193fe Skip version mutator for host/ramdisk/recovery
"version" mutator creates stubs variants for "cc" libraries with
"stubs.versions". These stubs are for APEX-APEX or APEX-Platform
boundaries.

For host/ramdisk/recovery variants, stubs are not necessary.

Bug: 153698496
Test: m
Change-Id: Id576c4318d9d69246a4a7e2fb4145d5fd2ab9416
2020-04-10 14:30:25 +09:00
Hsin-Yi Chen
f81bb657d3 Do not check ABI for coverage variants
Bug: 153119422
Test: make NATIVE_COVERAGE=true out/target/product/generic_x86/lsdump_paths.txt
Change-Id: I1cfa1526436d0587b801bd222f1037f743c0528d
2020-04-10 10:51:24 +08:00
Yabin Cui
70ba0e23a4 Disable cert-dcl51-cpp and -cert-dcl37-c.
Disable them for the next clang compiler update.

Bug: 153464409
Test: WITH_TIDY=1 make

Change-Id: I27c315637e02c7c6c708a24a04220f10136b681a
2020-04-09 16:28:51 -07:00
Jooyung Han
f7f717875e Merge "Build VNDK APEX for VNDK-Lite" 2020-04-09 23:27:48 +00:00
Jooyung Han
73d20d086d Build VNDK APEX for VNDK-Lite
For VNDK-Lite devices, which doesn't define BOARD_VNDK_VERSION, VNDK
APEX is built with only VNDK-Sp libraries with core variants.

Bug: 141908078
Bug: 152353068
Bug: 151635128
Test: TH
Merged-In: I0d08d32473368fd158818d4c2c72fc4cfad68ce6
Change-Id: I0d08d32473368fd158818d4c2c72fc4cfad68ce6
(cherry picked from commit 65d8a6262c)

Exempt-From-Owner-Approval: cp from internal
Change-Id: I0d08d32473368fd158818d4c2c72fc4cfad68ce6
2020-04-09 23:27:25 +00:00
Julien Desprez
0eb91f4e91 Merge "Add support for order-only dependencies to RuleBuilder" into rvc-dev 2020-04-09 18:56:01 +00:00
Yi Kong
85d5968c92 Merge "Pass -Brepro ldflag to Windows builds" am: 2ae41725b5 am: 824cfb7f25
Change-Id: I233e118666c941b452434709d76c7be1d9d8a9fa
2020-04-09 17:10:31 +00:00
Automerger Merge Worker
82f316b8db Add support for order-only dependencies to RuleBuilder
Test: TestRuleBuilder
Change-Id: I1609a790dd4d0a03c8308b6e552622fe33fa2499
Bug: 153071808
Merged-In: Icfa98d6840b1dc2e273ba29c33011635d1cf93b1
2020-04-09 08:17:32 -07:00
Yi Kong
a3c22e7ee2 Pass -Brepro ldflag to Windows builds
The default build-id is generated using timestamp. Pass -Brepro to
avoid using timestamp for deterministic build.

Bug: 153462962
Test: build fastboot.exe twice, got same shasum
Change-Id: I38fe993eec23c60bfcf1b76188774bfe06839fa4
2020-04-09 15:53:11 +08:00
Jooyung Han
aed150d6ed Apex: support codenames for min_sdk_version
Apex can use codenames like "Q", "R" for its min_sdk_version property.
Also, cc_library can use codenames for its stubs.versions.

Bug: 152655956
Test: m
Merged-In: I077ad7b2ac5d90b4c8708921e43846206f05ba70
Change-Id: I077ad7b2ac5d90b4c8708921e43846206f05ba70
(cherry picked from commit 29e91d2121)
2020-04-09 16:04:17 +09:00
Jooyung Han
784472dfb8 Merge "Remove PLATFORM_VERSION_FUTURE_CODENAMES" into rvc-dev am: 045f3db022
Change-Id: I220ce66b3ed924dda7f4e68b716463893a9156e7
2020-04-08 23:56:21 +00:00
Chih-hung Hsieh
d4262977d4 Merge "Disable bugprone-reserved-identifier" am: 88a7176174 am: 8fd48a2b4b
Change-Id: I74bb709c4ca9df981bcd2e1ceaae4c85c44f97c8
2020-04-08 22:55:26 +00:00
Chih-hung Hsieh
88a7176174 Merge "Disable bugprone-reserved-identifier" 2020-04-08 22:29:26 +00:00
Colin Cross
c27185cd72 Merge "Revert^2 "Add sdk mutator for native modules"" am: ff550f3e13 am: 7af7725de1
Change-Id: I9a947c10e593f7b1647440acca4de08952e7928e
2020-04-08 18:42:10 +00:00
Colin Cross
ff550f3e13 Merge "Revert^2 "Add sdk mutator for native modules"" 2020-04-08 18:29:30 +00:00
Stephen Hines
e628a9328c Merge "Switch to clang-r377782d (10.0.6)." am: 719ea2b849 am: 3a2291f125
Change-Id: I0102545dc2a05b59d1b746ff8dc78f0c6af6d55e
2020-04-08 18:11:54 +00:00
Chih-Hung Hsieh
3d3df826c1 Disable bugprone-reserved-identifier
* Disable it for the next clang compiler update
  until all source files with this warning are fixed.

Bug: 153464409
Test: WITH_TIDY=1 make
Change-Id: I126d2f5170f3883192348577e523ef99f5c5a70e
2020-04-08 10:42:16 -07:00