Commit graph

45923 commits

Author SHA1 Message Date
Bowgo Tsai
d241226936 Correct PRODUCT_SERVICES_COPY_FILES in envsetup.mk
Bug: 80741439
Test: build
Change-Id: Ibc37a1c011ad00a4763911ca0842c74f31d8bc0d
2018-08-23 15:54:34 +08:00
Tao Bao
ebe17177fe Merge "releasetools: Look for recovery.fstab at both locations." 2018-08-23 06:05:40 +00:00
Tao Bao
b4adc06732 releasetools: Look for recovery.fstab at both locations.
The change in [1] moved the recovery etc files from /etc to /system/etc.
However, we may use the latest OTA tools to build incremental OTAs for
old target_files zips. This CL adds a workaround to look at both of the
old and new locations.

[1] commit 696bb33676

Bug: 113073663
Test: Build a previously failing incremental OTA for taimen.
Change-Id: Ie07aa1713e616d523838b1260a992b20f5a11612
2018-08-22 18:41:49 -07:00
Shashikant Baviskar
338856f92b A/B update: Replace the zip FileHeader mechanism for update package
When the update package gets larger than 2 GiB, payload.bin offset
mentioned in metadata file for ota-streaming-property-files gets
shifted (CrAU of payload.bin) because ZipInfo FileHeader() returns
incorrect value. To solve the issue, offset is re-calculated from
fixed bytes of central directory file header, filename length and
extra length.

This patch is to sync with update_device.py script.

Test: manually create an A/B update package and run it using
      update_device.py
Bug: 111198589

Change-Id: I9bf5a5ca24938cad3206d04af529f70d45e992c0
2018-08-23 10:13:20 +09:00
Tao Bao
da9f2d8fd4 Merge changes Icf44032f,Iec8524d3
* changes:
  Add the missing dependency on BOARD_PREBUILT_DTBOIMAGE.
  use BOARD_PREBUILT_DTBOIMAGE in target-files-package
2018-08-22 23:56:55 +00:00
Yifan Hong
251a02f2f0 Create build-superimage-target.
Combine INSTALLED_SUPERIMAGE_TARGET with INSTALLED_SUPERIMAGE_EMPTY_TARGET.

Also fixes inconsistent UUIDs for super_empty.img
because PRIVATE_SUPER_PARTITION_SUFFIX is not defined.

Test: flash and inspect device mapper
Change-Id: I7f00c4e21ebdd21e94fa387c6e2fbea06a6e75b7
2018-08-22 16:43:57 -07:00
Tao Bao
f4866c72ca Add the missing dependency on BOARD_PREBUILT_DTBOIMAGE.
Test: Use a target that defines `BOARD_INCLUDE_RECOVERY_DTBO := true`
      and BOARD_PREBUILT_DTBOIMAGE. Touching a prebuilt dtbo file
      triggers rebuilding of recovery image.
Change-Id: Icf44032fb29542c6836a401c79fb85345ad6cc3c
2018-08-22 14:40:45 -07:00
cfig
286874053c use BOARD_PREBUILT_DTBOIMAGE in target-files-package
it's better to use the original $(BOARD_PREBUILT_DTBOIMAGE) instead
of AVB-padded $(INSTALLED_DTBOIMAGE_TARGET), the latter will be padded
to the size of /dtbo partition

Test: `make target-files-package` target file RECOVERY/recovery_dtbo is
    the original BOARD_PREBUILT_DTBOIMAGE
Test: `make otapackage` build pass and OTA file works fine

Change-Id: Iec8524d3a0544ddca89481dc613f076b36aeed25
2018-08-22 14:34:55 -07:00
Treehugger Robot
10f1a69a2b Merge "Build image for clean super partition." 2018-08-22 20:06:14 +00:00
Anton Hansson
82182c8233 Merge "Add OTA support to mainline_system." 2018-08-22 18:41:30 +00:00
David Anderson
433f822d76 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.

Unlike the full super.img, super_empty.img is not a sparse image. It
contains the minimal data sequence needed to format the super partition.
It also does not contain partition sizes, since flashing is responsible
for choosing the correct partition size.

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.
      mmm system/extras/partition_tools && lpdump super_empty.img works

