Commit Graph

17906 Commits

Author SHA1 Message Date
Tao Bao 7732b434e9 Merge "Set PATH when calling build_super_image.py." 2018-12-14 04:23:01 +00:00
Colin Cross 9eaeb56c24 Create directories before unzipping dexpreopt zip
unzip sometimes fails with:
checkdir error: cannot create out/target/product/.../system/framework/oat
File exists

I think this happens when two unzips run in parallel, see that the
parent directory is missing, race to create it, and then one of them
treats the EEXIST when creating it as an error instead of continuing.
Work around this by creating the directories with mkdir -p before
running unzip.

Test: m installclean && m
Bug: 119412419
Change-Id: Ie7daa94e107d53eff075ca58dbe721bd9d7fc8c2
2018-12-13 18:32:57 -08:00
Colin Cross e373b3f08b Add missing dependency on zip2zip
uncompress-prebuilt-embedded-jni-libs uses zip2zip, add a dependency
to the rule that calls it.

Test: treehugger
Change-Id: I39d580999947ee54cfefe875b57a028be5333bd7
2018-12-13 15:52:09 -08:00
Ivan Lozano 00997c2ac2 Merge "Add make var to avoid recovering with diagnostics." 2018-12-13 20:56:18 +00:00
Colin Cross 3b1d5a1538 Merge "Move dexpreopting to Soong" 2018-12-13 20:23:11 +00:00
Tao Bao 403a2f9051 Set PATH when calling build_super_image.py.
build_super_image.py calls `lpmake` and expects that (i.e.
HOST_OUT_EXECUTABLES) in PATH. However, we have to explicitly set up
that inside the build.

Bug: 120553014
Test: Set OUR_DIR and build blueline-userdebug.
Change-Id: I000f9d069902a902c9504a2ba31dba6dbc6917a2
2018-12-13 10:53:12 -08:00
Anton Hansson 32c76fe219 Fix qemu image definition conditionals
BOARD_USES_<X>IMAGE is not equivalent with that image actually
existing. Since these targets depend on the INSTALLED_<X>IMAGE
variables being defined, gate the conditionals on that instead.

This logic is used in other places in Makefile

Bug: 120974093
Test: make
Change-Id: I6766042c801bf7fddc4b84671dbe5d3a157aea6b
2018-12-13 16:46:05 +00:00
Treehugger Robot 93e6c59784 Merge "DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master" 2018-12-13 05:45:21 +00:00
Colin Cross e736c58043 Move dexpreopting to Soong
Move the dexpreopting logic into Soong.  Make modules will be
dexpreopted by executing the Soong logic in the standalone
dexpreopt_gen binary, which will generate scripts that will
perform dexpreopting for each module.  Export global configuration
as JSON to $OUT/dexpreopt.config, which will be used by
dexpreopt_gen and Soong, and per-module JSON configuration that
will be used by dexpreopt_gen.

Bug: 119412419
Bug: 120273280
Test: no differences to dexpreopt outputs on aosp_sailfish system/,
      only expected changes to dexpreopt outputs on system_other
      (.vdex files for privileged Soong modules no longer incorrectly
      contain .dex contents).
Change-Id: I59b20c931ee3e5a8d35eb30da4148691c5095502
2018-12-12 17:21:22 -08:00
Mathieu Chartier cc4ca50cfb Change profman logging to only be for errors
Move profman logging to only be for errors. Avoids build spam.

Bug: 120907449
Test: make
Change-Id: I0707dc5c8d6516cbf95d263864bdddaf5a5990c9
2018-12-12 10:28:02 -08:00
Ivan Lozano 5fb2de7086 Add make var to avoid recovering with diagnostics.
Add a LOCAL_SANITIZE_NO_RECOVER variable that allows specifying which
sanitizers running in diagnostics mode shouldn't recover. This can help
debugging as we test enabling sanitizers in new libraries since it'll
cause tombstones to be generated along with the diagnostics information.

