Soong now makes a variant of native modules that set sdk_version.
Use the new variant for native modules or apps with JNI that are
defined in Make and set LOCAL_SDK_VERSION.
Test: m checkbuild
Bug: 149591340
Change-Id: Ief378a007e43b0aea31fd5845410bbffec0ffae6
Merged-In: Ief378a007e43b0aea31fd5845410bbffec0ffae6
(cherry picked from commit b934116994)
Also add multi-cert support to prebuilt apps so that they can benefit
from the new lineage feature.
Test: m GoogleServicesFramework w/ modified build rules
Test: m PrebuiltGmsCore w/ modified build rules
Test: apksigner lineage -v --print-certs -in <built_module_path>
Fixes: 152897457
Change-Id: If7d5d4bd308629c8340231520214c76c8a568a65
Previously, has-system-sdk-version incorrectly returned true for
the sdk version 'system_server_current', just because it started with
system_. Since system_server_current is a totally different API surface
than system_*, make the macro to return false for system_server_*.
Bug: 146757305
Test: m
Test: add 'sdk_version: "system_server_current" to wifi-service-pre-jarjar
Change-Id: I43700545b0f120fa987696b8f03a4765d97e13e2
Now that ninja uses lstat and can support installing arbitrary symlinks,
switch jni lib symlinks from LOCAL_POST_INSTALL_CMDS to real rules.
Bug: 128577186
Test: List of files under PRODUCT_OUT is the same before/after this change
Test: out/target/product/generic/.installable_files now includes the symlinks
Test: m installclean; m NfcNci -> symlinks installed with correct dest
Test: m NfcNci; m NfcNci -> ninja: no work to do
Change-Id: I078dca53ab3d93f74c36fa66d5577e6e3e0640d6
These are a (partial) list of files that we'd install with a default
build. The idea is that if something is removed from this list, soong_ui
can remove it from the installed location before running ninja.
It's okay if there are things missing from this list, it's not intended
to be a 100% solution replacing installclean / CleanSpec.mk, just
something that handles 80% of the cases without user involvement.
In particular, if something is removed from PRODUCT_PACKAGES, we'll
remove it from disk, but not necessarily rebuild the image files. That's
the same as most use cases of CleanSpec.mk today, and often some other
change will trigger the necessary images to be rebuilt.
We should be able to fix that by changing all of the image creation
rules to depend on the (partial) list of files they care about, or by
fixing ninja to rebuild things when their list of dependencies change.
(Other tools run into this same problem)
The list of test files is also included so that we can remove obsolete
tests from their "installed" locations within test suites and the
testcases folders.
Test: remove a module from PRODUCT_PACKAGES, see the print and file removed
Test: change the name of a cts test, see the old one removed from cts
Change-Id: I67f270a6713369099ca523aaf991ee3beb815c0a
Use .KATI_NINJA_POOL := none to mark rules that can run in RBE or
goma when they are enabled, which along with passing
--default_pool=local_pool will allow moving remoteable jobs into
the remote pool without relying on hacks in kati.
Fixes: 143938974
Test: inspect pools in build-${TARGET-PRODUCT}.ninja for m USE_RBE=true
Test: inspect pools in build-${TARGET-PRODUCT}.ninja for m USE_GOMA=true
Change-Id: I08615ae1f2eaef9ff0ba253b8aa3d83ab57ebb27
We have all of the 'type' information for properties available during
build time, so let's check this when setting properties in init.
Test: setprop apexd.status bad results in:
host_init_verifier: Command 'setprop apexd.status bad'
(out/soong/.intermediates/system/core/rootdir/init.rc/android_x86_core/init.rc:927)
failed: Property type check failed, value doesn't match expected type
'enum starting ready'
host_init_verifier: Failed to parse init script
'out/soong/.intermediates/system/core/rootdir/init.rc/android_x86_core/init.rc'
with 1 errors
Test: CF builds without that error
Change-Id: Ia1b24ab42e2193e3298021bc86ee2309ca7a381f
We were passing "--classpath foo.jar --classpath bar.jar" to turbine,
it now wants (and may always have expected?)
"--classpath foo.jar bar.jar".
This is equivalent to Ib7e0ca64a34e236110f7b785d6a0fb51ed75567e in
Soong.
Test: m java
Change-Id: I061ebf302a215c66b1923056716b60bf0160d9bc
turbine supports taking system modules on the command line,
now that we target Java language level 1.9 and use system modules
by default switch turbine to match javac.
This is equivalent to Ieee07502151da0d5693bb8929213d495c039106b
in Soong.
Test: m java
Change-Id: Ib91c6f57b316f48f1ab819e4e1d2dc2e0ee42988
Since this is built into host_init_verifier now.
Bug: 141567104
Test: build w/ and w/o host_init_verifier throwing a related error
Change-Id: I75a8c373fcfb054a5074039211134761596600c3
Iae26e4676c29c68fa3f76187512c82786bfa0522 removed the definition
of ZIPALIGN_PAGE_ALIGN_FLAGS in favor of always using the -p flag,
but left accidentaly left one usage. Replace it with -p.
Bug: 141212627
Test: m checkbuild
Change-Id: Ica69d9195426f8f30039da211ed1a0ad5dffe8e8
vts-core.zip will include all vts-core tests and suite harness
(vts-core-tradefed).
Bug: 141012181
Test: m -j vts-core
Change-Id: Ib13a2bffb4dc9619d2732d65729ecb0246a0b9a0
This reverts commit 068d101077.
Reason for revert: Caused a regression
Test: Added data to a sh_test and compared before vs after
Fixes: 140761783
Change-Id: Ied6427cb2dc3093fb88632eb8f337c2b76e86b95
Now that ONE_SHOT_MAKEFILE no longer exists, we don't have to rely on
the filesystem to store this informtion.
This removes ~16.7k files from our build graph
(aosp-master/aosp_arm64-eng), though only about 600 of them were being
used in a normal build.
Test: treehugger
Change-Id: I3ac12f5ea7f11d25064109a0599bc5be1976fba5
* When soong_app_prebuilt calls appcompat-header
with appcompat enabled aapt2 was missing
Test: m SystemUI
Change-Id: I26bcb507f68902ff95a1045dfeb22dd8d4913a92
Bug: 73062966
Test: can load AIDs from partitions other than vendor
Test: bionic-unit-tests
Merged-In: Ia85abbeefe5a945369970f2aef42692e07ab8c09
Change-Id: Ia85abbeefe5a945369970f2aef42692e07ab8c09
(cherry picked from commit 8a54ec8482)
Bug: 73062966
Test: can load AIDs from partitions other than vendor
Test: bionic-unit-tests
Merged-In: Ia85abbeefe5a945369970f2aef42692e07ab8c09
Change-Id: Ia85abbeefe5a945369970f2aef42692e07ab8c09
The dependency causes a build breakage when unbundling the runtime
module, i.e. when the art repository is not present in the local build
tree.
Bug: 134379140
Test: m droid
Change-Id: Ia3f9b60dbe3e9cf00ea13ae7bdc74bdd386b4362
Bug: 118016875
Test: Added 'interface' lines to an init_rc file and observed errors
when misspelled or missing entire inheritance hierarchy.
Change-Id: I71d515e0c12ed74800b9536f07da9fc7bb69597e
my_installed_test_data (LOCAL_TEST_DATA) no present in test
suite zip files for device tests
Bug: 135957483
Test: 1. Remove the patch aosp/1008195
2. m general-tests
3. unzip general-tests.zip
4. data files should exist in target/testcases/toybox-tests
Change-Id: I3f0a4d87e284c809625843d55dc5d35ef77e79bb
This file is used to check that each interface in an init_rc file is a
known hidl_interface.
Test: Adding a misspelling to an init_rc's interface line and observing
build failure.
Bug: 77646540
Change-Id: I30c2dff29679b95085b5c76f6d68e4d794f965e9