Commit Graph

47406 Commits

Author SHA1 Message Date
Yi Kong
f41d24acb3 Merge changes I52805f5d,Ifb16ed87
* changes:
  Allow projects to exclude from libcrt_builtins
  Move libgcc to libcrt.builtins
2018-11-13 21:56:47 +00:00
Yifan Hong
b7ea9d3870 Merge changes from topic "dp_retrofit"
* changes:
  Add build flags for spanning the super partition across multiple block devices.
  logical partitions -> dynamic partitions
2018-11-13 20:29:18 +00:00
Treehugger Robot
623c33915b Merge "Factor out json from soong_config.mk" 2018-11-13 16:35:11 +00:00
Anton Hansson
1de3ef4a73 Merge "Fix cmdline args to generate-notice-files.py" 2018-11-13 08:35:01 +00:00
Anton Hansson
d05c1fc6a2 Merge "Provide a syncsys target to build /system files" 2018-11-13 08:34:55 +00:00
David Anderson
619fe2da5a Add build flags for spanning the super partition across multiple block devices.
This adds BOARD_SUPER_PARTITION_BLOCK_DEVICES, which must contain a list
of the (non-A/B suffixed) partitions that will comprise the super
partition. It is only intended for devices which cannot have a partition
named "super". For each entry, there must be a
BOARD_SUPER_PARTITION_x_DEVICE_SIZE variable defined with the exact size
of that partition (not its image size). The sum of these sizes must be
equal to BOARD_SUPER_PARTITION_SIZE.

Bug: 116802789
Test: device with BOARD_SUPER_PARTITION_BLOCK_DEVICES builds
Change-Id: I1a79c2e08ca99ce7e42207893ef3285caffecf44
2018-11-12 16:12:51 -08:00
Anton Hansson
d0ca2e6221 Fix cmdline args to generate-notice-files.py
-e should be provided multiple times to pass a list. This fixes
stripping of the NOTICE file on /system to not have /product,
/vendor and /product_services entries in it.

Previously it was trying to stirp entries from the
vendor,product,product_services subdir.

Bug: 118089975
Test: m sync, inspect NOTICES file
Change-Id: I7c336b1c593565a98aa4976305f8b69bbd0c09b5
2018-11-12 23:24:22 +00:00
Yi Kong
ba319b751f Merge "Always get target llvm rtlib from Linux toolchain directory" 2018-11-12 23:15:43 +00:00
Colin Cross
ee8b10230c Factor out json from soong_config.mk
Factor out the json functions from soong_config.mk, and extend them
to support maps.

Bug: 119412419
Test: no change to soong.variables
Change-Id: Ieea08fdd2aa202f60945103e3ca82538f098a942
2018-11-12 11:15:12 -08:00
Roland Levillain
571d18256d Merge "Add some ART people as OWNERS of target/product/runtime_libart.mk." 2018-11-12 17:55:47 +00:00
Yi Kong
65e4560308 Always get target llvm rtlib from Linux toolchain directory
To avoid duplication, we would only ship one copy of the target llvm
runtime library. Change the source path to Linux on Darwin host.

Test: m checkbuild
Bug: 119288831
Bug: 119270185
Change-Id: Ie32d65d6647765a5060078cc61a089e5a47c3a36
2018-11-12 17:38:00 +00:00
Roland Levillain
72e1716645 Merge "Revert "Add the Android Runtime APEX module to PRODUCT_PACKAGES."" 2018-11-12 17:26:59 +00:00
Roland Levillain
4c39bd2c6e Revert "Add the Android Runtime APEX module to PRODUCT_PACKAGES."
This reverts commit cb6e935db8.

Reason for revert: Increases the system image size beyond the
limit for some targets (e.g. marlin).

Bug: 113373927
Change-Id: Ia609523a60179c32d377d0735049c944464ea0cc
2018-11-12 17:24:59 +00:00
Treehugger Robot
a81a534c58 Merge "build: Split out mkfs in BuildImageMkfs (retry)" 2018-11-12 16:29:50 +00:00
Roland Levillain
24e7a42cd8 Merge "Add the Android Runtime APEX module to PRODUCT_PACKAGES." 2018-11-12 16:06:34 +00:00
Roland Levillain
d9d0e35652 Add some ART people as OWNERS of target/product/runtime_libart.mk.
Test: build/make/tools/checkowners.py -c -v build/make/target/product/OWNERS
Bug: 113373927
Change-Id: I7780803432b53b9a1ab42b7bb80695a200f2e386
2018-11-12 14:12:56 +00:00
Anton Hansson
30e061b6a5 Provide a syncsys target to build /system files
Builds just the files on /system, but not system.img. Like sync,
but just for /system.

Test: m syncsys
Change-Id: Ic5fc60d79d20315a5aca031dff5e2394e58d6b1c
2018-11-12 13:46:05 +00:00
Yifan Hong
c5c0124e7d logical partitions -> dynamic partitions
Reflect a name change.

* PRODUCT_USE_LOGICAL_PARTITIONS is deprecated and
will be removed in the future.

* ro.boot.dynamic_partitions is created. ro.boot.logical_partitions
will be removed once all the usage is removed.

