Commit Graph

50342 Commits

Author SHA1 Message Date
patricktu
ada3a8d5e8 AIDEGen: Add the java sources of host java library modules into module-info.json.
Build module-info.json without this change:
Build time: 2m50.172s
File size: 21,598,737 Bytes

Build module-info.json with this change:
Build time: 2m50.428s
File size: 21,977,565 Bytes

Bug: 133148266
Test: 1. Checkout internal branch
      2. Patch this CL
      3. m -j out/target/product/generic_x86_64/module-info.json
      4. Check the java file exists:
         "GtsBackupHostTestCases": {
	     "srcs": [...,
		      ".../BaseBackupRestoreHostSideTest.java",
		      ...]

Change-Id: I1e1b34592cb7d7abd4634d9cb1a3e276bc1dc7f1
2019-05-27 11:17:55 +00:00
Treehugger Robot
40b5340a94 Merge "AIDEGen: Collect the srcjar path of modules into module-info.json" 2019-05-21 02:02:20 +00:00
Chris Gross
a489a92fdc Merge "Add merging of apexkeys and apkcerts metadata" 2019-05-20 23:36:45 +00:00
Treehugger Robot
2ee5efd824 Merge "Move check-all-partition-sizes to a non-phony rule" 2019-05-20 23:02:26 +00:00
Chris Gross
fabf50a577 Add merging of apexkeys and apkcerts metadata
Bug: 131437873
Test: Built system-only and vendor builds for merge. Compared
resulting apkcertx and apexkeys text files to that of a monolithic
build,
Test: Created colliding entries in both apexkeys and apkcerts text
files and ensure the script exited with an appropriate error message.
Test: Created unit tests to cover both non-colliding and colliding
entries
Change-Id: I6e42ce682ffa9059344e8cd63ba3a720c1f93452
2019-05-20 18:35:22 +00:00
Colin Cross
6ae7967309 Merge "Bypass LOCAL_*_REQUIRED_MODULES checks for ONE_SHOT_MAKEFILE" 2019-05-18 05:13:29 +00:00
Colin Cross
ab83244472 Bypass LOCAL_*_REQUIRED_MODULES checks for ONE_SHOT_MAKEFILE
When ONE_SHOT_MAKEFILE is set, the targets of LOCAL_*_REQUIRED_MODULES
may not exist, so skip the error message.

Fixes: 131241991
Test: mmm cts/tests/signature/intent-check
Change-Id: I95c4c901610746854179af8486c8c4767dd18864
2019-05-17 23:10:26 +00:00
Colin Cross
606c9f4d0d Move check-all-partition-sizes to a non-phony rule
Phony rules with recipes run on every build, move the recipe for
check-all-partition-sizes to a rule with an output.

Fixes: 132900128
Test: m && m
Change-Id: I9b4d335bf269cd09a01094e895fc15053b410415
2019-05-17 15:51:39 -07:00
patricktu
ab435e39a5 AIDEGen: Collect the srcjar path of modules into module-info.json
By design doc: go/aidegen-doc-generate-R
In order to generate R.java of app modules, AIDEGen needs to build
the module. It might cause system.img oversized so we turn to build
the target srcjar file if it exists in module-info.json.

Build module-info.json without this change:
Build time: 1m47.227s
File size: 14,186,429 Bytes

Build module-info.json with this change:
Build time: 1m46.796s
File size: 14,614,470 Bytes

Bug: 132407603
Test: 1. m out/target/product/generic_x86_64/module-info.json
      2. by grep "target/common/obj/APPS/Settings_intermediates/aapt2.srcjar"
         in module-info.json.

Change-Id: I09c812aede0324bc38acbead0a863a85ae15b33e
2019-05-17 01:46:56 +00:00
Xin Li
4534fcca85 Merge "DO NOT MERGE - Merge pie-platform-release (PPRL.190505.001) into master." 2019-05-17 00:58:10 +00:00
Treehugger Robot
2faec12c07 Merge "Allow overriding PRODUCT_EXTRA_VNDK_VERSIONS" 2019-05-16 13:13:19 +00:00
Justin Yun
9d608dc541 Allow overriding PRODUCT_EXTRA_VNDK_VERSIONS
As a PRODUCT variable, PRODUCT_EXTRA_VNDK_VERSIONS is not allowed to
be assigned from the build command. Instead, we can use
OVERRIDE_PRODUCT_EXTRA_VNDK_VERSIONS in the build command to
override PRODUCT_EXTRA_VNDK_VERSIONS.

Bug: 132412510
Test: OVERRIDE_PRODUCT_EXTRA_VNDK_VERSIONS=28 m vndk_snapshot_package
Change-Id: I91579961ab393f40ddce8bfe9304829b5b669441
2019-05-16 13:12:55 +00:00
Treehugger Robot
196f64bc6b Merge "Appending per-partition os_version into AVB props" 2019-05-16 11:27:31 +00:00
Bowgo Tsai
9b54801b58 Appending per-partition os_version into AVB props
os_version is important for keymaster version binding, where it
refuses to perform operations with a key that is bound to an old
system version.  This ensures that an attacker who discovers a
weakness in an old version of system or TEE software cannot roll a
device back to the vulnerable version and use keys created with the
newer version.

Previously, os_version for system.img is added into boot.img header
for bootloader to read the value then pass to TEE before booting the
HLOS. However, with project Treble to modularize each partition, all
images are now in the trajectory to be built independently (still
on-going). Also, in the Generic System Image (GSI) compliance test,
the os_version in OEM's boot.img cannot reflect the actual version of
GSI.

This CL adds per-partition os_versions into AVB metadata, which is
readable by bootloader via libavb without file system dependency. It's
still unclear for how os_version in non-system partition should be used.
We just add them for completeness here.

See more details in:
https://source.android.com/security/keystore/version-binding

Bug: 132233601
Test: build and avbtool info_image $OUT/vbmeta.img
      - Prop: com.android.build.boot.os_version -> '10'
      - Prop: com.android.build.system.os_version -> '10'
      - Prop: com.android.build.system.security_patch -> '2019-06-05'
      - Prop: com.android.build.vendor.os_version -> '10'
      - Prop: com.android.build.vendor.security_patch -> '2019-06-05'
      - Prop: com.android.build.product.os_version -> '10'
      - Prop: com.android.build.product.security_patch -> '2019-06-05'

Change-Id: I21a77420f2e8a3456f7a8cae5158eb8fc41319e7
2019-05-16 12:56:41 +08:00
Xin Li
9afe244300 DO NOT MERGE - Merge pie-platform-release (PPRL.190505.001) into master.
Bug: 132622481
Change-Id: Ie3fd0291c011aff50215c1225f558cac182afe6e
2019-05-15 16:55:11 -07:00
TreeHugger Robot
4dae317ace Merge "DO NOT MERGE - Merge pi-platform-release (PPRL.190505.001) into stage-aosp-master" into stage-aosp-master 2019-05-15 23:02:16 +00:00
Inseob Kim
1d61f54039 Merge "Generate VNDK snapshot with Soong except configs"
am: 85fba4c04a

Change-Id: I057fb93ae10681de29d9fc4ed673948e23d15da5
2019-05-15 15:31:47 -07:00
Treehugger Robot
85fba4c04a Merge "Generate VNDK snapshot with Soong except configs" 2019-05-15 22:13:35 +00:00
Martin Stjernholm
cc9253a650 Merge "Add libc_malloc_{debug,hooks}.so to the absence check."
am: e51a7282b5

Change-Id: I4365afa4b029259d67528a333262137237524fce
2019-05-15 03:59:46 -07:00
Anton Hansson
5c5ea6d31a Merge "Make implicit 32-bit apps on 64-bit target an error"
am: 3163453d0a

Change-Id: Icfcf1f7995f0b285966564091851bce7483aae5e
2019-05-15 03:59:03 -07:00
Treehugger Robot
e51a7282b5 Merge "Add libc_malloc_{debug,hooks}.so to the absence check." 2019-05-15 10:47:49 +00:00
Anton Hansson
3163453d0a Merge "Make implicit 32-bit apps on 64-bit target an error" 2019-05-15 10:44:31 +00:00
Anton Hansson
3e554c3973 Merge "Move default setting of a product variable"
am: b35b427769

Change-Id: I675888e4cf197bdb1c9436b7f9cc9059a741a892
2019-05-15 03:41:02 -07:00
Anton Hansson
b35b427769 Merge "Move default setting of a product variable" 2019-05-15 10:29:54 +00:00
Andrew Lehmer
a367884d30 Merge "Revert "Remove USE_XML_AUDIO_POLICY_CONF build flag""
am: 4c151cc398

Change-Id: Ia55861c50ef99bdddf784850934dbc648ef3b788
2019-05-14 14:35:00 -07:00
Andrew Lehmer
4c151cc398 Merge "Revert "Remove USE_XML_AUDIO_POLICY_CONF build flag"" 2019-05-14 21:19:25 +00:00
Andrew Lehmer
4c42d17465 Revert "Remove USE_XML_AUDIO_POLICY_CONF build flag"
This reverts commit 79c61ba50e.

Reason for revert: Buildcop

Change-Id: I18d3ebeded2e9b20fef3a57c8509a2e701f6692e
2019-05-14 21:16:46 +00:00
Mikhail Naganov
3754312901 Merge "Remove USE_XML_AUDIO_POLICY_CONF build flag"
am: 9f40efc5ff

Change-Id: Ia3f82b87eb3e9f7688203f81b17abba41aac0129
2019-05-14 12:58:51 -07:00
Treehugger Robot
9f40efc5ff Merge "Remove USE_XML_AUDIO_POLICY_CONF build flag" 2019-05-14 19:45:41 +00:00
Martin Stjernholm
ff29b0fa3e Add libc_malloc_{debug,hooks}.so to the absence check.
They should only be in the Runtime APEX, c.f. discussion on
http://r.android.com/957159.

Test: build/soong/build_test.bash through Forrest
Bug: 124293228
Change-Id: I33e97a56e67c3f4734d14f38e0f1597b697a2604
2019-05-14 18:37:40 +01:00
Anton Hansson
01f7c9162b Merge "Make PRODUCT_CHARACTERISTICS a single-valued variable"
am: 87c470e127

Change-Id: Ifc10ee58b9d0301c9dea586d3f410a99a15f3f90
2019-05-14 08:57:41 -07:00
Anton Hansson
87c470e127 Merge "Make PRODUCT_CHARACTERISTICS a single-valued variable" 2019-05-14 15:36:06 +00:00
Anton Hansson
269dd013a5 Move default setting of a product variable
Should be in product_config.mk, before the variables are readonly'd, or
the default will fail to work.

Bug: 131576555
Test: set PRODUCT_SHIPPING_API_LEVEL := 29 in mainline_arm64.mk && lunch
Change-Id: I25faee7ec0a3fff17e1d08b834d868834effda36
2019-05-14 14:33:18 +01:00
Inseob Kim
10e02dcd43 Generate VNDK snapshot with Soong except configs
This is the first commit to generate VNDK snapshot with Soong: .so
files, some txt files, and notice files are captured with Soong. As
ld.config.txt is currently in Android.mk and will be deprecated soon,
configs files (and zipping all of artifacts) are still handled with
Makefile.

Bug: 131564934
Test: 1) DIST_DIR=out/dist development/vndk/snapshot/build.sh
Test: 2) try installing vndk snapshot with:
         development/vndk/snapshot/update.py

