Commit graph

1253 commits

Author SHA1 Message Date
Kiyoung Kim
c8343a3f0e Merge "Deprecate VNDK-Lite" 2020-07-28 00:36:10 +00:00
Dan Willemsen
0132fb7fae Merge "Revert "Move some prebuilt build tool configs to Soong"" 2020-07-23 21:43:04 +00:00
Dan Willemsen
51c49e590d Revert "Move some prebuilt build tool configs to Soong"
This reverts commit 3e1c9115d1.

Reason for revert: broke builds where makefiles were using M4 without depending upon it

Change-Id: Ib2deef08255656b91cb8ec42f1cb7e9555364f23
2020-07-23 21:38:00 +00:00
Dan Willemsen
925d63690c Merge "Move some prebuilt build tool configs to Soong" 2020-07-23 21:10:04 +00:00
satayev
b7f74b89db Merge "Revert "Add a check for apex/allowed_deps.txt to droidcore."" 2020-07-23 15:20:18 +00:00
satayev
c42d9bfc27 Revert "Add a check for apex/allowed_deps.txt to droidcore."
Revert "Track allowed transitive deps in any updatable module."

Revert submission 1312796-apex-allowed-deps

Reason for revert: b/161974327
Reverted Changes:
I52a4be72e:Add a check for apex/allowed_deps.txt to droidcore...
I56771ba3f:Track allowed transitive deps in any updatable mod...

Change-Id: I20ad7bf2001e76b5e3ca4aaf3baa5318e270f3dc
2020-07-23 15:15:54 +00:00
satayev
38b739a640 Merge "Add a check for apex/allowed_deps.txt to droidcore." 2020-07-23 12:41:11 +00:00
Artur Satayev
12e2d0f7a2 Add a check for apex/allowed_deps.txt to droidcore.
The check ensures that build graph for updatable modules contains only
allowed dependencies at build time.

Bug: 149622332
Test: m
Change-Id: I52a4be72efaa523d53827dd11822a7802543dd10
Merged-In: I5695dd1003386191dbbe0ea511ef5b615d0d5e4e
Exempt-From-Owner-Approval: cp
2020-07-23 12:40:49 +00:00
Yo Chiang
8bb1285f65 Merge "Auto-generate dexpreopt boot image module" 2020-07-21 03:37:23 +00:00
Kiyoung Kim
7ae3ce79aa Deprecate VNDK-Lite
Android S would not support upgrade from O-MR1 devices, so VNDK Lite
configuration is no more valid. This change removes all VNDK-Lite
related steps and makr BOARD_VNDK_RUNTIME_DISABLE as deprecated
variable.

Bug: 158719241
Test: m -j passed
Change-Id: Ifb355da936933843862426e7ddfce9c7f69cea61
Merged-In: Ifb355da936933843862426e7ddfce9c7f69cea61
2020-07-20 05:39:29 +00:00
Dan Willemsen
3e1c9115d1 Move some prebuilt build tool configs to Soong
Now that they're defined with prebuilt_build_tool, we don't need to set
them here.

In future changes we can replace more of these definitions with
prebuilt_build_tool, as it can centralize the selection of
build-from-source or prebuilt for Make, Soong, and user-defined
genrules.

Test: treehugger
Change-Id: I4bb526492ebc6270b6030913c1f5b3f49dc61284
2020-07-17 20:01:04 -07:00
Yifan Hong
997d227648 Merge changes from topic "odm_dlkm"
* changes:
  Create $OUT/{vendor,odm}/lib before symlink modules
  Add odm_dlkm/etc/build.prop
  Install ODM dlkm to appropriate place and symlink
  Add notice files for odm_dlkm
  Add odm_dlkm partition.
2020-07-17 22:05:26 +00:00
Bowgo Tsai
9b56140cb1 Adding vbmeta_system.img and vbmeta_vendor.img to droidcore
In the concept of system/vendor build split, usually vbmeta.img
won't be built in a system-only build and/or a vendor-only build.
Instead, vbmeta.img will be generated later when combining system
and vendor artifacts.

  - system-only artifacts: system.img, system_ext.img,
                           product.img and vbmeta_system.img
  - vendor-only artifacts: boot.img, vendor.img, odm.img and
                           vbmeta_vendor.img

PRODUCT_BUILD_VBMETA_IMAGE can be used to disable building vbmeta.img.
However, it also disables vbmeta_system.img and vbmeta_vendor.img
generation because both are only depended by vbmeta.img.

This change adds both vbmeta_[system|vendor].img into droidcore,
so they will be built even if PRODUCT_BUILD_VBMETA_IMAGE is set
to false, when we're building system-only artifacts or vendor-only
artifacts.

