Commit graph

1957 commits

Author SHA1 Message Date
Yifan Hong
d35fdd8b3d Merge changes from topic "product-service-remove-hyphen"
* changes:
  s/product-services/product_services/g
  Reland "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"
  Update CleanSpec to remove generated files from IVold.aidl.
2018-08-21 01:07:56 +00:00
Treehugger Robot
36ea50d760 Merge "Add "hwaddress" sanitizer." 2018-08-20 23:22:35 +00:00
Evgenii Stepanov
8841a7f681 Add "hwaddress" sanitizer.
Build/make support for "hwaddress".

* HWASan supports static binaries, unlike ASan.
* It will be used to build libc. Since static libraries get a .hwasan
  suffix in soong, the logic that moves libc-and-friends to the end
  of the link command line has to be updated.

Bug: 112438058
Test: manual, part of a bigger patch set

Change-Id: I3b52336841012622771a88ba161916bc33071dfe
2018-08-20 14:59:36 -07:00
Dario Freni
924af7d4dd s/product-services/product_services/g
Attempting to reduce the number of different spellings we have for
"product services" partition in the codebase.

Bug: 112431447
Test: m
Change-Id: I6debd3f5f5abc4bd1e22f2ef11c5fe131915976c
Merged-In: I6debd3f5f5abc4bd1e22f2ef11c5fe131915976c
2018-08-20 10:44:59 -07:00
Yifan Hong
35be6ca8f2 Reland "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"
Test: builds
This reverts commit 87021065b9.

Reason for revert: reland CL

Change-Id: Ic88c2bd612ad7a19d88686b2907c812bd586ee35
Merged-In: Ic88c2bd612ad7a19d88686b2907c812bd586ee35
2018-08-20 10:44:59 -07:00
Treehugger Robot
68883e0717 Merge "Revert "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"" 2018-08-17 20:32:18 +00:00
Shawn Yang
87021065b9 Revert "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"
This reverts commit 77c778c040.

Reason for revert: git-master break on 4960355

Change-Id: I2fd272c63ef496067f12852bcf98ffc1194c54bf
2018-08-17 19:02:08 +00:00
Tianjie Xu
ccbae48ac5 Generates the care_map.txt in protobuf format
Call the host binary care_map_generator to generate the care_map in
protobuf format. The parsing part of proto messages has already been
supported in the update_verifier.

Bug: 77867897
Test: unittests pass; run add_image_to_target_files
Change-Id: I40d3184b4b5c48a6dd55203afc84cca73d5765e9
2018-08-17 17:39:00 +00:00
Nan Zhang
075435035f Merge "Change dependency name to api-stubs-docs_annotations.zip" 2018-08-17 16:53:12 +00:00
Dario Freni
77c778c040 s/PRODUCT-SERVICES/PRODUCT_SERVICES/g
Attempting to reduce the number of different spellings we have for
"product-services" in the codebase.

Bug: 112431447
Test: m
Change-Id: Iec531122297cf4b86ff8601732d4ab7ccf5c2183
2018-08-17 00:28:17 +01:00
Treehugger Robot
7911fd3b91 Merge "Make duplicate COPY_HEADERS an error" 2018-08-16 16:33:21 +00:00
Treehugger Robot
c272a99b5c Merge "Add support for /odm partition" 2018-08-16 03:37:36 +00:00
Dan Willemsen
7f9bd56b8a Make duplicate COPY_HEADERS an error
Test: on internal device that has warnings, test with
BUILD_BROKEN_DUP_COPY_HEADERS true and unset.
Test: build_test on downstream branches
Change-Id: I2cebd99b10f13fb75167dc8370ba762f94c41c2a
2018-08-15 15:08:15 -07:00
Tao Bao
1fa790cb53 Merge "Remove the hack that uses INSTALLED_RAMDISK_TARGET as INSTALLED_BOOTIMAGE_TARGET." 2018-08-15 17:59:47 +00:00
Tao Bao
10fc949873 Reland "Generate the list of installed files in recovery image."
This reverts commit 60a47827cb to reland
the change that generates installed-files-recovery.{txt,json}.

This CL addresses the previous issue by explicitly depending on
INSTALLED_BOOTIMAGE_TARGET or INSTALLED_RECOVERYIMAGE_TARGET. This
avoids the race condition between INSTALLED_{BOOT,RECOVERY}IMAGE_TARGET
and INSTALLED_FILES_FILE_RECOVERY. As a result, it will also give a
complete list of files that are installed to recovery ramdisk image.

Bug: 30414428
Test: `m dist` with aosp_taimen-userdebug. Check the generated files of
      $OUT/installed-files-recovery.{txt,json}.
