Commit Graph

10367 Commits

Author SHA1 Message Date
Pirama Arumuga Nainar 48a609233b Merge "Do not enable coverage for platform/llndk stub libraries"
am: ff1b5c7b90

Change-Id: If62904ecb83ad3a3f0419ebb758b9f3d2b045143
2019-02-15 11:11:53 -08:00
Colin Cross 2a1f4b2bda Merge "Fix resource overlay order for static libraries"
am: 0653d6d464

Change-Id: Ibe193ed1291d83cb685b2ad75c33f1c4ddea540e
2019-02-15 11:10:49 -08:00
Pirama Arumuga Nainar ff1b5c7b90 Merge "Do not enable coverage for platform/llndk stub libraries" 2019-02-15 19:07:39 +00:00
Colin Cross 0653d6d464 Merge "Fix resource overlay order for static libraries" 2019-02-15 18:54:49 +00:00
Sasha Smundak d3cf4ee87b soong_zip after dex should not fail when no *.dex files were generated
This can happen if Android application has only a manifest file and no
java code.

Fixes: 124483155
Test: treehugger with Android.mk converted to Android.bp in
platforms/frameworks/base/tests/privapp-permnissions

Change-Id: I45f95680b62a7a4bda0e7ab156f3df24b0dad70b
2019-02-15 10:14:23 -08:00
Yi Kong 410d834752 Annotate No_libcrt with arch_variant
libcrt is crashing libc on x86/x86_64 for unknown reason. This enables
us to disable libcrt for these architectures for libc for now.

Test: m checkbuild
Bug: 29275768
Change-Id: I5a717286b3d9cc1ba8cdcd33bafb9c225de4aff8
2019-02-15 10:07:18 -08:00
Paul Duffin e5b5657f87 Support libraries (not just boot jars) that have hiddenapi
The build assumes (apart from one minor exception) that only modules
that are in the PRODUCT_BOOT_JARS list require processing as part of
the hiddenapi. Unfortunately, that is not true for android.test.base,
at least not when REMOVE_ATB_FROM_BCP=true.

This change adds a white list (containing android.test.base) of
additional modules that should be processed as part of the hiddenapi
and updates the hiddenapi.go file to use it.

It does not matter that android.test.base is a boot jar and in the
white list, the behavior is the same as it would be if it was only
in one.

Bug: 73711752
Test: make REMOVE_ATB_FROM_BCP=true droid and make droid
Change-Id: I1c64272f444e6866136c65fb7c48910d55811844
2019-02-15 14:35:30 +00:00
Dan Willemsen 733547d522 Use prebuilt awk on Darwin too
Test: build on mac
Change-Id: I25d21c0df0b9023d6c43b11dde60e6066f107576
2019-02-14 20:11:26 -08:00
Dan Willemsen 9121973130 Stop calling our host $PATH prebuilts toybox
There's more than just toybox in this group now, so let's rename our
variables to something closer to the desired behavior, rather than the
first user.

Test: treehugger
Change-Id: I76d4407792061c8110b194cfe73f1ddc84dbc22f
2019-02-14 20:07:02 -08:00
Jiyong Park 4ccf6449b4 Merge "Add ":name" support for manifest and androidManifest properties in apex"
am: bf920d5264

Change-Id: Id4eaf24164cebb8678628ccac8ca34158526a47f
2019-02-14 16:21:58 -08:00
Treehugger Robot bf920d5264 Merge "Add ":name" support for manifest and androidManifest properties in apex" 2019-02-15 00:13:28 +00:00
Pirama Arumuga Nainar 8113835940 Do not enable coverage for platform/llndk stub libraries
Bug: http://b/116873221

These are used only for linking, and secondly, don't link with libc or
other system libraries.

Test: Build system/core/libnativeloader with coverage
Change-Id: I37eae572a5eaa00f0e8c72bc1453e967b5bcb577
2019-02-14 15:39:31 -08:00
Joel Fernandes a83face460 Merge "Add common BPF helper to include path"
am: 83ddfdf19a