Bug: 161425613
Test: sets PRODUCT_BUILD_VBMETA_IMAGE := false then build, checks
      vbmeta_system.img is generated but vbmeta.img is not.
Change-Id: I39d9819da4704195b0e1ee58d13c848ae97d474a
2020-07-17 09:41:40 +00:00
Colin Cross
d56abedb02 Merge "Dist lint reports for apps" 2020-07-16 23:06:22 +00:00
Yifan Hong
f496f1b94f Add odm_dlkm partition.
Test: define odm_dlkm in CF.
Bug: 156020364
Change-Id: I5593d09a1cdf13e651a13e951336555a7475865e
2020-07-16 12:34:29 -07:00
Yo Chiang
7c16b443c3 Merge "Refine dump-files" 2020-07-15 07:24:41 +00:00
Yo Chiang
561efbc1fb Refine dump-files
Dump $(modules_to_install) instead of $(product_target_FILES) to get a
more complete list of target files.

Use `echo $(modules_to_install) | tr -s ' ' '\n'` instead of
`$(foreach m,$(modules_to_install),$(info $(m)))`.
This way only one `echo` command is emitted instead of emitting `echo`
command for each file. This speeds up the invocation speed tremendously.

Bug: 159195410
Test: m dump-files
Change-Id: I06549cecc64177f1eb5a01e31a55d5eed307fcfd
2020-07-14 18:30:34 +08:00
Yo Chiang
3ca4980d36 Auto-generate dexpreopt boot image module
Add prebuilt modules that installs bootjar dexpreopt files generated by
soong, for example `dexpreopt_bootjar.boot_arm64` installs .art / .oat /
.vdex, etc for the framework boot image ("boot") for primary arch
("arm64").

Bug: 159196136
Test: TH built artifacts noop
Test: Check device boot images are installed
Test: ./prebuilts/build-tools/linux-x86/bin/ninja -f out/combined-aosp_arm64.ninja -t browse
Test: Check that generated dependency graph is sane
Test: Check that bootjar dexpreopt bits are listed in `m dump-files`
Change-Id: Ia30b37be9be972c5e28b5840923801ea7237a237
2020-07-14 15:49:08 +08:00
Yifan Hong
cfb917a1c7 Add vendor_dlkm partition.
Test: define vendor_dlkm for CF.
Bug: 156020364

Change-Id: I459059e1c20df7a285a377b8b3bbc8decc60b124
2020-07-13 14:20:56 -07:00
Colin Cross
b842952421 Dist lint reports for apps
Dist the transitive lint report for each unbundled app built by Soong
when lint-check is on the command line.

Bug: 153485543
Test: m TARGET_BUILD_APPS=Gallery2 lint-check dist
Change-Id: Icd2b6f884396fa5f743746099301c325ca82a324
2020-07-10 16:41:10 -07:00
Roland Levillain
cd80a6afea Turn COVERAGE_PATHS and COVERAGE_EXCLUDE_PATHS into obsolete variables.
(cherry picked from commit c276bf4f3cc72e479d21c7bd0b34673d93e76f9a)

Test: m nothing
Bug: 158212027
Change-Id: Ibc0dbfd21465ab6fc5b826a52bf605910af283e7
Merged-In: Ibc0dbfd21465ab6fc5b826a52bf605910af283e7
2020-07-08 12:56:29 +01:00
Roland Levillain
ace5860719 Turn uses of COVERAGE_PATHS and COVERAGE_EXCLUDE_PATHS into errors.
All known uses of environment variables `COVERAGE_PATHS` and
`COVERAGE_EXCLUDE_PATHS` have been replaced with
`NATIVE_COVERAGE_PATHS` and `NATIVE_COVERAGE_EXCLUDE_PATHS` (resp.).

Test: m nothing
Test: Check that `m nothing COVERAGE_PATHS=art` fails.
Test: Check that `m nothing COVERAGE_EXCLUDE_PATHS=art` fails.
Test: Check the Android Build for build errors related to these variables.
Bug: 158212027
Change-Id: Icc7c1d9734e78c2bf327f00f04355700b5476648
2020-07-07 15:01:26 +01:00
Treehugger Robot
3f2e4cc4e6 Merge "add build.prop for other partitions to the dist out" 2020-07-06 23:24:49 +00:00
Yo Chiang
d23ac0e477 target-host-required: Be permissive when ALLOW_MISSING_DEPENDENCY is set
add-all-host-to-target-required-modules-deps and
add-all-target-to-host-required-modules-deps permit errors when
ALLOW_MISSING_DEPENDENCY is set to true.

The previous behavior may break when doing unbundled builds.

