Commit Graph

16847 Commits

Author SHA1 Message Date
android-build-team Robot
5739f2b53b Merge "Fix support libraries dependencies based on Soong modules" into pi-dev 2018-05-04 00:55:40 +00:00
android-build-team Robot
1680c0af1d Merge "PLATFORM_PREVIEW_SDK_VERSION should be 0" into pi-dev
am: 9665c10777

Change-Id: I007049bc00bead700734b90ae831fb2b7aa728cc
2018-05-03 17:31:29 -07:00
android-build-team Robot
9665c10777 Merge "PLATFORM_PREVIEW_SDK_VERSION should be 0" into pi-dev 2018-05-04 00:12:35 +00:00
Colin Cross
8560930893 Fix support libraries dependencies based on Soong modules
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)
2018-05-03 16:47:55 -07:00
Alan Viverette
7b7cdb7777 Always statically include Support Libraries, move SDK definitions up a dir
Bug: 73250914
Bug: 74248169
Test: make && make cts
Change-Id: Id7198997ac5cacf76fd8ab155a60026d65e420ec
Merged-In: Id7198997ac5cacf76fd8ab155a60026d65e420ec
(cherry picked from commit 1efaf37cb7)
2018-05-03 16:47:11 -07:00
Alan Viverette
fb8f5baae4 Move Support Library dependencies to their own var with resolution
Bug: 73250914
Test: make checkbuild
Change-Id: Ibdbe2fd140133202b266ca4f233c4d42292fa3df
Merged-In: Ibdbe2fd140133202b266ca4f233c4d42292fa3df
(cherry picked from commit 53f6b2a80b)
2018-05-03 16:47:11 -07:00
Alan Viverette
8ead03bde1 Allow projects to define their own globally-available variables
Bug: 73178261
Test: make checkbuild
Change-Id: I53ee0f1d3ec072e19f4893cca44e16ef672fabfe
Merged-In: I53ee0f1d3ec072e19f4893cca44e16ef672fabfe
(cherry picked from commit fa0184fae9)
2018-05-03 16:47:11 -07:00
Colin Cross
aee6e3b59e Merge "Fix support libraries dependencies based on Soong modules" into pi-dev-plus-aosp 2018-05-03 23:14:23 +00:00
Fang Deng
fb556b019c Merge "[Harness Separation] Move cts-tradefed to a new dir (cts.mk)" into pi-dev
am: 428d477bf1

Change-Id: Ieecd6a0899e706155c506ef2fae05f700cde65b9
2018-05-03 15:53:20 -07:00
Colin Cross
c9c5dc89cd Fix support libraries dependencies based on Soong modules
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)
2018-05-03 15:47:41 -07:00
Fang Deng
428d477bf1 Merge "[Harness Separation] Move cts-tradefed to a new dir (cts.mk)" into pi-dev 2018-05-03 22:39:46 +00:00
Colin Cross
faa2f90c83 Fix support libraries dependencies based on Soong modules
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)
2018-05-03 22:28:17 +00:00
Ian Pedowitz
23898eed9d PLATFORM_PREVIEW_SDK_VERSION should be 0
It is already set to 0 because of REL, but explicitly set it

Bug: 77589980
Test: N/A
Change-Id: I97839c7dc09f8313f767635469f27b2a0d0e5010
2018-05-03 15:27:27 -07:00
Colin Cross
2a5370179a Merge changes from topic "soong_support_lib_pi_dev_prereqs" into pi-dev
* changes:
  Regenerate R.java files from LOCAL_STATIC_ANDROID_LIBRARIES
  Allow Soong to export multiple proguard flags files
  Fix echo when copying package-res.apk
  Allow soong java libraries to include exported resources and proguard flags
2018-05-03 21:47:25 +00:00
Dario Freni
6ae46daaec Use manifest-merger 26.1.0 for builds.
Bug: 71775741
Test: m -j
Change-Id: I6d9c7878e5b1f03b9630290859a6eff04cd55317
2018-05-03 21:14:58 +00:00
Fang Deng
8ebc942152 [Harness Separation] Move cts-tradefed to a new dir (cts.mk)
Move cts-tradefed to a new dir.
Fix cts.mk to point to the new dir.
Bug: 78461075
Bug: 79201478
Test: make cts -j32 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true TARGET_PRODUCT=aosp_arm64
Test: cts-tradefed run cts --compatibility:include-filter CtsGestureTestCases
Test: cts/harness/tools/cts-tradefed/tests/run_tests.sh
Test: make gts -j32 WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=true TARGET_PRODUCT=aosp_arm64

