Commit graph

42119 commits

Author SHA1 Message Date
Treehugger Robot
69af20f184 Merge "Use $(my_prefix)OS instead of HOST_CROSS_OS" 2018-06-27 20:08:04 +00:00
Treehugger Robot
1caedd6bdc Merge "Use $(my_prefix)OS instead of HOST_CROSS_OS" 2018-06-27 18:28:34 +00:00
Pirama Arumuga Nainar
b448834e96 Do not set entry-point for Windows
Bug: http://b/62424007

This breaks 64-bit Windows executables.  Probably due to the Clang
migration, the entry-point need not be set even for 32-bit executables.

Test: 32-bit and 64-bit aapt2_tests.exe and ziparchive-tests.exe can
start.  (There are some failed tests, though).

Change-Id: I1dea9137c79c5f26b493640cfae0856c1a7ea301
2018-06-27 11:28:33 -07:00
Pirama Arumuga Nainar
060741e77d Use $(my_prefix)OS instead of HOST_CROSS_OS
The latter is not module-specific and affects all host modules.  Also
remove the check for LOCAL_IS_HOST_MODULE and use  $(my_prefix)OS.

This should be future-proof, where may use different configurations of
cross-compilations across Linux, Darwin, Windows.

Test: m native
Change-Id: I0a6255a8b83960ffb543b593d4a50d963be1de88
2018-06-27 10:37:54 -07:00
Pirama Arumuga Nainar
407b6aca28 Use $(my_prefix)OS instead of HOST_CROSS_OS
The latter is not module-specific and prevents santizer configuration
for all host modules.

Test: mma HOST_SANITIZE=address hardware/google/apf
Change-Id: I62a448973c1d6526e4b475f3288996e44c88fbc9
2018-06-27 09:42:33 -07:00
Treehugger Robot
14add31780 Merge "Sort lists in AndroidProducts.mk." 2018-06-27 15:33:52 +00:00
Anton Hansson
1555709499 Sort lists in AndroidProducts.mk.
Test: No
Change-Id: I4147103eee03ef9af500e73fd4481f11c19580ec
2018-06-27 14:43:21 +01:00
Anton Hansson
4e0ccc4c8a Merge "Split up fs_config_* modules per partition." 2018-06-27 12:59:22 +00:00
Anton Hansson
cc496f9b61 Merge "Remove core_base.mk" 2018-06-27 11:36:31 +00:00
Anton Hansson
e85ec84eef Split up fs_config_* modules per partition.
This was already done for partitions other than the system partition.
Add new, separate "_system" targets, and add new phony modules which
collects _system and _nonsystem targets for now.

Update the base_system.mk file to only depend on the system module, and
put the other ones in base_vendor.mk for now.

Bug: 80410283
Test: make fs_config_dirs[_*] fs_config_files[_*] and verify output
Change-Id: I7843578dbb9f27edf4c1e5b4a795a530f79e0be1
2018-06-27 11:15:59 +01:00
Anton Hansson
c23ef03838 Remove core_base.mk
It's small, and doesn't really have a theme so it doesn't really warrant
its own build file. Inline its contents in all its children.

Bug: 80410283
Test: diff product variables with multiproduct_kati
Change-Id: I7db95f9134df36ebd0271e21dba1fa13b28afc72
2018-06-27 09:56:56 +01:00
Anton Hansson
a314fc0166 Merge "Move 6 packages up from core_base.mk" 2018-06-27 08:30:08 +00:00
Anton Hansson
351a147cd7 Merge "Split base.mk into system and vendor parts." 2018-06-27 08:29:40 +00:00
Mathieu Chartier
47ad7d0f60 Merge "Move go default system properties into prop files" 2018-06-27 00:09:27 +00:00
Treehugger Robot
0d53f4b12b Merge "Do not enable sanitizers on Windows" 2018-06-26 23:28:29 +00:00
Mathieu Chartier
f39c2c7495 Move go default system properties into prop files
Test: manual
Bug: 110517986

(cherry-picked from commit 732a4cc62f)

Merged-In: I28f5c18bb9e70c755ece50c49c02434f825878dc
Change-Id: I28f5c18bb9e70c755ece50c49c02434f825878dc
2018-06-26 15:12:46 -07:00
Pirama Arumuga Nainar
c6a3ddf834 Do not enable sanitizers on Windows
Bug: http://b/69933068

Test: m native-host-cross SANITIZE_HOST=address
Change-Id: I0b99797d218dc34d302906d704d991e59698c351
2018-06-26 14:18:14 -07:00
Anton Hansson
c0dd046586 Move 6 packages up from core_base.mk
Also remove two nonexistant packages (libnfc_ndef & libvariablespeed).

The moved packages are already being pulled in by being required by
other included packages in one of its parents (base or core_minimal).

These are the moved packages and their pre-existing deps:
- libmdnssd: by netd in base.mk
- libandroidfw: by 7 packages, many in base.mk
- libaudioutils: by 3 packages, e.g libmedia in base.mk
- libpowermanager: by 3 packages, e.g. libaudioflinger in base.mk
- libspeexresampler: by libaudioutils
- libwebrtc_audio_preprocessing: by libaudiopreprocessing in core_minimal.mk

This change makes core_base.mk very small. It will be deleted in a
followup-CL and its contents inlined in its direct children.

Bug: 80410283
Bug: 7456955
Test: make
Change-Id: I1240ec6adc5b9208effd6fc70892dfbd453a1fba
2018-06-26 21:57:13 +01:00
Treehugger Robot
060c99c33e Merge "Disable lld for windows host modules" 2018-06-26 19:47:53 +00:00
Treehugger Robot
7ef5d75009 Merge "Use pretty-error in prebuilt_internal.mk" 2018-06-26 19:28:24 +00:00
Colin Cross
effbc370dc Merge "Disable standalone relocation packer" 2018-06-26 17:40:57 +00:00
Anton Hansson
9b48c52247 Split base.mk into system and vendor parts.
Put all packages that end up on the vendor partition in a separate mk,
to allow creating products with artifact path requirements.

Bug: 80410283
Test: diff product vars with multiproduct_kati
Change-Id: Ia35adaed2c8f9989c180bfdbbeeb2a5ecf634aa5
Merged-In: Ia35adaed2c8f9989c180bfdbbeeb2a5ecf634aa5
2018-06-26 18:19:46 +01:00
Chih-hung Hsieh
875691cf89 Merge "Filter out clang-tidy unknown arguments." 2018-06-26 16:51:40 +00:00
Anton Hansson
31cd1263d4 Merge "Include PRODUCT_COPY_FILES in artifact check." 2018-06-26 09:29:54 +00: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
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
Colin Cross
e9381754b4 Make USE_D8 and USE_R8 read-only
Confusion between LOCAL_USE_R8 and USE_R8 caused USE_R8 := false
to be set in an Android.mk file, which changed the behavior of
half of the build.  Make USE_R8 and USE_D8 read-only to prevent
it from happening again.

Test: m checkbuild
Bug: 110033958
Change-Id: I09a8fbf3d7f8e4b3f0cb3de538870f925d5d0abe
2018-06-25 14:18:42 -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
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