Bug: 160318430
Bug: 7456955
Test: TH art-target-arm build pass
Change-Id: I00818d27ce18f4072eff9fa98958be820b5cd1f8
Merged-In: I00818d27ce18f4072eff9fa98958be820b5cd1f8
(cherry picked from commit 2c7c8bb657)
2020-07-06 10:57:51 +08:00
Jiyong Park
0ee7115b2d add build.prop for other partitions to the dist out
Previously, only system/build.prop was registered as dist out. This
change adds build.prop in the other partitions to the dist out. This
will allow us to examine those build.prop files without downloading
the entire target-files.zip file.

Bug: 117892318
Test: examine the dist out
Change-Id: I6f4ba16d765336a57f0da90edba788a627f25e60
2020-07-03 09:59:10 +09:00
Yo Chiang
c9b0f0a9a5 Merge "Resolve module bitness for target-host required modules" 2020-06-30 11:21:03 +00:00
Colin Cross
e1ab4cb610 Merge "Use inclusive language in build/make part 2" 2020-06-24 21:58:46 +00:00
Colin Cross
d1cbfeaa3a Use inclusive language in build/make part 2
Test: m checkbuild
Bug: 158889297
Change-Id: I63bac680cc63a8564f35ae85dda1a0b09c9fd541
2020-06-24 12:03:08 -07:00
Roland Levillain
4a203a6326 Merge "Warn about the use of COVERAGE_PATHS and COVERAGE_EXCLUDE_PATHS." 2020-06-24 10:16:03 +00:00
Yo Chiang
697674fa56 Resolve module bitness for target-host required modules
Add select-bitness-of-target-host-required-modules that resolves module
bitness for TARGET_REQUIRED_FROM_HOST and HOST_REQUIRED_FROM_TARGET.
Also re-indent select-bitness-of-required-modules.

Bug: 7456955
Test: TH
Test: compare value of ALL_MODULES.<*>.*_REQUIRED_FROM_*
Change-Id: I9483685d8dd528cb1a4ef1e2ec53cbe2caa598a4
2020-06-22 07:07:10 +00:00
sophiez
cb00590712 NDK api code coverage
Update parsed NDK api xml file directory name.

Test: m ndk
Forrest test build pass: http://shortn/_E5mhRtD4zW

Change-Id: Ic20780d969e33103c45953c9cdd81efe4262b4a9
2020-06-17 23:01:21 +00:00
Sophie Zheng
b5bfbab22b Merge "Revert "Revert "Copy generated xml file for NDK api coverage to dist when CLANG_COVERAGE flag set.""" 2020-06-17 17:11:32 +00:00
Roland Levillain
bececf9e92 Warn about the use of COVERAGE_PATHS and COVERAGE_EXCLUDE_PATHS.
The use of environment variables `COVERAGE_PATHS` and
`COVERAGE_EXCLUDE_PATHS` has been deprecated since they have been
replaced by `NATIVE_COVERAGE_PATHS` and
`NATIVE_COVERAGE_EXCLUDE_PATHS` (resp.).

Test: m nothing
Bug: 158212027
Change-Id: I1c48dc4da15c630201168cce34edb920960c93d4
2020-06-16 11:27:34 +01:00
Sophie Zheng
970d5925bd Revert "Revert "Copy generated xml file for NDK api coverage to dist when CLANG_COVERAGE flag set.""
This reverts commit dd9467aa23.

Reason for revert: Fix to the breakage merged in https://android-review.googlesource.com/c/platform/build/soong/+/1332082.

Forest test build pass: http://shortn/_AWiWymhTjF

Change-Id: Ie47b84c51e85c8d372c5ee49963d671ff08ef91a
2020-06-15 20:42:37 +00:00
Jiyong Park
cd0c931b89 Merge "Organize product vars for adding properties" 2020-06-15 10:00:22 +00:00
Treehugger Robot
2158d2ec6b Merge "Use inclusive language in build/make" 2020-06-12 03:19:02 +00:00
madym
cca4dffa6f Merge "Revert "Copy generated xml file for NDK api coverage to dist when CLANG_COVERAGE flag set."" 2020-06-11 22:25:05 +00:00
madym
dd9467aa23 Revert "Copy generated xml file for NDK api coverage to dist when CLANG_COVERAGE flag set."
This reverts commit a81ee59b74.

Reason for revert: maybe broke the build b/158783867

Change-Id: Ia7a81109de3adb4b5226b4139f3e231e60473283
2020-06-11 22:05:42 +00:00
Colin Cross
c3ad80467e Use inclusive language in build/make
Test: m checkbuild
Change-Id: I54a7e55d3fdd5571ef1ae33ebe443c10d138fd28
2020-06-11 14:37:54 -07:00
Colin Cross
bc1051d399 Merge "Add out/soong/late-${TARGET_PRODUCT}.mk" 2020-06-11 18:36:18 +00:00
Sophie Zheng
537aee38d5 Merge "Copy generated xml file for NDK api coverage to dist when CLANG_COVERAGE flag set." 2020-06-11 18:21:53 +00:00
Jiyong Park
eb49b34b1e Organize product vars for adding properties
Properties for <partition>/build.prop are now added via
PRODUCT_<PARTITION>_PROPERTIES.

