Commit Graph

4020 Commits

Author SHA1 Message Date
Jiyong Park
956305c61c Reland "m <apex_name>-deps-info prints the internal/external deps of the APEX""
This reverts commit 4513f703f9.

Bug: 1190898
Test: m
Test: EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true NATIVE_COVERAGE=true  m dist

Change-Id: I50fdccabb43e4751694db83ee451d388657257e0
2020-01-09 18:42:27 +09:00
Jiyong Park
fe9a43002e A test cc module is installable even if it's not available for platform
This change fixes a bug that test modules (cc_test or its sub types) are
unconditionally considered as non-installable if they are configured to
not available for platform. The rationale behind the decision was that
an APEX variant of a module doesn't need to be installed to the device
because the variant will anyway be included in the APEX. However, it's
wrong for test modules. They are not included in the APEX, but should be
installed to /data/nativetest*.

One might think that we need to make the tests available for the
platform (i.e. apex_available: ["//apex_available:platform"]). This
however doesn't work if the libraries that the tests should link against
are configured to be not available for the platform, which currently is
the case for the ART tests.

Bug: 146995717
Test: m
Change-Id: I51843f5b4ea0a418c64c63784347231590cd3c35
2020-01-09 13:20:34 +09:00
Automerger Merge Worker
322a4362cf Merge "Revert "m <apex_name>-deps-info prints the internal/external deps of the APEX"" am: 8ea6bc4a05 am: 8298e7fd87 am: e66dbf8734
Change-Id: I1c3842f9c40141cad8a23bc436ac6222857773d5
2020-01-09 02:48:12 +00:00
Jiyong Park
8ea6bc4a05 Merge "Revert "m <apex_name>-deps-info prints the internal/external deps of the APEX"" 2020-01-09 02:20:42 +00:00
Jiyong Park
4513f703f9 Revert "m <apex_name>-deps-info prints the internal/external deps of the APEX"
This reverts commit 114ff53f5e.

Reason for revert: broke cf_x86_phone-userdebug_coverage 

Change-Id: I7221fd0b0baee5407a7322240c170aef8e549e4d
2020-01-09 02:05:18 +00:00
Automerger Merge Worker
52d8fd07c4 Merge "m <apex_name>-deps-info prints the internal/external deps of the APEX" am: 573326a8ce am: ef9f93cfac am: 00cdc4a80f
Change-Id: Ie40197044f09140d14262cdf6a17aae1d3c6582e
2020-01-09 01:17:11 +00:00
Treehugger Robot
573326a8ce Merge "m <apex_name>-deps-info prints the internal/external deps of the APEX" 2020-01-09 00:44:13 +00:00
Vic Yang
d92090fb29 Emit LOCAL_CHECK_SAME_VNDK_VARIANTS
If a VNDK library does not require using different core and vendor
variants, emit LOCAL_CHECK_SAME_VNDK_VARIANTS so that the two variants
can be checked for identicalness.

Bug: 145157349
Test: With the corresponding change in build/make, remove libbinder
      from build/soong/cc/config/vndk.go and check a build fails
      even without TARGET_VNDK_USE_CORE_VARIANT set.

Change-Id: I7698edf9a24b0df150c0e4f7d8dd4926f053eee8
2020-01-08 14:44:38 -08:00
Automerger Merge Worker
9b27a19c30 Merge "Support sampling PGO profiles" am: 563e3a4f95 am: e8c2eb1f83 am: 88f36d7689
Change-Id: Ia3eccccbc267181971e9fae608d5f116004de38f
2020-01-07 22:56:03 +00:00
Steven Moreland
4b662e4d3b Merge "vibrator: use package as name" 2020-01-07 22:43:01 +00:00
Yi Kong
563e3a4f95 Merge "Support sampling PGO profiles" 2020-01-07 22:18:12 +00:00
Automerger Merge Worker
1ea5d14650 Merge "Pass auto_gen_config setting in Android.bp to makefile" am: 13f30ae38c am: 75b879c30b am: 458321b216
Change-Id: Iecd57fcaac4b7b3d70c99de73037ff4c5aea5cc6
2020-01-07 08:35:45 +00:00
Greg Kaiser
e4141abf92 Merge "vndkMustUseVendorVariantList += android.hardware.automotive.occupant_awareness" 2020-01-07 04:15:44 +00:00
Dan Shi
2468d015fe Pass auto_gen_config setting in Android.bp to makefile
Bug: none
Test: local test with fuzzy_fastboot
Change-Id: I2c62f6fb58737538ef9e1e9fcbe63e03dfa7ee91
2020-01-06 16:21:10 -08:00
Tim Joines
5af27903bd vndkMustUseVendorVariantList += android.hardware.automotive.occupant_awareness
aidl libs need to be differentiated because they explicitly set
different system/vendor stabilities.

