Commit Graph

41985 Commits

Author SHA1 Message Date
Doheon Lee 09d9b90625 Declare install path for product partition binaries
Build system will install binaries to product partition path when build
scripts specify module's install path to product partition.
To supports that, TARGET_OUT_PRODUCT_EXECUTABLES for primary and
secondary ABI path should be declared.

Bug: 110745956
Test: Set LOCAL_PRODUCT_MODULE to true in Android.mk or set product to
true in Android.bp file.

Change-Id: Ib8a491364ee30e49bb327163974661915e183608
2018-06-25 03:28:04 +00:00
Treehugger Robot 674454f223 Merge "build_image.py: remove extra new lines in error message" 2018-06-23 04:55:44 +00:00
Treehugger Robot 254bd9a10a Merge "Add BOARD_SUPER_PARTITION_*" 2018-06-22 23:33:14 +00:00
Yifan Hong 92fb231105 build_image.py: remove extra new lines in error message
Test: m dist
Change-Id: I7908e4eb0a9bbcb187e1fa6d15f606537d69864d
2018-06-22 15:05:46 -07:00
Treehugger Robot 3967e0eb99 Merge changes from topic "board_partition_reserved_size"
* changes:
  build_image.py recognize BOARD_VENDORIMAGE_PARTITION_RESERVED_SIZE
  build_image.py recognize BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE
2018-06-22 20:10:47 +00:00
Yifan Hong 74d07ff8bd Add BOARD_SUPER_PARTITION_*
Test: builds
Test: build with BOARD_SUPER_PARTITION_SIZE and
      BOARD_SUPER_PARTITION_PARTITION_LIST defined

Bug: 79106666

Change-Id: Ifcd50ecab22ef096ff1eb386f8d87e16fffdcf5e
2018-06-22 10:25:54 -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
Treehugger Robot e82b12cb09 Merge "Mark implicit rules as obsolete" 2018-06-22 17:10:36 +00:00
Treehugger Robot e2bc1154bf Merge "Don't check the vndk lib list for 64-bit only product" 2018-06-22 07:51:04 +00:00
Dan Willemsen 5f76fc0d7c Mark implicit rules as obsolete
Test: view Changes.md in gitiles
Change-Id: Id5691dc099b23df4d94b0ca30725702bc282b998
2018-06-21 21:42:29 -07:00
Jiyong Park b930d1d397 Don't check the vndk lib list for 64-bit only product
vndk-check-list check can't be done for 64-bit only product. Some
VNDK libraries (libstagefright_codec_*) are 32-bit only and thus
not built for 64-bit only product. As a result vndk-check-list always
fails on such device. Suppressing the error until the codec libraries
are built with 64-bit.

Bug: 110429754
Test: m -j on hikey64_only
Change-Id: I240ceee3fd0a778e47904ed44a1964084f354141
2018-06-22 12:58:31 +09:00
Treehugger Robot 931c5a5d33 Merge "check-vndk-list is run even when VNDK is not enabled" 2018-06-22 01:09:04 +00:00
Colin Cross 12eafb61b0 Merge "Always use OpenJDK9 for building" 2018-06-21 21:27:16 +00:00
Colin Cross 264bc07791 Merge "Run ErrorProne in OpenJDK9" 2018-06-21 20:47:41 +00:00
Treehugger Robot bdaaab2e39 Merge "Reland: Verify init scripts for correctness during build" 2018-06-21 20:01:50 +00:00
Colin Cross 1588c0ee57 Always use OpenJDK9 for building
Remove support for compiling with javac from OpenJDK8.
We still target 1.8 by default, and OpenJDK8 prebuilts are still
required for the bootclasspath and running robolectric.

Bug: 38418220
Test: m java
Change-Id: I6f178f73b42331494fadcc25a62a5475656b873e
2018-06-21 12:22:37 -07:00
Dan Willemsen 08015aa03b Merge changes from topics "deprecate_export", "add_build_broken"
* changes:
  Mark export/unexport as deprecated
  Add more BUILD_BROKEN_* logic