Change-Id: I8bde0dafda7d8ed9c4113dc82553c4edc7f79548
2018-08-14 23:32:32 -07:00
Tao Bao
b1a2e353f2 Remove the hack that uses INSTALLED_RAMDISK_TARGET as INSTALLED_BOOTIMAGE_TARGET.
This also fixes the emulator build issue with `BOARFD_AVB_ENABLE := true`.

Bug: 78113934
Test: `m dist` with emulator builds.
Test: `m dist` with aosp_taimen-userdebug
Change-Id: I2089e0ab15885b4cfc16d4a7e8be3dd0b60ef46f
2018-08-14 16:17:12 -07:00
Tao Bao
60a47827cb Revert "Generate the list of installed files in recovery image."
This reverts commit 774f63db4a.

Bug: 112590987
Test: N/A
Change-Id: I7b1c642149d45071ae4c8c9a2cedc40b4e360397
2018-08-14 11:30:58 -07:00
Alex Light
1efb8a7a83 Merge "Revert "Build image for clean super partition."" 2018-08-14 16:34:26 +00:00
Alex Light
989b3ad859 Revert "Build image for clean super partition."
This reverts commit 8a72da6c63.

Reason for revert: breaks a build

Change-Id: I743a67757c560b5bb2b201612d0898276b6804b6
Test: None.
2018-08-14 16:25:52 +00:00
Treehugger Robot
6f08de7963 Merge "Build image for clean super partition." 2018-08-14 02:54:02 +00:00
Tao Bao
cf8853b599 Suppress the warning when copying init.recovery.*.rc.
The file is optional, and we already ignore the cp result.

cp: cannot stat 'out/target/product/taimen/root/init.recovery.*.rc': No such file or directory

Test: `m -j bootimage` with aosp_taimen-userdebug. No more warning.
Change-Id: I815c6e0ff8d432123066cf4a44a8638dc94c96d5
2018-08-13 14:30:04 -07:00
David Anderson
8a72da6c63 Build image for clean super partition.
This adds a new super_empty.img output to the build when
PRODUCT_USE_LOGICAL_PARTITIONS is true and a super partition size is
set. This will be used by fastboot flashall in fastbootd, since it needs
a record of the partition layout in case the super partition is corrupt
or not yet flashed.

The full super.img (which contains embedded partition data) is still
available via "make dist".

Bug: 78793464
Test: super_empty.img generated when PRODUCT_USE_LOGICAL_PARTITIONS is
      true

Change-Id: I9f00b07e5b685a3230803fa1a5a569544d0ab625
2018-08-13 13:13:08 -07:00
Tao Bao
774f63db4a Generate the list of installed files in recovery image.
We're putting more files into recovery image since adding the support
for using shared libraries in recovery. This CL generates the list of
files to help understand the exact files installed there and their
sizes.

Bug: 112494634
Test: `m dist` with aosp_marlin-userdebug. Check the generated file at
      out/dist/installed-files-recovery.{txt,json}.
Change-Id: I7a9e05da52f95059a7d7adc85c74e888125ee66e
2018-08-13 09:19:17 -07:00
Bowgo Tsai
d624fa63d5 Add support for /odm partition
This CL is largely an adaptation of Change-Id
I5d229f6ac729ea6df9ff1f14cee2e28972cd9b4d

tools/vendor_buildinfo.sh is also renamed to tools/device_buildinfo.sh.
The caller then can invoke device_buildinfo.sh "vendor" | "odm" to
generate properties for vendor.img and odm.img, respectively.

It adds the following variables:

- BOARD_AVB_ODM_KEY_PATH
- BOARD_AVB_ODM_ALGORITHM
- BOARD_AVB_ODM_ROLLBACK_INDEX_LOCATION
- BOARD_ODMIMAGE_FILE_SYSTEM_TYPE
- BOARD_ODMIMAGE_EXTFS_INODE_COUNT
- BOARD_ODMIMAGE_EXTFS_RSV_PCT
- BOARD_ODMIMAGE_PARTITION_SIZE
- BOARD_ODMIMAGE_JOURNAL_SIZE
- BOARD_ODMIMAGE_SQUASHFS_BLOCK_SIZE
- BOARD_ODMIMAGE_SQUASHFS_COMPRESSOR
- BOARD_ODMIMAGE_SQUASHFS_COMPRESSOR_OPT
- BOARD_ODMIMAGE_SQUASHFS_DISABLE_4K_ALIGN
- BOARD_PREBUILT_ODMIMAGE
- BOARD_USES_ODMIMAGE
- LOCAL_ODM_MODULE
- PRODUCT_ODM_BASE_FS_PATH
- PRODUCT_ODM_VERITY_PARTITION
- PRODUCT_ODM_PROPERTIES
- TARGET_COPY_OUT_ODM
- TARGET_OUT_ODM
- TARGET_OUT_ODM_*

Bug: 64195575
Test: boot a Taimen with existing images

