Required libraries are specified with LOCAL_USES_LIBRARIES
Optional libraries are specified with LOCAL_OPTIONAL_USES_LIBRARIES
The make rule cross references the libraries against what's stored
in the manifest.
Verification is enabled if LOCAL_ENFORCE_USES_LIBRARIES is true. This
defaults to true if either of LOCAL_USES_LIBRARIES or
LOCAL_OPTIONAL_USES_LIBRARIES are specified.
Bug: 70934104
Bug: 67345922
Test: manual
(cherry picked from commit 09f3b97f4b)
Merged-In: Ifca7d1a993620e9d0e42dc497a4a5d7a6c3f4172
Change-Id: I670431f938c31115a7812c1857c31b9f71675632
It's been converted to Soong, so can no longer use LOCAL_MODULE_TAGS. It
appears that some of the test runners expect to have it pre-installed.
Test: m; see it installed.
Change-Id: I189c9bbc2f2add90ac4f6841f4bf13852e4d579f
Soong needs PLATFORM_VERSION to pass as --version-name when building
framework-res.apk.
Bug: 78324052
Test: aapt dump badging $OUT/system/framework/framework-res.apk | grep -i version
Change-Id: If47839182a1dd7c7a768b1253dd8b575d777ca7e
Merged-In: If47839182a1dd7c7a768b1253dd8b575d777ca7e
(cherry picked from commit 34aba6cf72)
This reverts commit da8febf39c.
Bug: http://b/73768157
Reason for revert: breaks several bionic/debuggerd/libunwind_stack gtests
Change-Id: I161cf85cf352b80644524fd4bb70ff7c75fbc1d0
This reverts commit 44988be862.
Three known build failures with lld are fixed by
(1) adding --no-fatal-warnings to link
(2) disable LLD for some PGO build targets
(3) disable LLD for some art oatdump tests, pending c/681542
Change-Id: Icebf6661509bf4f6051f91dc74eaa07dbc7c1d42
Bug: 73768157
Some errors with HOST_PREFER_32_BIT:
HOST_PREFER_32_BIT=true m -j32 test-art-host-gtest
This reverts commit 962424149d.
Change-Id: I788ec3e39d6989d583d3c7d4706299fe5a7841f2
* changes:
Fix support libraries dependencies based on Soong modules
Always statically include Support Libraries, move SDK definitions up a dir
Move Support Library dependencies to their own var with resolution
Allow projects to define their own globally-available variables
* Use clang lld by default, unless LOCAL_USE_CLANG_LLD
or USE_CLANG_LLD is set to false or 0.
Bug: 73768157
Test: make checkbuild and boot
Change-Id: I9b28550a0626c96f6e025b0f20705a2e4a5049d7
error while loading shared libraries: libc++.so:
cannot open shared object file: No such file or directory
BUG: N/A
Test: make -j16 liblatinime_host_unittests
out/host/linux-x86/testcases/liblatinime_host_unittests/x86_64/liblatinime_host_unittests
Change-Id: I97738f728c29ab904fc979ff9b08a8d5bd1328cd
This was previously marked as LOCAL_MODULE_TAGS := debug, and is used
from dumpstate.
Test: iotop is still installed after remove the debug tag
Change-Id: I685456f52403a2d5c6fbbff1429c6af422ce26df
Now most of the other noise is gone, we should probably quiet down too.
Bug: N/A
Test: `source build/envsetup.sh`
Change-Id: Ic5b169b1771163488e70d732276372efbf304bae
ota_from_target_files.py:
Rename PropertyFiles._GetPropertyFilesString to
PropertyFiles.GetPropertyFilesString.
Currently only PropertyFiles.Compute and
PropertyFiles.Finalize gives access to _GetPropertyFilesString.
But Compute force sets reserve_space=True,
and Finalize requires reserved_length.
_GetPropertyFilesString is useful method that can
be used outside releasetools.
One of the usage is in bootable/recovery/updater_sample/.
Test: python -m unittest test_ota_from_target_files
Change-Id: I2cc44ec46a0e68ba071531b003af8cdbfe90e588
Signed-off-by: Zhomart Mukhamejanov <zhomart@google.com>
settitle always had a bug in the PROMPT_COMMAND, it used "\033]0;",
where it should be "\033[0m". It was opt-in, and changed to opt-out, and
no one really complained that it didn't work. So we are just going to
remove this.
References:
- http://www.termsys.demon.co.uk/vtansi.htm
- https://en.wikipedia.org/wiki/ANSI_escape_code
Test: lunch and see no change in prompt
Change-Id: I777c87b4d8e80c0e9437e5d2628f6df020883389
Use a list of support library java and android libraries exported
from Soong to rewrite dependencies into the appropriate
LOCAL_STATIC_JAVA_LIBRARIES and LOCAL_STATIC_ANDROID_LIBRARIES.
Bug: 78300023
Test: m checkbuild
Change-Id: I4fd1e563272fcef9238a46cda840210529bd706a
Merged-In: I4fd1e563272fcef9238a46cda840210529bd706a
(cherry picked from commit ceadbadc5d)
Modules declare 'vintf_fragments' much like
they declare 'rc_file'. These are verified
in mass during a device build.
Test: `m` can cause verify_vintf_matrices to
pass or fail.
Test: build OTA package and check to make sure it
contains the correct assembled matrices.
Bug: 66917623
Change-Id: I504985100069456a0ca4d0180387d271bb283d49
If a static android library lib1 has LOCAL_STATIC_ANDROID_LIBRARIES
lib2, then the R.class files for packages in lib2 will be merged
into the jar for lib1. If an app has lib1 in its
LOCAL_STATIC_ANDROID_LIBRARIES it will get the R.class files from
lib2 through lib1, instead of regenerating the R.java files with
numbering that matches the resource table of the app.
This was worked around for support libraries by keeping a
fix_dependencies.mk that added transitive static support libraries
to the direct static dependencies of apps. Instead, propagate
the packages that aapt2 generated R.java files for up as
--extra-packages arguments to the next aapt2 invocation, which
will force aapt2 to regenerate the R.java files for those packages.
Bug: 78300023
Test: m checkbuild
Change-Id: I7375e13241b4c4f2933032409fb7935abe133bfc
They should be depended on by specifying LOCAL_SDK_VERSION. Depending
on them directly makes it difficult to rename or modify these targets,
as I've found when working on b/77525052.
This list can be further extended to other libraries that should not
be depended on directly.
Bug: b/77525052
Test: make
Change-Id: I911bcc8a5a90995b3607599388dc6119eb88ea96
During a build, we load product configuration three different times --
to dump some initial variables, when parsing the CleanSpec.mk files, and
again when we parse the Android.mk files.
The BoardConfig.mk find commands use -path, which isn't supported by the
Kati find optimizer, so we end up spending ~125ms in each of the above
cases (on my machine, internal master -- aosp is closer to 30ms).
Instead, do the search during the initial dumping of variables, and pass
in TARGET_DEVICE_DIR into the later runs, using that to load the
BoardConfig.mk file.
Bug: 78020936
Test: out/build-taimen.ninja is identical
Test: out/soong.log shows that we're not running these finds again
Change-Id: I6f186e1879aa362528b48b8a00be3f7a9f88bfc5
This saves ~300ms from get_build_var on our internal tree (1.3s ->
1.0s). On AOSP, it only saves ~60ms (0.60s -> 0.54s).
It's also ran during lunch, and twice during every build (though the
second time it was run with Kati's find emulator, which significantly
reduces the overhead).
Bug: 78020936
Test: diff out/.module_paths/AndroidProducts.mk.list with existing find
results
Change-Id: I195b2840854122e41275e24e886ca8c8cda13dac
find .... -name oem\*.prop
Kati can't emulate this command -- it can't currently handle backslashes
in the middle of an argument, only at the beginning or end. So this
falls back to actually calling find, which can take a few seconds if
you've got a large vendor tree. Just switch all of these over to quoted
arguments instead of escaping the *.
Bug: 78020936
Test: Check out/soong.log for timing info
Test: out/build-taimen.ninja is identical
Change-Id: Ifde75948f677ad95107d9419a462649024f544b8