Bug: 119286600
Test: builds

Change-Id: I5cb8bb1f5ebcee893fbef3a0f047c32de8773830
2018-11-09 16:02:59 -08:00
Jordan Liu
a9ce0ce07a Merge "Add radio config version 1.1" 2018-11-09 18:50:35 +00:00
Anton Hansson
1cdbf8f2bd Merge "Quote message in echo-error/echo-warning macros" 2018-11-09 17:59:59 +00:00
Anton Hansson
436d7b7336 Merge "Support disabling artifact path requirements" 2018-11-09 17:21:21 +00:00
Jaewoong Jung
0459f334e3 Merge "Add -CROSS suffix to cross host OS notice targets." 2018-11-09 15:21:30 +00:00
Anton Hansson
dc6c216476 Support disabling artifact path requirements
Path requirements can get in the way when developing, so
provide a way to disable them on the command line.

Bug: 80410283
Bug: 119025354
Test: lunch mainline_arm64; DISABLE_ARTIFACT_PATH_REQUIREMENTS=true m nothing
Change-Id: Ia44b73f3013a0ea218bd9a361037269c7557da9e
2018-11-09 13:45:18 +00:00
Anton Hansson
700db42d54 Quote message in echo-error/echo-warning macros
Makes pretty-error and pretty-warning behave more like $(error) and
$(warning), where you don't need to do things like quote parentheses.

Bug: 118833208
Test: trigger the private_apis && sdk set error in sdk_check.mk,
      which no longer produces bash syntax errors

Change-Id: I766ff98ad4e652f59dbef9dd5654f1cd10a2d038
2018-11-09 08:59:25 +00:00
Treehugger Robot
8cbad5f349 Merge "[GPU Service] Add gpuservice into PRODUCT_PACKAGES." 2018-11-09 02:50:38 +00:00
Yi Kong
117007fc54 Merge "LLVM_RTLIB_PATH should not hard code linux" 2018-11-09 01:06:00 +00:00
Jaewoong Jung
e8cb1954bb Add -CROSS suffix to cross host OS notice targets.
This fixes a bug where cross host OS notice dependecies were incorrectly
added and caused missing file errors.

Bug: 36073965
Test: Manual build + inspection
Change-Id: I3983ad6158acf939842f836fe3f44cecf9187087
2018-11-08 16:53:02 -08:00
Mark Salyzyn
3cd2460edc build: Split out mkfs in BuildImageMkfs (retry)
NB: second attempt, issue with scope for mkfs_output.

Separate out BuildImageMkfs from BuildImage, which just makes the
filesystem without any verity, avb, or other decisions.  BuildImage
does all the wrapping for such.  This will hopefully ease maintenance
and drop the issues surrounding BuildImage reentrancy.

Change right-size estimation path to use BuildImageMkfs, and thus do
so without verity or avb wrappings.  Add partition_headroom to space
consideration.  This makes the results of the estimation more
accurate and predictable.

Test: build
Bug: 111302946
Change-Id: I2549bd4e403c21290470b2fa1835492ae883f0fd
2018-11-08 15:42:22 -08:00
Yi Kong
8d3c6cda21 LLVM_RTLIB_PATH should not hard code linux
The path is incorrect on Darwin. Changed to use $(HOST_OS) instead.

Fixes Darwin build.

Bug: 29275768
Test: Forrest
Change-Id: I164306ad2237bce86baf37d3291622a709bfe8f3
2018-11-08 23:26:20 +00:00
Yi Kong
2b7e980cbd Allow projects to exclude from libcrt_builtins
Some projects can't be built with libcrt_builtins yet.

Bug: 29275768
Test: m checkbuild
Change-Id: I52805f5dece6395024683d07809c4b8905dab631
Merged-In: I52805f5dece6395024683d07809c4b8905dab631
(cherry picked from commit 2a401bea9e)
2018-11-08 13:41:05 -08:00
Yi Kong
95fd9d171d Move libgcc to libcrt.builtins
libgcc is kept behind libcrt.builtins to provide unwinder symbols and
any other missing symbols.

Bug: 29275768
Bug: 119007754
Test: m checkbuild
Change-Id: Ifb16ed87afc3391f8830d771971315515f929235
Merged-In: Ifb16ed87afc3391f8830d771971315515f929235
(cherry picked from commit b9d8932279)
2018-11-08 13:40:34 -08:00
Mark Salyzyn
c21c709f0b Merge "Revert "build: Split out mkfs in BuildImageMkfs"" 2018-11-08 19:28:18 +00:00
Mark Salyzyn
533558ec96 Revert "build: Split out mkfs in BuildImageMkfs"
This reverts commit 2b72b7f01e.

out/target/product/generic_x86/installed-files.txt \${DIST_DIR}/installed-files-rescued.txt; exit 1 ) )" 
2018-11-08 19:12:28 - build_image.py - ERROR : Failed to build out/target/product/generic_x86/obj/PACKAGING/systemimage_intermediates/system.img from out/target/product/generic_x86/system 
Traceback (most recent call last): 
File "build/make/tools/releasetools/build_image.py", line 767, in <module> 
main(sys.argv[1:]) 
File "build/make/tools/releasetools/build_image.py", line 755, in main 
BuildImage(in_dir, image_properties, out_file, target_out) 
File "build/make/tools/releasetools/build_image.py", line 449, in BuildImage 
CheckHeadroom(mkfs_output, prop_dict) 
NameError: global name 'mkfs_output' is not defined 