Test: `make odmimage` with
      - BOARD_AVB_ENABLE := true
      - BOARD_ODMIMAGE_PARTITION_SIZE := 62914560
      - BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
      - TARGET_COPY_OUT_ODM := odm
      - PRODUCT_ODM_PROPERTIES += odm.test.build=success

Test: `make odmimage` with
      - BOARD_ODMIMAGE_PARTITION_RESERVED_SIZE := 10485760
      - BOARD_ODMIMAGE_FILE_SYSTEM_TYPE := ext4
      - BOARD_AVB_ENABLE := true
      - TARGET_COPY_OUT_ODM := odm
      - PRODUCT_ODM_PROPERTIES += odm.test.build=success
      - PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true

Change-Id: I4dea7b567ec49a766c7a4683decaf81c7e921d55
2018-08-08 18:59:44 +08:00
Nan Zhang
cb0a6881c5 Change dependency name to api-stubs-docs_annotations.zip
Test: m -j checkbuild
Bug: b/70351683 b/78245848
Change-Id: I5d4127d020eaaf58322d4ed69049bedbfe458448
Merged-In: I5d4127d020eaaf58322d4ed69049bedbfe458448
2018-08-07 16:07:59 -07:00
Isaac Chen
3085fc0c05 Merge "Revert "Revert "Build GSIs (aosp_$arch products) in sparse format"""
am: 451fa13fa6

Change-Id: I655794830ffc687c55f29d700368b9fc7074d23c
2018-08-06 12:10:14 -07:00
Treehugger Robot
451fa13fa6 Merge "Revert "Revert "Build GSIs (aosp_$arch products) in sparse format""" 2018-08-06 18:45:48 +00:00
Tao Bao
e0b9cfc6f9 Merge "Write the missing system build props to recovery build prop file."
am: a130af98ed

Change-Id: Ie857cfd750b02d2d36556d495e091b31e55cea73
2018-08-06 10:58:54 -07:00
Tao Bao
6eb1a99f36 Write the missing system build props to recovery build prop file.
This was missed by [1], which changed the rules for writing recovery
build prop file.

[1] commit 139c727036

Bug: 110380063
Bug: 112247573
Test: `m bootimage` with aosp_marlin-userdebug. Check the generated
      recovery build prop file against the one before [1].
Change-Id: Ib5829b01a63eee8e8a09486dd68063ba297b7443
2018-08-06 07:36:33 -07:00
Isaac Chen
b9b51b1b73 Revert "Revert "Build GSIs (aosp_$arch products) in sparse format""
This reverts commit 132748cb80.

Reason for revert: The e2fsck issue, b/112062612, that caused the
revert of the original CL has been fixed in aosp/725259.

Change-Id: I5c919aedcc5b1c4823f565ea2bbe0e6ea81bc3b0
2018-08-06 02:48:28 +00:00
Tao Bao
0324a550a2 Merge "Write custom recovery UI vars as recovery build prop."
am: d80175db9a

Change-Id: I245e53a27e11e0b096a7d6ee85608e3f30cf7c86
2018-08-03 16:02:55 -07:00
Tao Bao
d80175db9a Merge "Write custom recovery UI vars as recovery build prop." 2018-08-03 21:51:20 +00:00
Yifan Hong
635887d5ac Merge "target_files: copy to PRODUCT-SERVICES instead"
am: 567df6214f

Change-Id: I95bf48eba07daa2b0f6d5b84c45de9b22f7aac0b
2018-08-02 15:31:56 -07:00
Yifan Hong
567df6214f Merge "target_files: copy to PRODUCT-SERVICES instead" 2018-08-02 21:53:57 +00:00
Tao Bao
0e0794f4e4 Merge "Add the missing args for building AVB-enabled product-services.img."
am: e9bee37677

Change-Id: I8c940347f92475dcd432493d71243e60d8c61738
2018-08-01 22:55:43 -07:00
Tao Bao
1ebda8d4d2 Add the missing args for building AVB-enabled product-services.img.
Change-Id: I1a6fddee5512509b43f71a53cd1ad023ceacdb3c
Fixes: 112109844
Test: Set up a target with product-services.img. `m dist`
2018-08-01 17:22:50 -07:00
Yifan Hong
4d6b38c47a target_files: copy to PRODUCT-SERVICES instead
The add_img_to_target_files.py script uses upper() to determine
the name of sub-directory under target_files_intermediates. The
name of the image is product-services.img but the sub-directory
name was PRODUCT_SERVICES. Change it to PRODUCT-SERVICES so that
'm dist' works.

Test: m dist
Change-Id: I8cad841c674b5d62c1d803d0383fc3aee14f272a
2018-08-01 16:46:16 -07:00
Yifan Hong
d55225f8d6 Merge "Remove USE_LOGICAL_PARTITIONS override"
am: c0213682b3