Bug: 80195448
Bug: 110791537
Test: Compiled test module with this flag, checked compiler command.
Test: Test module crashed, tombstone contained diagnostics information.
Change-Id: I441b9c873e54bf6404325f4d0ac59835350c2889
2018-12-12 10:22:30 -08:00
Treehugger Robot 53de7a71f6 Merge "Add recovery_acpio option to make recovery image" 2018-12-12 08:13:46 +00:00
Xin Li 3449df5704 DO NOT MERGE - Merge pie-platform-release (PPRL.181205.001) into master
Bug: 120502534
Change-Id: Ib1b590fc605b17e3a3901e65f62d5f7ad2257f6a
2018-12-11 14:03:11 -08:00
Tianjie Xu b38ae44d1e Merge "recovery text image: use zopflipng to compress the generated images" 2018-12-11 18:56:20 +00:00
Chen, ZhiminX 752439b321 Add recovery_acpio option to make recovery image
Test: can generate recovery image with recovery_acpio
Fixes: 111871613

Change-Id: I9174a4741f571a00bcadc548cd9e1316b4175132
2018-12-11 15:23:28 +08:00
xunchang cc57d31c91 recovery text image: use zopflipng to compress the generated images
Generate the images for recovery's wipe data menu. And use the lossless
tool zopflipng to compress the generated image. This saves space
in the boot image at the cost of the increase of build time. In practice,
it adds about ~20 seconds to build the bootimage with 32 threads.

zopflipng generally runs slower. Even with a predefined filters
strategy, it runs about 3 times slower than pngcrush, e.g. ~40s vs 15s
to compress a 1.8M png file. However, zopflipng also gives a better
compression: ~1.4M vs 1.6M for the same image. So I guess the time
consumption is a price worth paying.

Bug: 74397117
Test: build the bootimage and check the resource images
Change-Id: I3e71f8bedd3c183a3374b1a9464bf05500e1aa61
2018-12-10 19:53:38 -08:00
Jeff Sharkey f7d482bd9a Bump PREVIEW_SDK_INT for Q builds.
We've already added new APIs in Q, so we shouldn't be claiming a
value of "0", which signals a production platform release.

Bug: 120797950
Test: manual
Change-Id: I6c9063ac4ace79b3ee6b1c67ccdf76f4063ad165
2018-12-10 17:13:24 -07:00
Tianjie Xu 19e6502884 Merge "Generate the recovery text images at build time" 2018-12-10 19:41:43 +00:00
Nicolas Geoffray ed167cf814 Factor out common code.
Test: m
Change-Id: If718c281656a890fb5eba54eb290976c153e2bb6
2018-12-07 14:35:52 +00:00
Nicolas Geoffray 923f267bf6 Merge "Use the final APK for dexpreopt when it's not stripped." 2018-12-07 14:13:45 +00:00
android-build-team Robot 4a676aaa3a Version bump to PPRL.181205.001
Change-Id: I9174bab704afa3ff85be5236be16d15f66446bb4
2018-12-07 02:58:19 +00:00
Nicolas Geoffray d80f9c0d32 Use the final APK for dexpreopt when it's not stripped.
The final APK may contain compressed or uncompressed dex files,
and this affects dex2oat compilation.

Test: build sailfish, test that SystemUI.vdex and Settings.vdex
don't have the dex code.

Change-Id: Ic032f61ed67dcdf342f6eaef71d805b89d6fc99a
2018-12-07 00:19:57 +00:00
Tianjie Xu 81c88ad58b Generate the recovery text images at build time
We used to manually generate the background text images for recovery. That
process requires opening various emulators and takes a long time. Now that
the host Java tool is ready to generate these images, we can embed the
generation step into the build of the recovery image.

Since there's currently no make variable that defines screen width of the
device, we put the commonly used values for pixels here, i.e. 1440 for
xxxhdpi and 1080 for xxhdpi. Devices with other dpi can still use this
feature if they define the screen width in their config files.

