Commit Graph

34286 Commits

Author SHA1 Message Date
Treehugger Robot bba00b2cb9 Merge "Add the option to reserve headroom for partition images. This is useful for devices with low disk space with different build variants." 2017-05-13 01:37:25 +00:00
Tianjie Xu f34d435925 Merge "Add a script to parse an block-based ota package" 2017-05-11 21:52:10 +00:00
Tao Bao 4e1c113554 Merge "OTA Tools: Handle password encrypted keys" 2017-05-11 19:28:07 +00:00
Christian Oder f63e2cd47b OTA Tools: Handle password encrypted keys
* Add logic to handle decrypted keys from common.GetKeyPassword in
WriteABOTAPackageWithBrilloScript.

* Get the keys passwords in main and store them in OPTIONS.key_passwords.
This allows accessing them in WriteABOTAPackageWithBrilloScript and SignOutput
so it's only required to ask for the password once, while allowing to use
decrypted signing keys.

Test: ota_from_target_files.py on marlin and angler respectively.
Change-Id: I7c9b0198855a4b630c52b8552e904f312f09c4ce
2017-05-10 16:54:42 -07:00
Treehugger Robot 57273013cf Merge "make: add __clang_analyzer__ to clang-tidy" 2017-05-10 04:34:42 +00:00
Treehugger Robot 90573e75a8 Merge changes Id0d167e6,I290a02b0
* changes:
  Clean LOCAL_RESOURCE_DIR paths
  Implement clean-path
2017-05-10 02:22:17 +00:00
Treehugger Robot e5143608df Merge "Selectively add _asan flavor suffix." 2017-05-09 23:52:24 +00:00
Tianjie Xu ce9d78fcd9 Add a script to parse an block-based ota package
The script prints the meta info, new/patch data size. It also simulates
the transfer commands and calculates amount of I/O as well as cache
needed.

We can add the more options to parse system/vendor.map so that we can
analyze the location change of files.

Bug: 31514709
Test: parse a bullhead incremental/full ota.
Change-Id: I70ed4f4c15e595b1851109e9799d44ac4e815c16
2017-05-09 21:01:19 +00:00
Vishwath Mohan 9ebc278f91 Selectively add _asan flavor suffix.
This CL ensures that the _asan suffix is added to the build flavor
only when it doesn't already contain _asan (or _asan_coverage). This
correctly prevents it from appending an extra _asan to ASAN lunch
configs that already include it in the flavor, while allowing
sanitized targets for generic configs to behave as they used to.

Bug: 38145756
Test: _asan is correctly appended only for lunch configs that don't
already specify it in the build flavor.

Change-Id: Ia7d9356f717b97d1c64e3237ca31cc507f27734f
2017-05-09 09:54:49 -07:00
Julius D'souza 001c676b81 Add the option to reserve headroom for partition images.
This is useful for devices with low disk space with different
build variants.

Bug: 37469715
Test: Regular image builds successfully, errors occur when
the headroom size is greater than available partition space.

Change-Id: I526cdd0f84981bbd16e3afcfe1cd7fc43dce98ef
2017-05-08 11:59:25 -07:00
Nicolas Geoffray a65a41dcdb Merge "Pass --force-determinism to prebuilts." 2017-05-08 09:29:55 +00:00
Dan Willemsen fa7ecfb752 Clean LOCAL_RESOURCE_DIR paths
With LOCAL_USE_AAPT2, resource directories like a/b/../res cause
problems, since ninja will canonicalize the path before creating the
intermediate resource directory, so it creates <intermediates>/a/res
while we give AAPT2 <intermediates>/a/b/../res, which fails to open.

Bug: 37716307
Test: Switch LOCAL_USE_AAPT2:=true for TelecommUnitTests, mma
Test: lunch aosp_marlin-userdebug; m -j
Change-Id: Id0d167e68185a119390e7b7e3c344895e77ca0e3
2017-05-05 20:50:54 -07:00
Dan Willemsen 5ec6bbc3d5 Implement clean-path
We shouldn't give non-clean paths to tools -- if a/b/../file was
specified, we can simplify that path to a/file, and not need to create
a/b just to make the path name work.