PRODUCT_SYSTEM_PROPERTIES is added. PRODUCT_SYSTEM_DEFAULT_PROPERTIES
will be deprecated.

PRODUCT_VENDOR_PROPERTIES is added. PRODUCT_PROPERTY_OVERRIDES and
PRODUCT_DEFAULT_PROPERTY_OVERRIDES will be deprecated in favor of the new
variable.

For other partitions (odm, system_ext, product), there is no change.

Exempt-From-Owner-Approval: cherry-pick from internal master

Bug: 117892318
Test: m
Merged-In: I98f3b5d0da661b3ad75260a23754e655103b7a44
(cherry picked from commit ad810b6dae)
Change-Id: I98f3b5d0da661b3ad75260a23754e655103b7a44
2020-06-11 15:35:23 +09:00
Martin Stjernholm
7a430fd4c8 Introduce TARGET_BUILD_UNBUNDLED.
Setting this flag enables unbundled building, i.e. without support for
building the system image and other platform targets. This
functionality was previously enabled by TARGET_BUILD_APPS, and setting
that still implies TARGET_BUILD_UNBUNDLED.

This helps unbundled builds that aren't apps, e.g. ART runtest builds.
Specifically, with the topic of the child CL
https://r.android.com/1324517 TARGET_BUILD_UNBUNDLED does not imply
disabling dexpreopting, unlike TARGET_BUILD_APPS.

TODO: There may still be app-specific conditions that are incorrectly
controlled by TARGET_BUILD_UNBUNDLED, in particular on the Soong side
through config.UnbundledBuild().

Test: Flash & boot
Test: TH, in particular builds green on ub-launcher3-master
Bug: 157549171
Change-Id: Ic09fc879117ee06cab5444edfc280ed2b52d2870
2020-06-11 01:09:07 +01:00
Yo Chiang
1e55e74acc Cleanup unused get-32-bit-modules
These are no longer used by anyone:
* get-32-bit-modules
* get-32-bit-modules-if-we-can
* get-host-32-bit-modules
* get-host-32-bit-modules-if-we-can

Bug: 155869107
Test: TH
Change-Id: I441de7f94061efd40186b80d1a2ead11669a5753
2020-06-09 03:28:26 +00:00
Colin Cross
8ca4092ab4 Add out/soong/late-${TARGET_PRODUCT}.mk
Read out/soong/late-${TARGET_PRODUCT}.mk after reading Android.mk files
to allow Soong's makevars singleton to use $(call dist-for-goals).

Test: m lint-check dist
Change-Id: I7754fd1b8dab508c96ad59beed67f0d6c4ff75f0
2020-06-07 18:16:38 -07:00
Jiyong Park
c844de4241 Merge changes I4d88733c,I61943476,Ibed9c96d
* changes:
  remove buildinfo_common.sh
  Partial cherry-pick of ag/10260813
  <partition>/build.prop rules are defined using macro
2020-06-08 00:58:48 +00:00
Yo Chiang
f9d1eee9b9 Merge changes I47d523e4,Ib2f4b548
* changes:
  Make required modules support :32 and :64 suffix
  Refactor *-select-bitness-of-required-modules
2020-06-05 05:12:23 +00:00
Jiyong Park
e28fa80e12 <partition>/build.prop rules are defined using macro
The macro `build-properties' is defined to generate build rules to
create <partition>/build.prop.

build.prop files in all partitions except for the system partition are
now build using the macro.

system partition will use the macro in the following changes.

Bug: 117892318
Test: m

Change-Id: Ibed9c96dac4366251ec59a0b1317aa92f501c9a3
2020-06-05 10:47:34 +09:00
Treehugger Robot
49efd2aad0 Merge "Re-enable link type checking" 2020-06-03 21:30:22 +00:00
Dan Willemsen
be15ded040 Re-enable link type checking
When I removed the actions that ran the python link type checker, I
forgot that the Make version hadn't been enabled yet. Enable the Make
version.

Bug: 143748700
Test: treehugger (particularly, build_test on the downstream branches)
Change-Id: I293b3be5ca7828c9d7148e13d88b0f0bba54d964
Merged-In: I293b3be5ca7828c9d7148e13d88b0f0bba54d964
Merged-In: I08090db44d47f809fbaa0c4ad373e46e6a3fbe2e
2020-06-03 21:09:32 +00:00