Fixes: 147241051
Test: fixes build
Change-Id: I77c0b21816ff10e0642eccbea22a0dc556e94dca
2020-01-06 15:34:49 -08:00
Steven Moreland
9dbe4035ef vibrator: use package as name
In order to provide a more descriptive name, and to be consistent
with HIDL, the stable AIDL package names are switching from
vintf-vibrator format to the package format
(android.hardware.vibrator).

Bug: N/A
Test: all build time
Change-Id: Ie6580714c3d09c1f99808ca9f8dc7875487f1049
Merged-In: Ie6580714c3d09c1f99808ca9f8dc7875487f1049
2020-01-06 14:08:00 -08:00
Steven Moreland
8aca9025f3 vibrator: use package as name
In order to provide a more descriptive name, and to be consistent
with HIDL, the stable AIDL package names are switching from
vintf-vibrator format to the package format
(android.hardware.vibrator).

Bug: N/A
Test: all build time
Change-Id: Ie6580714c3d09c1f99808ca9f8dc7875487f1049
2020-01-06 13:41:24 -08:00
Steven Moreland
de0bac5e13 rebootescrow: use package as name
In order to provide a more descriptive name, and to be consistent
with HIDL, the stable AIDL package names are switching from
vintf-rebootescrow format to the package format
(android.hardware.rebootescrow).

Bug: N/A
Test: all build time
Change-Id: I76487b1a325cc4a4c26382cf553c2edf6c27389f
2020-01-06 13:22:03 -08:00
Yi Kong
0b9932164b Support sampling PGO profiles
Bug: 79161490
Test: build and flash with ETM generated sampling profile
Change-Id: I82bf61ebfc9f1a1c74a370f0421c46862dd470db
2020-01-02 16:21:03 -08:00
Jiyong Park
114ff53f5e m <apex_name>-deps-info prints the internal/external deps of the APEX
We need to have a way to see the list of modules that directly or
indirectly contribute to an APEX. People find it difficult to determine
whether a module is included in which APEXes because APEX tracks
indirect dependencies as well as direct dependencies. Therefore, just
looking at Android.bp for the APEX itself doesn't give the answer.

This change adds a new make target <apex_name>-deps-info, which
generates out/soong/<apex_name>-deps-info.txt file that shows the
internal and external dependencies of the said APEX.
Here, internal means the dependencies are actually part of the
APEX, while external means the dependencies are still external to the
APEX.

Bug: 146323213
Test: m (apex_test amended)
Change-Id: I33d1ccf5d1ca335d71cd6ced0f5f66b8c3886d13
2020-01-02 09:41:30 +09:00
Automerger Merge Worker
585928fc5d Restrict SdkMemberTypes that can be used with sdk/sdk_snapshot am: e602918294 am: b39c226ff7 am: 5f7e9a061b
Change-Id: I1b7d00af424d786c1f166f7d93776ff65278899e
2019-12-31 20:33:16 +00:00
Paul Duffin
e602918294 Restrict SdkMemberTypes that can be used with sdk/sdk_snapshot
By default SdkMemberTypes are only supported on module_exports module
type. Support for sdk module type has to be explicitly specified.

The java_header_libs, native_shared_libs and stubs_sources are
supported on sdk. The latter is required to provide the stubs source
for an API specified in java_header_libs as they should be kept in
sync.

Bug: 146341462
Test: m nothing
Change-Id: I19b9e60792780a797458d4a9e489506602b13144
2019-12-31 15:08:59 +00:00
Automerger Merge Worker
050828a12f Merge "AIDEGen: collect cc_srcs and cc related flags in module_bp_cc_deps.json" am: 0a6c8813ba am: 3f4ed419b6 am: 956fdb547a
Change-Id: Ia8a9b63a7aae4af3728dfacf1c30659a57939008
2019-12-31 01:36:57 +00:00
Automerger Merge Worker
6e87e730a8 Merge "Detach VNDK using core library list from VNDK APEX" am: 2c12207919 am: 1290b12a30 am: d389915493
Change-Id: I5d9a0650152fb00719f2b7ae07dbba38fd4f956d
2019-12-31 01:36:20 +00:00
Treehugger Robot
0a6c8813ba Merge "AIDEGen: collect cc_srcs and cc related flags in module_bp_cc_deps.json" 2019-12-31 01:16:35 +00:00
Kiyoung Kim
e1aa8ea34e Detach VNDK using core library list from VNDK APEX
Some devices require VNDK using core library list, but this is dependent
to system image rather than VNDK version. This change removes VNDK using
core variant library list file from VNDK APEX, and also remove VNDK
version from its filename.