The testcases come from golang's filepath.Clean tests, this should be
compatible with that implementation.

Bug: 37716307
Test: TEST_MAKE_clean_path=true m -j blueprint_tools
Change-Id: I290a02b0a1e4a7c2b9255bca3c881589b521c402
2017-05-05 20:50:47 -07:00
Treehugger Robot 52d6a0d4cb Merge "Export OVERRIDE_RS_DRIVER to soong" 2017-05-06 01:19:44 +00:00
Tao Bao a149a83e24 Merge "releasetools: Add a verbose parameter to common.Run()." 2017-05-05 22:29:52 +00:00
Colin Cross 7932f9bc5d Export OVERRIDE_RS_DRIVER to soong
Test: examine RS cflags
Change-Id: I0c1cc54f3f7f860895322d2825c7168c93a84ef5
2017-05-05 15:22:33 -07:00
Treehugger Robot e3f07c2adb Merge "core/Makefile: add AVBTOOL deps to boot.img for BOARD_AVB_ENABLE" 2017-05-04 22:31:22 +00:00
Thierry Strudel d7bd1f216f core/Makefile: add AVBTOOL deps to boot.img for BOARD_AVB_ENABLE
Bug: 37960599
Test: 'make bootimage' works when BOARD_AVB_ENABLE is true
Change-Id: I02c2fa16c9df988fbe1e1d6cd13a62278fedea45
Signed-off-by: Thierry Strudel <tstrudel@google.com>
2017-05-04 14:00:50 -07:00
Tao Bao 39451582c4 releasetools: Add a verbose parameter to common.Run().
Caller can optionally specify the verbose flag which overrides
OPTIONS.verbose. The command line won't be outputed with verbose=False.
This is useful for cases that a) those command lines are less useful
(but will spam the output otherwise); b) sensitive info is part of the
invocation.

'verbose=False' will be consumed by common.Run() only, instead of being
passed to subprocess.Popen().

Test: ota_from_target_files.py on a block based OTA.
Change-Id: I7d5b4094d756a60f84f89c6a965e7ccc68e435f8
2017-05-04 11:18:56 -07:00
Treehugger Robot 2be7eb9161 Merge changes Idf48f45f,Id2a72fe7,If83e1df2
* changes:
  Build: Disable leak sanitizer for ijar
  Build: Disable leak sanitizer for llvm-rs-cc
  Build: Disable leak sanitizer for aapt
2017-05-04 04:47:04 +00:00
George Burgess IV 5ab07d4f14 make: add __clang_analyzer__ to clang-tidy
We have code that acts slightly differently when the static analyzer is
running, so that it can produce more accurate diagnostics (e.g. less
false positives). It uses __clang_analyzer__ to detect the static
analyzer.

When the static analyzer is run via clang-tidy, __clang_analyzer__
doesn't get defined.

Bug: None
Test: WITH_TIDY=1 m. clang-tidy now acts as expected in code made for
the static analyzer

Change-Id: Ib2a815c0bd67553af465b64207bb480fb52cfaf8
2017-05-03 18:10:47 -07:00
Treehugger Robot 4a3dc1458f Merge "Only set TARGET_PLATFORM version in lunch when explicitly requested" 2017-05-03 04:36:56 +00:00
Colin Cross 4b7074e249 Merge "Clear LOCAL_JACK_ENABLED for ANDROID_COMPILE_WITH_JACK=false" 2017-05-03 04:36:28 +00:00
Colin Cross 1c1e142199 Only set TARGET_PLATFORM version in lunch when explicitly requested
Setting TARGET_PLATFORM_VERSION to DEFAULT_PLATFORM_VERSION during
"lunch sailfish-userdebug" causes unnecessary pain when
DEFAULT_PLATFORM_VERSION becomes invalid after branching.  Only
set TARGET_PLATFORM_VERSION if it was explicitly requested with
lunch sailfish-userdebug-OPR1.

