Commit graph

22361 commits

Author SHA1 Message Date
Nicolas Geoffray
02df14a67a Remove UseApexImage and GenerateApexImage.
These options are not used anymore.

Bug: 119800099
Exempt-From-Owner-Approval: Rebase after conflict
Test: m
Change-Id: I1057a6fc420b45e326ec7744b6df159f950ad853
2020-02-09 22:53:25 +00:00
Vladimir Marko
d1d4b74f63 Merge "Use ART image for make-based preopt." 2020-02-07 16:58:04 +00:00
Vladimir Marko
7ea8a3d9fa Use ART image for make-based preopt.
Test: taimen-userdebug boots when built with
      DEXPREOPT_USE_ART_IMAGE=true
Test: Check logcat for checksum verification failures.
      (Build ART with extra logging in OatFileAssistant.)
Test: Check that bootclasspath-checksums from some prebuilt
      oat files contain only one image checksum followed by
      dex file checksums with
          grep -az -A1 -E '^bootclasspath-checksums$' <oat-file> | \
          xargs -0 echo | gawk '{print $2}'
Bug: 119800099
Change-Id: I241b65d7323901906ffcde91ca9ba173e1755ad7
2020-02-07 14:42:09 +00:00
Vladimir Marko
c3f9db077e Merge "Support dexpreopt against the primary boot image." 2020-02-07 14:12:52 +00:00
Vladimir Marko
30bbf37de2 Support dexpreopt against the primary boot image.
Test: taimen-userdebug boots when built with
      DEXPREOPT_USE_ART_IMAGE=true
Bug: 119800099
Change-Id: I1c0860de87a0280d93a63b9135d071c595f1d925
2020-02-07 09:54:59 +00:00
Bill Peckham
00e02e97d5 Merge "Extend add_soong_config_var to support variable list" 2020-02-07 03:34:32 +00:00
Treehugger Robot
562d15a67d Merge "Add PRODUCT_PACKAGES_SHIPPING_API_LEVEL_29" 2020-02-07 01:46:41 +00:00
Bill Peckham
62f5a4711e Extend add_soong_config_var to support variable list
Bug: b/149049342
Test: Supply list, inspect $(OUT)/soong/soong.variables
Change-Id: I905229441e392f6190bea6ae2169b0ecd1743d45
2020-02-06 15:30:46 -08:00
Sundong Ahn
f3cd49787a Add PRODUCT_PACKAGES_SHIPPING_API_LEVEL_29
The PRODUCT_PACKAGES_SHIPPING_API_LEVEL_29 is added. This value is base
module when shipping api level is less than or equal to 29.

Bug: 124531214
Test: m -j
Change-Id: I0f06b04cf4c824b9c975d9b84f4a0e8171acef75
Merged-In: I0f06b04cf4c824b9c975d9b84f4a0e8171acef75
(cherry picked from commit a18f974bd7)
2020-02-06 01:44:03 +00:00
Bill Peckham
dba4b00232 Add functions for easier vendor var definitions.
The add_soong_config_namespace adds a namespace and
initializes it to be empty. The add_soong_config_var
function adds a pre-existing variable as a Soong
config variable, and the add_soong_config_var_value
function defines a make variable and also adds it as
a soong config variable.

Bug: 144532889
Test: $(OUT)/soong/soong.variables contains variables.
Change-Id: I5cc6a670a089ecd5163f19f7a2fba33f5860c952
2020-02-06 00:21:31 +00:00
Kousik Kumar
d463007dfc Add exec_strategy as CLI flags to all rewrapper commands
Bug: b/148798195
Test: The same change is live in master-build-rbe-testing branch where
its not causing any behavior change, and also it works for
RemoteExecution where RBE_CXX_EXEC_STRATEGY variable is set.
2020-02-05 16:06:47 +00:00
Kyriakos Ispoglou
c3627b55dd Add support for LINE_COVERAGE (2/2)
This is the 2nd part of the CL.