Change-Id: I75667dfc3596cda7b8b640540f48964081107eb2
2018-08-01 11:40:43 -07:00
Yifan Hong
9a7d525849 Merge "Split PRODUCT_USE_LOGICAL_PARTITIONS into sub-flags."
am: d1c308bf40

Change-Id: I834e75dcfc04af0dd8655027bfc251c3d0162815
2018-08-01 11:39:59 -07:00
Yifan Hong
a42e5f976d Remove USE_LOGICAL_PARTITIONS override
... so that its requirements does not fallback
on the overridden USE_LOGICAL_PARTITIONS, but
PRODUCT_USE_LOGICAL_PARTITIONS.

Test: m superimage -j
Change-Id: Ib14aaf83cc8bd4336125d503d11c69a60566530e
2018-08-01 18:29:44 +00:00
Yifan Hong
d1c308bf40 Merge "Split PRODUCT_USE_LOGICAL_PARTITIONS into sub-flags." 2018-08-01 18:29:29 +00:00
Colin Cross
9d2fe1b5c7 Merge "Revert "Build GSIs (aosp_$arch products) in sparse format""
am: a2b0e478d3

Change-Id: Ia2191fd7e0653f7f634bf273667aecbdffa5635c
2018-08-01 02:29:23 -07:00
Treehugger Robot
a2b0e478d3 Merge "Revert "Build GSIs (aosp_$arch products) in sparse format"" 2018-08-01 09:24:25 +00:00
Colin Cross
132748cb80 Revert "Build GSIs (aosp_$arch products) in sparse format"
This reverts commit bc0248f211.

Reason for revert: Triggered preexisting issue with e2fsck and ASAN

Bug: 112062612
Change-Id: I7b52fe539252ab1bb7229d32accb7abd6417f470
2018-08-01 06:26:03 +00:00
Yi-yo Chiang
ca66daa5ce Merge "Change the content of lsdump_paths.txt to newline-separated paths"
am: 989ba9d502

Change-Id: Idd704ca4e61f2a885ec503de9270c6f406daec8d
2018-07-31 23:12:36 -07:00
Treehugger Robot
989ba9d502 Merge "Change the content of lsdump_paths.txt to newline-separated paths" 2018-08-01 06:02:30 +00:00
Tao Bao
139c727036 Write custom recovery UI vars as recovery build prop.
We used to consume target-specific recovery UI variables at build time,
by passing them as macros, which prevents from building recovery with
Soong. This CL writes these vars as build properties, which can be
queried by recovery at runtime.

With this CL (and the change to recovery), it also allows customizing
these properties at boot time, e.g. by init based on the device SKU.

Bug: 110380063
Test: `m bootimage` with aosp_taimen-userdebug. Check that recovery build
      property file ($OUT/recovery/root/prop.default) has
      `ro.recovery.ui.margin_height=105`.
Change-Id: I53409593779e604b8d8c727d522d9eb76e14508a
2018-07-31 21:09:40 -07:00
Yifan Hong
2dae5721d4 Split PRODUCT_USE_LOGICAL_PARTITIONS into sub-flags.
Split the flag into PRODUCT_USE_DYNAMIC_PARTITION_SIZE
and PRODUCT_BUILD_SUPER_PARTITION. More sub-flags can be
added with the same way.

Also change some checks with USE_LOGICAL_PARTITIONS with
the appropriate sub-flags.

This allows easier device bring-up to fulfill the requirements
separately.

This also enables dynamic partition size without logical patition.
Originally, to enable BOARD_*_PARTITION_RESERVED_SIZE must also
enable PRODUCT_USE_LOGICAL_PARTITIONS. The patch fix the rule to
let dynamic partition size is able to be used independently.

Fixes: 111966003

Test: make superimage with PRODUCT_USE_LOGICAL_PARTITIONS
Change-Id: I45b29c87bf94356d8416bbd58a14c8982039c222
2018-08-01 00:39:13 +00:00
Isaac Chen
442e2f4441 Merge "Build GSIs (aosp_$arch products) in sparse format"
am: 44c61176e8

Change-Id: Icfb51956662a4dbca0f8cf37ea9e4ddc6fe1c214
2018-07-31 09:05:31 -07:00
Treehugger Robot
44c61176e8 Merge "Build GSIs (aosp_$arch products) in sparse format" 2018-07-31 15:52:08 +00:00
Hung-ying Tyan
3868a7fd9a Merge "Add more ro.vendor.build.*"
am: 2e0fb33af8