2018-06-21 19:19:51 +00:00
allenhair f2365aa2c5 Merge "Distribute XML formatted API files as part of the coverage build." 2018-06-21 18:33:25 +00: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
Dan Willemsen 8b9c3cc54b Mark export/unexport as deprecated
Make it so that `export`/`unexport` are deprecated during product
configuration, but obsolete during Android.mk parsing (and later in the
build, since we can't un-obsolete it).

Remove some ccache / goma exports, those don't need to be exports, since
soong_ui asks about them explicitly. They also only run doing the
initial project configuration, so we don't run anything with that
environment.

Bug: 73959648
Test: m nothing
Test: build_test on all downstream branches
Change-Id: I55a749f46775660439ae57e881a02c914e83de16
2018-06-21 10:12:23 -07:00
Dan Willemsen 94bff7ae22 Add more BUILD_BROKEN_* logic
Make the values tristate, so that we can differentiate set vs not in
scripts that parse the logs.

Also add some placeholders for warnings that I expect to turn into
errors.

Test: Set BUILD_BROKEN_PHONY_TARGETS to "foo"
Change-Id: I3f7e1e0f85dcef84d6461fc40bdd83dc5bf75ff7
2018-06-21 10:12:23 -07:00
Jiyong Park c0f738c974 check-vndk-list is run even when VNDK is not enabled
check-vndk-list has not been run when VNDK is not enabled (i.e.
BOARD_VNDK_VERSION is unset). This was problematic because there is a
chance that a CL which passed pre-submit tests can fail the post-submit
tests when the targets selected for the pre-submit tests are all without
VNDK enforcement.

In order to prevent the case, check-vndk-list is executed regardless of
whether BOARD_VNDK_VERSION is set or not.

Bug: 110424280
Test: m -j on sailfish
Test: m -j on sailfish fails after adding an arbitrary library to VNDK
Change-Id: Ia7427be2a297940a9e9c9f46cb058245596171c9
2018-06-21 14:18:54 +09:00
Treehugger Robot 6d3acda913 Merge "Deprecate implicit make rules" 2018-06-21 03:31:11 +00:00
Colin Cross e46727a2ba Run ErrorProne in OpenJDK9
Run ErrorProne as a processor in javac from OpenJDK9.

Bug: 69485063
Test: m RUN_ERROR_PRONE=true javac-check
Change-Id: I2dde597430b47c440df22d248809233a6ade1625
2018-06-20 18:49:50 -07:00
Dan Willemsen 62db0f0945 Deprecate implicit make rules
Test: mm
Test: view docs in gitiles
Change-Id: I1ced4b4218c733b5b5b771d626b20eb6fb22f0df
2018-06-20 16:52:10 -07:00
Colin Cross 375d9618f6 Merge "Merge LOCAL_STATIC_ANDROID_LIBRARIES manifests" 2018-06-20 23:24:52 +00:00
Tao Bao 8acf3c302b Merge "releasetools: Skip signing APKs with given prefixes." 2018-06-20 23:23:33 +00: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
Treehugger Robot 562a82f521 Merge "emulator sdk_phone_x86/_64: Add EmulatorSmokeTests" 2018-06-20 22:11:53 +00:00
Allen Hair 906da1b5df Distribute XML formatted API files as part of the coverage build.
Bug: 110485176
Test: m -j32 droid dist EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true SKIP_BOOT_JARS_CHECK=true tests
Change-Id: I151afde05de832cab06421ffe0829f07e60aceb8
2018-06-20 14:59:57 -07:00
Tao Bao 93c2a01268 releasetools: Skip signing APKs with given prefixes.
We may pack prebuilts that end with ".apk" into target_files zip, via
PRODUCT_COPY_FILES. META/apkcerts.txt won't contain the cert info for
such files, and we want to keep them as is while signing, despite of the
".apk" extension.

This CL adds "--skip_apks_with_path_prefix" option to
sign_target_files_apks.py. APKs with matching prefixes will be copied
verbatim into the signed images. The prefix should match the entry names
in the target_files (e.g. "SYSTEM_OTHER/preloads/"). The option may be
repeated to specify multiple prefixes.

Note that although we may skip signing an APK file with "-e ApkName=".
This would skip *all* the APK files with the matching basename.
"--skip_apks_with_path_prefix" allows matching the exact prefix.

For example:
$ ./build/make/tools/releasetools/sign_target_files_apks.py     \
    --skip_apks_with_path_prefix SYSTEM_OTHER/preloads/         \
    --skip_apks_with_path_prefix PRODUCT/prebuilts/PrebuiltApp1 \
    --skip_apks_with_path_prefix VENDOR/app/PrebuiltApp2.apk    \
    target_files.zip                                            \
    signed-target_files.zip

Bug: 110201128
Test: Run the command above and check the logs.
Test: `python -m unittest test_sign_target_files_apks`
Change-Id: I7bd80b360917cef137cf1e7e8cfa796968831f47
2018-06-20 13:49:57 -07:00
Yifan Hong 2b6939e7e9 emulator sdk_phone_x86/_64: Add EmulatorSmokeTests
Fixes the build.

Test: make -j110 PRODUCT-sdk_x86-sdk showcommands dist \
   DIST_DIR=out/dist/git_master-without-vendor-linux-sdk_x86-sdk sdk_repo

Test: make -j110 PRODUCT-sdk_x86_64-sdk showcommands dist \
    DIST_DIR=out/dist/git_master-without-vendor-linux-sdk_x86_64-sdk sdk_repo

Change-Id: I67da40fc88b67cde0f8f959c13aa68dc0271da2a
Merged-In: I63bc56ba69d313515ec3a1c73206f9a125a697ab
2018-06-20 13:33:00 -07:00
Makoto Onuki 0816dc15cc Merge "Envsetup: Add way to skip installing completions" 2018-06-20 17:32:50 +00:00
Anton Hansson 8bc96c162c Merge "Delete core_tiny.mk" 2018-06-20 17:15:53 +00:00
Anton Hansson ef2972781c Merge changes Ie56e22be,I1353aa24,I7b0b4d0e,I63bc56ba
* changes:
  Remove core.mk.
  Remove sdk_base.mk.
  emulator: add host tools to sdk_phone_x86/64
  emulator: base sdk_phone_x86/64 images on aosp
2018-06-20 17:12:04 +00:00
Tom Cherry 8075746865 Merge "Verify init scripts for correctness during build" 2018-06-20 17:06:11 +00:00
Treehugger Robot 6ae08c1416 Merge "aosp_x86_arm builds have overriding commands" 2018-06-20 16:53:56 +00:00
Treehugger Robot d7c3dd8a0d Merge "Fix UML build" 2018-06-20 16:53:02 +00:00
Tao Bao 2ba547a1c7 Merge "releasetools: Factor out the check for (compressed) APK file." 2018-06-20 16:11:04 +00:00
Anton Hansson a7b36449eb Delete core_tiny.mk
There are no descendants of this mk in AOSP. Move the content that was
shared with core_minimal.mk to base.mk (ContactsProvider and
DefaultContainerService)

Bug: 80410283
Test: diff product variables with multiproduct_kati
Change-Id: I95431b3db789e9c347bb37109a3ac7f627025f96
Merged-In: I95431b3db789e9c347bb37109a3ac7f627025f96
2018-06-20 15:09:41 +01:00
Anton Hansson 19fc0e3c2b Remove core.mk.
It only has one mk inheriting it now, so it's redundant. Push its
packages into the single child (generic_no_telephony.mk).

Bug: 80410283
Test: diff product variables with multiproduct_kati
Change-Id: Ie56e22be7f43558fdd259c808e5a6a937bd12ea6
Merged-In: Ie56e22be7f43558fdd259c808e5a6a937bd12ea6
(cherry picked from commit 57000e3c79)
2018-06-20 14:42:30 +01:00
Anton Hansson 52b38791b7 Remove sdk_base.mk.
Not used anymore, and it's in pretty bad shape, so delete it.

Bug: 80410283
Test: N/A.
Change-Id: I1353aa24024ece38857be6b489d36b0a612355cb
Merged-In: I1353aa24024ece38857be6b489d36b0a612355cb
(cherry picked from commit f65e806618)
2018-06-20 14:42:02 +01:00
bohu 68606832c0 emulator: add host tools to sdk_phone_x86/64
Fix sdk_x86-sdk build breakage that requires host tools.

BUG: 109716817
Test: make -j110 PRODUCT-sdk_x86-sdk showcommands dist DIST_DIR=git_master-without-vendor-linux-sdk_x86-sdk/4821124 sdk_repo
Change-Id: I7b0b4d0e3b2c79bad305bc11a5c1d04eb1f2bdd1
Merged-In: I7b0b4d0e3b2c79bad305bc11a5c1d04eb1f2bdd1
(cherry picked from commit 62d494b3fd)
2018-06-20 14:34:50 +01:00
bohu 1829eb172e emulator: base sdk_phone_x86/64 images on aosp
BUG: 79941736

this cl only impacts emulator images

Test: lunch sdk_phone_x86; m; emulator boots
Change-Id: I63bc56ba69d313515ec3a1c73206f9a125a697ab
Merged-In: I63bc56ba69d313515ec3a1c73206f9a125a697ab
(cherry picked from commit c5e25e9b84)
2018-06-20 14:11:32 +01:00
Dan Willemsen 5250840358 aosp_x86_arm builds have overriding commands
This product has warnings about overriding build commands, which means
that there are multiple instructions on how to build a file, and we've
just picked one of them. Which one we pick is usually stable, but it can
change.

Bug: 77611511
Test: turn default to false, aosp_x86_arm still uses a warning
Change-Id: Id821c04e3dd6a1f69ea748827c3570a751b4e1dd
2018-06-19 23:25:16 -07:00
Dan Willemsen 406418d055 Fix UML build
If there aren't any boot dex files, we can't generate a boot image
profile.

Test: lunch uml-eng; m
Test: diff build-aosp_arm.ninja
Change-Id: I09cc1ef37379d9d353958c8aa75731f3d29df759
2018-06-19 23:03:34 -07:00
Treehugger Robot dabf1a0c5a Merge "Export SDK library names" 2018-06-20 05:40:09 +00:00
Bo Hu 9379de6756 Merge "Revert "Revert "emulator: base sdk_phone_armv7/64 on aosp""" 2018-06-20 05:04:22 +00:00