Test: build bootimage with screen with set/unset
Change-Id: Ic8389a527e6e7194de58a9c50763e841e886652b
2018-12-06 01:10:38 -08:00
Treehugger Robot 696dd3bd93 Merge "[make] Disable CFI when building with HWASan." 2018-12-05 22:00:21 +00:00
Chih-hung Hsieh a441818a10 Merge "Disable implicit-integer-sign-change by default." 2018-12-05 18:24:12 +00:00
Anton Hansson 6983776cdb Merge "Add RRO partition specification in Makefiles" 2018-12-05 14:43:19 +00:00
Evgenii Stepanov 88a95a35fa [make] Disable CFI when building with HWASan.
Same as soong. This needs do match, otherwise, for example, CFI may be
disable in a static library in soong, and left enabled in a shared
library in make; that would not work as CFI only supports DSO granularity.

Bug: 120508119, 112709969
Change-Id: I00d6b1c9c373bcb6804c135407c6eeae88b375b6
Test: hwasan build of master branch boots
2018-12-05 01:15:01 +00:00
Yifan Hong 5df29604b9 Merge changes from topic "super_target_files"
* changes:
  add_img_to_target_files uses build_super_image
  Build super_empty with build_super_image.py
  Build super.img from images in target_files
2018-12-04 23:20:21 +00:00
Ryan Mitchell 8dd846c45f Add RRO partition specification in Makefiles
This adds support for overlays to be placed in the product and
product_services partitions.

   LOCAL_VENDOR_MODULE :=  true #/vendor/overlay
   LOCAL_ODM_MODULE := true #/vendor/odm/overlay
   LOCAL_PRODUCT_MODULE := true #/system/product/overlay
   LOCAL_PRODUCT_SERVICES_MODULE := true #
   /system/product_services/overlay

Bug: 110869880
Test: built overlay with different partitions and verified correct apk
location

Change-Id: I21f594e784a18cf59f4ff03c00e30b463ec85008
2018-12-04 20:53:29 +00:00
Chih-Hung Hsieh 1871062b28 Disable implicit-integer-sign-change by default.
* New clang compiler makes some integer santizers enabling
  implicit-integer-sign-change, but Android code does not
  boot with this new sanitizer yet.

Bug: 119329758
Test: build and boot with new clang compiler
Change-Id: Ic80cde49d3ef51277fbe2a0aa8c1b8f2f8bfd80c
2018-12-04 19:52:14 +00:00
Bill Rassieur 1e2d9d2c35 Merge PQ1A.181205.006 from Pi-QPR1-Release into ToT for Pi-Platform release.BUG: 120448245 2018-12-04 10:48:09 -08:00
Haibo Huang 6201b9eb5a Remove denver64 from make
Test: build
Bug: 73545680
Change-Id: I8f28c7d6beaa5b0a7de9000ebea2f4d8e87f0381
2018-12-03 22:34:11 +00:00
Yifan Hong 055e6cf5c8 add_img_to_target_files uses build_super_image
Use the new script to build super_empty and super split images. No more
transformation to lpmake_args.

Test: build target_files_package for retrofit device
Change-Id: Id5f6bd607654ca869bcdf58d86b7ae300e3927eb
2018-12-03 11:33:44 -08:00
Yifan Hong 8b79d168eb Build super_empty with build_super_image.py
Use the script to build it to avoid having duplicate logic in
build-superimage-target-args and build_super_image.py
Test: build it

Change-Id: I82f74d56d744c5f5b8dd38d41fedd264b042bc7a
2018-12-03 11:33:44 -08:00
Yifan Hong 2b891ac024 Build super.img from images in target_files
For non-retrofit (launch) devices, super.img is used for factory, so
source images should be from target_files.

In this change, build-superimage-target procedure is converted to a
more flexible script so that it can be built.

Bug: 119322123
Test: build target files for device launch with dynamic partitions
Change-Id: I6ee0cc3e145357dfc74be248f81f5f8f4e51fc5c
2018-12-03 11:33:44 -08:00
Pirama Arumuga Nainar 539b58a55b Merge "Use libucrt instead of libmsvcr110" 2018-12-03 17:53:43 +00:00
Jaewoong Jung 58b7f7480f Merge "Use debug mode when running R8 for eng builds." 2018-11-30 22:40:45 +00:00
David Brazdil 8d8d4584f8 Merge "Replace hidden API lists with a single CSV" 2018-11-30 10:01:02 +00:00
Anton Hansson bd5bad916a Merge "Remove USE_HWC2 plumbing and settings" 2018-11-30 09:11:28 +00:00
Pirama Arumuga Nainar 132f959e5e Use libucrt instead of libmsvcr110
Bug: http://b/117796718