Change-Id: Ia904e8a1b44824d6c9556ada93bf1616620a1363
2019-05-14 06:40:08 +00:00
Tao Bao
b67f0f099a Merge "Add sign_apex.py that signs a given APEX file."
am: bc7e3f98f4

Change-Id: I01b3f3d21fb4f57f2a4ee1503406f96eb15988d1
2019-05-13 16:13:12 -07:00
Xin Li
0590d456e0 DO NOT MERGE - Merge pi-platform-release (PPRL.190505.001) into stage-aosp-master
Bug: 132622481
Change-Id: Ide25ddcfa9a928b3affff72c2ce20e77865bd7d5
2019-05-13 15:57:57 -07:00
Tao Bao
bc7e3f98f4 Merge "Add sign_apex.py that signs a given APEX file." 2019-05-13 22:47:24 +00:00
Mikhail Naganov
79c61ba50e Remove USE_XML_AUDIO_POLICY_CONF build flag
This flag is no more used by the build files and should
be removed.

Bug: 132435217
Test: make
Change-Id: Icbd2359da659290ce4fba1a11ba6da76f23679da
2019-05-13 14:02:43 -07:00
Tao Bao
e7354ba447 Add sign_apex.py that signs a given APEX file.
This CL moves SignApex() from sign_target_files_apks into apex_utils,
and adds sign_apex that allows signing a standalone APEX file directly.