Change-Id: I9357d2e338198eb59ad7a9472bd82ca75177412a
2018-07-31 01:13:20 -07:00
Treehugger Robot
2e0fb33af8 Merge "Add more ro.vendor.build.*" 2018-07-31 08:07:57 +00:00
Treehugger Robot
7654023bcd Merge "Adding VENDOR_SECURITY_PATCH to vendor partition build.prop" 2018-07-31 03:33:36 +00:00
Yi-yo Chiang
ac0d49fe1e Change the content of lsdump_paths.txt to newline-separated paths
This commit changes the delimiters from space characters to newline
characters so that lsdump_paths.txt can be easily read and parsed by
human.

Bug: 111814844
Test: m vndk findlsdumps -j18
Change-Id: I5c50934a0f035244cff71351d9f4be4203222590
2018-07-30 18:45:17 +00:00
Yifan Hong
8883a739b3 Merge changes I1459d62f,I4c2b975e
am: bb937a6b69

Change-Id: Ifdedee1b0251bc9c2a8baf30d28b5d315b5c9e20
2018-07-30 11:35:33 -07:00
Yifan Hong
bb937a6b69 Merge changes I1459d62f,I4c2b975e
* changes:
  Build image for super partition
  productservices => product_services
2018-07-30 18:23:38 +00:00
Yifan Hong
48b23f3a0c Merge changes from topic "lrap_sysprop"
am: 9c1264417f

Change-Id: I82335d291a5ae0a7fe82bb6742652b018943c699
2018-07-30 10:41:10 -07:00
Yifan Hong
af9e7f04c3 ro.boot.logical_partitions moved to product image
Test: m productimage -j && cat $OUT/product/build.prop
Bug: 111909365
Change-Id: I62abd5602f6b2fe7eead9d636ffb7708df23fd02
2018-07-27 16:24:38 -07:00
Yifan Hong
37c0c7c82d Build image for super partition
... for bootstrapping / initializing the device.
Image is built to $(PRODUCT_OUT)/super.img when running
`m dist`. For A/B devices, the image contains other
partitions in the _a slot.

Change-Id: I1459d62f02b95f142dfb3b7608f88ec6801dbf37
Fixes: 111758129
Test: m superimage -j
2018-07-27 13:45:43 -07:00
Isaac Chen
bc0248f211 Build GSIs (aosp_$arch products) in sparse format
After aosp/719235 is merged, mk_qemu_image.sh now accepts
images in both raw and sparse formats. So We can build GSIs
(system images of aosp_$arch products) in sparse format, which,
historically, is expected by users of GSIs.

Bug: 111775319
Test: The system images below are all in sparse format:
    $ lunch aosp_x86-userdebug; $m -j; emulator
    $ lunch aosp_x86_64-userdebug; $m -j; emulator
    $ lunch aosp_arm-userdebug; $m -j; emulator
    $ lunch aosp_arm64-userdebug; $m -j; emulator

Change-Id: I4cb8df0908c4618376117249b61c853fac947e47
2018-07-27 10:33:57 +08:00
Yifan Hong
ebc041af56 productservices => product_services
Make names consistent.
Some things that does not change:
- productservicesimage target and intermediates

Test: build product services image
Bug: 111609632
Change-Id: I4c2b975e194577aad3d51b908b103880625deb5e
2018-07-26 17:19:02 -07:00
Yifan Hong
2843e2e16f Merge "BOARD_SUPER_PARTITION_PARTITION_LIST check moved to config.mk"
am: df899f64d0

Change-Id: Icdf456afba7d366373311b292b1675c3cce6bf4c
2018-07-26 15:09:53 -07:00
Treehugger Robot
df899f64d0 Merge "BOARD_SUPER_PARTITION_PARTITION_LIST check moved to config.mk" 2018-07-26 21:44:05 +00:00
Yifan Hong
78ae26132d BOARD_SUPER_PARTITION_PARTITION_LIST check moved to config.mk
... because variable checks should go there.

Test: pass
Change-Id: I484f928d848fd4f3b3936d1c7fd03976ee64feb2
2018-07-26 10:50:45 -07:00
Hung-ying Tyan
c565f5c2ed Add more ro.vendor.build.*
to facilitate independent updates of vendor/odm images.