ucrt is either preinstalled in newer Windows or can be installed in
older Windows, whereas a dependence on msvcr110 doesn't work on Windows
without additional dependencies.

Test: Run generated binaries on Windows VM (7, 8, and 10) without
installing any extra dependencies.

Change-Id: If5a5ffaa9d822ca05b4b54896937f224103f33d7
2018-11-29 17:22:32 -08:00
Treehugger Robot 4681fc3803 Merge "Add ODM in valid_super_partition_list" 2018-11-30 00:39:51 +00:00
Bill Rassieur f8efe99d0c Set RC Name to PPRL.181105.017.
BUG: 119059929
2018-11-29 13:34:41 -08:00
Tom Cherry e7e33bc7f5 Merge "Remove copying of TARGET_OUT_RAMDISK to recovery image" 2018-11-29 16:50:37 +00:00
Ivan Lozano 6750532978 Merge "Disable AArch64 XOM when not using lld." 2018-11-29 15:58:39 +00:00
David Brazdil 59b6fd541d Replace hidden API lists with a single CSV
Combine existing hiddenapi-* txt files into a single CSV containing
a list of all class members and their corresponding flags.

Test: m, phone boots
Change-Id: I67f1b5f331b262e9b681d9a3c78c9e4cbb5ea082
2018-11-29 15:48:56 +00:00
Anton Hansson b91e0c5ab1 Remove USE_HWC2 plumbing and settings
Last use removed in Ibefde5feaeaec8fb68cbc6ea1c019bf8b5e608bb

Test: make
Change-Id: I0567347379b1d030ed2f8dba7babc1f22be5dac4
2018-11-29 10:08:07 +00:00
Yifan Hong 2a0d148f26 Merge "Allow space in BOARD_*_SIZE variables for dynamic partitions" 2018-11-29 04:41:16 +00:00
Treehugger Robot 7328e08efe Merge "Pass --avoid-storing-invocation to dex2oat" 2018-11-29 02:56:51 +00:00
Yifan Hong e5d879a193 Allow space in BOARD_*_SIZE variables for dynamic partitions
Allow instances like:
BOARD_SUPER_PARTITION_SIZE := 4294967296 # 4GiB

Test: add trailing space to BOARD_SUPER_PARTITION_SIZE,
BOARD_(group)_SIZE, BOARD_*IMAGE_PARTITION_RESERVED_SIZE,
BOARD_SUPER_PARTITION_(device)_DEVICE_SIZE, build passes.

Fixes: 120042457
Change-Id: Ib7244e3fd2f782657c84cdb74e601ac96176571d
2018-11-28 15:33:17 -08:00
Jaewoong Jung b3113da542 Use debug mode when running R8 for eng builds.
Bug: 119601874
Test: Built for different variants.
Change-Id: Icaf300c944b1d0594f524a11999cc5a8229919eb
2018-11-28 15:19:46 -08:00
Yifan Hong 9b743fa997 Add ODM in valid_super_partition_list
ODM can already be built with dynamic sizes (in that
build_image.py builds it correctly). Add it to the list of
valid dynamic partitions.

Test: builds
Change-Id: Ib5d1348530d2120e3af7dbe422ac3ebe6149b4fb
Fixes: 120047099
2018-11-28 12:42:36 -08:00
Colin Cross 3ec2c61549 Pass --avoid-storing-invocation to dex2oat
Pass --avoid-storing-invocation to dex2oat, which will remove the
command line from the final .odex files.  This will help make the
.odex files reproducible across devices and build system changes,
simplifying comparisons.

Bug: 119412419
Test: m checkbuild
Change-Id: I46cedadab9a87addc0f9e35f7bbe578beae1df60
2018-11-28 11:57:47 -08:00
Tom Cherry 3871f0fc61 Remove copying of TARGET_OUT_RAMDISK to recovery image
This was only needed for pushing first stage init to the recovery
image.  This isn't actually needed however, as the recovery image can
be fully shared and can run full init as long as there is a symlink
from /init to /system/bin/init, so that is added instead.