Change-Id: Ibbf4034e5f945f05f4d95caa2ae67eb6654319bf
2019-02-14 13:52:07 -08:00
Joel Fernandes 83ddfdf19a Merge "Add common BPF helper to include path" 2019-02-14 21:40:43 +00:00
Dan Willemsen 36f9c8ff34 Merge "Add par_test"
am: d325aa7b97

Change-Id: Id793af966487f2766414e619b55760f4c5ba65a5
2019-02-14 12:58:56 -08:00
Treehugger Robot d325aa7b97 Merge "Add par_test" 2019-02-14 20:45:12 +00:00
Jaewoong Jung b25da89311 Merge "Add a prebuilt module type for usr/share."
am: fc46f28b6f

Change-Id: Ic28afc4af2cb1de3db65f01669431259a986b234
2019-02-14 07:50:34 -08:00
Jaewoong Jung fc46f28b6f Merge "Add a prebuilt module type for usr/share." 2019-02-14 15:39:33 +00:00
Paul Duffin 9ed226dad9 Remove reference to legacy-test and core-junit from comments
am: 2fbbfb8630

Change-Id: Ic9c399c6e0417e84734de728ba28b90292b5c688
2019-02-14 03:11:29 -08:00
Paul Duffin 2fbbfb8630 Remove reference to legacy-test and core-junit from comments
The legacy-test and core-junit are no longer used by the runtime,
core-junit was removed a long time ago, legacy-test will be removed
soon.

Bug: 63127064
Test: TH
Change-Id: I094e7263afcba76b40361c3a681c9fd7a4314133
2019-02-14 10:53:59 +00:00
Sundong Ahn 8faab8a547 Get latest api version
The logic of getting latest api version has problem that we don't
guarantee $(module_name).latest is latest api txt file. So change this
logic to get the latest api txt file.

Test: make -j40
Change-Id: Ibbd8475061fc76169a4c94dcf148fece45b9a41d
2019-02-14 19:46:34 +09:00
Jiyong Park 809bb724f5 Add ":name" support for manifest and androidManifest properties in apex
The manifest and androidManifest properties in the apex module type now
supports ":name" syntax.

Bug: 123857186
Test: m (apex_test amended)
Change-Id: Ic4e5a73cf73260d156ec61d07932ad07b2561413
2019-02-14 15:28:58 +09:00
Jiyong Park 548f147804 Remove prefer_sanitize.* properties
am: f97782b18c

Change-Id: I89cf55ff2cea384e1cf25c59f538dc185088a0cc
2019-02-13 21:42:27 -08:00
Sasha Smundak ff483393ac Improve documentation page layout
It now has module list on the left and the main panel containing
a section for each module. Each section contains the navigable list
of the module's attributes, grouped by attribute's origin.

Test: Manual
Bug: 120512870
Change-Id: Ib62ef58c61daa88950f0934a70ba8ed16f433bf2
2019-02-13 21:40:21 -08:00
Jaewoong Jung 8b8fc45947 Merge "Update Soong docs generator for blueprint changes"
am: dfa4a486eb

Change-Id: I3c071a2a236390e7c9e0a6f14192fe5064ab7d9e
2019-02-13 20:15:07 -08:00
Colin Cross bec8530972 Fix resource overlay order for static libraries
If a static library has static library dependencies then all resources
need to be moved to an overlay to maintain the correct ordering so
that a static library resource overlays the same resource in a
dependency.

Also fix the ordering of transitive static dependencies, a direct
dependency should override a transitive dependency.

Expand TestEnforceRRO to include a transitive static library and
verify both the direct resources and overlays, and rename it to
TestAndroidResources.

Bug: 124108931
Test: TestAndroidResources
Change-Id: I355f835a2ffb728af28aa208d951794c609e7409
2019-02-14 03:35:21 +00:00
Jiyong Park f97782b18c Remove prefer_sanitize.* properties
The properties are no longer required as an APEX module is mutated with
required sanitizers which are gathered by scanning the sanitizers that
are enabled for its direct dependencies.