Test: Run the following command and check the output file.
$ build/make/tools/releasetools/sign_apex.py \
     -v \
     --container_key \
         build/make/target/product/security/testkey.x509.pem \
     --payload_key external/avb/test/data/testkey_rsa4096.pem \
     --payload_extra_args \
         "--signing_helper_with_files ./signing-helper.sh" \
     foo.apex \
     signed-foo.apex
Test: Run sign_target_files_apks.py on crosshatch target_files.zip.
Change-Id: I4b2422fd5cb1c60a3aa94511475e2a0e5b1666ca
2019-05-13 12:41:26 -07:00
Anton Hansson
879b007555 Make PRODUCT_CHARACTERISTICS a single-valued variable
Values should be comma-separated, and things won't go down well
if there are multiple words in this variable.

Bug: 123783710
Test: Put this in product_config.mk and ran multiproduct_kati:
      ifneq (1,$(words $(PRODUCT_CHARACTERISTICS)))
        $(error oops)
      endif
Change-Id: I5627f416093d68d8d19916a914739686b74d392f
2019-05-13 18:15:32 +01:00
Pete Gillin
0077fa356e Merge "Whitelist javax.annotation.processing for inclusion in core-oj."
am: 738b9963d5

Change-Id: I3106fdfcf7bec4d7e4641cd655fceca19775f0a7
2019-05-13 04:53:34 -07:00
Pete Gillin
738b9963d5 Merge "Whitelist javax.annotation.processing for inclusion in core-oj." 2019-05-13 11:37:43 +00:00
Anton Hansson
6d25fc6657 Make implicit 32-bit apps on 64-bit target an error
This has been a warning for a long time. Make it an error instead.