Bug: 80395578
Test: boot to recovery via this symlink
Change-Id: I8910543525a841401b209bfd98af30c5a0dc2688
2018-11-28 08:53:38 -08:00
Dan Albert 638ca85aec Merge "Don't use libandroid_support post-21." 2018-11-28 16:19:01 +00:00
Anton Hansson 715a6c4c80 Merge "Improve consistency of indentation in Makefile" 2018-11-28 10:15:53 +00:00
Ivan Lozano f9f03e0119 Disable AArch64 XOM when not using lld.
AArch64 execute-only memory is only supported when using lld as the
linker. There's still a few modules which don't use lld, so in those
cases we need to disable this option.

Bug: 77958880
Test: Module with LOCAL_USE_CLANG_LLD false builds without XOM
Test: Module without LOCAL_USE_CLANG_LLD defined builds with XOM

Change-Id: I5dfe3cd1e1cac2b3ead13912af9f7fe896d507e9
2018-11-27 14:53:33 -08:00
Miao Wang 62c2390a55 Correctly configure armv8-2a for 32-bit
Bug: 119681317
Test: mm
Test: CtsRenderscriptTestCases
Change-Id: I455c94948430d3cc2dd320cce830ae18be6a93cd
2018-11-27 14:05:48 -08:00
Dan Albert e6d958aed7 Don't use libandroid_support post-21.
Test: m checkbuild
Bug: http://b/119587551
Change-Id: If3a3556ad27e632778efda43da8384a40eedee5a
2018-11-27 13:59:28 -08:00
Anton Hansson 6d81498baf Improve consistency of indentation in Makefile
Only use one consecutive tab in make rules and use spaces
for any additional indentation. This should generally prevent
tabs from appearing on the cmdline.

This cl is the result of 3 regex replaces:
\\\n\t\t([^\t]) -> \\\n\t    \1
\\\n\t\t\t([^\t]) -> \\\n\t        \1
\\\n\t\t\t\t([^\t]) -> \\\n\t            \1

Test: make mainline_system_arm64
Change-Id: Ic3f72deed35e39e4b1a4b492db65aeabc5bef0d5
2018-11-26 18:12:05 +00:00
Anton Hansson 5d218a123f Merge "Add support for TARGET_PRODUCT_PROP" 2018-11-26 17:51:13 +00:00
Anton Hansson e9ee80e24a Add support for TARGET_PRODUCT_PROP
Like TARGET_SYSTEM_PROP, but is merged into /product/build.prop.

Also change the formatting of the output of both of these macros
slightly, so make the start and end clearer.

Bug: 119911662
Test: migrate downstream products to use this
Change-Id: Iddae7aac3c51b5706f3fb2690c5ca5a98840ad34
2018-11-22 15:27:35 +00:00
Yifan Hong 9b024fe583 Merge "dynamic_partition_use -> use_dynamic_partitions." 2018-11-22 00:19:56 +00:00
Yifan Hong 50611038e9 dynamic_partition_use -> use_dynamic_partitions.
Test: build OTA package
Change-Id: Ia43d23f49fc024ecc767da1c2186c4b446c034de
2018-11-21 13:00:57 -08:00
Ivan Lozano fda9a6f38e Add support for AArch64 XOM binaries.
Adds build system support for generating AArch64 binaries with
execute-only memory layouts via a new LOCAL_XOM property. Also adds
support for an ENABLE_XOM build flag for global builds.

Bug: 77958880
Test: make -j ENABLE_XOM=true
Change-Id: I6af9e3615d0a9fdff802eae50e6ad94311ec8046
2018-11-21 09:05:08 -08:00
Treehugger Robot 01284abf21 Merge changes from topic "dp_sysprop"
* changes:
  ro.boot.dynamic_partitions: fix empty values
  Remove ro.boot.logical_partitions
2018-11-21 07:39:21 +00:00
Treehugger Robot b906ebb313 Merge "PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS: allow inheritance" 2018-11-21 00:41:44 +00:00
Yifan Hong 4a37a03758 ro.boot.dynamic_partitions: fix empty values
When PRODUCT_RETROFIT_DYNAMIC_PARTITIONS is empty, collapse-pairs will
write this line to build.prop:
ro.boot.dynamic_partitions=ro.boot.dynamic_partitions_retrofit=