Bug: 124128094
Test: m on marlin
The extractor libs are found under /system/apex/com.android.media

Merged-In: I55961d400dcbac067a5c0dcecb90e399d4991a70
Change-Id: I55961d400dcbac067a5c0dcecb90e399d4991a70
(cherry picked from commit abda0eb76b)
2019-02-14 12:30:49 +09:00
Dan Willemsen 22e9244b16 Add par_test
This test adds a number of checks for the visible python state inside a
hermetic par file.

Test: build/soong/python/tests/runtests.sh
Change-Id: I7188d862a309a09623169e1f967bde86707d41af
2019-02-14 02:18:05 +00:00
Jaewoong Jung dfa4a486eb Merge "Update Soong docs generator for blueprint changes" 2019-02-14 01:51:04 +00:00
Alex Light 89f43f6549 Merge "Ensure that make doesn't flatten zipapex files."
am: e9433ca127

Change-Id: Ia6ad052aac395ded1992cd50973810c42ddea8c6
2019-02-13 16:51:07 -08:00
Treehugger Robot e9433ca127 Merge "Ensure that make doesn't flatten zipapex files." 2019-02-14 00:26:42 +00:00
Pirama Arumuga Nainar fd183f3742 Extend coverage mutator to allow variants with coverage on and off
am: 1acd4475f2

Change-Id: I3b3dcf65f68bae50f3476e70d690a9ff63c2fb2d
2019-02-13 16:26:03 -08:00
Pirama Arumuga Nainar 1acd4475f2 Extend coverage mutator to allow variants with coverage on and off
Bug: http://b/116873221

This allows us to enable coverage for a module (typically static
libraries) even if a dependent module cannot build with coverage.  In
this case, the dependent module can just pick the variant with coverage
off.

- Create the following variants from the coverage mutator:
  - "" (empty): Don't build  with coverage and always pick the
                non-coverage variants for dependents.  This variant is
                created for modules with 'native_coverage: false'.
  - "cov":      If this module's path is covered by the COVERAGE_PATHS
                option, build this module with coverage.  If not, build
                this module without coverage.  In either case, pick
                coverage variants ("cov") for dependencies if available.

- Do not enable coverage:
  - for NDK stub libraries
  - if sdk_version < 23 since libc doesn't export 'stderr' which is
    needed by the coverage/profile runtime library.
  - for VNDK libraries

Test: In AOSP: m COVERAGE_PATHS=system/security NATIVE_COVERAGE=true nothing

Change-Id: I4d08790d35cdeaf12fb3c4f999d69a870e65836a
2019-02-14 00:05:42 +00:00
Inseob Kim 92053b977e Create sysprop_library soong module
am: c0907f191a

Change-Id: I5ec9366b92ab8ca07ed41c93b8e2324a301a2bed
2019-02-13 15:57:16 -08:00
Colin Cross a3c846bfb9 Merge "Add RuleBuilder.Installs().String()"
am: 58b31ad33a

Change-Id: I0f11f7af99fd112feaccc4b1f97784ad5a69f326
2019-02-13 15:52:18 -08:00
Inseob Kim c0907f191a Create sysprop_library soong module
A newly introduced sysprop_library soong module will generate a
java_sdk_library and a cc_library from .sysprop description files.
Both Java modules and C++ modules can link against sysprop_library
module, thus giving consistency for using generated sysprop API.

As Java controls accessibility of Internal / System properties with
@hide and @SystemApi, 2 different header files will be created. And
build system will selectively expose depending on the property owner
and the place where the client libraries go into.

Bug: 80125326
Bug: 122170616
Test: 1) Create sysprop_library module.
Test: 2) Create empty txt files under prebuilts/sdk.
Test: 3) Create api directory, make update-api, and see changes.
Test: 4) Try to link against sysprop_library with various clients.
Test: 5) Soc_specific, Device_specific, Product_specific, recovery flags
work as intended.
Change-Id: I78dc5780ccfbb4b69e5c61dec26b94e92d43c333
2019-02-13 23:32:51 +00:00
Yoshisato Yanagisawa 051b533901 Merge "More verbose message on goma_ctl.py ensure_start failure."
am: 8f66b1b733