Change-Id: I8b610bf2f0b84baa7e8a30759f7d53d1b2a5d8f1
2018-05-03 10:53:37 -07:00
Anton Hansson
272035c19c Merge "Move apicheck.mk off SRC_API_DIR." am: a1dc661f71
am: 02cae4c505

Change-Id: I93bcd3521b72eb932d3aeed2a5a5dc4d1a9bc35e
2018-05-03 06:31:48 -07:00
Anton Hansson
a1dc661f71 Merge "Move apicheck.mk off SRC_API_DIR." 2018-05-03 13:18:25 +00:00
Steven Moreland
58ae234226 Merge changes from topic "vintf_fragment" am: de511491b7
am: d8c196a437

Change-Id: I2081116dfb623bf513a6de52af3da590e17897b9
2018-05-02 18:28:55 -07:00
Steven Moreland
548ecf8ff6 rename BUILT_SYSTEM_{COMPATIBILITY_,}MATRIX am: 42a0afc12d
am: fc25533856

Change-Id: I5653c7d776673556b4ecbf81db6fb712d8fe9522
2018-05-02 18:28:34 -07:00
Steven Moreland
fc25533856 rename BUILT_SYSTEM_{COMPATIBILITY_,}MATRIX
am: 42a0afc12d

Change-Id: I5ab812b9c91e1354016a6d3d5295f8aafd94dc3d
2018-05-02 18:24:14 -07:00
Steven Moreland
de511491b7 Merge changes from topic "vintf_fragment"
* changes:
  Add verify_vintf_matrices.
  rename BUILT_SYSTEM_{COMPATIBILITY_,}MATRIX
2018-05-03 01:17:53 +00:00
Mathieu Chartier
b17f384dd7 Merge "Only default LOCAL_DEX_PREOPT_APP_IMAGE if not set" into pi-dev 2018-05-02 23:13:42 +00:00
Steven Moreland
627debe1d7 Add verify_vintf_matrices.
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
2018-05-02 15:34:36 -07:00
Colin Cross
43641b5e1f Regenerate R.java files from LOCAL_STATIC_ANDROID_LIBRARIES
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
Merged-In: I7375e13241b4c4f2933032409fb7935abe133bfc
(cherry picked from commit 43c247e181)
2018-05-02 15:31:03 -07:00
Colin Cross
0fd1234427 Allow Soong to export multiple proguard flags files
Soong uses lists of proguard flags files from dependencies instead
of a single concatenated file.  Allow Soong to pass the list to
make, which will concatenate it.

Move the check inside ifdef LOCAL_SOONG_RESOURCE_EXPORT_PACKAGE
in case Soong exports an Android library with an empty
LOCAL_SOONG_EXPORT_PROGUARD_FLAGS.

Bug: 73724997
Test: m checkbuild
Change-Id: Ia8f229ec5f9fc99a23bd471dfa70c9de7316de94
Merged-In: Ia8f229ec5f9fc99a23bd471dfa70c9de7316de94
(cherry picked from commit 42669e6dc7)
2018-05-02 15:31:03 -07:00
Colin Cross
af7190084d Fix echo when copying package-res.apk
Bug: 73724997
Test: m checkbuild
Change-Id: Iad9f46e01c40d1993e279c6ea6dd9c60932064c8
Merged-In: Iad9f46e01c40d1993e279c6ea6dd9c60932064c8
(cherry picked from commit a90f4b297f)
2018-05-02 15:31:03 -07:00
Colin Cross
3c49164e0b Allow soong java libraries to include exported resources and proguard flags
Bug: 73724997
Test: m checkbuild
Change-Id: Ia02f816084d0eb1c0e0f20e1ecd57aaf3778874c
Merged-In: Ia02f816084d0eb1c0e0f20e1ecd57aaf3778874c
(cherry picked from commit 7874138a8a)
2018-05-02 15:31:03 -07:00
Colin Cross
24fcb2869a Merge "Regenerate R.java files from LOCAL_STATIC_ANDROID_LIBRARIES" am: b0d0ca38cc
am: 45525258b1

Change-Id: Id1ec46833aae7aa339735d51c44a3e0d971f901b
2018-05-02 15:03:14 -07:00
Colin Cross
b0d0ca38cc Merge "Regenerate R.java files from LOCAL_STATIC_ANDROID_LIBRARIES" 2018-05-02 21:51:10 +00:00
android-build-prod (mdb)
66b6a3e77c Merge "Accept TARGET_DEVICE_DIR preserved from previous product load" am: 79babfacaa
am: 570881ef0d

Change-Id: Iaeeceb82312f40eee05fa98284e315e159bf49c4
2018-05-02 14:00:28 -07:00
Mathieu Chartier
f16e8d0d94 Only default LOCAL_DEX_PREOPT_APP_IMAGE if not set
Allows modules to specify LOCAL_DEX_PREOPT_APP_IMAGE := false if they
have a profile.