Bug: b/147604881
Test: Code works successfully on Taimen devices
Change-Id: I834c8743f1f66e7515952b804e6da8a99edf8c2e
2020-01-31 14:37:11 -08:00
Treehugger Robot
a4d2d6578e Merge "Rename NativeCoverage to Native_coverage" 2020-01-31 03:12:22 +00:00
Dan Willemsen
e2e32f5d27 Merge "Mark BUILD_HOST_EXECUTABLE as deprecated" 2020-01-30 16:37:07 +00:00
Baligh Uddin
6a8234bf43 Add mke2fs.conf to otatools
BUG: 148452817
2020-01-29 17:42:59 -08:00
Yifan Hong
67f58406ee Merge "Disallow VINTF metadata for PRODUCT_COPY_FILES" 2020-01-30 00:50:59 +00:00
Dan Willemsen
4c3a01f105 Mark BUILD_HOST_EXECUTABLE as deprecated
The last common user has been removed

Bug: 130696912
Test: treehugger
Change-Id: I7920719edfdef295f4136326445836053db5adf8
2020-01-29 13:27:18 -08:00
Treehugger Robot
5c3725510a Merge "Enforce LOCAL_CERTIFICATE is set in soong_app_prebuilt.mk" 2020-01-29 17:42:51 +00:00
Treehugger Robot
526551f013 Merge "Remove unused no_vendor_variant_vndk_check target" 2020-01-29 06:54:01 +00:00
Baligh Uddin
0434412bcd Merge "Add explicitly merge_zips to otatools package" 2020-01-29 06:16:16 +00:00
Vic Yang
3ec918d342 Remove unused no_vendor_variant_vndk_check target
This was missed when we moved from a single target for checking all
VNDK libraries to using timestamp files for checking individual VNDK
libraries.

Test: Build success.
Change-Id: I3be19f6755b24fff2446449a9dbc84db9a20ea41
2020-01-28 21:01:38 -08:00
Tianjie Xu
a25d76f2c8 Add explicitly merge_zips to otatools package
Since it's under soong/out/host, we need to explicitly copy it into the
otatools.zip

Bug: 146508800
Test: build and check otatools.zip
Change-Id: I83e201601cf03b6eb01ead912a78f22f750aa4be
2020-01-28 19:17:35 -08:00
Daniel Rosenberg
dac25a96df Merge "Add build properties to enable casefold and prj_quota" 2020-01-28 23:53:25 +00:00
Steven Laver
c99128cdbf Merge "Add a missing ',' in the VNDK variant identicalness check" 2020-01-28 22:38:56 +00:00
Dan Willemsen
5daf724d15 Merge "Mark (BUILD_|LOCAL_)COPY_HEADERS as [more] deprecated" 2020-01-28 22:38:43 +00:00
Colin Cross
35e12a7020 Merge "Fix building docs as part of checkbuild" 2020-01-28 22:24:00 +00:00
Colin Cross
24c77395be Enforce LOCAL_CERTIFICATE is set in soong_app_prebuilt.mk
Missing LOCAL_CERTIFICATE produces an apkcerts.txt file that
has no key for the APK, which confuses the signing tools.
Enforce that it is set.

Bug: 147765187
Test: m apkcerts-list
Change-Id: I1299505d193deba5956954e5d9b6e4c727456b9c
2020-01-28 14:13:52 -08:00
Ramy Medhat
2899e4871d Merge "Add RBE support for Javac, R8, and D8 if respective env vars are set." 2020-01-28 19:49:05 +00:00
Steven Laver
6a9ff71894 Add a missing ',' in the VNDK variant identicalness check
The invocation of verify-vndk-libs-identical is missing a ',' between
the second and third parameters, in commit
4873e65c8d.

Change-Id: I88d230db4e6fed5939b1fe9d636d440a00773a41
2020-01-28 11:31:33 -08:00
Ramy Medhat
a9cc25d785 Add RBE support for Javac, R8, and D8 if respective env vars are set.
Test: aosp_crosshatch build with and without the new variables.
Change-Id: I252ff5dd8e372edf8c86e25348c8a2bfab41d70d
2020-01-28 10:25:25 -05:00
Dan Willemsen
66d21d4a30 Mark (BUILD_|LOCAL_)COPY_HEADERS as [more] deprecated
We've considered these deprecated for a while, and have reduced where
they may be used, but let's actually throw warnings and call them out
specifically now.

