Commit Graph

45253 Commits

Author SHA1 Message Date
Doheon Lee deb5a29934 Merge "Declare install path for product partition binaries"
am: 39deff9e50

Change-Id: Iec7178f6ece015d33afbf28fa19ca92adbc5d2b8
2018-06-25 18:45:59 -07:00
Treehugger Robot 39deff9e50 Merge "Declare install path for product partition binaries" 2018-06-26 01:37:59 +00:00
Colin Cross 84667699f0 Use pretty-error in prebuilt_internal.mk
Test: none
Change-Id: I191515d90b8f0f1fe2ac382b857d47ebe98db0d3
2018-06-26 00:38:17 +00:00
Colin Cross 979f9f9b18 Disable standalone relocation packer
We only support relocation packing inside lld now, remove calls to
the standalone relocation packer.  Any shared library built with
LOCAL_USE_CLANG_LLD := false will no longer have relocation packing.

This will also prevent relocation packing on prebuilt shared
libraries.

Also enables relocation packing on Darwin since lld will work on
Darwin.

Bug: 110715614
Test: m checkbuild
Change-Id: Ib4d4bc86f164d05dd78455c8e7605d4b4f5a2a77
2018-06-26 00:35:46 +00:00
Nelson Li f6cfd5e360 Merge "Revert "Revert "Build System: Validate AndroidTest.xml Configs"""
am: d3ef2822cc

Change-Id: Id57e37bd69958c9e6cfc178414ef9a5a84842d25
2018-06-25 17:30:59 -07:00
Treehugger Robot d3ef2822cc Merge "Revert "Revert "Build System: Validate AndroidTest.xml Configs""" 2018-06-26 00:24:50 +00:00
Pirama Arumuga Nainar b66f9e6f91 Disable lld for windows host modules
Bug: http://b/69933068
Bug: http://b/110800681

lld cannot link Android's Windows modules yet

Test: m native-host-cross
Change-Id: I4945e5f84637443195294e575be8ebbe871d32b5
2018-06-25 16:02:08 -07:00
Chih-Hung Hsieh b02e447775 Filter out clang-tidy unknown arguments.
Bug: 110538415
Test: build with WITH_TIDY=1
Change-Id: I77cd5dec834215fa22742eae6d96aabecadd11ab
2018-06-25 13:49:36 -07:00
Anton Hansson c0655eb042 Include PRODUCT_COPY_FILES in artifact check.
The product-installed-files macro is not really thorough - it only
includes packages, but not other files which are included as part of
the build. Extend it to also include PRODUCT_COPY_FILES.

Bug: 80410283
Test: downstream CL
Change-Id: I803c7a59e695c226fa413fa1602ec315ef9886a8
2018-06-25 19:17:42 +01:00
Nelson Li a2a8b9ba11 Revert "Revert "Build System: Validate AndroidTest.xml Configs""
This reverts commit 054f210fd5.

Reason for revert: Revert it again since BUG of 109736180 already be fixed.
                   Local verified for different build targets of
                   walleye_coverage-userdebug, marlin_coverage-userdebug
                   and make sure they can build pass.
BUG: 109736180
Test: lunch walleye_coverage-userdebug; make adbd_test

BUG: 73082610
Test: cd packages/apps/DocumentsUI/tests/; mma
      Modify AndroidTest.xml to a not well-formed xml; mma
      Then, it should build fail.
      atest -v DocumentsUITests

Change-Id: Iadfcb28a4e3f685a66697de21f57ca5bdb8b7c9e
2018-06-25 06:03:41 +00:00
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
Yifan Hong 1dce9b6943 Merge "build_image.py: remove extra new lines in error message"
am: 674454f223

Change-Id: Iaa6edf6b28c5d2e5cdbc55068ab2631c17138288
2018-06-22 22:06:16 -07:00
Treehugger Robot 674454f223 Merge "build_image.py: remove extra new lines in error message" 2018-06-23 04:55:44 +00:00
Yifan Hong 6423900f83 Merge "Add BOARD_SUPER_PARTITION_*"
am: 254bd9a10a

Change-Id: Iada0cb6fe92ecf090a3c37bb3bd73335a2e63a8c
2018-06-22 16:40:15 -07: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
Yifan Hong bb42f7d655 Merge changes from topic "board_partition_reserved_size"
am: 3967e0eb99

Change-Id: I767967f1086ec303c63199d0e38ec02dedf09152
2018-06-22 13:25:18 -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
Dan Willemsen abc350d8b2 Merge "Mark implicit rules as obsolete"
am: e82b12cb09

Change-Id: Ie725a5593596508491c3d13d66e354211df2ccd7
2018-06-22 10:19:33 -07:00
Treehugger Robot e82b12cb09 Merge "Mark implicit rules as obsolete" 2018-06-22 17:10:36 +00:00
Jiyong Park b50ab74ea2 Merge "Don't check the vndk lib list for 64-bit only product"
am: e2bc1154bf

Change-Id: Icf3457d7321d18ebb8f194895cae1a2443409ece
2018-06-22 00:57:45 -07: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
Jiyong Park 91e6f590f0 Merge "check-vndk-list is run even when VNDK is not enabled"
am: 931c5a5d33

Change-Id: I00230be053b4e01591f2beaa8905481a1718c98a
2018-06-21 18:21:50 -07: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 c0071808da Merge "Always use OpenJDK9 for building"
am: 12eafb61b0

Change-Id: Iec1529983659c3c966b32c384c337d6db5144766
2018-06-21 14:56:35 -07:00
Colin Cross 12eafb61b0 Merge "Always use OpenJDK9 for building" 2018-06-21 21:27:16 +00:00
Colin Cross 2e51d73d2b Merge "Run ErrorProne in OpenJDK9"
am: 264bc07791

Change-Id: I3ce7202cdcfd3e86fbccb359f56ca59581855a04
2018-06-21 13:57:20 -07:00
Colin Cross 264bc07791 Merge "Run ErrorProne in OpenJDK9" 2018-06-21 20:47:41 +00: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
Treehugger Robot bdaaab2e39 Merge "Reland: Verify init scripts for correctness during build" 2018-06-21 20:01:50 +00:00
Dan Willemsen a6e1fadea5 Merge changes from topics "deprecate_export", "add_build_broken"
am: 08015aa03b

Change-Id: I3f22f431acdcd233ddd73a248eb510d55a9a194e
2018-06-21 12:32:14 -07: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 2e627d5e7d Merge "Distribute XML formatted API files as part of the coverage build."
am: f2365aa2c5

Change-Id: I91c661d74e617f17553f27a39cb32496dd5acf4c
2018-06-21 11:52:01 -07: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 8d49943c20 Merge "apidiff: Depend on timestamp file instead of phony target" into stage-aosp-master 2018-06-21 05:03:16 +00:00
Dan Willemsen 45883d45ec Merge "Deprecate implicit make rules"
am: 6d3acda913

Change-Id: Ic04398750a692d3bbae34b78420d61c6e5ee2356
2018-06-20 21:13:33 -07:00
Treehugger Robot 6d3acda913 Merge "Deprecate implicit make rules" 2018-06-21 03:31:11 +00:00
Dan Willemsen 8f607e31fa apidiff: Depend on timestamp file instead of phony target
Instead of $(LOCAL_MODULE)-docs, use $(call
doc-timestamp-for,$(LOCAL_MODULE)), which is how the *-docs targets are
generated in droiddoc.mk

Test: m offline-sdk-referenceonly-diff
Change-Id: I1e5ee3b819c0e836089fac236e977642067d148a
2018-06-21 02:14:36 +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