Commit Graph

47865 Commits

Author SHA1 Message Date
Adam Vartanian
cee5d1da46 Add Conscrypt APEX to base image
Test: manual inspection of base image
Bug: 110404540
Change-Id: Ief4104ab0a2b42407554b96e9a8b1b47cddff156
2018-12-14 09:58:13 +00:00
Colin Cross
2bb1f518fd Correctly create directories before unzipping dexpreopt zip
Ie7daa94e107d53eff075ca58dbe721bd9d7fc8c2 attempted to pre-create
the directories that unzip would unzip into, but incorrectly
created them in the top of the source tree instead of in
$(PRODUCT_OUT).  Fix the directory location and add a cleanspec
to clean up the incorrect directories in the source tree.

Bug: 119412419
Test: m correctly cleans up incorrect directories in source tree
Test: extract unzip command from out/verbose.log.gz and add bash -x
Change-Id: Ica006a007d112c232311435aaac0c0e476232b67
2018-12-13 23:32:06 -08:00
Treehugger Robot
06c8df1ccd Merge "Add missing dependency on zip2zip" 2018-12-14 06:18:01 +00:00
Treehugger Robot
49448d5bc5 Merge "Create directories before unzipping dexpreopt zip" 2018-12-14 05:59:32 +00:00
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
Joe Onorato
e1c81d74e2 Merge "Add a print command to fs_config_generator.py" 2018-12-14 02:02:01 +00: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
Joe Onorato
2afb6eb22e Add a print command to fs_config_generator.py
This prints the uid map in a very simple format, with
AID_CONSTANT<space>uid
on each line.  This is super easy for other tools to
parse, and generate their own mappings, without requiring
edits to fs_config_generator.py itself.

Test: make, treehugger
Change-Id: I10e24ac29d440a24d43580880343d122ae1cdf02
2018-12-13 11:38:07 -08: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
Tianjie Xu
8ab919dcce Merge "blockimgdiff: Factor out the diff_worker" 2018-12-13 18:45:30 +00: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
9fb09f1762 Merge "Change profman logging to only be for errors" 2018-12-13 01:17:23 +00:00
xunchang
2153183acf blockimgdiff: Factor out the diff_worker
We will call it at an earlier time to compute the patch size; and
choose the transfers to convert to 'new'.

Bug: 120561199
Test: Generate an incremental update on shiner
Change-Id: I29a0c8e75c9e5b66a266c1387186692a86fcbe43
2018-12-12 17:02:39 -08:00
Remi NGUYEN VAN
a329810971 Build NetworkStack package
For go devices, the network stack should not run in a separate process:
NetworkStackLib is used in-process instead.

Test: built & booted a go and non-go config
Bug: b/112869080

Change-Id: I18b0446a0c0d19519ce0ef344f185b54ad7d4ac6
2018-12-13 09:28:10 +09:00
Treehugger Robot
c8b3d5f92f Merge "fs_config: remove empty fs_config_* automation." 2018-12-12 21:27:15 +00: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
Mark Salyzyn
640816eb42 fs_config: remove empty fs_config_* automation.
The code to manage citing empty <partition>/etc/fs_config_{files|dirs}
content by specifically setting the file(s) to access mode 00000 is
bitrotted and ill-suited for multiple partitions and was written for
a more paranoid time when DAC and MAC rules were not nearly as mature.

Striking out the complications as it affected deterministic results.

