Commit graph

1902 commits

Author SHA1 Message Date
Pirama Arumuga Nainar
ae9595674b Write SOONG_MODULES_MISSING_PGO_PROFILE_FILE to $DIST_DIR
Bug: http://b/72642679

Store missing profile files and the modules that refer to them, passed
via SOONG_MODULES_MISSING_PGO_PROFILE_FILE variable, to
$DIST_DIR/pgo_profile_file_missing.txt as part of the 'dist' target.

Test: 'm dist' and verify creation of pgo_profile_file_missing.txt.
Change-Id: I4ac0a1f413cbb99b33ad1903aeebd3ebcf3b9f59
2018-01-29 14:48:08 -08:00
Steven Moreland
15f6a241ca Merge "Fix INSTALLED_ -> BUILT_ missing refactor piece." am: 98fce11494 am: a7f62c3864
am: e08d290862

Change-Id: I7818b32a508854e7815c484e8bd0284cd94733f0
2018-01-26 00:17:16 +00:00
Treehugger Robot
98fce11494 Merge "Fix INSTALLED_ -> BUILT_ missing refactor piece." 2018-01-25 21:23:28 +00:00
Steven Moreland
915f35166f Fix INSTALLED_ -> BUILT_ missing refactor piece.
Some of the dependencies for target-files-package were
refactored but only partially. Since these are satisfied
by transitive dependencies, the problem wasn't noticed
earlier.

Bug: N/A
Test: target-files-package finds dependencies

Change-Id: Ibdd7587f87735148e55d3b9835478075b6547efc
2018-01-25 10:45:26 -08:00
Jaekyun Seok
d1b1d594a5 Merge "Support /product partition" am: 8fe7f9bfa2 am: 039e0991d5
am: f430ea5ebf

Change-Id: I91381c19408afc350ba7cecf2ca6daf0881f9abd
2018-01-25 04:16:57 +00:00
Jaekyun Seok
b7735d8105 Support /product partition
This CL adds the following build flags to support building product partition
from Android build system.
- BOARD_AVB_PRODUCT_ADD_HASHTREE_FOOTER_ARGS
- BOARD_AVB_PRODUCT_KEY_PATH
- BOARD_AVB_PRODUCT_ALGORITHM
- BOARD_AVB_PRODUCT_ROLLBACK_INDEX_LOCATION
- BOARD_PREBUILT_PRODUCTIMAGE
- BOARD_PRODUCTIMAGE_EXTFS_INODE_COUNT
- BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE
- BOARD_PRODUCTIMAGE_PARTITION_SIZE
- BOARD_PRODUCTIMAGE_SQUASHFS_BLOCK_SIZE
- BOARD_PRODUCTIMAGE_SQUASHFS_COMPRESSOR
- BOARD_PRODUCTIMAGE_SQUASHFS_COMPRESSOR_OPT
- BOARD_PRODUCTIMAGE_SQUASHFS_DISABLE_4K_ALIGN
- BOARD_USES_PRODUCTIMAGE
- LOCAL_PRODUCT_MODULE
- PRODUCT_FOOTER_ARGS
- PRODUCT_PRODUCT_BASE_FS_PATH
- PRODUCT_PRODUCT_VERITY_PARTITION
- TARGET_COPY_OUT_PRODUCT
- TARGET_OUT_PRODUCT*

And PRODUCT_PRODUCT_PROPERTIES is added to save product-specific
properties in /product/build.prop.

Bug: 64195575
Test: succeeded building product.img with BOARD_PRODUCTIMAGE_PARTITION_SIZE,
BOARD_PRODUCTIMAGE_FILE_SYSTEM_TYPE and PRODUCT_PRODUCT_VERITY_PARTITION.

Change-Id: I774e6a38003734421591e51bed103802ff84f432
2018-01-25 09:33:58 +09:00
Jin Qian
95873268f3 Merge "Add BOARD_EXT4_SHARE_DUP_BLOCKS to share duplicated blocks on ext4" am: 082837365d am: b6ff980ba5
am: 931d76e1c4

Change-Id: I8bfcd310517c8814907e55b1a328c29392612872
2018-01-24 04:21:38 +00:00
Jin Qian
fde9f7906b Add BOARD_EXT4_SHARE_DUP_BLOCKS to share duplicated blocks on ext4
This option applies to system.img and vendor.img.

Bug: 64109868
Change-Id: Ib4c7384049dca08e57441ef71cc81c2fba4462dd
2018-01-22 17:21:11 -08:00
Sen Jiang
1e1c35d051 Merge "Remove zlib_fingerprint support." am: 53a3f70efe am: 2dfaacdd93
am: c5ed82950b

Change-Id: I25e86717bfaf7f22e41d417d16f7b18d55f26ff1
2017-12-27 21:00:08 +00:00
Treehugger Robot
53a3f70efe Merge "Remove zlib_fingerprint support." 2017-12-27 20:49:24 +00:00
Sen Jiang
43935639fb Remove zlib_fingerprint support.
Test: m dist
Change-Id: I580993e5089b3eb73af0ee931dd222ebfd3a8593
2017-12-20 13:14:14 -08:00
Tao Bao
90a2bcc3e0 Merge "Remove the support for BOARD_HAS_EXT4_RESERVED_BLOCKS." am: d30b75190d am: 4d45f51596
am: 3652c0ba76

Change-Id: I3cd249a50eea521d019ed9b2745a62dd850df537
2017-12-18 22:31:32 +00:00
Treehugger Robot
d30b75190d Merge "Remove the support for BOARD_HAS_EXT4_RESERVED_BLOCKS." 2017-12-18 22:17:46 +00:00
Baligh Uddin
92855dba09 Merge "Add generate_verity_key (+dependencies) to otatools package." am: c4f76d670a am: d60a86c3ca
am: 10882a317c

Change-Id: Id7467e4b6a629954e103cb8ab6aa52113037ea2c
2017-12-18 20:50:07 +00:00
Baligh Uddin
c8bef14c9f Add generate_verity_key (+dependencies) to otatools package. 2017-12-18 10:40:57 -08:00
Steven Moreland
85d325b5f8 Merge changes from topic "kati-obsolete-full-treble" am: 2b1f0d1810 am: a710d44086
am: 9874ee6c54

Change-Id: I991823b6dacb829982a0d03c06c00c341cace96a
2017-12-18 18:06:07 +00:00
Steven Moreland
ae69e5787a PRODUCT_NOTICE_SPLIT from PRODUCT_FULL_TREBLE
- until PRODUCT_NOTICE_SPLIT is the default
- disallow PRODUCT_NOTICE_SPLIT_OVERRIDE because it
  doesn't need to be differentiated.

Bug: 69865032
Test: manual
Change-Id: I4a29c298862fc9fab51755bf19f236f61fbd784d
2017-12-15 14:52:07 -08:00
Przemyslaw Szczepaniak
6686e51b75 Merge "Add PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION" 2017-12-13 10:15:46 +00:00
Treehugger Robot
973301af79 Merge "Replace build/tools with build/make/tools" 2017-12-13 02:34:42 +00:00
Justin Yun
2a233b3b86 Define PLATFORM_VNDK_VERSION
PLATFORM_VNDK_VERSION means the VNDK version that current build
provides. This value will be set to PLATFORM_SDK_VERSION once the
version is release. Otherwise, it will be set to "current".

Bug: 69883025
Test: device boot
Change-Id: I3fde4943aa062d9d148a3d7fc2798948870a48c6
2017-12-13 10:48:34 +09:00
Przemyslaw Szczepaniak
e554015b3a Add PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION
Exposed as ro.build.version.min_supported_target_sdk build_property

Test: make
Bug: 63926630
Change-Id: I8084fd4c54d9c2fb5e2683430e2b3aaf4c5f4a7a
2017-12-11 10:45:45 +00:00
Jaegeuk Kim
10c9f5d9d3 Merge "core, release: add sload.f2fs for otatools.zip" 2017-12-08 00:57:42 +00:00
Tao Bao
79d52f8798 Remove the support for BOARD_HAS_EXT4_RESERVED_BLOCKS.
This is only used in file-based OTA, where we may reserve space on
/system partition. With the deprecation of file-based OTA since O, the
code has become obsolete.

Test: `m dist`
Change-Id: I2bd686b292f93b566fe28a2bcd74c564ffc75dac
2017-12-07 14:36:21 -08:00
Treehugger Robot
94ea878ae0 Merge "Revert "Renames sepolicy files from nonplat_* to vendor_*"" 2017-12-07 04:02:29 +00:00
Bo Hu
9eb4d74e26 Revert "Renames sepolicy files from nonplat_* to vendor_*"
This reverts commit 38c404c6da.
Reason for revert: broke mac build

b/70273082

FAILED: out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_sepolicy.cil
/bin/bash -c "(out/host/darwin-x86/bin/version_policy -b out/target/product/generic_x86/obj/FAKE/selinux_policy_intermediates/plat_pub_policy.cil -t out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_policy_raw.cil -n 10000.0 -o out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_sepolicy.cil.tmp ) && (grep -Fxv -f out/target/product/generic_x86/obj/ETC/plat_pub_versioned.cil_intermediates/plat_pub_versioned.cil out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_sepolicy.cil.tmp > out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_sepolicy.cil ) && (out/host/darwin-x86/bin/secilc -m -M true -G -N -c 30 		out/target/product/generic_x86/obj/ETC/plat_sepolicy.cil_intermediates/plat_sepolicy.cil out/target/product/generic_x86/obj/ETC/plat_pub_versioned.cil_intermediates/plat_pub_versioned.cil out/target/product/generic_x86/obj/ETC/10000.0.cil_intermediates/10000.0.cil out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_sepolicy.cil -o /dev/null -f /dev/null )"
Parsing out/target/product/generic_x86/obj/FAKE/selinux_policy_intermediates/plat_pub_policy.cil
Parsing out/target/product/generic_x86/obj/ETC/vendor_sepolicy.cil_intermediates/vendor_policy_raw.cil
grep: out of memory

Change-Id: I5b043fc6b5939456184ffb296cd00b3943a899f9
2017-12-07 00:16:35 +00:00
Colin Cross
fdea893833 Replace build/tools with build/make/tools
Test: m checkbuild
Change-Id: I8db6c27a6d2372f142d10568fe92d6f2e9a59252
2017-12-06 16:12:40 -08:00
Colin Cross
3277ba34ae Add java modules to soong_to_convert.txt
Test: examine soong_to_convert.txt
Change-Id: Ibb6db664238a4e98f5d8885dfb3ddc0f35d11ff6
2017-12-06 15:38:52 -08:00
Xin Li
5f03da0404 Merge "DO NOT MERGE: Merge Oreo MR1 into master" 2017-12-06 23:18:30 +00:00
Treehugger Robot
7b2129f101 Merge "AVB: If building recovery.img, add AVB hash footer." 2017-12-06 22:12:25 +00:00
kaichieh
24ed707951 Merge "Renames sepolicy files from nonplat_* to vendor_*"
am: 291768ef7f

Change-Id: Id4b56219d64a75c3697d7ab3aa9ea9223d40355e
2017-12-06 10:11:32 +00:00
Treehugger Robot
291768ef7f Merge "Renames sepolicy files from nonplat_* to vendor_*" 2017-12-06 10:00:46 +00:00
Jaegeuk Kim
2ea1eba98c core, release: add sload.f2fs for otatools.zip
This also updates mkf2fsuserimg.sh to call sload.f2fs.

Change-Id: I245f6b3dfcd966fbc6783329d781375879fcd065
Signed-off-by: Jaegeuk Kim <jaegeuk@google.com>
2017-12-05 10:59:50 -08:00
Chih-Hung Hsieh
614877c921 Merge "No need to dump modules added -Werror."
am: 531ce804ea