... which is not what we want.
Test: build without dynamic partitions

Change-Id: I04c3c75fad20604657814b7f9cce2cc0635627ee
2018-11-20 16:06:17 -08:00
Yifan Hong 284b2b9fc9 Remove ro.boot.logical_partitions
Test: boots
Bug: 119286600
Change-Id: I0606c3989588de3afaacc170943eaca82c682085
2018-11-20 16:06:17 -08:00
Yifan Hong d585de5933 Merge changes from topic "dp_retrofit_gen"
* changes:
  Generate retrofit OTA.
  Add split super images to target_files.
2018-11-20 22:44:06 +00:00
Treehugger Robot fec2671f00 Merge "Fix size checks for retrofit dynamic partitions." 2018-11-20 22:30:56 +00:00
Yifan Hong 452d9267fc PRODUCT_OTA_ENFORCE_VINTF_KERNEL_REQUIREMENTS: allow inheritance
Test: with this is true, build
     `verified_assembled_system_matrix.xml`;
      file includes kernel requirements
Change-Id: I833b4fefabefb2f0457171055afe5722981e3589
2018-11-20 11:50:52 -08:00
Yifan Hong 50e7954ac9 Generate retrofit OTA.
Test: m otapackage -j, manual apply on top of P
Bug: 118506262

Change-Id: Iedc389a1058007a604de0482f2348a9ef0d5892a
2018-11-20 11:17:39 -08:00
Yifan Hong c767f7cbfc Add split super images to target_files.
Test: build target files package
Bug: 118506262
Change-Id: Iee6143987c9bfa6f2d287e20c06ea5ef25e82985
2018-11-20 11:17:39 -08:00
Yifan Hong 7416b8d143 Remove PRODUCT_USE_LOGICAL_PARTITIONS.
Use PRODUCT_USE_DYNAMIC_PARTITIONS instead.
Test: boots
Fixes: 119286600

Change-Id: I5c0828eac2b6c579edbb494b150bc586b3b576f1
2018-11-20 00:34:30 +00:00
Treehugger Robot 614e1e806e Merge "Remove androidboot.logical_partitions kernel cmdline" 2018-11-20 00:30:05 +00:00
Yifan Hong 426e029980 Remove androidboot.logical_partitions kernel cmdline
Flag is not used anymore.
Fixes: 119286600
Test: boots

Change-Id: I47370369ccde6d504ea0c936a179c4a325302f8b
2018-11-19 22:38:35 +00:00
Yifan Hong f39d8af57e Fix size checks for retrofit dynamic partitions.
Now that we have two supers for retrofit devices, modify
the size checks. Only A/B devices launched with dynamic partitions
will get the / 2.

Test: builds
Bug: 116608795
Change-Id: Icdddcc0b3f3be307b3907e1c789933c2ace61867
2018-11-19 14:37:45 -08:00
Haibo Huang ee0531da7a Add cpu variant information to vendor/default.prop
Test: build and check vendor/default.prop
Change-Id: I8d86d58c72118c7dda65e75d09680e20c9428c24
2018-11-19 18:57:36 +00:00
Treehugger Robot c6434d43ec Merge "Sort output in dump-files" 2018-11-19 17:43:00 +00:00
Anton Hansson 41b53a3c19 Sort output in dump-files
Makes it less frustrating to use.

Test: m dump-files
Change-Id: I84801f37e2e40a37d65d3f9ce7b19a84f3381a53
2018-11-19 14:33:19 +00:00
Dimitry Ivanov d04107683b Merge "Enable overrides for shared libraries" 2018-11-17 09:03:04 +00:00
Evgenii Stepanov f05ff886b8 Merge "Build ota packages for SANITIZE_TARGET other than "address"." 2018-11-15 22:26:39 +00:00
Evgenii Stepanov 5d06f240e3 Build ota packages for SANITIZE_TARGET other than "address".
HWASan OTAs should work fine.