Bug: 77342775
Test: make
Change-Id: Ied7a8099b199904638dabdb09faf879d3216e73d
2018-05-02 20:21:37 +00:00
Colin Cross
43c247e181 Regenerate R.java files from LOCAL_STATIC_ANDROID_LIBRARIES
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
2018-05-02 13:11:08 -07:00
android-build-prod (mdb)
79babfacaa Merge "Accept TARGET_DEVICE_DIR preserved from previous product load" 2018-05-02 17:35:34 +00:00
android-build-prod (mdb)
fc8e281bc3 Merge "Adding Q entries to version_defaults.mk" 2018-05-02 15:27:50 +00:00
Anton Hansson
d17f99a6b3 Merge "Forbid depending directly on SDK modules." am: efd6084996
am: 20da4aa253

Change-Id: Ied594aa68e605a448c06193071edf4dca2fcaa93
2018-05-02 07:21:21 -07:00
Anton Hansson
9d030609e5 Forbid depending directly on SDK modules.
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
2018-05-02 15:02:09 +01:00
Ian Pedowitz
8eb8ec88f5 Adding Q entries to version_defaults.mk
Bug: 77589980
Test: Build
Change-Id: Ic96cfae559143bd0d985663cbe58e09619978c97
Merged-In: Ic83304d326121326f380afca8fdf466ecc0781b0
Merged-In: I1ccbfdeddb2eecb6342253e401bba118c3652f8d
2018-05-02 13:51:24 +00:00
android-build-prod (mdb)
d5ec7a3fd6 Merge "Use AndroidProducts.mk list from Soong's finder" am: 7ae1713dca
am: 48a7199b68

Change-Id: I24ce4ca9645577c41aa917bc33cbd2c6c0a877b0
2018-05-02 01:41:09 -07:00
android-build-prod (mdb)
7ae1713dca Merge "Use AndroidProducts.mk list from Soong's finder" 2018-05-02 08:27:24 +00:00
Dan Willemsen
92afd7d1e7 Accept TARGET_DEVICE_DIR preserved from previous product load
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
2018-05-02 00:15:41 -07:00
android-build-prod (mdb)
81dd2f9382 Merge "Speed up a slow find command" am: 88727e2422
am: 2ce6bcd1b2

Change-Id: Ia8bfe9710a31fb98491c072edb48cd74b573a693
2018-05-01 23:01:43 -07:00
Dan Willemsen
b9d63519c0 Use AndroidProducts.mk list from Soong's finder
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
2018-05-01 22:56:07 -07:00
android-build-prod (mdb)
88727e2422 Merge "Speed up a slow find command" 2018-05-02 05:48:37 +00:00
Dan Willemsen
60c6644932 Speed up a slow find command
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
2018-05-01 21:15:35 -07:00
android-build-prod (mdb)
a6eef2e03e Merge "Allow PRODUCT_COPY_FILES to copy raw APKs into system_other" am: b113a94d09
am: ddb7eb9544

Change-Id: Ic9eefd7c342ab825fdfa3c4b86fa4ed2aaf08599
2018-05-01 20:51:17 -07:00
Dan Willemsen
7d957c911a Allow PRODUCT_COPY_FILES to copy raw APKs into system_other
Files in this partition aren't actually installed, so we don't need to
use the BUILD_PREBUILT logic for APKs.

Bug: 66960479
Test: try PRODUCT_COPY_FILES of an apk into system, errors
Test: try PRODUCT_COPY_FILES of an apk into system_other, accepted
Change-Id: Ie721d2b884c6badfbe0e46f55c265b770bed618b
2018-05-01 19:02:11 -07:00
Steven Moreland
42a0afc12d rename BUILT_SYSTEM_{COMPATIBILITY_,}MATRIX
To be consistent with BUILT_VENDOR_MATRIX.

Bug: 78943004
Test: manual
Change-Id: I2811647798322165182b7c90bb4937d93580833c
2018-05-01 18:37:02 -07:00
Ian Pedowitz
ec7605680a Adding Q entries to version_defaults.mk
Removing PPR1 entries from version_defaults.mk

Bug: 77589980
Test: Build
Change-Id: Ic83304d326121326f380afca8fdf466ecc0781b0
Merged-In: I1ccbfdeddb2eecb6342253e401bba118c3652f8d
2018-05-01 15:19:35 -07:00
David Brazdil
700077506e Merge "DO NOT MERGE: Create filename constant for @removed API signature file" into pi-dev 2018-05-01 12:31:35 +00:00