Bug: 130719878
Test: lunch aosp_arm; m nothing   [see no warnings]
Test: lunch aosp_crosshatch; m nothing   [see LOCAL_COPY_HEADERS warnings]
Test: lunch aosp_taimen; m nothing  [see BUILD_COPY_HEADERS warnings]
Change-Id: I8c12012366d84667de0d223bbde38d8b90419e36
2020-01-27 19:45:04 -08:00
Treehugger Robot
15e0680af1 Merge "Give strip depfile a unique name, properly include it" 2020-01-27 23:38:00 +00:00
Tianjie Xu
19dbfceafd Merge "Add apexer and dependencies to otatools" 2020-01-27 23:21:52 +00:00
Colin Cross
3e87e83557 Give strip depfile a unique name, properly include it
$(LOCAL_BUILT_MODULE).d may conflict with the .d file for a .o file,
use $(LOCAL_BUILT_MODULE).strip.d.  Also pass the required second
arg to include-depfile.

Bug: 148387048
Test: m checkbuild
Change-Id: I1f5f4c38010294a12d6777439b0f66c0102c1c96
2020-01-27 22:06:21 +00:00
Daniel Rosenberg
6cc2c81f4d Add build properties to enable casefold and prj_quota
This adds the ability to format f2fs and ext4 in a way that supports
casefolding and project quotas. Project quotas require wider inodes, and
thus cannot be enable apart from at build time. Casefolding can be
configured with f2fs.fsck/tune2fs later.

Both features are enabled via inheriting emulated_storage.mk in the
device.mk

Bug: 138322712
Bug: 138321217
Test: Enable on device with related patches, view fs configuration on /data
Change-Id: Ib1ab0589006ff1b3fb7478b7e9b0a8aad71e4b09
2020-01-27 12:45:47 -08:00
Colin Cross
43e74295e0 Fix building docs as part of checkbuild
s/module_to_check/modules_to_check/

Bug: 118815658
Test: m checkbuild
Change-Id: I53e10747ed404509fd11adb72e641c702e27655b
2020-01-27 11:36:07 -08:00
Tianjie Xu
eb8a0a0036 Add apexer and dependencies to otatools
We need them to extract and repack the apex file when signing
the apex.

Bug: 146508800
Test: build
Change-Id: Ib38055eac24f28ac59610d03275de05b77d3eeb0
2020-01-27 11:05:54 -08:00
Dan Willemsen
9fe2479849 Merge "Deprecate BUILD_HOST_SHARED_LIBRARY" 2020-01-25 00:09:48 +00:00
Yifan Hong
5e57a778cd Disallow VINTF metadata for PRODUCT_COPY_FILES
VINTF metadata must be checked by defining
DEVICE_MANIFEST_FILE and friends, instead of being
copied with PRODUCT_COPY_FILES directly.

This can be worked arond with BUILD_BROKEN_VINTF_PRODUCT_COPY_FILES.

Test: Add the following and see errors:

PRODUCT_COPY_FILES += \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/vintf/manifest.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/vintf/manifest/foo.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_PRODUCT)/etc/vintf/compatibility_matrix.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/vintf/manifest.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/vintf/manifest/foo.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_SYSTEM_EXT)/etc/vintf/compatibility_matrix.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/etc/vintf/manifest.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/etc/vintf/compatibility_matrix.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/compatibility_matrix.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_ODM)/etc/manifest.xml \
    device/XXX/manifest.xml:$(TARGET_COPY_OUT_ODM)/etc/vintf/manifest.xml \

Test: test again with BUILD_BROKEN_VINTF_PRODUCT_COPY_FILES := true

Bug: 147506249