Change-Id: I34e915a1fead806287dde554d190474785e52500
2018-08-22 11:40:22 -07:00
Anton Hansson
0de30815ff Merge "Fix dump-products." 2018-08-22 16:58:13 +00:00
Anton Hansson
ae6bf49575 Merge "Make FULL_BUILD not set for the dont_bother case." 2018-08-22 16:57:48 +00:00
Treehugger Robot
7a9f3889f0 Merge "Rename INSTALLED_SYSTEMIMAGE to INSTALLED_SYSTEMIMAGE_TARGET." 2018-08-22 16:49:23 +00:00
Anton Hansson
33611b1173 Add OTA support to mainline_system.
update_engine applies an OTA, and update_verifier verifies
partitions post boot.

Note that this also adds cacerts_google as it's a required module by
update_engine, so this reduces the disparity between pixel /system
and mainline_system /system by ~100 files.

Bug: 110410711
Bug: 111495787
Test: make
Change-Id: Idd31407bbd5543fe1dd2b52e87894ac501a025df
2018-08-22 17:48:52 +01:00
Chih-Hung Hsieh
4275dcf866 Define CLANG_TIDY_UNKNOWN_CFLAGS in tidy.mk
* Moved from build/soong because the list is used only in make rules.

Bug: 111885396
Test: build with WITH_TIDY=1
Change-Id: I6ca7420e7ed1e342a5b92996724c6659a406d5ae
2018-08-22 09:21:53 -07:00
Anton Hansson
9b8e6cf067 Fix dump-products.
m dump-products didn't print anything useful prior to this change,
however this was visible in the terminal:
15:18:58 Error dumping make vars: Failed to parse make line: "==== build/target/product/aosp_arm.mk ===="

Convert this goal to normal target instead, which apart from making
$(info) actually print something, considers the build successful
when running "m dump-products" too. This makes it easier to run with
e.g. multiproduct_kati.

Test: m dump-products
Change-Id: I944c87cd0fd323687690b0fcc3c37a8f37242cd9
2018-08-22 10:49:18 +01:00
Anton Hansson
85d8ce044f Make FULL_BUILD not set for the dont_bother case.
If dont_bother is set, we're not going to read all the module makefiles,
so the checks gated behind FULL_BUILD will fail.

Test: lunch mainline_system_arm64; m vnod
Change-Id: Ic7842f772edd6b6a6fdc427d018ea1dfe3cbfdbf
2018-08-22 10:49:03 +01:00
Tao Bao
e9d61b02e8 Rename INSTALLED_SYSTEMIMAGE to INSTALLED_SYSTEMIMAGE_TARGET.
This gives a consistent mapping between partition names and the image
targets (i.e. partition => INSTALLED_PARTITIONIMAGE_TARGET). This CL
also creates an alias for the old name so that device-specific Makefiles
that refer to INSTALLED_SYSTEMIMAGE would keep working.

This CL renames image-for-partitions to images-for-partitions, and
returns INSTALLED_SYSTEMIMAGE_TARGET for system. It doesn't change the
actual functionality, but allows substantially simplifying the rule.

Test: `m dist` with aosp_taimen-userdebug
Test: `m dist` with a target that uses super partition
Change-Id: I2954ee5d855c1652a33c640ee615649588d5bc04
2018-08-21 21:57:21 -07:00
Treehugger Robot
8e639205d7 Merge changes from topic "from-pi-gsi"
* changes:
  Fix unbundled branch by not having it pick up goldfish dependency
  Add emulator audio policy config in /vendor not /system
  emulator: factor vendor partition out of emulator.mk
2018-08-22 04:14:25 +00:00
Tao Bao
c901630789 Merge "Install recovery etc files to recovery/root/system/etc." 2018-08-21 22:35:49 +00:00
Tao Bao
696bb33676 Install recovery etc files to recovery/root/system/etc.
They used to be installed under recovery/root/etc. This CL moves the
files to the new location and creates a symlink from /etc to /system/etc
(done by the rule in system/core/rootdir). This gives similar layout
between normal boot and recovery, and allows installing prebuilt_etc
files with Soong (`recovery_available: true`).

As part of the change, we no longer need the whitelisting rule for
mke2fs.conf.

Bug: 112780007
Test: Build with other changes in the topic (aosp_taimen-userdebug).
      Check the generated files under recovery (/etc being a symlink to
      /system/etc).