Change-Id: Ib0fe5e579517de75ce55159e9245b9f2e1b599ed
2019-02-13 15:13:56 -08:00
Colin Cross 58b31ad33a Merge "Add RuleBuilder.Installs().String()" 2019-02-13 23:11:38 +00:00
Yi Kong 908b3fa509 Merge "Use no_libcrt property instead of hard coding projects to exclude"
am: 02e4b568dc

Change-Id: I7e143026e60cb2263ce2a37b5bd856ea133ac128
2019-02-13 14:59:10 -08:00
Treehugger Robot 8f66b1b733 Merge "More verbose message on goma_ctl.py ensure_start failure." 2019-02-13 22:53:28 +00:00
Treehugger Robot 02e4b568dc Merge "Use no_libcrt property instead of hard coding projects to exclude" 2019-02-13 21:53:26 +00:00
Jaewoong Jung c3fcdb4baa Add a prebuilt module type for usr/share.
This is almost the same as prebuilt_etc except the base path.

Bug: 122616578
Test: prebuilt_etc_test.go + manual test with external/neven
Change-Id: Ie3d17c06a878853ec9df93fe2c61c8772bc5cff4
2019-02-13 12:56:24 -08:00
Colin Cross 7089c27c07 Update Soong docs generator for blueprint changes
bootstrap.ModuleTypeDocs needs a mapping of module types to factories
to support factories that are wrapped in ModuleFactoryAdapter closures.

It also returns ModuleType objects grouped into Package objects.

Bug: 67909957
Test: m soong_docs
Change-Id: I70eac9f0f0e13075580da92d4219792ca0b18fbf
2019-02-13 20:39:26 +00:00
Alex Light f1801bc0a5 Ensure that make doesn't flatten zipapex files.
Zip apex files are not really installed so should not ever be
flattened. Unfortunately we didn't send this information to make which
would still unzip everything.

Test: ALLOW_MISSING_DEPENDENCIES=true
      ./art/tools/build_linux_bionic_tests.sh com.android.runtime.host
Bug: 124333446

Change-Id: I3eda579f8c40f768f1ef2be867967f436396cd4c
2019-02-13 19:14:15 +00:00
Colin Cross f7bbb64eef Add module type docs to the java package
am: 1b16b0e031

Change-Id: I998664d00ce780580a1c9079ba18b5a5e9cc7545
2019-02-13 10:55:21 -08:00
Colin Cross 1b16b0e031 Add module type docs to the java package
Add some overview of the java module types so that we have something
to display in the autogenerated docs.

Bug: 67909957
Test: m soong_docs
Change-Id: I3594dd550f8272f4418f3ea12cded4083674809b
2019-02-13 18:39:40 +00:00
Colin Cross deabb94380 Add RuleBuilder.Installs().String()
Add a RuleBuilderInstalls type for a slice of RuleBuilderInstalls,
and give it a String() method that returns the list of installs
in the format that is convenient for passing to Make.

Test: rule_builder_test.go
Change-Id: I2e9cd9abf4dfb0ad312d0a6662f1567baf9cd222
2019-02-13 08:03:29 -08:00
Jiyong Park d36b771661 Merge "APEX certificates can be overriden by PRODUCT_CERTIFICATE_OVERRIDES"
am: bd907cb12b

Change-Id: I70a161e2b9ecc84a50451322d147e5a15b6a1955
2019-02-13 05:38:21 -08:00
Jiyong Park bd907cb12b Merge "APEX certificates can be overriden by PRODUCT_CERTIFICATE_OVERRIDES" 2019-02-13 13:31:58 +00:00
Nicolas Geoffray 9f04bacac6 Merge "Revert "Revert "Never strip and store dex files uncompressed when they are preopted on system."""
am: 59d15c192d

Change-Id: I2d51ba0d5c5affb391bed5322f64a4d64b2f72bd
2019-02-13 04:10:23 -08:00