Change-Id: Id75a9690b3c71fdc9a4e1b4e9be2caa63183cf7c
2020-01-24 15:07:35 -08:00
Yifan Hong
8d29737259 Add BOARD_USES_RECOVERY_AS_BOOT to readonly list.
Test: builds
Change-Id: I391e0d168c79e84c1a2acd4fe693e3ed9fbddb53
2020-01-24 14:28:03 -08:00
Colin Cross
74daa974bb Rename NativeCoverage to Native_coverage
Rename NativeCoverage to Native_coverage so it can be used as a
product_variable in Soong.

Test: m checkbuild
Change-Id: I86463a5c9b6cf4ba628cbdfb200625dc1e59e559
2020-01-24 14:27:11 -08:00
Dan Willemsen
084c6ef6fa Deprecate BUILD_HOST_SHARED_LIBRARY
There are no common users left.

Also add some sanity checks to ensure that people don't attempt to use
LOCAL_IS_HOST_MODULE := true with the BUILD_(STATIC|SHARED)_LIBRARY
module types (I'm not sure it would work, but it definitely wouldn't be
good).

Bug: 130722971
Test: treehugger
Test: check the warnings on the build_test builds from treehugger
Change-Id: I3e571ef80379955149adbceff4500e51dfa016c6
2020-01-24 13:21:21 -08:00
Yifan Hong
9a190e25d0 Export BOARD_USES_RECOVERY_AS_BOOT to soong.
Test: pass
Bug: 147347110
Change-Id: I4ba4f626f02c42b1700a971326557abd23da8340
2020-01-23 13:21:09 -08:00
Yifan Hong
84c1309730 Merge "Do not check VINTF if no files" 2020-01-22 22:51:04 +00:00
Oliver Nguyen
125f7dc84d Merge "Add CLANG_COVERAGE build flag to soong config." 2020-01-22 22:34:35 +00:00
Treehugger Robot
02b1498d5a Merge "Turn on PRODUCT_ENFORCE_PRODUCT_PARTITION_INTERFACE if PRODUCT_SHIPPING_API_LEVEL > 29" 2020-01-22 00:36:40 +00:00
Justin Yun
2bfe0a1a25 Restore "Linktype check for native:product"
Similar to native:vendor, native:product can use VNDK libs but not
vndk_private.
It is activated when PRODUCT_PRODUCT_VNDK_VERSION is set.

This restores the reverted commit
4e7e76fe5a (aosp/1197274).
The problem of the original CL was assuming no modules have both
LOCAL_PRODUCT_MODULE and LOCAL_USE_VNDK in the old implementations.
But many vendor modules in the targets without setting
PRODUCT_PRODUCT_VNDK_VERSION in old branches had both flags that
caused link failures.
To make it no-op without PRODUCT_PRODUCT_VNDK_VERSION, I defined
LOCAL_USE_VNDK_PRODUCT that is set to true if
PRODUCT_PRODUCT_VNDK_VERSION is defined and LOCAL_PRODUCT_MODULE is
true.

Bug: 146620523
Test: build with PRODUCT_PRODUCT_VNDK_VERSION := current
Change-Id: I344c7dc1c47f08706c101e486ff07c3f10aff8ac
2020-01-22 00:16:25 +00:00
Peter Collingbourne
b1d7545e1b Merge "Update make build system for dynamic unwinder." 2020-01-21 21:28:44 +00:00
Yifan Hong
af9b0701e3 Do not check VINTF if no files
Do not check VINTF integrity / compatibility if
no files are built to /system/etc/vintf/* or /vendor/etc/vintf/*.

Test: m check-vintf-all on gsi_gms_arm64
Test: m check-vintf-all on coral

Fixes: 147749718
Fixes: 148007775

Change-Id: I874d1558e0b891b9d307eec536b1071d382a43f5
2020-01-21 13:21:52 -08:00
Justin Yun
dd5401713c Revert "Linktype check for native:product"
This reverts commit 4e7e76fe5a.

Reason for revert: build breaks (bid: 6147225) and postsubmit test fails.
There are some modules that have both "product_specific: true" and "vendor_available: true", which tags the module as "native:product" unintentionally.
We need to clean up these cases first and revisit this CL.

Bug: 146620523
Bug: 147987741
Change-Id: Ib07543235d72a135b6b732aaa909c147d2df832b
2020-01-20 07:39:41 +00:00