Test: Boot into recovery. Verify basic functionalities (`adb shell` and
      `adb sideload`, factory reset).
Test: `build/soong/build_test.bash --dist`
Change-Id: Ibb6dea6f179a339f0c2d0fd8ba05ec0085b79a12
2018-08-21 10:30:49 -07:00
Tao Bao
e56d112bd0 Merge "Add the Cleanspec rule for product-services symlink." 2018-08-21 15:57:40 +00:00
Tao Bao
d6b3a4cc79 Add the Cleanspec rule for product-services symlink.
Bug: 112431447
Test: `m dist` when there's a leftover symlink of "/product-services".
Change-Id: I39bb79bd7790fe2243075768c6423b0fddc379f7
2018-08-21 07:34:18 -07:00
Hyunyoung Song
3aa57d8d90 Fix unbundled branch by not having it pick up goldfish dependency
Bug: 110165361

Change-Id: I0824b140fdfee296288c03fd03a3bac7966e9179
Merged-In: I0824b140fdfee296288c03fd03a3bac7966e9179
(cherry picked from commit 16e7004e3f)
2018-08-21 06:55:33 +00:00
Kevin Rocard
b4150586c5 Add emulator audio policy config in /vendor not /system
audio_policy_configuration_generic.xml is pushed in /system as the default
configuration (used if the vendor does not provide one in /vendor or /odm)
and for the emulator.

As a result it can be parsed by 2.0 and 4.0 audio HALs. The format
is retro-compatible, but not forward-compatible.

Additionally, the generic config pushed in /system should never be used
as the vendor should always provide a configuration file describing its
target architecture. Thus it should not be part of the GSI.

Those files were originally pushed in /system the emulator
target does not provide its own configuration file.
The emulator should provide config file instead in /vendor instead.

Bug: 78543061
Test: sdk_gphone_x86 and aosp_x86_64 emulator has audio
Test: adb shell cat /vendor/etc/audio_policy_configuration.xml | diff - \
          frameworks/av/services/audiopolicy/config/audio_policy_configuration_generic.xml
Change-Id: Ice43cb4670a82f4e60fcccc58a636d224f240b5a
Merged-In: Ice43cb4670a82f4e60fcccc58a636d224f240b5a
Signed-off-by: Kevin Rocard <krocard@google.com>
(cherry picked from commit dad3ad6126)
2018-08-21 06:42:11 +00:00
bohu
ebbdea824f emulator: factor vendor partition out of emulator.mk
The emulator vendor paritions are better moved out of
emulator.mk into device/generic/goldfish/vendor.mk
so that changes in vendor.mk will just concentrate on
vendor partition.

this cl does not impact real devices, and it does not
even impact emulator images (it does code refactoring only)

BUG: 110030159

Change-Id: Ic5778cda8ca6ccf7bc2bc2f9028f801cda970143
Merged-In: Ic5778cda8ca6ccf7bc2bc2f9028f801cda970143
(cherry picked from commit 6676853016)
2018-08-21 14:40:43 +08:00
Colin Cross
5d1688bf27 Merge "Fix reference to cleared global variable" 2018-08-21 02:50:50 +00:00
Colin Cross
cceb7ab6d7 Fix reference to cleared global variable
Use PRIVATE_general_tests_list_zip inside the rule.  Also remove the
output files to make it more likely that an incremental build fails
the same was as a clean build.