Bug: 111302946
Reason for revert: Build problem

Change-Id: I786f232e07af653a7207509055df5a07a6d8bb9e
2018-11-08 19:26:50 +00:00
Treehugger Robot
5f2e64aaa4 Merge "build: Split out mkfs in BuildImageMkfs" 2018-11-08 17:33:03 +00:00
Treehugger Robot
9da0bd95e5 Merge "build_image: right size image problems." 2018-11-08 01:06:41 +00:00
Mark Salyzyn
2b72b7f01e build: Split out mkfs in BuildImageMkfs
Separate out BuildImageMkfs from BuildImage, which just makes the
filesystem without any verity, avb, or other decisions.  BuildImage
does all the wrapping for such.  This will hopefully ease maintenance
and drop the issues surrounding BuildImage reentrancy.  Change
right-size estimation path to use BuildImageMkfs, and do so without
verity or avb wrappings.

Test: build
Bug: 111302946
Change-Id: I30e2e2b727f40ecca5164142f34139f5244f6424
2018-11-07 15:51:32 -08:00
Mark Salyzyn
41f781de9e build_image: right size image problems.
Neglected to correct for filesystem size in estimate for verity.

To keep build space optimized and make sure that the existing image
does not confuse the tools, remove the out_file after the test build
image phase.

Test: build
Bug: 111302946
Change-Id: I360775d862d02a721d061bbc43e8b4e2f03bd01e
2018-11-07 14:50:33 -08:00
Tao Bao
68b081fd5a Merge "releasetools: Add tests for VerityImageBuilder." 2018-11-07 20:23:12 +00:00
Treehugger Robot
1c7db31772 Merge "Build docs as part of checkbuild" 2018-11-07 18:21:32 +00:00
Treehugger Robot
b359355760 Merge "Add .hpp files to sgrep and treegrep" 2018-11-07 17:15:27 +00:00
Roland Levillain
cb6e935db8 Add the Android Runtime APEX module to PRODUCT_PACKAGES.
Test: make systemimage
Bug: 113373927
Change-Id: I49c01fd40b2b777128586161e4c6ece6c5aea293
2018-11-07 15:36:14 +00:00
Anton Hansson
0f22d9e395 Merge "Make right-sizing less aggressive" 2018-11-07 14:22:45 +00:00
Anton Hansson
0e60f8a42c Make right-sizing less aggressive
This is a rollback of Id5ae6645b9aa2d036e6fefe2fb17672e8f8ef6f0
and the followup I6a0f3919e8d45d0b3e7cd558a6ad4d3799012f2c

The magic constant introduced appears to be too aggressive.
Note that the new constant in I0f32c75e80b5da4d47671055ac274ccc2b485992
doesn't appear to fix the broken builds.

Bug: 111302946
Test: make
Change-Id: I29207265172d293c6fee98212e3266bde85895df
2018-11-07 14:02:42 +00:00
Treehugger Robot
fcc971934b Merge "build_image still too aggressive with right sizing (part troix)" 2018-11-07 13:59:38 +00:00
Anton Hansson
20e7b65663 Merge "Set LOCAL_SDK_VERSION := current for RROs" 2018-11-07 11:57:40 +00:00
Mark Salyzyn
2b191894c2 build_image still too aggressive with right sizing (part troix)
Regression introduced by c3d408e3c1

Found a case where 1 + 1/60 reduction in size based on free space
failed when right sizing an ext4 image. Reduced the math to 1 + 1/61.

Test: compile
Bug: 111302946
Change-Id: I0f32c75e80b5da4d47671055ac274ccc2b485992
2018-11-06 15:57:03 -08:00
Tao Bao
d0b9758203 Merge "releasetools: Create VerityImageBuilder." 2018-11-06 23:37:15 +00:00
Treehugger Robot
9c3a481b5f Merge "releasetools: Log the exceptions before rethrowing." 2018-11-06 23:28:17 +00:00
Tao Bao
46901fb8ca releasetools: Log the exceptions before rethrowing.
In Append2Simg and Append in verity_utils.py, we catch and rethrow
exceptions as BuildVerityImageError. However, this suppresses the
traceback from the original exception which usually indicates the actual
cause. We can better handle this with the raise statement in Python 3,
which is however unavailable in Python 2.

This CL logs the exception before rethrowing to retain the useful bits.

Test: Inject an error to append2simg. `m -j systemimage` with
      aosp_marlin-userdebug. Check the output.
Change-Id: I0c2f57d6023fa1038256b85fa98d57ad0244a70d
2018-11-06 10:42:35 -08:00
Colin Cross
fd5ab7c9b2 Merge "Revert "Use protoc-gen-javalite for java lite protos"" 2018-11-06 18:42:03 +00:00