Commit Graph

16177 Commits

Author SHA1 Message Date
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
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
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
Ian Pedowitz
9ab9fe762d Merge "DO NOT MERGE: P is now REL" into pi-dev 2018-05-01 01:07:50 +00:00
Calin Juravle
55a53c333c Merge "Remove profman --skip-apk-verification flag" into pi-dev 2018-04-30 21:36:40 +00:00
Calin Juravle
998608d9e8 Remove profman --skip-apk-verification flag
This happens by default now.

Test: make
Bug: 73313191

(cherry picked from commit 25ef4c018a)

Merged-In: I5cc0efb656e1b44a161420c49250640bc9d702c5
Change-Id: I5cc0efb656e1b44a161420c49250640bc9d702c5
2018-04-30 14:13:07 -07:00
android-build-team Robot
d4c88f6512 Merge "Adding VENDOR_SECURITY_PATCH to vendor partition build.prop" into pi-dev 2018-04-30 20:42:38 +00:00
Calin Juravle
7f6c1de799 Merge "Pass --dex-location when processing prebuilt profiles" into pi-dev 2018-04-27 19:45:20 +00:00
David Brazdil
b99de41221 DO NOT MERGE: Create filename constant for @removed API signature file
CL I8fe27e8c03334f9c90204db1e69447de65a06a38 introduced a new
Doclava-generated file that contains a list of dex signatures of
@removed API. This patch adds a new Makefile variable holding the
name of that file.

Bug: 78182899
Test: make
Merged-In: I20330bd59cc8b3d0ed0fa08d3f1c2be7b8656849
Change-Id: I22474bd0a43b03441a551fbb055ee336665e499a
2018-04-27 09:02:32 +00:00
Jiyong Park
43c6a65706 Removed obsolete comment on PLATFORM_SYSTEMSDK_MIN_VERSION
The min version has been set.

Bug: 78023556
Test: no need
Change-Id: I12f816dfb9be7e9e945a68540f4efcfcc32b7cc2
2018-04-27 14:26:53 +09:00
Calin Juravle
60216615f4 Pass --dex-location when processing prebuilt profiles
The apk name does not match the install location at the stage we are
processing profiles. This causes the wrong profile key to be used in the
final profile which may generate an empty app image.

Test: m; flash, dumpsys dexopt and check for speed-profile
      check that the app image is not empty
Bug: 78515726

Change-Id: Ic5d71296583be71d96f0e7a2dd59753f1d23c350
2018-04-26 18:54:21 -07:00
Colin Cross
026ac8f240 Merge "Set PLATFORM_SYSTEMSDK_MIN_VERSION := 28" into pi-dev 2018-04-26 21:44:13 +00:00
Colin Cross
88f3946e0e Set PLATFORM_SYSTEMSDK_MIN_VERSION := 28
In the temporary P-Finalization state, where PLATFORM_SDK_VERSION has
been incremented to 28 but PLATFORM_VERSION_CODENAME.PPR1 := P instead
of REL, PLATFORM_SYSTEMSDK_VERSIONS is still only P.  Set
PLATFORM_SYSTEMSDK_MIN_VERSION := 28 so that PLATFORM_SYSTEMSDK_VERSIONS
is 28 P.  Once PLATFORM_VERSION_CODENAME.PPR1 := REL it will become
just 28.

Bug: 78023556
Test: print PLATFORM_SYSTEMSDK_VERSIONS
Change-Id: I72cbef7bb7c84e6fd6fe4602021bb72d759d1b5e
2018-04-26 11:44:38 -07:00
Max Bires
a1749987f0 Adding VENDOR_SECURITY_PATCH to vendor partition build.prop
This will add ro.vendor.build.security_patch to /vendor/build.prop on
device

Bug: 76428542
Test: ro.vendor.build.security_patch entry shows up under
/vendor/build.prop

Change-Id: I4f783e996cb425a49c2b12ae4f364e12c6ca7784
Merged-In: I4f783e996cb425a49c2b12ae4f364e12c6ca7784
(cherry picked from commit 56d444b98f)
2018-04-26 01:36:03 +00:00
Calin Juravle
7d701355e9 Fix speed-profile compilation for prebuilds
We were testing the wrong variable when setting the dex2oat flags

