Commit Graph

4188 Commits

Author SHA1 Message Date
Vic Yang
8c38ecba01 vndkMustUseVendorVariant += libstagefright_bufferpool@2.0
Bug: 145157349
Test: Build success
Change-Id: Ic5f1699d034715545c53a8842ef14692f2017706
2020-01-14 22:39:37 -08:00
bralee
adba3c0a0a AIDEGen:fix module_bp_cc_deps.json content error.
Bug: 147324044
Test: 1. export SOONG_COLLECT_CC_DEPS=1 SOONG_GEN_CMAKEFILES=1;m nothing
         module_bp_cc_deps.json will be generated.
	 In module_bp_cc_deps.json,
	 "libui": {
             ...
             "system_include_flags": {
                 "header_search_path": [
                     "system/core/include",
                     "system/media/audio/include",
                     "hardware/libhardware/include",
                     "hardware/libhardware_legacy/include",
                     "hardware/ril/include",
                     "frameworks/native/include",
                     "frameworks/native/opengl/include",
                     "frameworks/av/include",
                     "libnativehelper/include_jni"
                 ]
                 "system_search_path": [
                     "bionic/libc/include",
                     "bionic/libc/kernel/uapi",
                     "bionic/libc/kernel/uapi/asm-x86",
                     "bionic/libc/kernel/android/scsi",
                     "bionic/libc/kernel/android/uapi"
                 ]
             },
             ...
         },

Change-Id: Iabc638ca451f568b2a4c09327f8f3c220f6fc154
2020-01-15 13:38:48 +08:00
Wei Wang
6c01618885 power: add stable aidl to VndkMustUseVendorVariantList
Bug: 146453294
Test: Build
Change-Id: I0e8e8ed425affa8103eff5aef74a7859341d0058
2020-01-14 17:32:56 -08:00
Jiyong Park
83dc74b770 Reland^2 "m <apex_name>-deps-info prints the internal/external deps of the APEX"
This reverts commit 7cb4d378e7.

Test: m
Test: ALLOW_MISSING_DEPENDENCIES=true DIST_DIR=out/dist ./art/tools/dist_linux_bionic.sh -j80 com.android.art.host
(in the master-art-host branch)

Change-Id: I9beca73aafdf42f03bfa19cf1634b2641dac417b
2020-01-14 18:40:56 +09:00
Automerger Merge Worker
17f7140e2f Merge "Revert "Reland "m <apex_name>-deps-info prints the internal/external deps of the APEX"""" am: a7503367cf am: 39ed342b9b am: 9651bdef91
Change-Id: I1b22374e4a5698f15576c6daf474e6797318feb9
2020-01-14 09:30:56 +00:00
Jiyong Park
a7503367cf Merge "Revert "Reland "m <apex_name>-deps-info prints the internal/external deps of the APEX"""" 2020-01-14 08:58:17 +00:00
Jiyong Park
7cb4d378e7 Revert "Reland "m <apex_name>-deps-info prints the internal/external deps of the APEX"""
This reverts commit 956305c61c.

Reason for revert: broke master-art-host branch
Exempt-From-Owner-Approval: reverting a bad change

Change-Id: Id7faed4ee85328c7c65847a3543ea9e67a3d50b3
2020-01-14 08:58:02 +00:00
Automerger Merge Worker
57414e4ad7 Merge "Reland "m <apex_name>-deps-info prints the internal/external deps of the APEX""" am: 17c51a4ff6 am: acf9d43674 am: 500fddf35c
Change-Id: I0a93edcbffafaa031959f520866041059e1dd760
2020-01-14 03:02:44 +00:00
Treehugger Robot
17c51a4ff6 Merge "Reland "m <apex_name>-deps-info prints the internal/external deps of the APEX""" 2020-01-14 02:40:42 +00:00
Automerger Merge Worker
5f70666484 Merge "A test cc module is installable even if it's not available for platform" am: eecf99ce66 am: 931f464856 am: 918864fa22
Change-Id: I3faf4756c989e38a975b36e168e9bd1dbd7af98a
2020-01-13 01:01:51 +00:00
Treehugger Robot
eecf99ce66 Merge "A test cc module is installable even if it's not available for platform" 2020-01-13 00:31:58 +00:00
Automerger Merge Worker
889f0a3d41 Merge "Sandbox soong_build by changing to root directory" am: ae7cddd5ad am: 70eefb570a am: 9280bf9474
Change-Id: I7d749bf12f039ca72bd59f4264082043f1f14fde
2020-01-11 07:34:02 +00:00
Colin Cross
988414c2cf Sandbox soong_build by changing to root directory
This relands I12a0f907753fefd1997ab8b4ea2ac331234093cf along with
a fix to blueprint for absolute paths.

Store the current working directory and then change to the root
directory so that all file accesses must go through helpers in
the android package that properly track dependencies.

Change-Id: I24ac485677aa102eec1a2521d16820da6ee1ae77
Fixes: 146437378
Test: m checkbuild
Test: m OUT_DIR=/tmp/out nothing
2020-01-11 01:11:46 +00:00
Automerger Merge Worker
8c02671d51 Merge "Revert "Sandbox soong_build by changing to root directory"" am: e734832d25 am: 408fab4d25 am: f84fe5fbd4
Change-Id: Iac451a70c28566f8413b2495e8ae8a24b80e2a2f
2020-01-10 22:31:07 +00:00
Peter Collingbourne
e5ba28648f build: Link the unwinder dynamically into platform and vendor binaries.
Instead of linking the unwinder statically into every binary, link it
dynamically, by exporting the symbols from libc.so. This has a number
of advantages:

- Reduces image size (system.img size decreases by 1.7MB on walleye-userdebug,
  and 1.2MB on crosshatch-userdebug).
- Allows us to easily change/upgrade the unwinder throughout the system,
  including vendor prebuilts.
- Allows code outside of libc++ to define custom personality routines.
  Previously, personality routines would call the unwinder routines in the
  local binary, which would cause problems with unwinders with global state
  (such as the libgcc unwinder) if the copy of the unwinder used for unwinding
  (normally libc++'s copy) were different from the copy linked against the
  personality routine.

Bug: 144430859
Change-Id: I3b2a4a3ee58c6777989f811e19a3aeb47c0945bd
2020-01-10 11:38:30 -08:00
Colin Cross
13e8cb9b4c Merge "Sandbox soong_build by changing to root directory" am: e35e961aa9 am: 856eff7fde
am: a2040fc892

Change-Id: I31d8b52f57f685bc69aab817d9b4eebcafaf78df
2020-01-10 11:14:39 -08:00
Colin Cross
47e4f9e1e8 Revert "Sandbox soong_build by changing to root directory"
This reverts commit 05c25ccb4a.

Reason for revert: broke absolute OUT_DIR
Bug: 146437378

Change-Id: I523ed79d40e1c1ef040212ba794a7a084abea75d
2020-01-10 18:51:04 +00:00
Colin Cross
05c25ccb4a Sandbox soong_build by changing to root directory
Store the current working directory and then change to the root
directory so that all file accesses must go through helpers in
the android package that properly track dependencies.

Fixes: 146437378
Test: m checkbuild
Change-Id: I12a0f907753fefd1997ab8b4ea2ac331234093cf
2020-01-09 14:19:46 -08:00
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