Bug: 78600951 (#56,#57)
Bug: 111491184
Test: build aosp_marlin-userdebug and check vendor/build.prop

Change-Id: I798c13822695259375fbc8d5c7fe08d43a540e46
2018-07-26 17:39:47 +08:00
Max Bires
b64277de4c 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: I3d3ec2d0e76fc5e62cd283ed4bce3894423cabdd
Merged-In: I4f783e996cb425a49c2b12ae4f364e12c6ca7784
(cherry picked from 56d444b98f)
2018-07-26 14:35:32 +08:00
Nan Zhang
ba000ad893 Merge "Fix the broken build: aosp-master/sdk_x86-sdk"
am: 6ac13c77c7

Change-Id: Ieef26247ee369ecd652db1c16cc27e0461185143
2018-07-24 18:38:40 -07:00
Nan Zhang
527c295cf5 Fix the broken build: aosp-master/sdk_x86-sdk
metalava-api-stubs-docs_annotations.zip needs to be added as part of
sdk.atree dependencies.

Bug: b/78245848
Test: make -j80 PRODUCT-sdk_x86-sdk sdk_repo; and check ninja file.
Change-Id: I6be5d59c6f91a519f8d16ff273daa35c349d18aa
2018-07-24 17:15:54 -07:00
Dario Freni
bf01d8301a Merge "Generate a zipfile with appcompat logs during dist."
am: 4abd9488ce

Change-Id: Ibdabbe448ef64634eb36de3f24d720efafaa440f
2018-07-24 01:51:04 -07:00
Dario Freni
4abd9488ce Merge "Generate a zipfile with appcompat logs during dist." 2018-07-24 08:45:36 +00:00
Yifan Hong
68ab6aeb52 Merge "Fix check on BOARD_SUPER_PARTITION_SIZE."
am: c4ae41b251

Change-Id: I23620bd45292e8cea385c2a2fa6322aa8f2e00c3
2018-07-23 15:57:33 -07:00
Yifan Hong
17dd45d689 Fix check on BOARD_SUPER_PARTITION_SIZE.
The original code doesn't use the size of images that
is calculated at build time, but instead use BOARD_*IMAGE_PARTITION_SIZE
variables. Update the logic to use the actual size of the images at
build time.

Test: builds with a device defining the value and
BOARD_SUPER_PARTITION_PARTITION_LIST := system vendor product productservices

Bug: 79106666
Change-Id: I07b3ee466482bd8f5cf709e13e16a7f187099aaf
2018-07-23 13:13:50 -07:00
Dario Freni
d10112751a Generate a zipfile with appcompat logs during dist.
Test: m dist
Bug: 110073830
Bug: 78924201
Change-Id: I052034ab35365e7add9a9992a51022c20aa50718
2018-07-23 20:20:15 +01:00
Yifan Hong
fe421ed263 Merge changes from topic "board_partition_reserved_size"
am: 2d90c246a9

Change-Id: I460ea917b47a61acb0cbb0f17a867d15f61c7d6d
2018-07-23 11:58:52 -07:00
Yifan Hong
2d90c246a9 Merge changes from topic "board_partition_reserved_size"
* changes:
  build_image.py recognize BOARD_PRODUCT_SERVICESIMAGE_PARTITION_RESERVED_SIZE
  build_image.py recognize BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE
2018-07-23 18:38:24 +00:00
Tao Bao
f87ea90d76 Merge "releasetools: Rename the ramdisk_dir in prop dict to root_dir."
am: d094713952

Change-Id: I013c82846a143c5eac050325e66092afc66c958f
2018-07-23 09:41:25 -07:00
Yifan Hong
9c35a022e1 build_image.py recognize BOARD_PRODUCT_SERVICESIMAGE_PARTITION_RESERVED_SIZE
Test: builds
Bug: 79106666
Change-Id: I00c1a96c09cf7bd9274b65ac0afc47462686171d
2018-07-20 16:51:26 -07:00
Yifan Hong
56a6c3bb34 build_image.py recognize BOARD_PRODUCTIMAGE_PARTITION_RESERVED_SIZE
Test: builds
Bug: 79106666
Change-Id: I26aba694fd3d6a2feed7601524dde52569ba41e2
2018-07-20 16:51:26 -07:00
Tao Bao
8bfd3c7483 releasetools: Rename the ramdisk_dir in prop dict to root_dir.
This property indicates the path to the root directory (i.e.
TARGET_ROOT_OUT at build time, or ROOT/ in a target_files.zip).
build_image.py will only use this property when building a target using
system_root_image. Under such a configuration, files under this dir
never land into a ramdisk, but as part of system.img. This CL renames
the property name to avoid confusion.

Note that with this change releasetools keeps working with older
target_files zips that contain 'ramdisk_dir'. Because common.py doesn't
read the value of that property, but sets it to ROOT/ directly.

Test: `m dist` on aosp_marlin-userdebug.
Test: `m dist` on aosp_angler-userdebug.
Test: Run add_img_to_target_files.py with a new target_files.zip and an
      old target_files.zip respectively.
Change-Id: Ie9e19dd17d8c2abb4c4a97449e436774d5dd2a36
2018-07-20 16:05:36 -07:00
Anton Hansson
78e36736fe Merge "Move dep on PRODUCT_COPY_FILES to main.mk" 2018-07-20 10:12:37 +00:00
Dario Freni
5f9ddc95a2 Merge "Add support for /product-services partition"
am: 3cf03b775a

Change-Id: I1b0b3628d1b96967e569093b93b12fbc5acd7ad5
2018-07-20 02:09:37 -07:00
Dario Freni
5f681e1dd7 Add support for /product-services partition
This CL is largely an adaptation of Change-Id
I774e6a38003734421591e51bed103802ff84f432

It adds the following variables:

- BOARD_AVB_PRODUCT_SERVICES_KEY_PATH
- BOARD_AVB_PRODUCT_SERVICES_ALGORITHM
- BOARD_AVB_PRODUCT_SERVICES_ROLLBACK_INDEX_LOCATION
- BOARD_PRODUCT_SERVICESIMAGE_FILE_SYSTEM_TYPE
- BOARD_PRODUCT_SERVICESIMAGE_EXTFS_INODE_COUNT
- BOARD_PRODUCT_SERVICESIMAGE_EXTFS_RSV_PCT
- BOARD_PRODUCT_SERVICESIMAGE_PARTITION_SIZE
- BOARD_PRODUCT_SERVICESIMAGE_JOURNAL_SIZE
- BOARD_PRODUCT_SERVICESIMAGE_SQUASHFS_BLOCK_SIZE
- BOARD_PRODUCT_SERVICESIMAGE_SQUASHFS_COMPRESSOR
- BOARD_PRODUCT_SERVICESIMAGE_SQUASHFS_COMPRESSOR_OPT
- BOARD_PRODUCT_SERVICESIMAGE_SQUASHFS_DISABLE_4K_ALIGN
- BOARD_PREBUILT_PRODUCT_SERVICESIMAGE
- BOARD_USES_PRODUCT_SERVICESIMAGE
- LOCAL_PRODUCT_SERVICES_MODULE
- PRODUCT_PRODUCT_SERVICES_BASE_FS_PATH
- PRODUCT_PRODUCT_SERVICES_VERITY_PARTITION
- PRODUCT_PRODUCT_SERVICES_PROPERTIES
- TARGET_COPY_OUT_PRODUCT_SERVICES
- TARGET_OUT_PRODUCT_SERVICES
- TARGET_OUT_PRODUCT_SERVICES_*

Bug: 80741439
Test: Successfully built product-services.img with one module in it, and flashed
on device. Also successfully built image with /system/product-services directory
and no /product-services partition.
Change-Id: I5d229f6ac729ea6df9ff1f14cee2e28972cd9b4d
2018-07-19 11:15:11 +01:00
Anton Hansson
404d33c578 Move dep on PRODUCT_COPY_FILES to main.mk
Prior to this change the product-installed-files macro didn't include
PRODUCT_COPY_FILES, which is a problem for the artifact path
enforcements. Fix this by moving the dep on PCF into main.mk.

Leave the declaration in Makefile for now.

Test: diff modules_to_install before and after
Bug: 80410283
Change-Id: Ie7ecd5a963aedd2c573f4fe46d327829908aec03
Merged-In: Ie7ecd5a963aedd2c573f4fe46d327829908aec03
2018-07-18 14:05:20 +01:00
Anton Hansson
9fbe84ceee Move dep on PRODUCT_COPY_FILES to main.mk
Prior to this change the product-installed-files macro didn't include
PRODUCT_COPY_FILES, which is a problem for the artifact path
enforcements. Fix this by moving the dep on PCF into main.mk.

Leave the declaration in Makefile for now.

Test: diff modules_to_install before and after
Bug: 80410283
Change-Id: Ie7ecd5a963aedd2c573f4fe46d327829908aec03
2018-07-13 17:16:22 +01:00
Tao Bao
a81bd16fa4 Merge "Group the generic props together in generate-image-prop-dictionary."
am: 8f48f18f69

Change-Id: I6d3efecbb1c7c2f7722673d71dbcbae0d40e6483
2018-07-10 13:12:57 -07:00
Tao Bao
8f48f18f69 Merge "Group the generic props together in generate-image-prop-dictionary." 2018-07-10 20:02:40 +00:00
Tao Bao
3602eca6d6 Group the generic props together in generate-image-prop-dictionary.
Test: m dist
Change-Id: Iedb62c246e9ae8c88ff7822122d6c182aa925738
2018-07-10 10:54:11 -07:00
Dario Freni
8a599e54a2 Merge "Generate a NOTICE xml file for /product partition."
am: bd64cd3fe8

Change-Id: I3a8ab1d4bc4f034c7646d31182bbe01814797b8d
2018-07-10 09:27:36 -07:00
Dario Freni
adc972d7bb Generate a NOTICE xml file for /product partition.
Bug: 111179267
Test: tested on a device with /product partition enabled.
Change-Id: I333f916da214c71e04ebd3fe3bf4dac1e341b098
2018-07-10 11:54:56 +01:00
Luis Hector Chavez
930ceb30b9 Merge "Depend on the ramdisk/root files for BOARD_BUILD_SYSTEM_ROOT_IMAGE"
am: b676d6d609

Change-Id: I0e13f4327ce066a56f856985c07f1e8f4c373d24
2018-07-09 16:13:08 -07:00
Luis Hector Chavez
ff48993ca6 Depend on the ramdisk/root files for BOARD_BUILD_SYSTEM_ROOT_IMAGE
When using BOARD_BUILD_SYSTEM_ROOT_IMAGE, there is no direct dependency
on the files that get typically added to the ramdisk.img apart from the
NOTICE.html dependency that some files have. This change explicitly adds
the ramdisk/root files as a dependencies of system.img so that the image
is recreated any time a file in the ramdisk changes. It also creates the
installed-files-root.txt file.

Bug: 62387674
Test: /init.rc is present in system.img's dependencies
Change-Id: I234cb8d8a648f8963610be519de1b70b7efe1fd7
2018-07-09 11:07:12 -07:00
Yifan Hong
bb42f7d655 Merge changes from topic "board_partition_reserved_size"
am: 3967e0eb99

Change-Id: I767967f1086ec303c63199d0e38ec02dedf09152
2018-06-22 13:25:18 -07:00
Yifan Hong
749062d379 build_image.py recognize BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
Test: `make vendorimage`

Test: `make vendorimage` with the following:
    - install a large file to vendor image
    fails as expected (because _PARTITION_SIZE is exceeded)

Test: `make vendorimage` with the following:
    - set PRODUCT_USE_LOGICAL_PARTITIONS to true
    - set BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
    fails as expected (BOARD_VENDORIMAGE_PARTITION_SIZE needs
    to be undefined)

Test: `make vendorimage` with the following:
    - install a large file to vendor image
    - set PRODUCT_USE_LOGICAL_PARTIIONS to true
    - add a small BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
    - remove BOARD_VENDORIMAGE_PARTITION_SIZE
    build succeeds.

Bug: 79106666

Change-Id: Ica8fdce64e8f37d91e66e3d49c0c74fadd15a832
2018-06-22 10:25:54 -07:00
Yifan Hong
bbcba1e353 build_image.py recognize BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
- Copy "use_logical_partitions" to *_image_info.txt before sending
  it to build_image.py, so that the script can use this variable.

- build_image.py emits an additional properties file to inform
  the build system about the system image size.

Test: `make systemimage`

Test: `make systemimage` with the following:
    - install a large file to system image
    fails as expected (because _PARTITION_SIZE is exceeded)

Test: `make systemimage` with the following:
    - set PRODUCT_USE_LOGICAL_PARTITIONS to true
    - set BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
    fails as expected (BOARD_SYSTEMIMAGE_PARTITION_SIZE needs
    to be undefined)

Test: `make systemimage` with the following:
    - install a large file to system image
    - set PRODUCT_USE_LOGICAL_PARTIIONS to true
    - add a small BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
    - remove BOARD_SYSTEMIMAGE_PARTITION_SIZE
    build succeeds.

Test: same for systemotherimage

Bug: 79106666

Change-Id: I574062882acd1ecd633ac38c5a8c5351b90a32d8
2018-06-22 10:25:54 -07:00
Tom Cherry
281d343dfb Merge "Reland: Verify init scripts for correctness during build"
am: bdaaab2e39

Change-Id: Ia0cdc6067e357e97ab88b1dd2690358ead4edd18
2018-06-21 13:12:54 -07:00
Tom Cherry
fc97764dd5 Reland: Verify init scripts for correctness during build
Relanding with change to not run on the darwin build since host init
verifier is not possible there.

Bug: 36970783
Bug: 110477913
Test: builds pass without failures
Test: builds fail with failures in init files used via LOCAL_INIT_RC,
      PRODUCT_COPY_FILES, or TARGET_PREBUILT

Change-Id: Iae93705a9320159ed97328e615eaa3bc150e6442
2018-06-21 11:16:25 -07:00
Yifan Hong
d76c44b72f Merge "Revert "Verify init scripts for correctness during build""
am: 560890b29f

Change-Id: I5f69d68b9b604ba76a5bf4fa0a9fd453f62ccde6
2018-06-20 16:03:47 -07:00
Yifan Hong
560890b29f Merge "Revert "Verify init scripts for correctness during build"" 2018-06-20 22:56:39 +00:00
Tom Cherry
d15e50022f Revert "Verify init scripts for correctness during build"
This reverts commit 03303f97be.

Reason for revert: Mac build

Change-Id: Iadd76491307534fde81d3d917876c603a0658fb9
2018-06-20 22:45:14 +00:00
Tom Cherry
cd7535c00d Merge "Verify init scripts for correctness during build"
am: 8075746865

Change-Id: I96b7f88a3e568e147c3e3f68709e4c7eb3b525c6
2018-06-20 10:09:01 -07:00