Test: m; flash, dumpsys dexopt and check for speed-profile
Bug: 78515726
Change-Id: I57c0e11aab2e4879c3ba3b2851f356b5864f5da9
2018-04-25 15:28:53 -07:00
TreeHugger Robot
e2ed4833bb Merge "Set BOARD_SYSTEMSDK_VERSIONS automatically for P-launching device" into pi-dev 2018-04-24 00:50:47 +00:00
Calin Juravle
cf4e0a074b Merge "Update profile rules to support binary profiles" into pi-dev 2018-04-23 18:14:43 +00:00
Jiyong Park
b8f16824ad Set BOARD_SYSTEMSDK_VERSIONS automatically for P-launching device
Like BOARD_VNDK_VERSION is automatically set, BOARD_SYSTEMSDK_VERSIONS
is also automatically set to the latest supported SystemSDK version when
it is unset. Specifically, it is set when

1) it isn't explicitly set by the vendor and
2) the device is P-launching device (PRODUCT_SHIPPING_API_LEVEL >= 28)

Bug: 78431725
Test: m -j
Test: `get_build_var BOARD_SYSTEMSDK_VERSIONS` return P for 2018 Pixels.
Change-Id: I036a07da3ce58bdf22d252b6ef18263c7da3602a
2018-04-23 16:23:57 +09:00
TreeHugger Robot
9afed6c9ff Merge changes from topic "space_saver" into pi-dev
* changes:
  releasetools: Default journal size to 0 for system images.
  build_image: default extfs reserved size to 0 on RO partitions.
2018-04-21 00:25:32 +00:00
Calin Juravle
f99ab7580f Update profile rules to support binary profiles
Use full binary profiles instead or relying on text-based profiles. This
makes it easier to import actual profiles and do not require two rounds of
transformation.

Text based profiled probably didn't help too much anyway because if the
apps are updated the proguard names will change.

Modules are still free to define a text based profile using
LOCAL_DEX_PREOPT_PROFILE_CLASS_LISTING. This is used for frameworks jars.

Test: make
Bug: 73313191

Change-Id: Ifd23dde21559fbcd015020905052bc588e275356
2018-04-20 14:54:22 -07:00
Ivan Podogov
020b22ead6 Merge "Add vendor properties blacklist" into pi-dev 2018-04-19 20:35:28 +00:00
Ivan Podogov
205a970594 Add vendor properties blacklist
This change allows removing some vendor properties from
(vendor|system/vendor)/build.prop file based on a blacklist.

For WearOS Unified Builds, which can change the product name depending on
the chosen locale, we use runtime-generated value for ro.build.fingerprint,
but since the ro.vendor.build.fingerprint cannot be generated the same way,
we always hit a "Mismatched fingerprints" error.

Bug: 71555551
Test: manual
Change-Id: Ifad793187e930a28fbf9325b03468c7ea86076b7
Merged-In: Ifad793187e930a28fbf9325b03468c7ea86076b7
(cherry picked from commit d572632f3d)
2018-04-19 10:03:42 +00:00
Adam Seaton
85a18252b7 DO NOT MERGE: Updating security string for oc-mr1-dev to 2018-06-05
Bug:78240102
Change-Id: Ib9d8c11ecf9212711a9679972c15354c8dd56857
2018-04-18 21:25:50 +00:00
Adam Seaton
f051d6def2 DO NOT MERGE: Updating security string for pi-dev to 2018-06-05
Bug:78240102
Change-Id: I3956e7b1b2e7035fa36b3ca74eccd0d4fffeee95
2018-04-18 21:25:31 +00:00
Colin Cross
c051048ba7 Pass PLATFORM_VERSION_CODENAME to Soong
Pass PLATFORM_VERSION_CODENAME as Platform_sdk_codename, and
set Platform_sdk_final if PLATFORM_VERSION_CODENAME is REL.

Bug: 78224641
Test: m checkbuild
Change-Id: Ic082ca756d877ba51f45e89aa2ac267781a8d854
Merged-In: Ic082ca756d877ba51f45e89aa2ac267781a8d854
(cherry picked from commit f6d3fff907)
2018-04-18 12:42:46 -07:00
TreeHugger Robot
62e48ce1a4 Merge "Update security string to 2018-05-05 on pi-dev Bug: 74345861" into pi-dev 2018-04-17 20:09:20 +00:00
Dan Willemsen
52e14a617d Merge "Add variables for configuring Soong plugins" into pi-dev 2018-04-17 19:35:35 +00:00
Andrew Hsieh
0dd11dc0b5 Merge "Enable vndk_package if BOARD_VNDK_VERSION is set" into pi-dev 2018-04-16 23:12:19 +00:00
Dan Chapin
2325d05510 DO NOT MERGE: P is now REL
Bug: 77589980
Test: Build
Change-Id: I27bf5cc01133ff8734ed959825b9ffaba3532449
2018-04-13 15:23:54 -07:00
Wale Ogunwale
5de065e3ec Merge "Finalizing P SDK" into pi-dev 2018-04-13 20:53:03 +00:00
Wale Ogunwale
07a54b7fba Finalizing P SDK
Bug: 77588754
Test: builds
Merged-In: Iebb43a246016774150a3053f10bdedb0278b3e5d
Change-Id: Ied2e381795643aaf8c48e6c89d8ee66b8b5b15ed
2018-04-13 14:59:03 +00:00
Isaac Chen
5364f5a298 Enable vndk_package if BOARD_VNDK_VERSION is set
This is a first attempt to enable build system support to include
vndk_package automatically (if BOARD_VNDK_VERSION is set), so devices
don't need to add it via PRODUCT_PACKAGE manually.

