We really should be re-running Kati when a file in here changes, since
it may actually affect the result. The general problem we've run into is
when there are two kati output files that are clean according to the
current rules, but if they actually ran we'd force an installclean.
This also had the side-effect of not running shell commands that touched
$OUT_DIR, like writing files using $(shell echo ... >out/...), now those
may be run.
This will cause Kati to re-read the makefiles more often -- twice when a
CleanSpec.mk changes, twice when switching products on the same device.
Basically every time we read the old state, do something about it, and
write out the new state, we need to rerun the next time so we aren't
continuously cleaning up what changed.
Bug: 30947985
Test: Manual, switching between configurations; enable --regen_debug
Change-Id: I888f9f8295f318f8214b2c79525cf94f457a5a8b
When we removed the src/ directory, the R.stamp file was removed -- with
AAPT, this triggers src/android/Manifest.java to be regenerated. But
AAPT2 only uses the R.stamp file as a timestamp to find the
Manifest.java file, not to create it.
So add a new CleanSpec.mk to fix the builds by removing the target that
AAPT2 uses to generate the src/android/Manifest.java file.
Test: None
Change-Id: If56f326ad701f7f92aa7c8aeda57e92d9c62cff9
This is the service that provides shared memory for hidl/treble
processes.
Bug: 32185232
Test: builds
Change-Id: I79162a781daad7aa704f4ee071fef0bbdea59a18
Just move the proto and renderscript sources into their own directories
-- the entire directory is wiped if the file list changes since the
command line will change. So we can just enable/disable pulling sources
from those directories based on whether there were files in the list or
not.
Bug: 30947985
Test: m -j java
Test: Remove a proto file from a java lib, ensure the generated source
is not included.
Change-Id: If7529979de6fa62a651933a3a974f47b033851d6
This reverts commit 823172e209.
Test: build.ninja for any target doesnt change, unless
BOARD_VNDK_VERSION is turned on in BoardConfig.mk
Change-Id: I4e1baaf5a2251de20f71a47096ce53e23d7e2d80
We've had this in Soong for a while, but never supported it in Make.
Bug: 33819328
Test: Change LOCAL_GTEST on a module, check m -j ... showcommands
Change-Id: Id8f4b9908c82c05d9a986a38945b33bac578e991
HOST_OUT_EXECUTABLES is already added to the PATH variable,
so it is not needed to add the path info for binaries in
misc_info.txt and <partition>_image_info.txt.
Earlier the mkuserimg item in the build_image dictionary is
hardcoded to "mkuserimg.sh", but now it is customized for
mkuserimg.sh and mkuserimg_mke2fs.sh, and maintained in
dictionary "ext_mkuserimg=$(MKEXTUSERIMG)" in misc_info.txt
and <partition>_image_info.txt, where it is used in the
build_image script while creating the images.
The problem here is the value for this key is set to build
path of the file mkuserimg file
$(HOST_OUT_EXECUTABLES)/mkuserimg.sh,
i.e. out/host/linux_x86/bin/mkuserimg.sh,
there by standalone signing the images using otatools is
not working as the executables are packed in bin folder.
Test: tools/releasetools/sign_target_files_apks
-p <extracted ota-tools.zip folder>
--extra_signapk_args=-f /etc/opt/cert_data.dat
-v
--replace_verity_private_key ~/build/target/product/security/verity
--replace_verity_public_key ~/build/target/product/security/verity.x509.pem
-k <key maping>
<input target files zip>
<output target files zip>
Change-Id: I57af1025ec38f3794f779c49faa0bf965afc6a5d