Bug: 142599349
Test: m -j passed && aosp_cf_x86_go_phone booted
Change-Id: Ibc53b8dfc9d38e14bbaa878154034d25a6d34089
2019-12-30 14:29:52 +09:00
bralee
5a5cce695f AIDEGen: collect cc_srcs and cc related flags in module_bp_cc_deps.json
Define a field CCSrcs and other cc related flags in a type ccIdeInfo
struct and write them into out/soong/module_bp_cc_deps.json. AIDEGen
can use these data to generate CMakeLists.txt by Python for multiple
native projects in CLion IDE.

Bug: 141512319

Test: 1. export SOONG_COLLECT_JAVA_DEPS=false SOONG_COLLECT_CC_DEPS=true;m nothing
         check
	 1). File out/soong/module_bp_cc_deps.json is generated.
	 2). In "JniInvocation_test" module: "path", "srcs",
	     "global_common_flags", "local_common_flags",
	     "global_c_flags", "local_c_flags", "global_c_conly_flags",
	     "local_c_conly_flags", "global_cpp_flags",
	     "local_cpp_flags" and "system_include_flags"
	     have been created.

Change-Id: I9292cc6373157ba68f013998a7364f84a70d5593
2019-12-30 09:35:40 +08:00
Automerger Merge Worker
96b74db89c Merge "Create product variant for product partition" am: 727173ecca am: 31bfaff20f am: 0b9c91b0cf
Change-Id: I52c421066068f949a9fa60a7ab8857e7cf81751b
2019-12-21 01:30:12 +00:00
Treehugger Robot
727173ecca Merge "Create product variant for product partition" 2019-12-21 00:56:45 +00:00
Automerger Merge Worker
af0afa7c5d Differentiate between cc library and binary am: a0843f6a6f am: 62e6e00395 am: f4d042ac45
Change-Id: I82263af2452c78f6e1644645840073b109a3b07a
2019-12-20 18:35:54 +00:00
Automerger Merge Worker
399bf82141 Dedup cc library module type registration am: 6c26dc7392 am: 8b5ff4cabc am: 8531a59aed
Change-Id: Ic46577792f1db04742a24c30b6dc3e193e3dcc94
2019-12-20 18:35:49 +00:00
Paul Duffin
a0843f6a6f Differentiate between cc library and binary
The cc library and cc binary (and other cc module types) are all
instances of cc.Module. So, to differentiate between them and make
sure that only appropriate library instances can be added to
native_shared/static_libs this adds a special sdkMemberTypes field to
Module which if set specifies the SdkMemberTypes the module supports.
If it is not set then the module type cannot be used in the sdk at all.

Corrects an issue with one of the tests where a prebuilt cc
library was added to the sdk instead of a source cc library.

Adds a new test to ensure that cc_library_(shared|static)_host module
types work with the sdk as well and another test to ensure that
cc_library can be used as either.

Bug: 142918168
Test: m checkbuild
Change-Id: I359cdbdd15328ca571f276d2b6ce9a229ebb2c86
2019-12-20 15:45:17 +00:00
Paul Duffin
6c26dc7392 Dedup cc library module type registration
Test: m checkbuild
Bug: 146540677
Change-Id: I6685338550f587212e70f3eba8d4342b66f566e2
2019-12-20 15:22:52 +00:00
Justin Yun
5f7f7e8a39 Create product variant for product partition
When PRODUCT_PRODUCT_VNDK_VERSION is set to 'current', product
modules are enforced to use only VNDK libs from the system partition
as BOARD_VNDK_VERSION does to vendor partition.

Modules with 'vendor_available: true' create product variant as well
as core and vendor variants. The product variant as an image variant
is used for the modules in /product or /system/product.

It must not affect the current build behavior without
PRODUCT_PRODUCT_VNDK_VERSION set.