Bug: b/67002788
Test: Booted on the x86 emulator and a physical device and checked
      their /system/lib*/vndk-* directories for vndk_package libraries.
    # The commands below are for the x86 emulator:
    $ lunch aosp_x86_64-userdebug; m -j
Change-Id: Iea927b9535c7ee1b64ca130a4ac54f0fd8b3f758
2018-04-13 15:33:44 +08:00
Jiyong Park
0fa0052583 Allow native:vendor to vendor apks
Vendor apks should be able to reference native vendor libraries.
Vendor apks have worked around this by building without
LOCAL_SDK_VERSION, which then allowed to use all libs. However,
since vendor apks now needs to be built with SystemSDK, that
workaround can no longer be used.

Bug: 76398918
Test: BOARD_SYSTEMSDK_VERSION=P m -j
Merged-In: Idb13d5db71f4dfd542658483b6a24e7ece18ce26
Change-Id: Idb13d5db71f4dfd542658483b6a24e7ece18ce26
(cherry picked from commit 49a5b9785f)
2018-04-13 07:50:31 +09:00
Adam Seaton
8108edbc87 Update security string to 2018-05-05 on pi-dev
Bug: 74345861
2018-04-12 11:56:29 -07:00
Dan Willemsen
79657520ee Add variables for configuring Soong plugins
See the Soong commit for detailed usage.

Bug: 76168832
Test: define some variables, use them
Change-Id: Ia8af5b6ec1cb3f12cbc1fee582a309eebb340b7c
Merged-In: Ia8af5b6ec1cb3f12cbc1fee582a309eebb340b7c
(cherry picked from commit eaacf5b285)
2018-04-11 15:31:35 -07:00
TreeHugger Robot
0028485c94 Merge "Disable warnings for unknown modules in package-modules.mk" into pi-dev 2018-04-11 07:32:24 +00:00
TreeHugger Robot
6536add287 Merge "Delay eval to save memory use in create-suite-dependencies" into pi-dev 2018-04-11 07:15:17 +00:00
Dan Willemsen
5046d4c749 Disable warnings for unknown modules in package-modules.mk
We've had these warnings for a while, but we've still got a lot of
warnings that people have been trained to ignore. Lets just silence them
for now.

The Merged-In is just a random change from AOSP that isn't in pi-dev, to
stop this from being merged to master, where I'm just fixing the
warnings.

Bug: 77883700
Test: m  <fewer warnings>
Change-Id: I00d8173a527760d62dca5837bcc86d5f03b87e83
Merged-In: I78ca65e6f0c81f09e7da848eda797b3a8f97a521
2018-04-10 22:44:28 -07:00
Colin Cross
17de09f74d Don't depend on R.txt)
There is an extra ) in the implicit output path for R.txt, which causes
the rule to rerun every time because of a missing output file.  There
is already an implicit output for R.txt on line 180 (which is why
the incorrect path didn't cause an immediate "No rule to generate R.txt"
error), so just remove the incorrect one.

Bug: 77244156
Test: m checkbuild && m checkbuild
Change-Id: Id960ee211b89a9a5f5104cdcac23bc3124742145
Merged-In: Id960ee211b89a9a5f5104cdcac23bc3124742145
(cherry picked from commit ac48f41ba5)
2018-04-10 22:28:43 -07:00
Dan Willemsen
4cfebe0ac4 Delay eval to save memory use in create-suite-dependencies
Instead of passing the entire contents of
$(COMPATIBILITY.$(suite).FILES) to eval, which may keep that string
around, delay the evaluation of that, and the new files until inside the
eval.

This saves ~2.8GB: 7.4GB -> 4.6GB of ckati max resident memory for a
relatively small internal build. It also saves ~10% of the makefile
loading time (81 -> 73 seconds).