Test: build/make/tests/envsetup_tests.sh
Bug: 34972208
Bug: 37208937
Change-Id: I40ba4617e73803c5bec1a8d317382f70fb3ec3a2
Merged-In: I40ba4617e73803c5bec1a8d317382f70fb3ec3a2
2017-05-03 02:47:59 +00:00
Treehugger Robot 328290459d Merge "Sort inputs to compatibility suite zip files" 2017-05-03 02:43:33 +00:00
Colin Cross f899251e12 Clear LOCAL_JACK_ENABLED for ANDROID_COMPILE_WITH_JACK=false
CL I2189055aac9deccc36b8eab8e949796dddadf7a1 moved the
ANDROID_COMPILE_WITH_JACK=false check to configure_local_jack.mk,
which broke some modules that use ifndef LOCAL_JACK_ENABLED to
change their behavior we jack is disabled.  Clear
DEFAULT_JACK_ENABLED when ANDROID_COMPILE_WITH_JACK=false so
that LOCAL_JACK_ENABLED is cleared.

Bug: 37483961
Test: m -j checkbuild
Change-Id: I0d08946c57182689624c57f4952d7cecaa0b82b3
2017-05-02 18:58:29 -07:00
Treehugger Robot 94751070e8 Merge "Exempt UBSAN runtime library from soong_to_convert" 2017-05-03 01:18:58 +00:00
Colin Cross 30c33b1c2b Sort inputs to compatibility suite zip files
Sort the inputs to remove duplicates, which fixes:
found two file paths to be copied into dest path: "target/testcases/minikin_perftests/minikin_perftests", both ["target/testcases/minikin_perftests/minikin_perftests"]"out/target/product/bullhead/testcases/minikin_perftests/minikin_perftests" and ["target/testcases/minikin_perftests/minikin_perftests"]"out/target/product/bullhead/testcases/minikin_perftests/minikin_perftests"!

Test: m -j device-tests
Change-Id: I8d7e83cd077c62461c9a08e7f1b49c321fbcb0e3
2017-05-02 17:56:57 -07:00
Tao Bao 3465f2ad56 Merge "Add the missing dependency on payload generation script." 2017-05-02 23:42:44 +00:00
Treehugger Robot cb8077df16 Merge "Make javac checkbuilds match jack" 2017-05-02 22:56:38 +00:00
Treehugger Robot c59d10fd1a Merge "Pass TARGET_USES_HWC2 to soong as device_uses_hwc2" 2017-05-02 19:59:42 +00:00
Yang Ni 9aff695ab8 Merge "Do not package res unless RS target API < 21" 2017-05-02 19:29:33 +00:00
Colin Cross ea60db9a83 Pass TARGET_USES_HWC2 to soong as device_uses_hwc2
TARGET_USES_HWC2 is going away, but propagate it to soong for now
to unblock converting dependency chains that end in libhwui.

Test: soong tests
Change-Id: Ie436548a60a08a487b1d85ff55706b824b297833
2017-05-02 11:18:40 -07:00
Colin Cross 64ed2f2478 Merge "Support LOCAL_JACK_ENABLED := javac_frontend" 2017-05-02 18:05:36 +00:00
Treehugger Robot 0f56f197fa Merge "Allow PRODUCT_FULL_TREBLE_OVERRIDE to be false." 2017-05-02 16:45:36 +00:00
Treehugger Robot c30a14020d Merge "Use 'quicken' instead of 'interpret-only'." 2017-05-02 10:40:56 +00:00
Yang Ni 6b68da0625 Do not package res unless RS target API < 21
Bug: 37626838

Since Lollipop, RS generated bitcode is embedded as strings in
generated Java files, and no longer needed in the resources.
This CL makes packaging resources conditional on RS target API, and
not do so unless it is below 21.

Test: mm in frameworks/rs/tests/java_api/Refocus, ImageProcessing2, and
      ImageProcessing_jb
Change-Id: I79a90ed4b96cb78b22a64a35b539d9d67351f4c4
(cherry picked from commit e2c0901918)
2017-05-01 20:07:45 -07:00
Treehugger Robot 5821266790 Merge "Install sqlite3 on userdebug builds" 2017-05-02 02:36:58 +00:00
Steven Moreland 3a0afa7f57 Allow PRODUCT_FULL_TREBLE_OVERRIDE to be false.
Devices which are not Android phones may want to set
PRODUCT_FULL_TREBLE_OVERRIDE (and therefore
PRODUCT_FULL_TREBLE) to false.