Bug: 134099726
Bug: 138966004
Bug: 144534640
Test: build without PRODUCT_PRODUCT_VNDK_VERSION set
Change-Id: I4d3585c110d84493e45bf76d550dc240bb26137f
2019-12-20 17:56:08 +09:00
Automerger Merge Worker
f779f44bc2 Merge "Generate Compdb file in the output directory" am: 076651765a am: d31cf9eda1 am: 2ce52dc457
Change-Id: I8d933fae674f298b532c6bcfec9c4df95570bf8f
2019-12-20 04:32:24 +00:00
Treehugger Robot
076651765a Merge "Generate Compdb file in the output directory" 2019-12-20 04:01:00 +00:00
Automerger Merge Worker
bb1ce92ed7 Merge "Dedup cc build components registration" am: 4565aba98c am: 60e17ae445 am: 7b59c5f316
Change-Id: I13e16f00844873614440fd4270f7023271df1caa
2019-12-20 02:50:52 +00:00
Automerger Merge Worker
15461e8216 Merge "Improve cc tests by adding fuzzer mutators" am: de85fa9f5f am: c2acb75a92 am: d4ab3052ff
Change-Id: I4fb978543a4985587762892304c73f1c62de613a
2019-12-20 02:50:37 +00:00
Automerger Merge Worker
4e965ebbce Merge "Improve cc tests by adding sanitizer mutators" am: 7d211f1793 am: 152b5f8675 am: 5b91dc8d39
Change-Id: Ife351bc2628c32e7473ead96097b6ebd325604ec
2019-12-20 02:50:24 +00:00
Automerger Merge Worker
504b300fc6 Merge "Dedup prebuilt mutator registration" am: 82f4f99780 am: 849e8f7509 am: e05577b9a8
Change-Id: I094959ab23674cafcc40455f5ea1c062085c75f1
2019-12-20 02:50:06 +00:00
Automerger Merge Worker
598e0885e7 Merge "Dedup registration for cc default test config" am: 24de9ea201 am: 6da6395f16 am: 1971acf840
Change-Id: Iff72ebfc46ba03e5b9a26ba04e6810f720747bc7
2019-12-20 02:48:49 +00:00
Treehugger Robot
4565aba98c Merge "Dedup cc build components registration" 2019-12-20 01:27:00 +00:00
Treehugger Robot
de85fa9f5f Merge "Improve cc tests by adding fuzzer mutators" 2019-12-20 01:26:01 +00:00
Treehugger Robot
7d211f1793 Merge "Improve cc tests by adding sanitizer mutators" 2019-12-20 01:25:56 +00:00
Treehugger Robot
82f4f99780 Merge "Dedup prebuilt mutator registration" 2019-12-20 01:25:51 +00:00
Treehugger Robot
24de9ea201 Merge "Dedup registration for cc default test config" 2019-12-20 01:25:42 +00:00
Changyeon Jo
96279252d7 Generate Compdb file in the output directory
This change modifies the location of generated compdb file from
$ANDROID_BUILD_TOP to where compdbOtuputProjectsDirectory points to,
under $OUT_DIR.  This is especially required for the build environment
that maps $ANDROID_BUILD_TOP as read-only, such as Gitc.

Test: m SOONG_GEN_COMPDB=1 nothing
      examine generated compile_commands.json
Signed-off-by: Changyeon Jo <changyeon@google.com>

Change-Id: I86700f89b613a443a33982ecd5501b0f68a62be7
2019-12-20 00:10:02 +00:00
Automerger Merge Worker
0662e65654 Merge changes I7e9440a0,I7f1a4b64,If5d6fdac am: b237de1914 am: ab879385eb am: 396fd80826
Change-Id: I96741af41ba539d783787abc0b79f82caef2e5d4
2019-12-19 23:37:41 +00:00
Treehugger Robot
b237de1914 Merge changes I7e9440a0,I7f1a4b64,If5d6fdac
* changes:
  Dedup cc prebuilts module type registration
  Detect registration of duplicate module/singleton types
  Dedup prebuilt apis module type/mutator registration
2019-12-19 22:43:02 +00:00
Automerger Merge Worker
ddb6485b64 Merge "Adding capability to granular disable of fuzzer" am: 5c5cc67ee2 am: c2887f9e28 am: 9a00444e75
Change-Id: I7465458b6cd9c131971779eeb9007610a60c99b3
2019-12-19 20:41:11 +00:00