If there's a prebuilt with LOCAL_MULTILIB := true, but only a single
LOCAL_SRC_FILES entry, we end up with a weird build error where `cp`
is trying to copy the local directory. Exit early with an error in this
case.
Bug: 73904572
Test: build-aosp_marlin.ninja is identical
Change-Id: Ie2821817c237087a96e87fb9602e430e0f86584a
Instead of relying on whatever version of xmllint is on the host system,
build and use the version in external/libxml2.
Test: diff build_aosp-marlin.ninja, expected changes.
Test: m $(xmllint targets in build_aosp-marlin.ninja)
Test: introduce xml error, build fails
Change-Id: I39579f06db3777e3b5c8dda7c7541c25a35887b2
Some SoC vendors require firmware and persist directores to mount.
This must be provided in GSI for arm_ab not only for arm64_ab.
Once the directories are moved to /vendor, these policies for root
must be removed.
Bug: 36764215
Bug: 73720182
Test: GSI boot with 32bit devices
Change-Id: Ic5c6bb615c39853d51d233c00d2d9e8ee2c57802
The file has been removed from target-files.zip since commit
c19a8d5590 (Gingerbread), whose info has
been consolidated into META/misc_info.txt.
Test: `m dist`
Change-Id: Ic144457954f5742ea082dcd9ffbea71df4afe46e
Before this CL, the build could fail with error messages such as:
Error: out/target/common/obj/JAVA_LIBRARIES/core-oj_intermediates/classes.jar
contains class file jdk/internal/HotSpotIntrinsicCandidate.class, which is not
in the whitelist
This error message was only moderately helpful because it left a few
questions unanswered or misled ("Whitelist for what?", "Where does the
whitelist live?", "Is it a whitelist of class files or of packages?").
This CL clarifies that:
- it's a whitelist of packages allowed on the bootclasspath,
- where it lives (currently
build/make/core/tasks/check_boot_jars/package_whitelist.txt)
which makes the error message more actionable.
Test: manually checked that the error message now looks okay.
Bug: 17434570
Change-Id: I2f52a5e2eb532bc4945bedf9811de5857f67a9a3
See I1cbbd220c61b1b4b767c301f97096607ee902a7b which introduces this file.
Test: see related change I1cbbd220c61b1b4b767c301f97096607ee902a7b
Merged-In: I23dba07a5d83e4325227892e0a11a758e093effa
Change-Id: I0030718b932ea588120492fd8bcab1f389a40324
With test_utils.construct_sparse_image(), creating valid sparse image is
no longer a blocker for testing these functions.
Test: python -m unittest test_add_img_to_target_files
Change-Id: Iff1f15837cc744bad52e2120f9a9ad94d7db50d5
This CL adds a new flag '--skip_postinstall' that allows skipping all
the postinstall hooks when generating an A/B OTA package (default:
False). Note that this discards ALL the hooks, including non-optional
ones. Should only be used if caller knows it's safe to do so (e.g. all
the postinstall work is to dexopt apps and a data wipe will happen
immediately after).
Bug: 73547992
Test: python -m unittest test_ota_from_target_files
Test: Generate a full OTA package for walleye. Examine the generated
payload.
Change-Id: Ifc069e897b4019605051eabfd221230a6a37867c
<Two phase commits> Since internal master code has more places that use
BUILD_NUMBER (mostly in vendor/) than AOSP (conflict). We can't
deprecate BUILD_NUMBER directly. Therefore, we try to switch to
BUILD_NUMBER_FROM_FILE as much as possible at first. Then we will do
a one-off deprecation for BUILD_NUMBER in internal master next step.
Test: m -j
Bug: b/70351683
Change-Id: I14ffee7381933c9fde14c4bde8c0c14e45fe98bf
Added product property: PRODUCT_DEX_PREOPT_GENERATE_DM_FILES.
If this property is true, APKs compiled as verify will have the dex
files left compressed and the vdex put in a dm file. The vdex file
and oat files are not copied to system partition in this case.
Bug: 70934104
Test: manual
Change-Id: Ie137e14f14642b803a506162de6db8ac65a43f46
All new instrumentation tests shall use AndroidJUnitRunner, thus default
test class to AndroidJUnitTest.
Bug: 73679956
Test: unittest
Change-Id: I52df4d01b8459a4a6e5c2cbe15973dab079fb136
The only enforcement right now is that modules don't specify both
LOCAL_SDK_VERSION and LOCAL_PRIVATE_PLATFORM_APIS, but a warning
can be turned on by setting the JAVA_SDK_ENFORCEMENT_WARNING variable.
Bug: 73535841
Test: make w/ and wo/ flag.
Change-Id: I3cc720bf060e2bc789e10884ff888d527b91cb50
Since we have been carrying test certificates in testdata/ for other
tests, do the same for test_sign_target_files_apks.py. Copy
verity.x509.pem from build/target/product/security/ to testdata/ for
that purpose.
Also capture the stderr output in ReplaceVerityKeyId().
Test: python -m unittest test_sign_target_files_apks
Change-Id: Ie11e042086952e8a4a5a63950cb0b16cc436b7e6
Also minor clean up to the function, to suppress the following lint
warning.
R:1813, 2: Redefinition of cert type from list to unicode (redefined-variable-type)
Test: python -m unittest -v test_common.CommonApkUtilsTest
Change-Id: Ib4b1dfa8b19e505fc70684b648efc36171c73bbf
Change Ibe4ceb1b224c5e8f3e1a8a59cfee89217765a901 caused kati to
regenerate on every build:
$(shell cat out/build_date.txt) was changed, regenerating...
Switch back to $(shell date +%s) which is special cased in kati
to not cause a regeneration. Everything besides DATE will still
use BUILD_DATETIME_FROM_FILE from soong_ui.
Once BUILD_NUMBER is moved to soong_ui $(DATE) is no longer
necessary and the whole thing can be removed.
Bug: 70351683
Bug: 73352417
Test: m && m doesn't regenerate
Test: m BUILD_DATETIME=1234 shows up in ro.build.version.incremental
Change-Id: I8444beb2b47a49095ef760083fc85f220821bffe
If you've upgraded away from Ubuntu 14.04 Trusty, you may find that
older branches (or certain code) doesn't build anymore. These
instructions can form a starting point to build these older branches
within Docker.
Bug: 72993575
Test: Follow instructions, build marshmallow-dev
Test: Follow instructions, build lollipop-mr1-dev
Change-Id: If4047b1bb5324d75a9d0947cb5280ff1cabccb6a