Test: confirm expected values when putting in expected values of:
  PRODUCT_FULL_TREBLE_OVERRIDE
  PRODUCT_SHIPPING_API_LEVEL
Fixes: 37869308

Change-Id: If5a383210ea282a3a274e5eba0d32ef6cfebafd0
2017-05-01 18:11:35 -07:00
Treehugger Robot 9607ace215 Merge "Split vendor license notices into vendor partition" 2017-05-01 23:08:19 +00:00
Jaekyun Seok 9e7eab53c1 Split vendor license notices into vendor partition
Xml files will be generated instead of html files, and then Settings
will generate html file on runtime from xml files of partitions.

Test: build succeeded and tested on sailfish
Bug: 37099941
Merged-In: Id7899381a537b1947cbb6164ed2b4a98492334af
Change-Id: Id7899381a537b1947cbb6164ed2b4a98492334af
(cherry picked from commit 3b7560bf88)
2017-05-01 22:07:50 +00:00
Colin Cross 9418749c48 Install sqlite3 on userdebug builds
sqlite3 had LOCAL_MODULE_TAGS := debug, which was not passed
through when converting to soong.  We prefer PRODUCT_PACKAGES_DEBUG
instead, so add it there.

Bug: 37627999
Test: sqlite3 is in installed-files.txt
Change-Id: Idb8b3aea7b7482109aa4ed3ac0016bd84dd23f22
2017-05-01 21:39:40 +00:00
Colin Cross 9eff830fa2 Make javac checkbuilds match jack
Building all java to dex is very slow.  Make javac checkbuilds act
like jack checkbuilds and only build to class files for unused
modules, and add a java-dex target that can be used to build
everything to dex.

Test: m -j checkbuild
Change-Id: Idcf9c9e0223b9dd88aaa53beb0cb50a230034b0f
2017-04-28 13:39:16 -07:00
Colin Cross b17f285169 Support LOCAL_JACK_ENABLED := javac_frontend
Allow working around Jack bugs by using javac to compile *.java
to class files, and then pass through Jack for desugaring,
proguarding, and dexing.

Also make ANDROID_COMPILE_WITH_JACK=false override LOCAL_JACK_ENABLED.

Bug: 37483961
Test: m -j checkbuild
Test: Add LOCAL_JACK_ENABLED := javac_frontend to a target
Change-Id: I2189055aac9deccc36b8eab8e949796dddadf7a1
2017-04-28 13:39:12 -07:00
Andreas Gampe 48d9a5c80b Build: Disable leak sanitizer for ijar
Temporary workaround.

Bug: 37756495
Test: ASAN_OPTIONS= SANITIZE_HOST=address mm
Change-Id: Idf48f45f0c33fc57af29574c8591a532144d4623
2017-04-28 10:36:12 -07:00
Andreas Gampe 83c5c474b8 Build: Disable leak sanitizer for llvm-rs-cc
Temporary workaround. Disable leak detection and container
overflow.

Bug: 37755219
Test: ASAN_OPTIONS= SANITIZE_HOST=address m
Change-Id: Id2a72fe7170123f8652f96a0fed29d03f99ae03b
2017-04-28 10:36:12 -07:00
Andreas Gampe c5bb0d736e Build: Disable leak sanitizer for aapt
Temporary workaround.

Bug: 37750224
Test: SANITIZE_HOST=address m
Change-Id: If83e1df25890717d18b841fa65635427ba2ee36a
2017-04-28 10:36:12 -07:00
Nicolas Geoffray a5bb180a89 Pass --force-determinism to prebuilts.
bug: b/37442966
Test: build
Change-Id: I231803874f6f2a7245a4ef03d50a271d3c29fc9f
2017-04-28 15:01:22 +01:00
Nicolas Geoffray eb3d2f2e75 Use 'quicken' instead of 'interpret-only'.
bug: 34715556
Test: build
Change-Id: Id4518e80598b7baee64e92f7ff4ed600f8cdee5b
2017-04-28 13:04:38 +01:00
Nicolas Geoffray 078aafc590 Merge "Make the default preopt 'interpret-only'." 2017-04-28 12:03:18 +00:00