Once this has been verified to not cause any problems, it can
likely be changed to instead default to setting
TARGET_SUPPORTS_64_BIT_APPS := true.

Test: build_test
Change-Id: I0d03fed2085009c64880a594d5a3aadf72187e60
2019-05-13 11:13:20 +01:00
Colin Cross
fd7da36c8e Merge "Use a copy of dexpreopt.config"
am: 976dd58b34

Change-Id: I4c3f6ea7e55f6e09d054bb4aa797d407b9bc1822
2019-05-10 21:20:51 -07:00
Colin Cross
976dd58b34 Merge "Use a copy of dexpreopt.config" 2019-05-11 04:11:58 +00:00
Tao Bao
189a8dff61 Merge "releasetools: Unzip all files when generating image archive."
am: e77dbd2a62

Change-Id: Ibd6965c0b9517fe24e6f3267dc55700f3f320d18
2019-05-10 21:10:47 -07:00
Tao Bao
e77dbd2a62 Merge "releasetools: Unzip all files when generating image archive." 2019-05-11 03:48:02 +00:00
Tao Bao
1dac1d4164 releasetools: Unzip all files when generating image archive.
Commit 7df64c3e starts to call common.LoadInfoDict() when generating
image archive, which reads additional files under BOOT/, RECOVERY/ and
ROOT/. Unzip everything from the target_files.zip.

Bug: 132456827
Test: Run img_from_target_files.py on previously failing
      target_files.zip.
Change-Id: I22ee57c4f765bee9494478bf115b1581877401f4
2019-05-10 15:57:20 -07:00
Pete Gillin
8acb88b50c Merge "Rename EXPERIMENTAL_USE_OPENJDK9 to EXPERIMENTAL_JAVA_LANGUAGE_LEVEL_9."
am: aa448d138b

Change-Id: I12ef0a12aea45a9782105ff3324d8f9c773a1817
2019-05-10 05:16:20 -07:00
Pete Gillin
0ad2ef677d Whitelist javax.annotation.processing for inclusion in core-oj.
Bug: 123891440
Test: EXPERIMENTAL_USE_OPENJDK9=true make droid

(cherry picked from commit ec99530de3)

Merged-In: I0fc7a6841f34361883785479671f4422d720ce00
Change-Id: I70dbb89ca29ec1bb47ea5a1cf27b324d354aca11
2019-05-10 13:07:02 +01:00