Bug: 119436631
Test: make SANITIZE_TARGET=hwaddress dist
Change-Id: I87c8ca58b924a478679879d09a34c44cd5832470
2018-11-15 11:14:09 -08:00
Anton Hansson 8ee39f031c Merge changes Idc621b16,I00fcdce3
* changes:
  Fix dependencies of notice files
  Refactor logic for notice files
2018-11-14 12:48:55 +00:00
Treehugger Robot 2d544529fd Merge "Add TARGET_FLATTEN_APEX" 2018-11-14 11:47:51 +00:00
Anton Hansson 2f8e2b8e1f Merge "Disable artifact path requirements for asan builds" 2018-11-14 10:40:28 +00:00
Treehugger Robot 30bac4a994 Merge "Enable armv8-2a supporting on 2nd arch. variant" 2018-11-14 06:47:33 +00:00
Treehugger Robot 645547b522 Merge "Add missing zipalign dependency" 2018-11-14 05:15:17 +00:00
Jiyong Park 5217eed7a3 Add TARGET_FLATTEN_APEX
TARGET_FLATTEN_APEX, when set to true, flattens APEXes that are on
/system. Flattening an APEX means files in it are not packaged as a mini
file system image, but exist in the /system partition as individual
files. This option is for devices where kernel does not support loopback
devices or the maximum number of loopback devices is too small (though
the threshold is TBD as of now).

Bug: 118485880
Test: TARGET_FLATTEN_APEX=true m apex.test; tree
out/target/product/.../system/apex/apex.test shows list of files in it.

Test; m apex.test, then a file out/target/product/.../system/apex/apex
.test.apex exists.

Change-Id: Ie13cb062c1387d55689692ba2b123e606ada8aa4
2018-11-14 07:53:23 +09:00
Anton Hansson 2b4469a8a0 Disable artifact path requirements for asan builds
asan builds create many artifacts that normal builds do not, and
are only used for testing. Disable artifact requirements for them.

Bug: 119270428
Test: build internal asan product
Change-Id: I8692ee7e8916d40a8a787c3a07dcf7d677b19cab
2018-11-13 22:39:00 +00:00
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
Colin Cross f9532bb509 Add missing zipalign dependency
$(align-package) uses $(ZIPALIGN), add it as a dependency to the
rule.

Bug: 119403628
Test: rm out/host/linux-x86/bin/zipalign && m out/target/product/sailfish/obj/APPS/SystemUI_intermediates/oat/arm64/package.odex
Change-Id: Iffc9506fd3168481ad998c5d8423ed4e13e6d11b
2018-11-13 13:30:53 -08: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
Anton Hansson 6ad6f6c8ab Fix dependencies of notice files
Filter out the relevant deps for /vendor, /product and
/product_services, and make the /system version depend
on the rest.

Also filter out phony packages, which do not produce
license files on their own (though their deps might).

Bug: 118089975
Test: diff blueline notice files before and after
Change-Id: Idc621b16237dfecafd0befa742c8d3b93be1f611
2018-11-13 16:53:46 +00:00
Anton Hansson bfbaa98bb7 Refactor logic for notice files
Move things around so that we don't need to check whether
we're in the "split license file mode" over and over, and
some other moves to improve readability.

Also rename the html_or_xml variables to the correct name
given the branch of the conditional we're in, to make it
easier to grok.

Bug: 118089975
Test: diff notice files for blueline before and after
Change-Id: I00fcdce31503c543c6c0ab6901531c54c9705617
2018-11-13 16:53:18 +00:00
Treehugger Robot 623c33915b Merge "Factor out json from soong_config.mk" 2018-11-13 16:35:11 +00:00
Isaac Lee ead02eb87d Enable armv8-2a supporting on 2nd arch. variant
Newer cores are implementing armv8-2a ISAs.
Enabling 2nd arch. variant to support for new type of cores.

Test: set TARGET_2ND_ARCH_VARIANT := armv8-2a, build without warnings and not ignore armv8-2a
BUG: 118414869
Change-Id: I1cd64ab0ad9b253ec3d109ebd1dbc7882011ce77
2018-11-13 17:31:28 +08: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