Change-Id: Ic8646bfe0d0c2e124ae32cfdc17c788d398e40b7
2017-12-05 01:37:16 +00:00
Treehugger Robot
531ce804ea Merge "No need to dump modules added -Werror." 2017-12-05 01:24:49 +00:00
Steven Moreland
c8a55698ac Merge "Revert "Include Treble metadata on Treble enabled devices""
am: 79a55b3108

Change-Id: I54d681b2112ebc9b52784a5da3b15eed52a2f2de
2017-12-05 00:42:11 +00:00
Chih-Hung Hsieh
ab149cbda0 No need to dump modules added -Werror.
* This reduces size of output file wall_werror.txt.
* Stop collecting $(MODULES_ADDED_WERROR)

Bug: 66996870
Test: normal build
Change-Id: Id750cc7fe6489a7654b20740d503226ec6941bbb
2017-12-04 15:23:37 -08:00
David Zeuthen
8fecb289ee AVB: If building recovery.img, add AVB hash footer.
In some non-A/B setups, recovery.img is still being used. If AVB is
enabled, we currently don't add a hash footer to recovery.img nor do
we include the hash digest in vbmeta.img. This CL fixes that.

This was tested on a build with the following settings

 TARGET_NO_RECOVERY := false
 BOARD_USES_RECOVERY_AS_BOOT := false
 BOARD_BUILD_SYSTEM_ROOT_IMAGE := false
 BOARD_RECOVERYIMAGE_PARTITION_SIZE := 33554432
 BOARD_AVB_RECOVERY_ADD_HASH_FOOTER_ARGS := --prop foo:bar

and then it was verified using 'avbtool info_image' that recovery.img
has a hash footer and a 'foo' property with the value 'bar'. This was
also checked successfully for vbmeta.img.

Test: See above.
Bug: None
Change-Id: I98124d5661ea768411416fa8d2a2ae6cc664fdc8
2017-12-04 13:54:38 -05:00
Steven Moreland
7a9b07f6fe Revert "Include Treble metadata on Treble enabled devices"
The test rather than the build system needs to check
the files according to the versions of the provided
device (and it does so now).

Fixes: 69864925
Test: clean revert, manual

(revert of cb5b8d2d47)

Change-Id: I1922190bfadca74d0652440fe61e29f22a846cf7
2017-12-04 09:37:39 -08:00
Tao Bao
0ef0aef16b Merge "Remove the redundant/wrong write of 'recovery_as_boot='."
am: 4dd8610e26

Change-Id: Icf58943c1a3abb90c2a9a5aeb5175117c27be709
2017-12-01 19:33:22 +00:00
Treehugger Robot
4dd8610e26 Merge "Remove the redundant/wrong write of 'recovery_as_boot='." 2017-12-01 19:26:08 +00:00
Bowgo Tsai
9967125332 Includes odm SELinux contexts files for recovery
Bug: 64240127
Test: normal boot and recovery boot a device
Change-Id: I475d2eef96d2091291b56410f403f14dd3292faa
2017-12-01 13:56:32 +08:00
kaichieh
38c404c6da Renames sepolicy files from nonplat_* to vendor_*
Bug: 64240127
Test: normal boot and recovery boot a device
Change-Id: Ie30b4859d4d573cd2d35419195181695639f6582
2017-12-01 13:56:16 +08:00
Bowgo Tsai
91676f9154 Merge "Reorder assert-max-image-size and AVB signing"
am: 8552bebed4

Change-Id: I9f8c0e513cee50740b31b26c18e72c9c7284b5c1
2017-11-29 09:17:35 +00:00
Treehugger Robot
8552bebed4 Merge "Reorder assert-max-image-size and AVB signing" 2017-11-29 09:10:27 +00:00
Bowgo Tsai
6a74979a3b Include vbmeta.img into <product>-img.zip
Bug: 65227202
Test: make dist, checks vbmeta.img is included in <product>-img.zip
Merged-In: I3e09f036441bcf7e98d8f76360df1e17466ae38e
Change-Id: I3e09f036441bcf7e98d8f76360df1e17466ae38e
(cherry picked from commit 6bbb11a620)
2017-11-29 16:14:19 +09:00
Michael Schwartz
465197ed16 Merge "Support prebuilt bootimage"
am: 52a4f7d2b7

Change-Id: I6f84da11655b151b65c4e3913fc14aa8b6631b97
2017-11-29 04:52:49 +00:00
Michael Schwartz
0dc6f21779 Support prebuilt bootimage
Bug: 63676296
Test: `m -j` and inspect artifacts
Merged-In: Id32d8a7151a8e99b45aa58ee9971def9734eaf78
Change-Id: Id32d8a7151a8e99b45aa58ee9971def9734eaf78
(cherry picked from commit b0b1a24b1e)
2017-11-28 20:18:34 +09:00
Bowgo Tsai
03b9c8e637 Reorder assert-max-image-size and AVB signing
This change fixes the following warning message:
  WARNING: out/target/product/$(TARGET_DEVICE)/boot.img approaching \
  size limit (33554432 now; limit 33554432)

This is because AVB signing will increase boot.img to
BOARD_BOOTIMAGE_PARTITION_SIZE, in order to place the AVB metadata at
the end of the partition. We should check max image size first then use
avbtool to sign it.

The max allowed size will be (partition size - AVB_HASH_META_SIZE) when
AVB is enabled.

Note that some projects don't have BOARD_{BOOT,RECOVERY}IMAGE_PARTITION_SIZE,
we should skip assert-max-image-size for it.

Finally, this CL also fixes the build error for `make bootimage-nodeps`
when AVB is used.

Bug: 69115400
Test: build and checks there is no size limit warning message
Change-Id: I54f28c6f1c9fe9ed88c1d73e5cb72b3693593f9b
2017-11-22 17:46:33 +08:00
Tomasz Wasilczyk
c792d08bd2 Merge "Silence yet more superfluous build messages."
am: 01e1fe60b8

Change-Id: I5dc1676389d4b6fb062265fac86a9d77b37c5c7b
2017-11-22 01:25:29 +00:00
Tomasz Wasilczyk
01e1fe60b8 Merge "Silence yet more superfluous build messages." 2017-11-22 01:20:32 +00:00
Chih-hung Hsieh
39610026fb Merge "Add default -Wall -Werror or -Wall."
am: 6ddc7843cb

Change-Id: Ib9b93dbd61bb9141b88fb7f1f7c4ead3fd28accc
2017-11-21 21:24:12 +00:00
Bowgo Tsai
8dbeec4e9e Merge "Revert "Reorder assert-max-image-size and AVB signing""
am: aac41d585c

Change-Id: I5e8b881da8588f7bb1730d49e0e35eb6aab9728a
2017-11-21 03:07:05 +00:00
Bowgo Tsai
47e0b62d6e Revert "Reorder assert-max-image-size and AVB signing"
This reverts commit b855c0c304.

Change-Id: Ia82071bf42fcc6d15dabdf15f4eb5d1749c8cdb8
2017-11-21 02:39:51 +00:00
Bowgo Tsai
d16f9c5301 Merge "Reorder assert-max-image-size and AVB signing"
am: eea732dbcf

Change-Id: I6140292228c48ea5db455841cab3a148099c31d9
2017-11-21 01:33:07 +00:00
Chih-Hung Hsieh
1876acdd53 Add default -Wall -Werror or -Wall.
* Skip Android.bp, prebuilt, and HEADER_LIBRARIES targets.
* If neither -Wno-error nor -Werror is used, add default -Wall -Werror.
  However, if the build target is in a project
  under one of ANDROID_WARNING_ALLOWED_PROJECTS, add only -Wall.
* Dump name of modules using -Wno-error or added -Wall -Werror
  into file $(PRODUCT_OUT)/wall_werror.txt.

Bug: 66996870
Test: normal build
Change-Id: Ief8cf776e8613ed073a64dd271534688845d5c2c
2017-11-17 14:06:35 -08:00
Bowgo Tsai
b855c0c304 Reorder assert-max-image-size and AVB signing
This change fixes the following warning message:
  WARNING: out/target/product/$(TARGET_DEVICE)/boot.img approaching \
  size limit (33554432 now; limit 33554432)

This is because AVB signing will increase boot.img to
BOARD_BOOTIMAGE_PARTITION_SIZE, in order to place the AVB metadata at
the end of the partition. We should check max image size first then use
avbtool to sign it.

The max allowed size will be (partition size - AVB_HASH_META_SIZE) when
AVB is enabled.

Bug: 69115400
Test: build and checks there is no size limit warning message
Change-Id: If9545e64a0d1714a2ec2440f9bd38293e7b1ba9a
2017-11-17 23:25:38 +08:00
Tomasz Wasilczyk
1c26bc9b27 Silence yet more superfluous build messages.
Bug: 69315492
Test: it builds
Change-Id: I89fcbf9f6435da7ff1c374020870c989b671af2a
2017-11-16 10:14:27 -08:00
Tao Bao
c6a0e208ab Remove the redundant/wrong write of 'recovery_as_boot='.
The deleted lines contain a bug that only writes "recovery_as_boot="
into META/misc_info.txt when the value is empty. The issue has no real
impact though, because a) it's no-op for targets not using
BOARD_USES_RECOVERY_AS_BOOT (e.g. non-A/B targets); b) for targets with
BOARD_USES_RECOVERY_AS_BOOT := true, the value gets written correctly as
part of the call to 'generate-userimage-prop-dictionary'.

Test: `m dist` on aosp_bullhead-userdebug. The line is gone from
      META/misc_info.txt.
Test: `m dist` on aosp_marlin-userdebug. 'recovery_as_boot=true' exists
      in META/Misc_info.txt.
Change-Id: I9b4d70d457e141aa308ba2e62e2033602c8012de
2017-11-15 15:04:44 -08:00
Tomasz Wasilczyk
a62800487e Merge "Silence superfluous build messages."
am: 4dbdb60698

Change-Id: I3574184c22b8fca41fd85e09ceacc2b598643c67
2017-11-15 22:35:48 +00:00
Tomasz Wasilczyk
4dbdb60698 Merge "Silence superfluous build messages." 2017-11-15 22:27:30 +00:00
Dan Willemsen
fe590192de Merge "Silence PRODUCT_COPY_FILES ignored messages"
am: 288521a615

