This will allow us to remove the core.art image compiled in make.
Test: m test-art-host-gtest
Bug: 147817558
Bug: 147819342
Change-Id: Ie17e5818ddeb200843b13d36ade6d1a5428a9a48
As a first step to removing the go/android3p instructions to copy or
to link NOTICE to LICENSE, include LICENSE files in the notices, which
will allow deleting all of the copied/linked NOTICE files.
The change causes a couple minor additions to the system image notice
files.
Test: manually built and compared before and after notices
Change-Id: Id23cae4a8f2d103e1379f4341340fc56c5943dc2
Partition the targets into those appearing in system images, those
appearing somewhere unreadable by the Settings UI, whose notices
must appear in a readable system image, and those not appearing
on the device thus not needing notices. Assert no other targets
appear under $(PRODUCT_OUT).
Test: manually built and tested phone image
Change-Id: If82cb36f98f8e6066d1c67bb4d15976be433d403
Move the build number file to out/soong so Soong can treat it
as an output path, and pass the name of the file to Soong instead
of the command to read it.
Test: m checkbuild
Change-Id: I9e1aecf33d11fe4fde34cd57cc9b1f1ad49b0424
Coverage builds result in different core and vendor variants due to
different coverage metadata from static libraries. Skip this check only
on coverage builds.
Bug: 143977934
Test: m CLANG_COVERAGE=true COVERAGE_PATHS='*'
Change-Id: I906745e951b36a87cedf998a93bdc390196a606e
Fix uneccessary rebuilds on incremental builds by touching the
same_vndk_variant.timestamp output file.
Test: m && m
Change-Id: Ieb1b47f8a6cc406139c326a527041239fdb627d0
When using an archive to provide kernel modules, the archive is directly
expanded into the output directory. The output directory is currently
removed prior to that to ensure no stale modules are present if they
were removed as part of a change in an incremental build.
Unfortunately if kernel modules are also provided via the regular
BOARD_*_KERNEL_MODULES macros, the removal of the output kernel module
directory will race with the copying of kernel modules in
BOARD_*_KERNEL_MODULES, resulting in some of those kernel modules not
being present in the output.
Kernel modules removed from BOARD_*_KERNEL_MODULES do not currently get
removed from the output directory in an incremental build anyway. So in
order to support using BOARD_*_KERNEL_MODULES and
BOARD_*_KERNEL_MODULES_ARCHIVE conurrently, take out the removal of the
output directory prior to archive expansion.
Bug: 149866863
Change-Id: Ib373650ddcb0fb5782a13d68a8869a9117e42ccc
vts-core.xml imports some vts only preparer to run un-converted vts
python tests.
Bug: 149249068
Test: unittest
Change-Id: Ibdecb250f78c07d7645be4b140b8cfaeda99d79b
The current package logic is based on general-tests and device-tests,
which have special rules to package test artifacts in a diffrent way.
vts-core suite should follow the generic *ts package rule.
Bug: 149249068
Test: m -j vts-core && vts-core-tradefed
run some vts-core test
Change-Id: Ib6ab7eb0fb4b8c898a0b3617d10be04dc98c2daa
Commit I30137c3caef91805d9143d404e5e4d06c0fccc30 adds boot-debug.img
to allow adb root with an user build GSI image.
https://source.android.com/compatibility/vts/vts-on-gsi
Another commit I5b005097b73f59857c3a2f92d693b3e67ee8424e adds
vendor_boot.img to pair with a generic kernel image, the GKI boot.img.
To allow adb root for devices using a GKI, vendor_boot-debug.img is
introduced. The image combination used in VTS will be:
Old devices without GKI:
GSI system.img + boot-debug.img + vendor.img, etc.
New devices with GKI:
GSI system.img + GKI boot.img + vendor_boot-debug.img + vendor.img, etc.
Note that boot-debug.img still can be used on new devices for
non-compliance scenario.
Bug: 147849477
Test: lunch aosp_cf_x86_64_phone-userdebug; make vendorbootimage_debug
Test: `make dist`, checks that both vendor_boot-debug.img and
vendor-ramdisk-debug.cpio.gz are in $OUT/ and out/dist.
Test: `make dist`, checks that installed-files-vendor-ramdisk-debug.{json,txt} are
in $OUT/ and out/dist.
Change-Id: I66b662d8b1e5c619ed7bb81e40233fe9df363b27
This CL adds a new make target for line coverage, That is, by running
`make haiku-line-coverage` you can get a set of all profile (*.gcno) files
for all fuzz targets and for all critical components of Android,
packed into a zip called `line_coverage_profiles.zip`. Furthermore the set of
all fuzz targets are instrumented with line coverage and packed into
another zip called `line_coverage_fuzz_targets.zip`
To properly run the make target enable NATIVE_LINE_COVERAGE first:
NATIVE_LINE_COVERAGE=true NATIVE_COVERAGE=true COVERAGE_PATHS=* make haiku-line-coverage
Bug: b/148234755
Test: Make target buils successfully on master/aosp. Binaries tested on taimen
devices.
Change-Id: I6a1e11068119337628c2ae5ee3baf2fc394add05
If EMMA_INSTRUMENT is turned on but no APKs were built the rule to
collect jacoco-report-classes.jar would error with missing directories
and an empty zip file. Switch to soong_zip, which doesn't error
on empty zip files, and hide the errors if $(TARGET_COMMON_OUT_ROOT)
or $(HOST_COMMON_OUT_ROOT) don't exist.
Test: m EMMA_INSTRUMENT=true TARGET_BUILD_APPS=Camera2
Change-Id: I09e30e37dc38f32f55b3f91bfc4d12c9e753083f
With kernel support being removed for execute-only memory layouts,
remove support for XOM until there's kernel support again.
This allows us to gain the code-size improvements from
"-z noseparate-code".
Bug: 147300048
Test: Compiled binaries no longer marked XOM by default.
Change-Id: I08a054e903b202f513d3b3381afd606bb87cf257
This is to unify boot jars with system server jars:
PRODUCT_SYSTEM_SERVER_JARS and PRODUCT_UPDATABLE_SYSTEM_SERVER_JARS
do not overlap.
Test: aosp_walleye-userdebug boots
Exempt-From-Owner-Approval: cherry-pick.
Bug: 146363577
Change-Id: Ief8994cc34cb6f7951051313dd66a1334a3a73b4
Merged-In: Ief8994cc34cb6f7951051313dd66a1334a3a73b4
(cherry picked from commit 19ed3a0db7)
When OVERRIDE_PRODUCT_ENFORCE_PRODUCT_PARTITION_INTERFACE is set to
false, it must not copy the value to
PRODUCT_ENFORCE_PRODUCT_PARTITION_INTERFACE but leave it empty
because Soong always set EnforceProductPartitionInterface to true if
PRODUCT_ENFORCE_PRODUCT_PARTITION_INTERFACE has value.
Bug: 148952638
Test: Build with
OVERRIDE_PRODUCT_ENFORCE_PRODUCT_PARTITION_INTERFACE=false
Change-Id: I6435157ff993e53669b4244c9be74efbcc84107d
Regardless of the value of PRODUCT_USE_DYNAMIC_PARTITION_SIZE
"use_dynamic_partition_size=true" is passed to build_image.sh.
Pass the value of PRODUCT_USE_DYNAMIC_PARTITION_SIZE just like it is
done for other properties.
Test: 1. build a target with fixed partition sizes and
"PRODUCT_USE_DYNAMIC_PARTITION_SIZE := false".
2. check the value of "use_dynamic_partition_size" in the
corresponding system_image_info.txt.
3. repeat steps 1 and 2 with this fix and see the difference.
Change-Id: Ia121d3d67f554f8ae4e211ad4e2c381a43409f01