Bug: 112865316
Test: rm $OUT/general-tests* && m general-tests
Change-Id: Idbca35f9ca71f65ef45ef026df41bd933fb9d37d
2018-08-20 19:26:33 -07:00
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
Treehugger Robot
5d1926376e Merge "Use multiple globs/emails in per-file syntax" 2018-08-20 22:34:36 +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
Chih-Hung Hsieh
f77c7f75e5 Use multiple globs/emails in per-file syntax
Bug: 112259427
Test: tools/checkowners.py -c -v OWNERS */OWNERS */*/OWNERS
Change-Id: I0e2c2c64a23df360fbe7691c4336ca04099fba13
2018-08-20 14:16:04 -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
Sudheer Shanka
a566dce20b Update CleanSpec to remove generated files from IVold.aidl.
Bug: 112058806
Test: Device booted after flashing a build with this change.
Change-Id: If0bda6869a7ed09b8c320b5c44c43f9d4cb4c3dd
Merged-In: If0bda6869a7ed09b8c320b5c44c43f9d4cb4c3dd
2018-08-20 10:44:50 -07:00
Colin Cross
c9f31dff01 Merge changes from topic "test_suite_harness_bp"
* changes:
  Add tools jars to general-tests.zip
  Move general-tests intermediates out of $(PRODUCT_OUT)
  Rename general-tests-* variables to general_tests_*
2018-08-20 17:21:55 +00:00
Sundong Ahn
73e33eae35 Rename to android.test.base.impl
The name of the runtime library name for the SDK library
android.test.base has changed to android.test.base.impl as it is not
built using java_sdk_library construct where *.impl suffix is
automatically added to the runtime lib.

Bug: 77577799
Test: m -j

Merged-In: I975a42412d3c71f0d7de249c08e715fdfd3eab2c
Change-Id: I975a42412d3c71f0d7de249c08e715fdfd3eab2c
2018-08-20 10:06:17 +09:00
Colin Cross
b0d376f66b Add tools jars to general-tests.zip
Some non-tests were marked with
LOCAL_COMPATIBILITY_SUITE := general-tests
in order to get them into general-tests.zip. Soong is attempting to
only allow the test_suites property on tests.  Specify the tools
needed in the test suite in general-tests.mk instead, the same
way cts.mk does.

Bug: 112654980
Test: m checkbuild
Test: tradefed/general_tests_zip
Change-Id: Ied7a6b2f956b84659c3edcf4dd866a8cd936bedf
2018-08-17 22:59:12 -07:00
Colin Cross
38f16dcf4e Move general-tests intermediates out of $(PRODUCT_OUT)
Move intermediate files used to generate general-tests.zip out of
$(PRODUCT_OUT) to better isolate the rule.

Test: m checkbuild
Change-Id: I5f3d204cc4e36b6c6670aabe0e63bce8597afd4b
2018-08-17 22:56:24 -07:00
Colin Cross
50d1c22efb Rename general-tests-* variables to general_tests_*
Make supports dashes in variable names, but underscores are more
common.  Also use a private variable for general_tests_list_zip,
and clear local variables at the end of the file.

Test: m checkbuild
Change-Id: I8fd968d9e674dbc630bdb71ddd375448b6ada5ed
2018-08-17 22:54:45 -07:00
Treehugger Robot
fe411d1860 Merge changes I44f7a486,I136e6fa7
* changes:
  Add jni shared libraries to java soong_to_convert problems
  Fix java soong_to_convert data
2018-08-17 23:11:56 +00:00
Treehugger Robot
68883e0717 Merge "Revert "s/PRODUCT-SERVICES/PRODUCT_SERVICES/g"" 2018-08-17 20:32:18 +00:00
Sasha Smundak
1c31492ce0 Do not call sort when setting ALL_DEPS.MODULES.
This particular invocation of 'sort' is expensive (it may amount to 30%
of the total ckati execution time for the clean build).

Test: verify that the result of running 'm nothing' is unchanged,
verify that the result of running 'm -j deps-license
PROJ_PATH=packages/app/% DEP_PATH=external/%' is unchanged.

Change-Id: If1cfddd4dee24559a26ecceebdf03cf49cc5a367
2018-08-17 12:41:24 -07:00
Treehugger Robot
6518cbdadf Merge "Correct PRODUCT_USE_FASTBOOTD USAGE" 2018-08-17 19:07:17 +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
Hridya Valsaraju
e06e97464c Correct PRODUCT_USE_FASTBOOTD USAGE
Remove all usage of flag PRODUCT_USE_FASTBOOTD
as it will not be set when these files are processed
by the build system.

Bug: 78793464
Test: make bootimage and check for fastbootd binary in recovery
Change-Id: I371a6d2beddeb54a88281934b54b8c61ead12d4f
Merged-In: I371a6d2beddeb54a88281934b54b8c61ead12d4f
(cherry picked from commit b9d535356b)
2018-08-17 11:40:06 -07:00
Treehugger Robot
9be301eb66 Merge "Generates the care_map.txt in protobuf format" 2018-08-17 17:40:56 +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