Change-Id: Ie0a346d18d3b6d0fa7dc0242f0f1bb6ecdce6aad
2017-11-15 21:59:13 +00:00
Treehugger Robot
288521a615 Merge "Silence PRODUCT_COPY_FILES ignored messages" 2017-11-15 21:51:46 +00:00
Dan Willemsen
403b98aa25 Silence PRODUCT_COPY_FILES ignored messages
We don't have great alternatives for some of these use cases, so for now
just silence them, writing them to $OUT/product_copy_files_ignored.txt
(and if `dist' is specified, $DIST_DIR/logs/product_copy_files_ignored.txt)

Test: lunch aosp_arm-userdebug; m nothing
Test: lunch aosp_arm-userdebug; m dist
Change-Id: If0228bc8d907346e3505ae136cb477ef37a5c867
2017-11-15 11:13:23 -08:00
Tomasz Wasilczyk
29ec06b7ba Silence superfluous build messages.
Bug: 69315492
Test: it builds
Change-Id: Ic02484b80fa27c53786204402930ed5f33ec7fda
2017-11-15 10:34:01 -08:00
Xin Li
44dd4881de Merge commit '66b8b530187b129934a685bf0c4349eef00e4b0c' from
oc-mr1-dev-plus-aosp-without-vendor into stage-aosp-master.

Change-Id: I7594bb72dd7e847292eb502edd918e41318aac29
Merged-In: Ide82473d358719f7e01cd2a4a85db954f3722f14
2017-11-14 11:36:22 -08:00
Alex Deymo
cbb4ec6cf0 Merge "Update binary name to "brotli"." 2017-11-13 22:43:22 +00:00
Alex Deymo
b10e07aea7 Update binary name to "brotli".
With the update of brotli to version 1.0.1 the new binary tool is now
called "brotli". This patch updates the scripts to use the new name.

Bug: 34220646
Test: `make dist`; ota_from_target_files on non-A/B device.
Change-Id: Ie8da4333388d029d5960a723a55efd875d8ee820
2017-11-13 18:11:45 +01:00
Michael Schwartz
6473e75479 Archive checkvintf in otatools
checkvintf will be used to verify compatibility of OTA packages.

Bug: 68327258
Test: `m -j dist` and inspect archive for checkvintf
Change-Id: I1d4cfcff537a03adee28d1e6ba9403a2e1635fe0
2017-11-10 09:38:28 -08:00
Treehugger Robot
4cb631f624 Merge changes from topic "system_default_prop"
* changes:
  Move ART default properties into system partition
  Add PRODUCT_SYSTEM_DEFAULT_PROPERTIES
2017-11-08 01:42:40 +00:00
Jin Qian
09f3d18d56 Remove mkuserimg.sh from otatools
It has been replaced with mkuserimg_mke2fs.sh

Bug: 64395169
Change-Id: Iff4edba35062b6ecd3fec8b65422cab2a0707d3f
2017-11-03 12:16:15 -07:00
Jin Qian
bd532fbf2e Merge "Replace make_ext4fs with mke2fs" 2017-11-03 17:28:57 +00:00
Jaekyun Seok
b31b9bad66 Add PRODUCT_SYSTEM_DEFAULT_PROPERTIES
PRODUCT_SYSTEM_DEFAULT_PROPERTIES will be used to define system default
properties which should be installed in system partition.

Bug: 64661857
Test: confirmed that ART default properties are stored in
/system/etc/prop.default when they were defined in
PRODUCT_SYSTEM_DEFAULT_PROPERTIES.

Change-Id: Ia08c25d0c5805381c6e3fe63dd1d171e8d195b90
2017-11-03 15:32:47 +09:00
Jin Qian
95b2b695cd Replace make_ext4fs with mke2fs
make_ext4fs is deprecated and should be replaced with mke2fs

Bug: 64395169
Change-Id: Idfc8c0ee0ff598fdaa6f20bb0d4f6dca687a1b10
2017-11-02 16:27:41 -07:00
Nicolas Geoffray
21a3aef7d7 Merge "Add a product variable for priv-apps dependencies." 2017-11-01 13:40:20 +00:00
Jaekyun Seok
f9af5fa6ab Install (vendor|system/vendor)/build.prop always
For now, vendor build properties are added into /system/build.prop
when property split isn't enabled.
So we have the duplicate codes to add them to /system/build.prop and
/vendor/build.prop case by case.

But either /vendor/build.prop or /system/vendor/build.prop can exist
always.
So this CL will install $(TARGET_OUT_VENDOR)/build.prop always and
remove the duplication.

Bug: 68115808
Test: tested on aosp_x86-userdebug
Change-Id: Ic734418890629d011c733c2d8d14739275e64a78
2017-10-25 13:12:07 +09:00
Ryan Campbell
63fc0e681d Create product sysprops on vendor partition.
Duplicate essential product sysprops for manufacturer, model, brand, name, and device
from system on vendor so that mixed builds (vendor.img + GSI system.img) have correct
product information in their CTS/VTS reports.

Test: make
Bug: 64458205
Merged-In: Ib63b37772be493b9e035d9b7e8c5e2cf66f2fa8c
Change-Id: Ib63b37772be493b9e035d9b7e8c5e2cf66f2fa8c
(cherry picked from commit aea0f92ff3)
2017-10-25 11:35:14 +09:00
Sandeep Patil
127f501287 build: fix builds when first_api_level isn't defined as property
Bug: 67965044
Test: Build pixel
Merged-In: I4bce5a4f4d0751a30bf7abda0da5e7d73313c9ef
Change-Id: I4bce5a4f4d0751a30bf7abda0da5e7d73313c9ef
Signed-off-by: Sandeep Patil <sspatil@google.com>
(cherry picked from commit b79196f0ca)
2017-10-25 07:27:09 +09:00
Steven Moreland
ec082650a1 Move ro.product.first_api_level to vendor/build.prop
Shipping API level is associated with the vendor image. When
a device ships in, say, O and is then run against the O-MR1
GSI image, the shipping API level is currently reported as
the shipping API level which the GSI was built with. This means
that various tests and control flows assume that the image
is the newest possible image. However, this is not the case.

Bug: 67965044
Test: boot on pixel
Merged-In: If18cc99e2599957d88860e0902a99ff3f67e5fd8
Change-Id: If18cc99e2599957d88860e0902a99ff3f67e5fd8
(cherry picked from commit 9411f9b4dc)
2017-10-25 07:26:56 +09:00
Sundong Ahn
505ed24fbc Merge "Add ro.vndk.version property"
am: 9d3d271673

Change-Id: Id82c6e0c62571c5b0a6f068edce876c42f6e50c5
2017-10-24 01:24:29 +00:00
Treehugger Robot
9d3d271673 Merge "Add ro.vndk.version property" 2017-10-24 01:17:01 +00:00
Colin Cross
bce301801f Merge "Update references to build/core to build/make/core"
am: 6db8597174

Change-Id: I4be5bc1805d1900991966d24fda15f2705ee248d
2017-10-20 23:49:17 +00:00
Colin Cross
6db8597174 Merge "Update references to build/core to build/make/core" 2017-10-20 23:41:12 +00:00
Colin Cross
6cdc5d20f3 Update references to build/core to build/make/core
sed -i -e 's"\([^/]\)build/core"\1build/make/core"g' $(git grep -l build/core)

Test: m checkbuild
Change-Id: Idf3a2fed79aee5d2c07bd8e42f0c0660f253ddc2
2017-10-20 12:49:28 -07:00
Sundong Ahn
6d4fab193a Add ro.vndk.version property
ro.vndk.version property is VNDK version in vendor partition.
It is set to the value of BOARD_VNDK_VERSION at build time.

Bug: 66072863
Test: build & run
Change-Id: Iecaede005474c4179a8135cf967e5b5b5ebcb881
2017-10-20 14:25:09 +09:00
Tom Cherry
a4cbba82f7 Merge "Don't truncate ${USER} when generating ro.build.fingerprint" am: 8543feae1d am: 8b182afa9b
am: 0eae458144

Change-Id: Ib50760a9ac60e4f72faee4551f36b123446a1dbf
2017-10-18 23:28:24 +00:00
Tom Cherry
8b182afa9b Merge "Don't truncate ${USER} when generating ro.build.fingerprint"
am: 8543feae1d

Change-Id: Id5afb5ee4a11034ab8ae03f1d386c7f7c68c5bb0
2017-10-18 23:24:19 +00:00
Tom Cherry
a4af66e8cb Don't truncate ${USER} when generating ro.build.fingerprint
We have removed the 92 character limit on ro.build.fingerprint, so
there is no longer a reason to truncate ${USER} when generating
fingerprints.

Bug: 34954705
Test: boot bullhead and observe non-truncated username
Change-Id: If79bf1d5372f709c9c1725f860bc61b99e830751
2017-10-18 14:17:47 -07:00
Ryan Campbell
4a57b1645e Merge "Create product sysprops on vendor partition." into oc-mr1-dev
am: 5dbc0cab73

Change-Id: I13705b6d8337720dcf5d89d1a019a01a805e1c6c
2017-10-17 01:42:58 +00:00
Dan Albert
a1186114a7 Merge "Re-apply ndk-docs rule." am: cf2da22a2a am: 4adab14288
am: 97f9bef929

Change-Id: Idb98ee33ad258838982413d5a659a09ac4f24448
2017-10-15 03:29:48 +00:00
Bowgo Tsai
0e1ada16ce Merge "Adding Android verified boot 1.0 metadata into ENG builds" am: 5f958ccad5 am: 86c4f8ed54
am: 08a05cd9ae

Change-Id: Ie7471976439616452b0c830b19471be1748a750a
2017-10-15 03:26:24 +00:00
Dan Albert
4adab14288 Merge "Re-apply ndk-docs rule."
am: cf2da22a2a

Change-Id: I48bed194348d6cf2c76bdc9db787c58fcdd6cc6e
2017-10-15 02:50:45 +00:00
Bowgo Tsai
86c4f8ed54 Merge "Adding Android verified boot 1.0 metadata into ENG builds"
am: 5f958ccad5

Change-Id: I54405288a18db3940b0721d5638127e66b7cac3e
2017-10-15 02:48:17 +00:00
Ryan Campbell
aea0f92ff3 Create product sysprops on vendor partition.
Duplicate essential product sysprops for manufacturer, model, brand, name, and device
from system on vendor so that mixed builds (vendor.img + GSI system.img) have correct
product information in their CTS/VTS reports.

Test: make
Bug: 64458205
Change-Id: Ib63b37772be493b9e035d9b7e8c5e2cf66f2fa8c
2017-10-13 15:47:58 -07:00
Treehugger Robot
cf2da22a2a Merge "Re-apply ndk-docs rule." 2017-10-13 21:04:26 +00:00
Dan Albert
303e603fd2 Re-apply ndk-docs rule.
This time wrapped with a check for the docs directory for unbundled
branches.

Test: make checkbuild
Bug: None
Change-Id: If80f0a03850d6cad3eab6d759af02ff2a7870974
2017-10-13 11:56:17 -07:00
Bowgo Tsai
6ceeb1a8bf Adding Android verified boot 1.0 metadata into ENG builds
Adding verified boot metadata with a "disable magic". The resulting
metadata at the end of each image (e.g., system.img, vendor.img) will
be the same as triggering an "adb disable-verity" on an USERDEBUG image.

This can help simplify the code on fs_mgr, which won't have to check if
current image is an ENG build or not.

Bug: 63056044
Test: boot sailfish eng/userdebug builds
Change-Id: I95d23ac7b76c04d6d4483c9c4dc1de16bf0d9c3a
2017-10-12 10:08:44 +08:00
Jiyong Park
bc8a222efe Merge "Don't reserve size for bad blocks when checking image size"
am: dd68a6cb74

Change-Id: Ibea8f1f19b6ec4a3cf1969dde726a90265439128
2017-10-06 19:55:45 +00:00
Nicolas Geoffray
a95fbd1ed5 Add a product variable for priv-apps dependencies.
Those dependencies are jars/apks on which we want to
uncompress their dexs.

bug: 30972906
bug: 63920015

Test: sailfish build

Change-Id: Ic96ffe9dbe39abc1c28e7de134892d689207c9ca
2017-10-06 11:14:08 +01:00
Jiyong Park
4b61a94f70 Don't reserve size for bad blocks when checking image size
When checking *.img size with the partition size, the build system
reserves additional bits for spare bits and spare bad blocks.

However, for emmc and ufs, the space bits and blocks are entirely
managed by the underlying controller and thus not visible from outside
of the controller. In fact the check routine was made for legacy MTD
storages where raw flash blocks are directly exposed.

This makes the size checking a little bit conservative in modern devices.
Builds were failed even though the *.img can actually fit into the
partition. To handle this problem, the additional size is no longer
reserved when checking *.img size with the partition size.

This change also removes following build flags that are meaningful
only for devices having MTD storages:
BOARD_NAND_PAGE_SIZE
BOARD_NAND_SPARE_SIZE
Further use of them breaks the build

Bug: 35790399
Bug: 66399382
Test: build

Merged-In: I954bf261441b53844e75d05788866f1692a2ad43
Change-Id: I954bf261441b53844e75d05788866f1692a2ad43
2017-10-05 09:32:01 +09:00
Jiyong Park
03eb06150b Don't reserve size for bad blocks when checking image size
When checking *.img size with the partition size, the build system
reserves additional bits for spare bits and spare bad blocks.

However, for emmc and ufs, the space bits and blocks are entirely
managed by the underlying controller and thus not visible from outside
of the controller. In fact the check routine was made for legacy MTD
storages where raw flash blocks are directly exposed.

This makes the size checking a little bit conservative in modern devices.
Builds were failed even though the *.img can actually fit into the
partition. To handle this problem, the additional size is no longer
reserved when checking *.img size with the partition size.

This change also removes following build flags that are meaningful
only for devices having MTD storages:
BOARD_NAND_PAGE_SIZE
BOARD_NAND_SPARE_SIZE
Further use of them breaks the build

Bug: 35790399
Bug: 66399382
Test: build

Merged-In: I954bf261441b53844e75d05788866f1692a2ad43
Change-Id: I954bf261441b53844e75d05788866f1692a2ad43
2017-10-04 21:25:08 +09:00
Colin Cross
a9967cb1f4 Merge "Revert "Generate the NDK docs with the ndk-docs target."" am: b33250278b am: 9f92348ffa
am: b2692a768a

Change-Id: Ice5624e4479367acfe26a02b43d66a981f2a23fc
2017-10-04 00:38:18 +00:00
Colin Cross
9f92348ffa Merge "Revert "Generate the NDK docs with the ndk-docs target.""
am: b33250278b

Change-Id: I96b3d752fd0ad9b2deb438fbdd677a17619e0540
2017-10-04 00:21:57 +00:00
Colin Cross
b33250278b Merge "Revert "Generate the NDK docs with the ndk-docs target."" 2017-10-04 00:13:54 +00:00
Colin Cross
c294f55489 Revert "Generate the NDK docs with the ndk-docs target."
This reverts commit d51b6d0d75.

Reason for revert: Broke all unbundled builds

Change-Id: Id6722a076ee91ca150b1a53935632579c6f6f6dd
2017-10-04 00:13:00 +00:00
Dan Albert
a7ac97d232 Merge "Generate the NDK docs with the ndk-docs target." am: 0f47dd4c13 am: e0af1859b8
am: 68392e230e

Change-Id: Ifcbe44b36a3f21281fd6f02355d14cb1c0e17310
2017-10-03 22:50:20 +00:00
Dan Albert
e0af1859b8 Merge "Generate the NDK docs with the ndk-docs target."
am: 0f47dd4c13

Change-Id: I8631da79f3ba45b46be7d0d50fdb48a0b623d141
2017-10-03 22:39:00 +00:00
Treehugger Robot
0f47dd4c13 Merge "Generate the NDK docs with the ndk-docs target." 2017-10-03 22:11:17 +00:00
Dan Albert
d51b6d0d75 Generate the NDK docs with the ndk-docs target.
Test: make ndk-docs
Bug: None
Change-Id: I846f18c2d466d18603bb3ba59aaed7a9c938b1e3
2017-10-03 13:08:25 -07:00
Colin Cross
69ced5de5e Delete jack support am: a6bc3a8a4c
am: 37bf2b1250

Change-Id: I19133aedbfe91f7cd49588b33f517dc4bb17b91c
2017-10-02 20:00:16 +00:00
Colin Cross
e673deb280 Delete jack support
Remove all support for running jack.

Bug: 65302138
Test: m -j checkbuild
Change-Id: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
Merged-In: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
(cherry picked from commit 5db5d31d73)
2017-10-02 11:15:19 -07:00
Colin Cross
a6bc3a8a4c Delete jack support
Remove all support for running jack.

Bug: 65302138
Test: m -j checkbuild
Change-Id: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
Merged-In: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
(cherry picked from commit 5db5d31d73)
2017-10-02 18:06:56 +00:00
Bowgo Tsai
92b8f67f4f Merge "Do not remove init.recovery.*.rc in recovery root" am: f184554771 am: 4cd430cb3e
am: 6f2e41dbdf

Change-Id: Ie05b980984e09ab691faa427a0eb04713c3c8e2d
2017-09-26 07:37:25 +00:00
Bowgo Tsai
4cd430cb3e Merge "Do not remove init.recovery.*.rc in recovery root"
am: f184554771

Change-Id: I73f9681e2af81e2873cf732e2f47d8d547a87e87
2017-09-26 07:32:24 +00:00
Bowgo Tsai
b5b3bc6d5c Do not remove init.recovery.*.rc in recovery root
When making recovery image, it removes init*.rc under recovery root,
then copies init.recovery.*.rc from normal root to recovery root.

However, init.recovery.*.rc shouldn't exist in normal root because it
is only needed for recovery mode.

This change removes init*.rc under recovery root as before but skips
removing init.recovery.*.rc. So in device/*/*.mk, we can just copy
init.recovery.*.rc to recovery root without coping it to normal root
directory.

Bug: 65570851
Test: normal/recovery boot sailfish, checks init.recovery.sailfish.rc
      only exists in recovery root.
Change-Id: I069596fe2192d9dcbbdf2b77079b93ede3ed39ae
2017-09-25 18:39:22 +08:00
Michael Schwartz
dcfe8aa775 Merge "Include vbmeta.img into <product>-img.zip" into oc-mr1-dev
am: c5027d6e7d

Change-Id: Ie8ec82820946766aea85a43757f0507a42ea0ef9
2017-09-06 16:58:37 +00:00
Bowgo Tsai
6bbb11a620 Include vbmeta.img into <product>-img.zip
Bug: 65227202
Test: make dist, checks vbmeta.img is included in <product>-img.zip
Change-Id: I3e09f036441bcf7e98d8f76360df1e17466ae38e
2017-09-06 09:30:32 +08:00
Tao Bao
5b0ebe7304 Merge "Pack system/update_engine/scripts into otatools.zip." am: 27bfc86d8b am: cdfabdbf85
am: 5b8e0ffaf9

Change-Id: I3b1565e7b26a2ab215ff30bc9110df436899a07a
2017-09-01 17:06:07 +00:00
Tao Bao
cdfabdbf85 Merge "Pack system/update_engine/scripts into otatools.zip."
am: 27bfc86d8b

Change-Id: I9899eb544f48e4556117b4c83153a76a3ef72cb9
2017-09-01 16:54:07 +00:00
Tao Bao
27bfc86d8b Merge "Pack system/update_engine/scripts into otatools.zip." 2017-09-01 16:45:08 +00:00
Bo Hu
1d59beefeb Merge "sdk: add vendor-qem.img into the deps list"
am: cfde9a84bc

Change-Id: I7d28167ff9578ad8c8dc73a4d8a6d9252cfb2cfb
2017-09-01 00:24:57 +00:00
bohu
18d1868580 sdk: add vendor-qem.img into the deps list
if it exists. Fix master-without-vendor sdk_x86-sdk build

Change-Id: I5656e7124d30e71120044cce668c54793f77208a
Merged-In: I5656e7124d30e71120044cce668c54793f77208a
(cherry picked from commit a508578811)
2017-08-31 16:57:44 -07:00
Tao Bao
3f4ea7cb88 Pack system/update_engine/scripts into otatools.zip.
The scripts will be needed by OTA releasetools, for parsing A/B OTA
payload.

Bug: 65261072
Test: `m otatools-package` and check for system/update_engine/scripts.
Change-Id: I5cb54561a5fb0454a37879ca20afa95b82ffdefe
2017-08-31 16:42:38 -07:00
Andreas Gampe
259b08f555 Merge "Build: Change SANITIZE_LITE install settings" am: 6942dfb65e am: 9356ad9d5d
am: a3985ada91

Change-Id: I997dce795b696893c6464a79aeeaf40a30b8efb6
2017-08-31 17:34:09 +00:00
Andreas Gampe
9356ad9d5d Merge "Build: Change SANITIZE_LITE install settings"
am: 6942dfb65e

Change-Id: I81c572ca5866e3ca07d26f948bb44d8c9deabe74
2017-08-31 17:28:36 +00:00
Andreas Gampe
4ed21d10e8 Build: Change SANITIZE_LITE install settings
Under SANITIZE_LITE, the default app_process is not instrumented.
Embedding sanitized libraries into APKs will lead to crashing apps.
So move second-stage APKs to /data/asan.

The tradeoff is that for now we won't run these sanitized binaries.
Adding support for that is future work.

Also do not do a rebuild of the boot image. This would invalidate
the first-stage results. Note that this is technically dangerous,
as stack overflow guard sizes will not be adapted for ASAN runs.
However, this is a general incompatibility.

Also do not rebuild system_other. Apps are not rebuilt, so it will
create an empty image.

(cherry picked from commit 481660ef34)

Bug: 36458146
Test: m && m SANITIZE_TARGET=address SANITIZE_LITE=true
Merged-In: I3898bc53cad264529f126e6bf0af9c6ca1736877
Change-Id: I3898bc53cad264529f126e6bf0af9c6ca1736877
2017-08-31 08:56:18 -07:00
Bowgo Tsai
02a84c762d Merge "Copy adbd from system/bin to recovery/root/sbin"
am: 6803a3444a

Change-Id: Id28c6965e05ca828cc736621ddcfa14606753644
2017-08-31 06:30:35 +00:00
Hung-ying Tyan
bc134621d6 Merge "Fix potential build break" into oc-mr1-dev
am: 9d96622be4

Change-Id: I546c4dc1d74917ddfa2b74f8876160ecf4a9956a
2017-08-27 23:56:30 +00:00
Hung-ying Tyan
b260f0d557 Fix potential build break
When BOARD_PROPERTY_OVERRIDES_SPLIT_ENABLED is enabled, the build system
may attempt to create a symlink in TARGET_ROOT_OUT before TARGET_ROOT_OUT
is created. Also make the symbolic link depend on
INSTALLED_DEFAULT_PROP_TARGET so that the symbolic link is properly created
when only bootimage is made.

Bug: 63645797
Test: on non-A/B device, make installclean && make bootimag and then verify
      that the symbolic link exists at $(TARGET_ROOT_OUT)/default.prop
Change-Id: Ied7b32abd7a5fd5456c4cb5ff68a56debe6254b7
(cherry picked from 58c1b0426f)
2017-08-25 23:24:24 +08:00
Bowgo Tsai
9a05dca429 Copy adbd from system/bin to recovery/root/sbin
This change will be submitted with other changes moving adbd from
root/sbin to system/bin. We need to copy it specifically to recovery root.
Previously it was copied by rsync $(TARGET_ROOT_OUT) $(TARGET_RECOVERY_OUT).

Bug: 63910933
Test: normal boot sailfish, checks adb works
Test: recovery boot sailfish, checks adb works
Test: normal boot bullhead, checks adb works
Test: recovery boot bullhead, checks adb works

Change-Id: Ib49605f97a190aec2648cb000d1159b6e15db673
Merged-In: Ib49605f97a190aec2648cb000d1159b6e15db673
(cherry picked from commit 3147e7cfab)
2017-08-24 14:27:49 +08:00
Bowgo Tsai
3034b9ae90 resolve merge conflicts of b726558507 to oc-mr1-dev-plus-aosp
Change-Id: I0e2f94ac6d6fce944e5b421e4c24a8a73ea03651
2017-08-18 12:22:13 +08:00
TreeHugger Robot
b726558507 Merge "Copy adbd from system/bin to recovery/root/sbin" into oc-mr1-dev 2017-08-18 03:52:36 +00:00
Narayan Kamath
e8a37e2ef8 Merge "apkcerts: Add information about the compressed state of the APK." into oc-mr1-dev
am: fd6cbbe609

Change-Id: Ia7e22ad69d1149f80107db12de53136b4b15bc8d
2017-08-15 08:35:57 +00:00
Narayan Kamath
fd6cbbe609 Merge "apkcerts: Add information about the compressed state of the APK." into oc-mr1-dev 2017-08-15 08:28:25 +00:00
Bowgo Tsai
3147e7cfab Copy adbd from system/bin to recovery/root/sbin
This change will be submitted with other changes moving adbd from
root/sbin to system/bin. We need to copy it specifically to recovery root.
Previously it was copied by rsync $(TARGET_ROOT_OUT) $(TARGET_RECOVERY_OUT).

Bug: 63910933
Test: normal boot sailfish, checks adb works
Test: recovery boot sailfish, checks adb works
Test: normal boot bullhead, checks adb works
Test: recovery boot bullhead, checks adb works

Change-Id: Ib49605f97a190aec2648cb000d1159b6e15db673
2017-08-15 11:33:17 +08:00
Ivan Lozano
e742c1bffc Merge "Don't append _asan to non-asan build flavors." am: 1782e17ef2 am: 781469ac0a am: 5930ad5195
am: 1e0ff197ca

Change-Id: Ib28bc8b03043c1ef1e3117f990eb3799d6f76ef6
2017-08-14 22:54:50 +00:00
Steve Muckle
8925146bbb resolve merge conflicts of d4eb7a322c to oc-dr1-dev-plus-aosp
am: 1ff81a85b6

Change-Id: Ic0fb54f2a795dea4ef50c6bdde149d808032970a
2017-08-14 22:53:51 +00:00
Ivan Lozano
1e0ff197ca Merge "Don't append _asan to non-asan build flavors." am: 1782e17ef2 am: 781469ac0a
am: 5930ad5195

Change-Id: I6f73c3f2f74c8613941331d49bdba6717a220c02
2017-08-14 22:41:20 +00:00
Steve Muckle
1ff81a85b6 resolve merge conflicts of d4eb7a322c to oc-dr1-dev-plus-aosp
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Ibca2aa11ede8142639f919eebeaf879236f82c8b
2017-08-14 15:17:58 -07:00
bohu
a508578811 sdk: add vendor-qem.img into the deps list
if it exists. Fix master-without-vendor sdk_x86-sdk build

Change-Id: I5656e7124d30e71120044cce668c54793f77208a
2017-08-14 14:52:20 -07:00
Ivan Lozano
5930ad5195 Merge "Don't append _asan to non-asan build flavors." am: 1782e17ef2
am: 781469ac0a

Change-Id: I4ce31239411d47b05caee51d051c121786f15083
2017-08-14 21:14:18 +00:00
Ivan Lozano
781469ac0a Merge "Don't append _asan to non-asan build flavors."
am: 1782e17ef2

Change-Id: I8f7aaf1152e7e964e7983d91308181077dc7c6f4
2017-08-14 21:10:39 +00:00
Steve Muckle
d4eb7a322c resolve merge conflicts of b145b04127 to stage-aosp-master
am: fa6595001a

Change-Id: I447e4c629c004fe394e0aca346f89fe4662cb214
2017-08-14 21:10:15 +00:00
Steve Muckle
fa6595001a resolve merge conflicts of b145b04127 to stage-aosp-master
Test: I solemnly swear I tested this conflict resolution.
Change-Id: Ice4e7c23c5a6e0ba4aa085e82c121d472f89209a
2017-08-14 13:00:27 -07:00
Ivan Lozano
1782e17ef2 Merge "Don't append _asan to non-asan build flavors." 2017-08-14 18:47:43 +00:00
Treehugger Robot
b145b04127 Merge "Move build-image-kernel-modules out of recovery macro" 2017-08-14 16:24:31 +00:00
Ivan Lozano
0f71db3248 Don't append _asan to non-asan build flavors.
Right now we add the '_asan' suffix to the build flavor whenever
SANITIZE_TARGET is defined. This patch ensures the suffix is only
added when SANITIZE_TARGET=address.

Test: Checked flavor of SANITIZE_TARGET=address and integer_overflow
builds.
Bug: 30969751
Bug: 64561273

Change-Id: Ie20340f81b395e0b6b5f8086350bbc20f83d5fa4
2017-08-14 08:25:03 -07:00
Narayan Kamath
6a4bd696f6 apkcerts: Add information about the compressed state of the APK.
We add a compressed="$extension" attribute to an APK's entry if it's
compressed.

Bug: 64531948
Test: make dist

Change-Id: Ic3f95ed77f0bb16dec825bae944c70ee2d130657
2017-08-14 14:50:28 +01:00
TreeHugger Robot
025d5d910b Merge "treble_common.mk: add the vbmeta.img to disable verification" into oc-mr1-dev 2017-08-12 04:00:18 +00:00
Bowgo Tsai
9afc0d5349 treble_common.mk: add the vbmeta.img to disable verification
AVB should be disabled for Treble VTS. Otherwise, OEM devices cannot boot
the generic system.img provided by Google.

Bug: 64055917
Test: Compiles and boot a device with the vbmeta.img
Change-Id: I0eaae7beebc8b901d0b4766c2cdc34a27ad02b59
2017-08-02 21:15:26 +08:00
Bo Hu
d80d922083 Merge "Revert "Revert "emulator: create qemu images for system,vendor""" am: 5af2027e34 am: abd33cdba6
am: 1b86b7581c

Change-Id: I0c8bf4c8db0cb783c7116d2f9d0734b98341401a
2017-08-01 23:30:23 +00:00
Bo Hu
1b86b7581c Merge "Revert "Revert "emulator: create qemu images for system,vendor""" am: 5af2027e34
am: abd33cdba6

Change-Id: I4ec03f912aa03156114859432f4331f50b5d60b2
2017-08-01 23:26:17 +00:00
Bo Hu
abd33cdba6 Merge "Revert "Revert "emulator: create qemu images for system,vendor"""
am: 5af2027e34

Change-Id: I61b9598d6b69d74a42ad0dc445c866e3034ff638
2017-08-01 23:22:17 +00:00
Bo Hu
bc88ff69cf Revert "Revert "emulator: create qemu images for system,vendor""
This reverts commit 9b99ddc8a5.
and add syste-qemu.img to the dependency list of sdk target

BUG: 64235252

Test: build sdk target successfully

(cherry picked from commit f0d50bbef0)

Change-Id: I813233c7c3f06eb1eca18aad5ea890a55814eb1b
2017-08-01 14:34:15 -07:00
Bo Hu
f0d50bbef0 Revert "Revert "emulator: create qemu images for system,vendor""
This reverts commit 9b99ddc8a5.
and add syste-qemu.img to the dependency list of sdk target

Test: build sdk target successfully

Change-Id: Idb0bee56275f3bfe33ba7d29463e4b8e0699ec33
2017-08-01 13:00:53 -07:00
Bo Hu
b0ca7302aa Merge "Revert "emulator: create qemu images for system,vendor"" am: a2ea9626e5 am: b7e5cf8b6d
am: 471e2ba1d6

Change-Id: I89357469dfcb50f03771e733a41ea704801ce044
2017-08-01 07:07:07 +00:00
Bo Hu
471e2ba1d6 Merge "Revert "emulator: create qemu images for system,vendor"" am: a2ea9626e5
am: b7e5cf8b6d

Change-Id: I2929dae53386a287864d3166d707bfe9137a7803
2017-08-01 07:03:36 +00:00
Bo Hu
b7e5cf8b6d Merge "Revert "emulator: create qemu images for system,vendor""
am: a2ea9626e5

Change-Id: I0118d5355aa3ffcd728b22e964609f02561df2db
2017-08-01 07:00:06 +00:00
Bo Hu
9b99ddc8a5 Revert "emulator: create qemu images for system,vendor"
This reverts commit b5d0503758.

Change-Id: Ie46a3a3dd99dec42673b3e3bd5b9085ca0480a8d
2017-08-01 06:50:07 +00:00
bohu
69121fd68c Merge "emulator: create qemu images for system,vendor" am: 571e5d47b7 am: dbbd3311ae
am: fe3b305516

Change-Id: I5cb77655098ff078c4677e083843e5d7e4a57f07
2017-08-01 02:12:16 +00:00
bohu
fe3b305516 Merge "emulator: create qemu images for system,vendor" am: 571e5d47b7
am: dbbd3311ae

Change-Id: I00b15a3ab05ce7d64fad7e9700169fd67ae699fb
2017-08-01 01:58:40 +00:00
bohu
dbbd3311ae Merge "emulator: create qemu images for system,vendor"
am: 571e5d47b7

Change-Id: Id80d452017384769146879bec205f39da79e37ae
2017-08-01 01:56:12 +00:00
bohu
b5d0503758 emulator: create qemu images for system,vendor
For raw system.img and vendor.img do not have
partition table and init refuses to mount them
in first stage mounting.

For emulator build:
create partitioned system-qemu.img for system.img;
create partitioned vendor-qemu.img for vendor.img
if applicable.

Change-Id: I64fdcdafc303cf2f74a1e96653e7afe259f0af98
2017-07-31 16:28:40 -07:00
Xu Chao
2b04bf4725 Move build-image-kernel-modules out of recovery macro
build-image-kernel-modules is defined under recovery macro
when build without recovery,the driver kos are not packed
into the vendor image

Test: build with TARGET_NO_RECOVERY on and set ko to be build
in BOARD_VENDOR_KERNEL_MODULES to see if kos are packed into
vendor image

Change-Id: I162ccb2fe50c09ece07b6b07e416721985228006
2017-07-21 15:25:17 -07:00
Steve Muckle
fb2714e61c fix builds on macOS when kernel modules are used
The mac implementation of sed has different requirements for the -i
option. Instead of using that, just redirect the output to the final
location of modules.dep, since it's being copied in the very next
line anyway.

Bug: 38268091
Test: run build with kernel modules on macOS
Merged-In: I49e4a1a69f01139ef47711ab1223d3a8e5cda568
Change-Id: I49e4a1a69f01139ef47711ab1223d3a8e5cda568
2017-07-21 15:24:51 -07:00
Tri Vo
ecf83a839f package modules.alias onto device
Test: device builds and boots, vendor/lib/modules/modules.alias appears
on device.
Merged-In: I668a396ccd11e4eb599e1f6aa2906400ac78f02b
Change-Id: I668a396ccd11e4eb599e1f6aa2906400ac78f02b
2017-07-21 15:24:21 -07:00
Jeff Gaston
a72da88c31 Merge "Update to latest jacoco usage" am: 483fae7430 am: 6264b662f3
am: 7ce0d9c1e7

Change-Id: Id57cc47edc61a7e30dc4fcf4f113ee9ce85a4b7f
2017-07-17 20:52:40 +00:00
Jeff Gaston
7ce0d9c1e7 Merge "Update to latest jacoco usage" am: 483fae7430
am: 6264b662f3

Change-Id: Icd22319fb34575925c140e619b5f099fa68b0ab0
2017-07-17 20:48:40 +00:00
Jeff Gaston
6264b662f3 Merge "Update to latest jacoco usage"
am: 483fae7430

Change-Id: Ibc94d5ba6db7690441825dd655b6cb26d989b78d
2017-07-17 20:44:10 +00:00
Jeff Gaston
483fae7430 Merge "Update to latest jacoco usage" 2017-07-17 20:36:39 +00:00
Tianjie Xu
a4caab580c Merge "Generate brotli compressed {}.new.dat for full OTA" am: 1b28eca1a1 am: a07a04c737
am: 4b53a17756

Change-Id: If03919b9012f4a693e895b02a0c148eeb0a4da5e
2017-07-14 23:34:39 +00:00
Tianjie Xu
4b53a17756 Merge "Generate brotli compressed {}.new.dat for full OTA" am: 1b28eca1a1
am: a07a04c737

Change-Id: I5f2b92791a759def118c6aa70a3e0777a9e8da85
2017-07-14 23:30:32 +00:00
Tianjie Xu
a07a04c737 Merge "Generate brotli compressed {}.new.dat for full OTA"
am: 1b28eca1a1

Change-Id: I3474e8efb634513fbc4876e5c272cf56b3443e12
2017-07-14 23:27:21 +00:00
Jeff Gaston
aaae43cd24 Update to latest jacoco usage
Bug: 36792868
Test: EMMA_INSTRUMENT_STATIC=true m -j

Change-Id: I419b543283b52be9a72f5c6b10e4cbea68782174
2017-07-14 13:04:05 -07:00
Tianjie Xu
b0a29ad8c2 Generate brotli compressed {}.new.dat for full OTA
Brotli has a better compression ratio than deflation. So for non-AB
full OTA, we can compress the new.dat with brotli first and store it
in the zip package.
This increase the OTA generation time by ~5 minutes for a full OTA
(measured based on 2.0G system.new.dat)

Bug: 34220646
Test: Generate a full OTA for bullhead
Change-Id: I9c0550af8eafcfa68711f74290c8e2d05a96648f
2017-07-14 10:53:21 -07:00
Howard Chen
f07747f71f Merge "Add a make maco to convert string to upper case" am: 8eff2d7c8e am: fd380f20cb
am: 0b2aebab08

Change-Id: I50966ed3c8e3f6bee41484e2d7a77d5471f0bf89
2017-07-06 03:55:24 +00:00
Howard Chen
0b2aebab08 Merge "Add a make maco to convert string to upper case" am: 8eff2d7c8e
am: fd380f20cb

Change-Id: Id2f55d548088375eaf38f6b809be9e804adaf83b
2017-07-06 03:52:53 +00:00
Howard Chen
fd380f20cb Merge "Add a make maco to convert string to upper case"
am: 8eff2d7c8e

Change-Id: I86260216cea1c2a6d46599481e19e0063ae576a8
2017-07-06 03:50:54 +00:00
Howard Chen
8eff2d7c8e Merge "Add a make maco to convert string to upper case" 2017-07-06 03:46:07 +00:00
Bowgo Tsai
412138338e Merge "Align size of vbmeta image to 4k boundary" am: efb6fddf39
am: 95202bcba6

Change-Id: I9b9a5faf158157fbb34d18c4e7107e137411634d
2017-07-06 01:00:41 +00:00
Bowgo Tsai
95202bcba6 Merge "Align size of vbmeta image to 4k boundary"
am: efb6fddf39

Change-Id: I4ace791408c92f55bc55f2fbf72dfef3ab363a70
2017-07-06 00:58:16 +00:00
Treehugger Robot
efb6fddf39 Merge "Align size of vbmeta image to 4k boundary" 2017-07-06 00:29:52 +00:00
Colin Cross
373a13c0ca Merge "Provide make variables for java binaries" am: 5e19557eb9 am: e885ccf0df
am: d8a22925f5

Change-Id: I8681d9c889018fe656f5ef4cc380d1a3af8c325f
2017-07-01 01:45:16 +00:00
Colin Cross
d8a22925f5 Merge "Provide make variables for java binaries" am: 5e19557eb9
am: e885ccf0df

Change-Id: I28f7e020e23c629ef303222c3a8489fc6aa541d6
2017-07-01 01:40:45 +00:00
Colin Cross
e885ccf0df Merge "Provide make variables for java binaries"
am: 5e19557eb9

Change-Id: Ib1be7da98214e3b6c27867b80005e18cc68a0d33
2017-07-01 01:36:14 +00:00
Colin Cross
0851df8c82 Provide make variables for java binaries
Replace java -> $(JAVA), etc. to prepare for moving java binaries
out of the path and using full paths to them.

Test: builds
Bug: 62956999
Change-Id: I5dfcd0d4e855ecde69cd127169e9545e59723d12
2017-07-01 01:03:14 +00:00
Bowgo Tsai
cea12fa14d Merge "Align size of vbmeta image to 4k boundary" into oc-dr1-dev
am: 415024dcba

Change-Id: I5ddfec3ba7bccd028255ae9729b29606ab220cfd
2017-06-30 16:39:41 +00:00
Bowgo Tsai
0556231cae Align size of vbmeta image to 4k boundary
Adding option "--padding_size 4096" in BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS
instead of INTERNAL_AVB_MAKE_VBMETA_IMAGE_ARGS. The former setting will
be propogated to `make dist` while the latter is only used for `make`.

Bug: 38454093
Test: `make dist` and check vbmeta.img is being padded.
Merged-In: I929288b218761a4637a2a2ef0679d3ff85c70731
Change-Id: I929288b218761a4637a2a2ef0679d3ff85c70731
(cherry picked from commit 9e95beab31)
2017-07-01 00:34:02 +08:00
Bowgo Tsai
9e95beab31 Align size of vbmeta image to 4k boundary
Adding option "--padding_size 4096" in BOARD_AVB_MAKE_VBMETA_IMAGE_ARGS
instead of INTERNAL_AVB_MAKE_VBMETA_IMAGE_ARGS. The former setting will
be propogated to `make dist` while the latter is only used for `make`.

Bug: 38454093
Test: `make dist` and check vbmeta.img is being padded.
Change-Id: I929288b218761a4637a2a2ef0679d3ff85c70731
2017-06-30 12:13:15 +08:00
Howard Chen
b83b205265 Add a make maco to convert string to upper case
There's already a to-lower function. Add a to-upper function to make
it complete.

Bug:36012197
Test: `make` pass, flash images from $OUT and boot device with chain
partitions

Change-Id: I39fe8c277a3cf6b87fc3c411eeab2fa5fb40007b
2017-06-29 16:18:47 +08:00
Tao Bao
47743957f3 Merge "Allow packing custom radio images into target_files zip." am: 9ea6a8b817 am: ce10b6e2f3
am: 1612f02ff2

Change-Id: If03509584275c1c0fc1f72f44cfb8fbfdfd4125b
2017-06-29 03:22:35 +00:00
Tao Bao
1612f02ff2 Merge "Allow packing custom radio images into target_files zip." am: 9ea6a8b817
am: ce10b6e2f3

Change-Id: I3b6f7ade42f58baa722e2ee3df81efac48a5b653
2017-06-29 03:19:02 +00:00
Tao Bao
ce10b6e2f3 Merge "Allow packing custom radio images into target_files zip."
am: 9ea6a8b817

Change-Id: Ifdcdfa2214e4fa75bb0c7a5df1cb1796814fa7bc
2017-06-29 03:16:17 +00:00
Hung-ying Tyan
331fd11216 Merge "Move /default.prop to /system/etc/prop.default" into oc-dr1-dev
am: 3b7460eda9

Change-Id: I8b610498ddae48f93e7d9e23225b7361d4e0f8b7
2017-06-28 06:31:17 +00:00
TreeHugger Robot
3b7460eda9 Merge "Move /default.prop to /system/etc/prop.default" into oc-dr1-dev 2017-06-28 06:28:10 +00:00
Tao Bao
95a95c3a5e Allow packing custom radio images into target_files zip.
Radio images are added to INSTALLED_RADIOIMAGE_TARGET, which by default
will be packed under RADIO/ in a target_files zip. This CL introduces
BOARD_PACK_RADIOIMAGES that allows additionally copying them into
IMAGES/, which will then be included into <product>-img.zip.

Bug: 62195105
Test: Define BOARD_PACK_RADIOIMAGES and `m dist`. Check the generated
      target_files zip and <product>-img.zip.
Change-Id: I3deafd2dfecd1d4dbfdfc2d002fc40ef22fb60ea
2017-06-27 13:50:12 -07:00
Hung-ying Tyan
7eb6a926ad Move /default.prop to /system/etc/prop.default
This patch tries to fix the problem where the default properties need
to go with the system image especially on non-AB devices where
/default.prop is on the ramdisk image. A symlink is created at
/default.prop for backward compatibility.

Bug: 37815285
Test: Tested with ag/2416542. Booted pixel phones, checked the location
      of prop.default, verified the symlink, checked a few properties
      (via adb shell getprop) and manually tested a few apps (Camera,
      Maps etc).
      sign_target_files_apks.py was tested with:
      sign_target_files_apks -o -e DynamiteLoader.apk= -e DynamiteModulesA.apk= \
          -e DynamiteModulesB.apk= -e DynamiteModulesC.apk= -e DynamiteModulesD.apk= \
          -e GoogleCertificates.apk= out/dist/*-target_files-*.zip signed-target_files.zip
      Booted to recovery and ran 'adb sideload' successfully.
Change-Id: I1a9a2ba49c8252afc13ced3dea71253afbd3091e
Merged-In: I1a9a2ba49c8252afc13ced3dea71253afbd3091e
(cherry-picked from 4fbbe4578bb10d54292d9b243edf4999fddf1c93)
2017-06-27 15:10:32 +08:00
Hung-ying Tyan
f829b40c48 Move /default.prop to /system/etc/prop.default
This patch tries to fix the problem where the default properties need
to go with the system image especially on non-AB devices where
/default.prop is on the ramdisk image. A symlink is created at
/default.prop for backward compatibility.

Bug: 37815285
Test: Tested with ag/2416542. Booted pixel phones, checked the location
      of prop.default, verified the symlink, checked a few properties
      (via adb shell getprop) and manually tested a few apps (Camera,
      Maps etc).
      sign_target_files_apks.py was tested with:
      sign_target_files_apks -o -e DynamiteLoader.apk= -e DynamiteModulesA.apk= \
          -e DynamiteModulesB.apk= -e DynamiteModulesC.apk= -e DynamiteModulesD.apk= \
          -e GoogleCertificates.apk= out/dist/*-target_files-*.zip signed-target_files.zip
      Booted to recovery and ran 'adb sideload' successfully.
Change-Id: I1a9a2ba49c8252afc13ced3dea71253afbd3091e
2017-06-27 15:05:17 +08:00
Chris Fries
ec462e6f90 Merge "Makefile: Add avbtool to INTERNAL_USERIMAGES_DEPS" am: ccac0f861b am: ba0be93555
am: abd4388b4c

Change-Id: Ife96fb48d2547136559d18ef7412f3939bbdf852
2017-06-21 23:19:13 +00:00
Chris Fries
abd4388b4c Merge "Makefile: Add avbtool to INTERNAL_USERIMAGES_DEPS" am: ccac0f861b
am: ba0be93555

Change-Id: I1b6a9b8f05d10738267a51da65bd404242885e6c
2017-06-21 23:16:31 +00:00
Chris Fries
df0387ddab Makefile: Add avbtool to INTERNAL_USERIMAGES_DEPS
.. in order to let the system_other image use it.

Bug: 33203383 Can't build target on mac
Change-Id: Iac2faf0ebdcc933675afbec2301d5d455aa33501
2017-06-21 16:19:35 -05:00
Colin Cross
08447ecb65 Merge "Add make sync target" am: 564ce0fa53 am: 5d848ba50a
am: 38e8c8bc8c

Change-Id: Icb76f4f3aebdc181c29e6ada0e60e138b21d8b5f
2017-06-21 03:06:46 +00:00
Colin Cross
38e8c8bc8c Merge "Add make sync target" am: 564ce0fa53
am: 5d848ba50a

Change-Id: I384460e7373aec904a4779d8af1648f20c004ff8
2017-06-21 03:00:47 +00:00
Treehugger Robot
564ce0fa53 Merge "Add make sync target" 2017-06-21 02:42:28 +00:00
Bowgo Tsai
c1ccae5009 Merge "Use make functions to convert a text to lower case" am: cd46f1012e am: 5a7d87afce
am: 98e356910f

Change-Id: I4b2676842f25f4bc4e59c8be307892f22e53de95
2017-06-21 02:23:58 +00:00
Bowgo Tsai
fbcd0412c7 Use make functions to convert a text to lower case
We cannot cache the result of ($shell ...) and we have to run these on
every build even if we don't have to re-read the makefiles. Replace it
with make functions $(substr $(substr ... )).

Bug: 38399657
Test: `make` pass, flash images from $OUT and boot device with chain partitions
Merged-In: I6d4ff8e487931ba25008a2a881401a8951d4049e
Change-Id: I6d4ff8e487931ba25008a2a881401a8951d4049e
(cherry picked from commit e615afd6d0)
2017-06-21 10:22:59 +08:00
Bowgo Tsai
f636a80888 AVB: support chain partition signing
Current build system will include AVB metadata from each partition and
store them into /vbmeta partiton when BOARD_AVB_ENABLE is set, which makes
each partition tightly-coupled.

Add the support for 'chain partition':
  - The vbmeta of each partition is stored on the same partition itself.
  - The public key used to verify each partition is stored in /vbmeta.

For example, the following build variables are required to enable chain
partition for system partition:
  - BOARD_AVB_SYSTEM_KEY_PATH := path/to/system_private_key
  - BOARD_AVB_SYSTEM_ALGORITHM := SHA512_RSA8192
  - BOARD_AVB_SYSTEM_ROLLBACK_INDEX := 1
  - BOARD_AVB_SYSTEM_ROLLBACK_INDEX_LOCATION := 2

The corresponding settings will be added into META/misc_info.txt for
build_image.py and/or add_img_to_target_files.py:
  - avb_system_key_path=path/to/system_private_key
  - avb_system_algorithm=SHA512_RSA8192
  - avb_system_add_hashtree_footer_args=--rollback_index 1
  - avb_system_rollback_index_location=2

To enable chain partition for other partitions, just replace SYSTEM with
BOOT, VENDOR and/or DTBO in the build variables.

Also switch from  `avbtool make_vbmeta_image --setup_rootfs_from_kernel system.img ...`
to `avbtool add_hashtree_footer --image system.img --setup_as_rootfs_from_kernel...`
when BOARD_BUILD_SYSTEM_ROOT_IMAGE is true. This works for both chained
and no-chained:
  - chained: `avbtool add_hashtree_footer --setup_as_rootfs_from_kernel` will
    add dm-verity kernel cmdline descriptor to system.img
  - no-chained: `avbtool make_vbmeta_image --include_descriptors_from_image
    system.img` will include the kernel cmdline descriptor from system.img into
    vbmeta.img

Bug: 38399657
Test: `make` pass, flash images from $OUT and boot device without chain partitions
Test: `make` pass, flash images from $OUT and boot device with chain partitions
Test: `make dist` pass, flash images from TF.zip and boot device without chain partitions
Test: `make dist` pass, flash images from TF.zip and boot device with chain partitions
Test: follow the same steps in
      https://android-review.googlesource.com/#/c/407572/

Change-Id: I344f79290743d7d47b5e7441b3a21df812a69099
Merged-In: I344f79290743d7d47b5e7441b3a21df812a69099
(cherry picked from commit 3e599ead66)
2017-06-21 10:22:38 +08:00
Bowgo Tsai
98e356910f Merge "Use make functions to convert a text to lower case" am: cd46f1012e
am: 5a7d87afce

Change-Id: I5da050178795dce0333b74ca91a7c18968ea5bd7
2017-06-21 02:18:31 +00:00
Colin Cross
91a52277b0 Add make sync target
make sync will build everything necessary to adb sync system
and vendor, without wasting time rebuilding system.img and
vendor.img.

Test: m -j sync
Change-Id: I91c0012eed6d58a338393cc375056a30e2a24b09
2017-06-20 16:57:52 -07:00
Bowgo Tsai
e615afd6d0 Use make functions to convert a text to lower case
We cannot cache the result of ($shell ...) and we have to run these on
every build even if we don't have to re-read the makefiles. Replace it
with make functions $(substr $(substr ... )).

Bug: 38399657
Test: `make` pass, flash images from $OUT and boot device with chain partitions
Change-Id: I6d4ff8e487931ba25008a2a881401a8951d4049e
2017-06-20 17:44:00 +08:00
Bowgo Tsai
f184e3a35b Merge "AVB: support chain partition signing" am: 0effed4b94 am: dcad0945ab
am: abbba2c832

Change-Id: I0ffdd31bad14c42afddf8180bf7d1e5e8a0f841d
2017-06-20 07:10:04 +00:00
Bowgo Tsai
abbba2c832 Merge "AVB: support chain partition signing" am: 0effed4b94
am: dcad0945ab

Change-Id: I5bc9f2dcc94b2db846d9956c0def6b3c9910b2c5
2017-06-20 07:07:33 +00:00
TreeHugger Robot
7f0e79b146 Merge "Align size of vbmeta image to 4k boundary" into oc-dr1-dev 2017-06-14 04:13:42 +00:00
Bowgo Tsai
e408b4ceb2 Merge "Align size of vbmeta image to 4k boundary" am: 6b126fb7bc
am: e7151a57aa

Change-Id: I0a4dbbe18574e1c2037b185c7e3794033da2c974
2017-06-14 02:14:41 +00:00
Bowgo Tsai
53cf999923 Align size of vbmeta image to 4k boundary
Adding option "--padding_size 4096" when making vbmeta.img.

Bug: 38454093
Test: build vbmeta.img and check it's being padded.
Change-Id: Id3ba6bf9998755bae75ec8b272ceccf59f4b8666
Merged-In: Id3ba6bf9998755bae75ec8b272ceccf59f4b8666
(cherry picked from commit 7cd30041e9)
2017-06-14 10:14:24 +08:00
Jeff Vander Stoep
716b768594 Build split file_contexts for recovery
am: 4ff042c4aa

Change-Id: I9eff1afef9e427c2e97a64b663a029ef33a8ac4a
2017-06-13 18:00:03 +00:00
Jeff Vander Stoep
0b3fc37d7e Build split file_contexts for recovery
am: 4ff042c4aa

Change-Id: If9ff1b6b2ed152333eeb92a83d9bdbbacc431ed2
2017-06-13 17:59:05 +00:00
Jeff Vander Stoep
4ff042c4aa Build split file_contexts for recovery
Bug: 62564629
Test: build and flash marlin. Successfully switch between regular
    and recovery modes

Change-Id: I67ae2f59ca1868cfe777de0d4f0c4e3c2d99329d
2017-06-13 15:39:29 +00:00
Bowgo Tsai
3e599ead66 AVB: support chain partition signing
Current build system will include AVB metadata from each partition and
store them into /vbmeta partiton when BOARD_AVB_ENABLE is set, which makes
each partition tightly-coupled.

Add the support for 'chain partition':
  - The vbmeta of each partition is stored on the same partition itself.
  - The public key used to verify each partition is stored in /vbmeta.

For example, the following build variables are required to enable chain
partition for system partition:
  - BOARD_AVB_SYSTEM_KEY_PATH := path/to/system_private_key
  - BOARD_AVB_SYSTEM_ALGORITHM := SHA512_RSA8192
  - BOARD_AVB_SYSTEM_ROLLBACK_INDEX := 1
  - BOARD_AVB_SYSTEM_ROLLBACK_INDEX_LOCATION := 2

The corresponding settings will be added into META/misc_info.txt for
build_image.py and/or add_img_to_target_files.py:
  - avb_system_key_path=path/to/system_private_key
  - avb_system_algorithm=SHA512_RSA8192
  - avb_system_add_hashtree_footer_args=--rollback_index 1
  - avb_system_rollback_index_location=2

To enable chain partition for other partitions, just replace SYSTEM with
BOOT, VENDOR and/or DTBO in the build variables.

Also switch from  `avbtool make_vbmeta_image --setup_rootfs_from_kernel system.img ...`
to `avbtool add_hashtree_footer --image system.img --setup_as_rootfs_from_kernel...`
when BOARD_BUILD_SYSTEM_ROOT_IMAGE is true. This works for both chained
and no-chained:
  - chained: `avbtool add_hashtree_footer --setup_as_rootfs_from_kernel` will
    add dm-verity kernel cmdline descriptor to system.img
  - no-chained: `avbtool make_vbmeta_image --include_descriptors_from_image
    system.img` will include the kernel cmdline descriptor from system.img into
    vbmeta.img

Bug: 38399657
Test: `make` pass, flash images from $OUT and boot device without chain partitions
Test: `make` pass, flash images from $OUT and boot device with chain partitions
Test: `make dist` pass, flash images from TF.zip and boot device without chain partitions
Test: `make dist` pass, flash images from TF.zip and boot device with chain partitions
Test: follow the same steps in
      https://android-review.googlesource.com/#/c/407572/

Change-Id: I344f79290743d7d47b5e7441b3a21df812a69099
2017-06-13 17:45:10 +08:00
Bowgo Tsai
7cd30041e9 Align size of vbmeta image to 4k boundary
Adding option "--padding_size 4096" when making vbmeta.img.

Bug: 38454093
Test: build vbmeta.img and check it's being padded.
Change-Id: Id3ba6bf9998755bae75ec8b272ceccf59f4b8666
2017-06-13 11:31:06 +08:00
Tao Bao
88c9dddd0f Revert "Move /default.prop to /system/etc/prop.default"
This reverts commit fad00e4318.

init fails to read default.prop under recovery:
init: Couldn't load properties from /default.prop: Too many symbolic links encountered

Bug: 62525809
Change-Id: I133e9025693e3e01278ec73c8d08860fc89d314b
2017-06-12 17:00:42 +00:00
Hung-ying Tyan
fad00e4318 Move /default.prop to /system/etc/prop.default
This patch tries to fix the problem where the default properties need
to go with the system image especially on non-AB devices where
/default.prop is on the ramdisk image. A symlink is created at
/default.prop for backward compatibility.

Bug: 37815285
Test: Tested with ag/2376383. Booted pixel phones, checked the location
      of prop.default, verified the symlink, checked a few properties
      (via adb shell getprop) and manually tested a few apps (Camera,
      Maps etc).
      sign_target_files_apks.py was tested with:
      sign_target_files_apks -o -e DynamiteLoader.apk= -e DynamiteModulesA.apk= \
          -e DynamiteModulesB.apk= -e DynamiteModulesC.apk= -e DynamiteModulesD.apk= \
          -e GoogleCertificates.apk= out/dist/*-target_files-*.zip signed-target_files.zip

Change-Id: I1a9a2ba49c8252afc13ced3dea71253afbd3091e
2017-06-09 13:00:58 +08:00
Tao Bao
6d1b2bc139 Merge "Remove three board_avb_* args from META/misc_info.txt." am: 401b1d2509 am: 6466063839 am: 26912a3a57
am: f6737d7506

Change-Id: If0c59cc150e6b8dfa90548a39ce7e5bb5ac53c7b
2017-06-05 20:29:07 +00:00
Tao Bao
f6737d7506 Merge "Remove three board_avb_* args from META/misc_info.txt." am: 401b1d2509 am: 6466063839
am: 26912a3a57

Change-Id: Ief85e4efe05855b4486ed7e2f8bac22302ddd6a9
2017-06-05 20:24:06 +00:00
Tao Bao
3ebfddeabe Remove three board_avb_* args from META/misc_info.txt.
board_avb_algorithm and board_avb_key_path are overlapping with
avb_signing_args. In core/Makefile, only avb_signing_args (i.e.
INTERNAL_AVB_SIGNING_ARGS) will be used in the AVB-signing command. It
covers the contents in board_avb_{algorithm,key_path}. We should do the
same thing in tools/releasetools to avoid potential inconsistency.

This CL cleans up the logic in tools/releasetools, by always using
avb_signing_args. This also allows easier signing key replacement (so we
can replace the key/algorithm/signer in 'avb_signing_args').

board_avb_system_add_hashtree_footer_args is unused in releasetools
script, and the same information has been covered by
system_avb_add_hashtree_footer_args. This CL removes this arg as well.

Test: `m dist`. Then a) check the removed three args no longer exist in
      META/misc_info.txt; b) check that rebuilding images with
      add_img_to_target_files.py uses the same parameters.
Change-Id: I7db890b5c942de5b6868d8d1ebf937586d4729c0
2017-06-05 10:33:52 -07:00
Tao Bao
11401cee5d Merge "Support re-generating DTBO image from add_img_to_target_files.py." am: 4536e45f66 am: b88e3f20a6 am: cdabed4ee8
am: 891c29766e

Change-Id: If6aa956c2d5355c7ce0ab93cb9a2d4e93a629501
2017-06-02 22:46:44 +00:00
Tao Bao
891c29766e Merge "Support re-generating DTBO image from add_img_to_target_files.py." am: 4536e45f66 am: b88e3f20a6
am: cdabed4ee8

Change-Id: Ic890baa277142baf355c1196afd7705c117761a3
2017-06-02 22:39:44 +00:00
Tao Bao
c633ed0230 Support re-generating DTBO image from add_img_to_target_files.py.
This is a step to enable signing a given target_files zip with release
keys.

When calling sign_target_files_apks.py, we will delete all the entries
under IMAGES/ in order to re-generate them (with the proper release
keys). In order to support that, we need to pack everything in need into
TF.zip.

Steps to test the CL.
a) Choose a target that has both AVB and DTBO enabled.
 $ m dist

b) Check IMAGES/dtbo.img and PREBUILT_IMAGES/dtbo.img both exist in the
   generated out/dist/TF.zip.

c) Remove the entries under IMAGES/ from the generated TF.zip.
 $ zip -d TF.zip IMAGES/\*

d) Re-generate the images with TF.zip.
 $ build/make/tools/releasetools/add_img_to_target_files.py TF.zip

e) Check that IMAGES/dtbo.img is re-generated, and it's identical to the
   image in b). Note that by default the re-generated image will carry a
   different footer, because of the random salt. This CL is verified by
   specifying the same salt.

Bug: 38315721
Test: see above.
Change-Id: I0bdc4e1cd4800962dc3902ca550dad6a8ca56c78
2017-06-01 20:07:33 -07:00
Tao Bao
8edb3c0962 Merge "Pack avbtool into otatools.zip." am: db5fa05429 am: 308b234593 am: 0c2bc7a7b1
am: ffa864c5ed

Change-Id: I36969a8dbb5cc9663028b65d09c42551e5b54a77
2017-06-01 07:33:00 +00:00
Tao Bao
ffa864c5ed Merge "Pack avbtool into otatools.zip." am: db5fa05429 am: 308b234593
am: 0c2bc7a7b1

Change-Id: I1f15f62536e3030bee7fec0fdacb1ef8ee57a69e
2017-06-01 07:30:30 +00:00
Tao Bao
3cba374da2 Pack avbtool into otatools.zip.
Also pack the test keys for easier testing.

Bug: 38315721
Test: m otatools-package and avbtool is present in otatools.zip.
Change-Id: Ieb63bf3f4bc211ef1f48ab278cb01b70845d06da
2017-05-31 10:20:25 -07:00
Bowgo Tsai
b3ce1ea72b Merge "Support signing custom images with AVB HASH or AVB HASHTREE" am: fe7aeb1de7 am: 16b64cbb58 am: 3989b738b8
am: b4c268eb7b

Change-Id: I516f6d60361e5397d32de0537dc1b1fa7bcc46a3
2017-05-31 03:42:56 +00:00
Bowgo Tsai
b4c268eb7b Merge "Support signing custom images with AVB HASH or AVB HASHTREE" am: fe7aeb1de7 am: 16b64cbb58
am: 3989b738b8

Change-Id: I11393e1833db97301ffdd31ec3db0968e87c1a24
2017-05-31 03:38:24 +00:00
Treehugger Robot
fe7aeb1de7 Merge "Support signing custom images with AVB HASH or AVB HASHTREE" 2017-05-31 03:24:25 +00:00
TreeHugger Robot
48c8af949b Merge "Makefile: support build and avb signing of dtbo img" into oc-dev 2017-05-31 00:50:37 +00:00
Tao Bao
6343317767 Merge "Makefile: Add the dependency for BUILT_OTATOOLS_PACKAGE." am: c6ad99c926 am: f5529878f8 am: c7b91ee05a
am: e6e6557135

Change-Id: I80e06807eb1676b5cc6830a310289d388d710d68
2017-05-30 23:41:49 +00:00
Tao Bao
e6e6557135 Merge "Makefile: Add the dependency for BUILT_OTATOOLS_PACKAGE." am: c6ad99c926 am: f5529878f8
am: c7b91ee05a

Change-Id: I2db86c959abd5f65b6a51b97da9f7475e9e26838
2017-05-30 23:31:07 +00:00
TreeHugger Robot
290b8c71e4 Merge "Add the option to reserve headroom for partition images. This is useful for device with low disk space with different build variants." into oc-dev 2017-05-30 18:03:15 +00:00
Yueyao Zhu
161fe38009 Makefile: support build and avb signing of dtbo img
Test: make with corresponding configurations in BoardConfig.mk
- dtbo.img is copied to the OUT directory
- avbtool info_image --image dtbo.img shows avb hashes
- avbtool info_image --image vbmeta.img shows dtbo partition info

Bug: 37730955
Change-Id: If3edaab860926c743f18fd031c911b076eb09fab
(cherry picked from commit 211c90158c)
2017-05-26 11:58:21 +08:00
Michael Schwartz
c3836ae388 Merge "Include Treble metadata on Treble enabled devices" into oc-dev am: 7858d310ce
am: 4db7b3ef88

Change-Id: I30d3600cd2e4093de7fb3b8b7598baa77d0c864d
2017-05-24 22:05:48 +00:00
Michael Schwartz
4db7b3ef88 Merge "Include Treble metadata on Treble enabled devices" into oc-dev
am: 7858d310ce

Change-Id: I4362d0d507022439dfcb0795d43233ccefaa6da5
2017-05-24 21:55:25 +00:00
Bowgo Tsai
7ea994b21c Support signing custom images with AVB HASH or AVB HASHTREE
`make custom_images` supports to build different kinds of *non-droid* images,
e.g., odm.img. Adding the support of signing them with either AVB HASH footer
or AVB HASHTREE footer. The user can use HASH for small images and
HASHTREE for large images.

Sample signing configurations:
 * AVB HASH footer:
   - CUSTOM_IMAGE_AVB_HASH_ENABLE := true
   - CUSTOM_IMAGE_AVB_ADD_HASH_FOOTER_ARGS := --append_to_release_string my_odm_image

 * AVB HASHTREE footer:
   - CUSTOM_IMAGE_AVB_HASHTREE_ENABLE := true
   - CUSTOM_IMAGE_AVB_ADD_HASHTREE_FOOTER_ARGS := --fec_num_roots 8

 * Using custom signing key:
   - CUSTOM_IMAGE_AVB_ALGORITHM := SHA256_RSA2048
   - CUSTOM_IMAGE_AVB_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem

Bug: 36701014
Test: `make custom_images` with AVB HASH footer
Test: `make custom_images` with AVB HASHTREE footer
Test: `make droid` to check system.img is still properly signed with AVB HASHTREE
Test: `make droid` to check vendor.img is still properly signed with AVB HASHTREE

Change-Id: I8dc420e12e37e9a631345c0cd883339db05d489f
2017-05-24 14:21:03 +08:00
Tao Bao
e8ef8f70f8 Makefile: Add the dependency for BUILT_OTATOOLS_PACKAGE.
$ lunch aosp_marlin-userdebug
$ m otatools-package
$ echo "TEST" >> device/google/marlin/sepolicy/certs/app.x509.pem
$ m otatools-package

out/target/product/marlin/otatools.zip now contains an updated
app.x509.pem file.

Test: see above
Change-Id: I78a165e12a07c1b86a671a7ee1863a97fdea18c5
2017-05-23 18:25:29 -07:00
TreeHugger Robot
05573e7292 Merge "OTA metadata uses system_matrix.xml." 2017-05-22 23:27:14 +00:00
Michael Schwartz
cb5b8d2d47 Include Treble metadata on Treble enabled devices
Bug: 38431773
Test: `m -j dist` for bullhead and sailfish and inspect target_files
Change-Id: I55da654f42af08f27a79249177a0078b66cf1662
2017-05-22 14:02:27 -07:00
Julius D'souza
8756c0fedc Add the option to reserve headroom for partition
images. This is useful for device with low disk
space with different build variants.

This is a manual cherry-pick from aosp/master.

Bug: 37469715
Test: regular image builds successfully, errors occur
when the headroom size is greater than available
partition space.

Merged-In: I526cdd0f84981bbd16e3afcfe1cd7fc43dce98ef

Change-Id: I840d212bb46612074c43b39e94546901f60e4b4c
2017-05-19 14:27:28 -07:00
Tao Bao
bacb978007 Merge "Makefile: Remove the duplicate lines for OTATOOLS." into nyc-mr2-dev-plus-aosp am: 443d5fdf24
am: bec856bc46

Change-Id: I163269ff5e1de357fc4f436d8d0e71b6862ee292
2017-05-17 00:58:29 +00:00
Tao Bao
bec856bc46 Merge "Makefile: Remove the duplicate lines for OTATOOLS." into nyc-mr2-dev-plus-aosp
am: 443d5fdf24

Change-Id: I335bead53e07b5c1b7a54bd7f38dffb8c971db79
2017-05-17 00:55:28 +00:00
Jin Qian
3bac9b132e Makefile: copy mke2fs.conf to ota root
Bug: 34947454
Change-Id: I99999c4f56df295c0bb028daf3dcc0898176c5ed
(cherry picked from commit 53524b5da9)
2017-05-16 17:33:22 -07:00
Tao Bao
0618e639a8 Makefile: Remove the duplicate lines for OTATOOLS.
Test: lunch ryu-userdebug; m otatools-package gives the same
      otatools.zip.
Change-Id: I917ba210f6161f15424b3ade86f41d14a20c99aa
2017-05-16 15:04:38 -07:00
Yifan Hong
35b34ef176 OTA metadata uses system_matrix.xml.
This is to be in sync with ota_from_target_files.py.

Test: builds
Bug: 38321140
Change-Id: Id82f8fb740fa4162e670d38f326da7e0bde8c7ea
2017-05-15 18:07:09 -07:00