Test: compile and boot
Bug: 119310326
Change-Id: Iec02e0c1194eaa799ab95adff4ff0951a24652a4
2018-12-12 08:40:19 -08:00
Nicolas Geoffray
1e57a89bf9 Merge "Remove perfprofd from set of binaries installed on system." 2018-12-12 13:09:55 +00:00
Treehugger Robot
53de7a71f6 Merge "Add recovery_acpio option to make recovery image" 2018-12-12 08:13:46 +00:00
Nicolas Geoffray
1bc5aff793 Remove perfprofd from set of binaries installed on system.
Needed to get some space on marlin-eng :(

Also avoids static linking libart into perfprofd. Roland will follow-up by reverting the no-perfprofd changes.

bug: 73175642

Test: lunch marlin-eng && m -j32
Change-Id: Ic1c79c6dd1052981801b92604f9891a8a63b4ea0
2018-12-11 23:00:57 +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
Treehugger Robot
5e5cf8e17d Merge "Rename _complete-android-module-names" 2018-12-11 19:46:20 +00:00
Tianjie Xu
b38ae44d1e Merge "recovery text image: use zopflipng to compress the generated images" 2018-12-11 18:56:20 +00:00
dimitry
73b8481edf Rename _complete-android-module-names
A function name with dashes is apparently not universally recognized
by shell versions/variants(?). Using underscore in place of dashes
solves this problem.

Test: ./development/vndk/tools/header-checker/utils/create_reference_dumps.py -l libGLESv1_CM
Change-Id: Id7d701600760140dae9e4762a11f4abd64947d10
2018-12-11 18:06:00 +01:00
Jeff Sharkey
0262df76b6 Merge "Bump PREVIEW_SDK_INT for Q builds." 2018-12-11 16:11:28 +00:00
Artem Serov
f7dccc6bc0 Support kryo385 CPU.
Pixel 3 should use kryo385 CPU.

Related change:
https://android-review.googlesource.com/c/platform/build/soong/+/831260

Test: Builds Pixel 3.
Bug: 119564566
Change-Id: Iede5830093497abe753a34df3bc4913468be39d0
2018-12-11 12:04:52 +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
e3f39cd81e Merge "Factor out common code." 2018-12-10 12:50:54 +00:00
Chih-hung Hsieh
0252d6e5cf Merge "Allow the include directive." 2018-12-07 23:31:14 +00:00
Chih-Hung Hsieh
651294908f Allow the include directive.
* The include directive is ignored for now here.

Bug: 112259977
Test: ./checkowners.py  -v -c OWNERS
Change-Id: I671f3643ea88e50aea0957db59c36f10bff3b92d
2018-12-07 14:29:38 -08:00
Treehugger Robot
f37236df5f Merge "Don't build super image if source images are missing" 2018-12-07 21:30:57 +00:00
Treehugger Robot
4ea66801b2 Merge "Add functions to jump to specific modules." 2018-12-07 20:47:40 +00:00
Yifan Hong
e98427ac3f Don't build super image if source images are missing
For some internal branches, vendor.img isn't built, so there
is no need to build super image / super split images there.

Test: remove vendor.img and VENDOR/ from target_files_intermediates, then
      run add_img_to_target_files
Fixes: 120634805

Change-Id: I2834a27ce232538f203733c204dd257279c789fc
2018-12-07 11:01:21 -08:00
Treehugger Robot
e717da446b Merge "fs_config: add product and product_services" 2018-12-07 16:52:04 +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
Steven Moreland
62054a43fa Add functions to jump to specific modules.
Usage:
...aosp/$ gomod libbase
...aosp/system/core/base$

Using in alias:
alias g=gomod
complete -F _complete-android-module-names g

...aosp/$ g libbase
...aosp/system/core/base$

Nothing in Android keeps an up to date index of all Android modules
and their locations between builds. However, there is a target
'module-info.json' which is used to contain some of that information.
This module can be updated using the command 'refreshmod' added
here, but it will also be updated during a normal Android build.

This also adds auto-complete for m.

Bug: N/A
Test: manual
Change-Id: I06b0b87c308b9fe2798dbc29225906cc30fe59fe
2018-12-06 18:28:50 -08: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
Mark Salyzyn
cf343a6d1e fs_config: add product and product_services
Mechanical extension of mount directories to also support product/
and product_services/ as individually supplied images.

NB: In the distant past, a prototype placing the make rules into a
    macro was rejected as too difficult to maintain within the macro
    rules, so rules are rolled-out to make them easy to understand.

Test: compile
Bug: 119310326
Change-Id: Ief137cbe62db7175ee02275804ff1d644858dc3d
2018-12-06 22:13:26 +00:00
Tao Bao
70edcab678 Merge "releasetools: Keep the original RangeSet for 'uses_shared_blocks' case." 2018-12-06 21:31:28 +00:00