Bug: 77879502
Test: build-aosp_arm.ninja is identical
Change-Id: If45a4796f1bbf6d67dff388ea877a6115a4e06f4
Merged-In: If45a4796f1bbf6d67dff388ea877a6115a4e06f4
(cherry picked from commit a4155e8512)
2018-04-10 22:16:49 -07:00
Ian Pedowitz
191badd71b Bump PLATFORM_PREVIEW_SDK_VERSION to 2 for P-Beta1
Change-Id: Ic4e94c90fb1f86283858a88777a92ae75d6b65ed
Fixes: 77801171
Test: N/A
2018-04-09 09:36:58 -07:00
Ryan Prichard
d809d369cb Fix mini_debug_info stripping when no symbols should be kept.
If there are no symbols to keep (i.e. all function symbols are also in
the dynsym table), then the $@.keep_symbols file has size 0.
When objcopy parses a --keep-symbols file, it has a special case for
0-sized files where it silently fails (exits with status 1, no error
message). On the other hand, objcopy is happy with a file containing no
symbols, as long as there is some whitespace or a comment. Avoid the
special case by appending a newline to keep_symbols.

Bug: b/62815515
Bug: b/77242617
Test: manual
Change-Id: I348593164fe78ece5c85db3d28c7daccce3a52fb
(cherry picked from commit a45f5833c0)
2018-04-04 15:56:20 -07:00
Tri Vo
614e2411b3 Add TOT_SEPOLICY_VERSION = 10000.0
This variable is equal to the sepolicy version for tip-of-tree development.

Bug: 74622750
Test: ./build/soong/soong_ui.bash  --dumpvars-mode -vars PLATFORM_SEPOLICY_VERSION
is unchanged.
Change-Id: I2a62f7399fe245ec0c681e9a789da6b1b83dd9d8
Merged-In: I2a62f7399fe245ec0c681e9a789da6b1b83dd9d8
(cherry picked from commit d9c8e956ac)
2018-04-02 13:44:27 -07:00
Patrick Tjin
5ff758799c build_image: default extfs reserved size to 0 on RO partitions.
Defaults the reserved blocks for root to 0% on read only partitions
(system, system_other, vendor, oem).  It also adds support for
explicitly specifying the extfs reserved percentage via
BOARD_{SYSTEM,VENDOR,OEM,PRODUCT}IMAGE_EXTFS_RSV_PCT.

This eventually translates down to the -m option for mkfs.

Removing the reserved space can save at least  5% from the default.

  dumpe2fs system:
    Reserved blocks uid:      0 (user root)
    Reserved blocks gid:      0 (group root)

Bug: 75975085
Test: Build, verify reserved space is changed accordingly
Change-Id: I212d82741908b636db0d658a1c4847bbaadfd5ba
2018-03-31 10:22:42 -07:00
TreeHugger Robot
3e1786112f Merge "Allow platform modules to link to vendor public libraries" into pi-dev 2018-03-31 00:24:16 +00:00
TreeHugger Robot
51eff801ad Merge "Run jetifier against prebuilts directly rather than classes.jar" into pi-dev 2018-03-30 19:11:21 +00:00
Jiyong Park
379ae9274e Allow platform modules to link to vendor public libraries
Normally, when building with VNDK, platform modules are not allowed to
link against vendor libraries, because the ABI of the vendor libraries
are not guaranteed to be stable and may differ across multiple vendor
images.

However, the vendor public libraries are the exceptions. Vendor public
libraries are vendor libraries that are exposed to 3rd party apps and
listed in /vendor/etc/public.libraries.txt. Since they are intended to
be exposed to public, their ABI stability is guaranteed (by definition,
though it is up to the vendor to actually guarantee it).

This change allows platform modules to link to vendor public libraries.
When the name of a vendor public libraries (whose stub is defined via
vendor_public_library in Android.bp) is listed in
LOCAL_SHARED_LIBRARIES, it is actually linked to the stub library which
is available to platform modules.

Bug: 74275385
Test: m -j
Merged-In: I063b43431196190b59332b1bcad59f267073f89f
Change-Id: I063b43431196190b59332b1bcad59f267073f89f
(cherry picked from commit c3f1356a3a)
2018-03-30 12:59:34 +09:00
TreeHugger Robot
d2ae46e6dc Merge "Products launching with API 28 needs system-as-root" into pi-dev 2018-03-30 01:27:27 +00:00
TreeHugger Robot
6ee73ee8c0 Merge "Allow addition of recovery DTBO to recovery image" into pi-dev 2018-03-29 23:51:09 +00:00