Commit Graph

12193 Commits

Author SHA1 Message Date
Dan Willemsen ffa3258f6c Add LLNDK support for the VNDK
Instead of using the NDK headers and libraries, add LL-NDK specific
headers and library stubs for VNDK users. This allows us to provide an
expanded liblog interface.

Test: aosp_arm; m -j
Test: Enable BOARD_VNDK_VERSION on aosp_arm; m -j
Change-Id: I0197f44c91218c73b9567a05320c91a2baaae39b
2017-04-07 21:21:24 +00:00
Colin Cross 96476c1d50 Fix duplicate and dangling rules
I6730e2d3ec38004874265b2a690442dec57b33f4 introduced duplicate rules
to build classes.jar for static java library prebuilts, and left rules
to copy $(built_dex_intermediates) to $(built_dex) for modules that
don't build dex files.

Move prebuilts LOCAL_BUILT_MODULE back to javalib.jar to match
non-prebuilt modules, and remove the manual building of javalib.jar.

Add a check around $(built_dex_intermediates) for static java libraries.

Bug: 36901093
Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I291510b56162f0d35553e3c7ccd59b1382224d62
2017-04-06 10:23:04 -07:00
Colin Cross 7b7363fffb Merge "Rearrange java library outputs" 2017-04-06 15:30:45 +00:00
Treehugger Robot 41d5cd7420 Merge "Move proguard before classes.jar" 2017-04-06 02:39:13 +00:00
Colin Cross 941b682099 Rearrange java library outputs
Jack can silently handle using a java library as a static java
library by merging in the java library dex file.  This causes
problems when switching to javac, because dex doesn't support
dex merging with multidex enabled?

Make the output files consistent between java libraries and static
java libraries.  Java libraries will now produce:
classes-pre-proguard.jar: the classes before proguard processing
classes.jar: the final jar file containing classes before dexing
javalib.jar: a jar containing classes.dex

Static java libraries will eventually only produce
classes-pre-proguard.jar and classes.jar.  All inter-library
linking is done with classes.jar, so a java library can be
used as a static java library.

There are too many dependencies outside the build system that
expect javalib.jar to exist for static and host java libraries,
so for now continue to build a javalib.jar that is a copy of
classes.jar.

Test: m -j ANDROID_COMPILE_WITH_JACK=false java
Test: m -j java
Bug: 36901093
Change-Id: I6730e2d3ec38004874265b2a690442dec57b33f4
2017-04-05 18:04:37 -07:00
Colin Cross 950f1efbbc Move proguard before classes.jar
Downstream users of a library always link against javalib.jar, which
is either the dex jar for java libraries or a copy of
proguard.classes.jar for static java libraries.  In preparation for
making java libraries a superset of static java libraries, make
classes.jar always be the final class-containing jar for use
downstream, and always create a classes-pre-proguard.jar for
users that need a jar without shrinking or obfuscation.

Also rename the intermediates to be consitent: classes-<tool>.jar

Test: m -j ANDROID_COMPILE_WITH_JACK=false java
Change-Id: I3df8b9a4edcd5db996f1fedc54c8a782d4f36a92
Merged-In: I3df8b9a4edcd5db996f1fedc54c8a782d4f36a92
(cherry picked from commit 6fabefa88e)
2017-04-06 00:46:23 +00:00
Simran Basi 65850daeb0 Revert "Revert "device-tests: As a dependency to tests""
This reverts commit df086140a8.

CQ-DEPEND=CL:365575
Bug: 35386840
Test: None

Change-Id: I17dc00ed64e220c5ce532386da1a1bc15cbfc439
2017-04-05 20:51:01 +00:00
Simran Basi 8a431d9c7d Common testcase directories: Clean up duplicates
This CL addresses the problem that native tests build for multiple
architectures and also build for host.

First it restructures each testcase folder to the following layout:
<testcase>/<testcase>.config
<testcase>/<arch 1>/testcase
<testcase>/<arch 2>/testcase

Secondly it now uses the new soong-zip prefix capability to
separate out host and target testcases in the device-tests &
general-tests zip files.

Bug:36692141
Test: `make device-tests general-tests cts -j` &
      ensured all built successfully.

Change-Id: I4e8b084ee56fa8940914911649ff35507d87eb27
2017-04-05 13:38:20 -07:00
Dan Willemsen 2a8a39398b Add LOCAL_EXPORT_CFLAGS for Soong
This lets Soong pass -isystem or -I as necessary (or potentially, even
other cflags in the future).

This is not available for Android.mk use, nor exposed directly to
Android.bp users.

Test: m -j
Merged-In: Id37d4692d5fbddce467bd777903b20169f44dd6e
Change-Id: Id37d4692d5fbddce467bd777903b20169f44dd6e
2017-04-05 03:36:00 +00:00
Dan Willemsen 2be559488d Exclude ndk stubs from notice file list
There are many references to ndk stub libraries in the third party
notices:

out/soong/ndk/platforms/android-10/arch-arm/usr/lib/libc.so
out/soong/ndk/platforms/android-10/arch-arm/usr/lib/liblog.so
...

These are just stub libraries, and aren't distributed on the device. The
real versions of these libraries will be distributed on the device, and
already have the license information.

So let Soong set LOCAL_NO_NOTICE_FILE to prevent these from appearing.

Bug: 36867708
Test: Diff aosp_arm's system/etc/NOTICE.html.gz file before/after
Change-Id: Ifa3693bde7d3b6b9dc7a83122f9cfa24997fac50
2017-04-04 14:59:55 -07:00
Jaekyun Seok 78a117d801 Merge "Use product-based inclusive rule for enforcing RRO"
am: 4f566f3f97

Change-Id: Iaa5ec37c9d6d0e9c2dfe9573b61465e127d60f8d
2017-04-04 04:40:08 +00:00
Jaekyun Seok 1b2242895e Use product-based inclusive rule for enforcing RRO
Board-based rule can cause unexpected regression because build-time overlays
are different among products. So each product should be tested with its own
product-based rule considering its build-time overlays before applying
enforcing RRO.

Additionally RRO conversion is mandatory only for overlays of which target is
included in AOSP system image and is critical for CTS/VTS tests with AOSP
system image. So inclusive rule is more suitable instead of exclusive rule
to avoid unexpected regression due to unnecessary RRO conversion.

Note that we still support conversion for all the overlays by specifying
PRODUCT_ENFORCE_RRO_TARGETS as "*".

Test: building succeeded and tested with auto-generated RROs.
Bug: 36231603
Change-Id: I8e1d701d4f78b818c89ef3e7638110105370c5bc
(cherry picked from commit 2a209997e8)
2017-04-04 11:31:24 +09:00
Alex Deymo b20d1d7a74 Merge "Don't include the dev-key on IOT products."
am: 41febee0cc

Change-Id: I1825d82eac9b046c76d35bbb93bae31f86fd2be5
2017-04-04 00:49:40 +00:00
Alex Deymo cec578c916 Don't include the dev-key on IOT products.
This patch updates the logic to use the PRODUCT_IOT variable instead of
BRILLO.

Bug: 36702887
Test: `make`; Image doesn't have the dev key.
Change-Id: I1751e97d8cdfeba83c7e4720a017a5f4dcfd49da
2017-04-03 15:04:35 -07:00
Dan Albert b8989bd1b1 Merge "Expose PLATFORM_VERSION_ALL_CODENAMES to soong."
am: 194e73dd15

Change-Id: Ib1d690c07010622593405519b125077adfebace0
2017-03-31 23:17:12 +00:00
Dan Albert e2b92d809f Merge "Auto-generate PLATFORM_VERSION_ALL_CODENAMES."
am: 979dac690a

Change-Id: Ib4aa98fe335d90f1407ccb27fa4c57d5d30cbbf5
2017-03-31 23:09:42 +00:00
Treehugger Robot 194e73dd15 Merge "Expose PLATFORM_VERSION_ALL_CODENAMES to soong." 2017-03-31 23:09:26 +00:00
Treehugger Robot 979dac690a Merge "Auto-generate PLATFORM_VERSION_ALL_CODENAMES." 2017-03-31 23:03:20 +00:00
Dan Albert a3afbb9562 Expose PLATFORM_VERSION_ALL_CODENAMES to soong.
Test: make checkbuild
Bug: None
Change-Id: I9c8d8ff38b617ac352b951214d428f9c9af0f79d
2017-03-31 13:13:21 -07:00
Andreas Gampe dd8293b2e7 Merge "Build: Force system owner for ASAN in system"
am: 542c3d57d0

Change-Id: Ice7cfce4a62c636a1c97f9f4406a127564a7e552
2017-03-31 19:54:29 +00:00
Andreas Gampe 542c3d57d0 Merge "Build: Force system owner for ASAN in system" 2017-03-31 19:46:27 +00:00
Dan Albert 839db81b26 Auto-generate PLATFORM_VERSION_ALL_CODENAMES.
Test: Temporarily added additional codenames for OPD1 -> O and
      OPM1 -> O-MR1. Lunched aosp_sailfish-eng, built build.prop and
      checked that ro.build.version.all_codenames was "O". Then
      lunched aosp_sailfish-eng-PPR1 and checked that it was
      "O,O-MR1,P".
Bug: None

Change-Id: I51189f5b40e3e7f99e2fc08bb5616c51a23e3b19
2017-03-31 10:59:02 -07:00
Vishwath Mohan f8f29940dc Merge "Refactor sanitized library on-disk layout - Make."
am: 41b0d9e146

Change-Id: I5de405c714fc96e6156b07a4f64b9e8457af8124
2017-03-31 16:41:19 +00:00
Treehugger Robot 41b0d9e146 Merge "Refactor sanitized library on-disk layout - Make." 2017-03-31 16:35:53 +00:00
Stephen Hines 2e51c40eca Merge "Switch to clang-3859424."
am: af077e293b

Change-Id: If60751ecdb6621dea37346237ac127a53a2d03b8
2017-03-31 04:56:07 +00:00
Colin Cross cad1043266 Merge "Optimize out extra jar copies"
am: 678c77d9af

Change-Id: I17a8b9bc7281c37abc0bd905cd448d9002ff515a
2017-03-31 04:53:37 +00:00
Stephen Hines af077e293b Merge "Switch to clang-3859424." 2017-03-31 04:51:10 +00:00
Colin Cross 678c77d9af Merge "Optimize out extra jar copies" 2017-03-31 04:49:13 +00:00
Vishwath Mohan b285c46bbd Refactor sanitized library on-disk layout - Make.
This CL moves the location of ASAN-ified libraries on disk in the
following manner:
/data/lib* --> /data/asan/system/lib*
/data/vendor/* --> /data/asan/vendor/*

There are a couple of advantages to this, including better isolation
from other components, and more transparent linker renaming and
SELinux policies.

Bug: 36574794
Bug: 36674745
Test: m -j40 && SANITIZE_TARGET="address" m -j40 and the device
boots. All sanitized libraries are correctly located in /data/asan/*.

Change-Id: Ic6ba8e43e31df2ea92b85fd60f572823b6883ba2
2017-03-30 20:14:27 -07:00
Andreas Gampe 2c498a391b Build: Force system owner for ASAN in system
For tar-ed ASAN artifacts, enforce ownership by the system uid.

Bug: 36458146
Test: m && m SANITIZE_TARGET=true SANITIZE_TARGET_SYSTEM=true
Change-Id: I190cba3d160f15a89ef74f26e7aaa853a449929f
2017-03-31 03:04:19 +00:00
Colin Cross 0e53734035 Optimize out extra jar copies
Don't copy jar files for disabled stages.  Instead, set the name of
the output to the name of the input so the next stage will directly
pick up the output of the previous stage.

Test: m -j ANDROID_COMPILE_WITH_JACK=false java
Change-Id: Ib7268cbff7ea7ff2ad2caf994aa145e1b7a12b83
2017-03-30 19:35:15 -07:00
Jaekyun Seok 2f92aa78f4 Merge "Enforce RROs for all the build-time ROs"
am: 4b4e203a0b

Change-Id: I20085da5a39005733c9f10e751cef58ae20a9f7d
2017-03-30 03:43:31 +00:00
Jaekyun Seok 39f97ae22a Enforce RROs for all the build-time ROs
This CL is to generate every static RRO package for its target package
automatically at build-time.

BOARD_ENFORCE_RRO build variable is added to specify whether enforcing
RRO is required or not.

BOARD_ENFORCE_RRO_EXEMPT_SOURCES build variable is added to specify
the module list of which item should be exempt from enforcing RRO.

Test: tested on bullhead and sailfish
Bug: 34097942
Change-Id: I455b2ce34e66c57a540c299b5e378b7c4e78d5b8
(cherry picked from commit 3070610b72)
2017-03-30 10:43:38 +09:00
Andreas Gampe 4ec27c88f5 Merge "Build: ASAN in system"
am: 85473982fb

Change-Id: Ia64fbaba713c1d9d826872b62ca0dcb040f939c9
2017-03-30 01:21:51 +00:00
Treehugger Robot 85473982fb Merge "Build: ASAN in system" 2017-03-30 01:16:53 +00:00
Colin Cross e088c648c7 Merge "Revert "Revert "Revert "Add soong_javac_filter to all javac commands""""
am: df69a927d8

Change-Id: I693e6d1d2abfe0efe94e113cc3ce56691ad7f7e3
2017-03-30 01:01:51 +00:00
Treehugger Robot df69a927d8 Merge "Revert "Revert "Revert "Add soong_javac_filter to all javac commands"""" 2017-03-30 00:53:06 +00:00
Andreas Gampe 039b5c779f Build: ASAN in system
Add build system support for asan.tar.bz in the system image. This
is triggered by SANITIZE_TARGET_SYSTEM=true.

Bug: 36458146
Test: m && m SANITIZE_TARGET=true SANITIZE_TARGET_SYSTEM=true
Change-Id: I725f99f16a8c9182b1c7ad26580c73d3708f8554
2017-03-29 16:19:28 -07:00
Colin Cross fc8ead6609 Revert "Revert "Revert "Add soong_javac_filter to all javac commands"""
This reverts commit 440079b84b.

Adding the pipe interferes with error codes, which results
in an empty classes-full-debug.jar output file being left
after the failure.  The next build sees the output file with
an up-to-date timestamp and doesn't rerun the failing rule.

Bug: 36666657
Change-Id: I6658edb766d8ba3120f88e3d8d6eda6ea6c691da
2017-03-29 21:01:24 +00:00
Benoit Lamarche 8488228d9a Merge "Changing default Jack arguments."
am: cadf11068c

Change-Id: I63ba8fb0ec5991e63e8a2fb3246ba30da8eb9fe5
2017-03-29 08:53:51 +00:00
Benoit Lamarche cadf11068c Merge "Changing default Jack arguments." 2017-03-29 08:49:32 +00:00
Stephen Hines 073ab0a707 Switch to clang-3859424.
Bug: http://b/36442361
Test: Build and run multiple devices/targets.
Change-Id: I161003f07982b1794ef5f1d1d61a48ddf45f6ab3
2017-03-28 22:11:52 -07:00
Dan Willemsen a71a8c0ae3 Merge "Ensure that BOARD_VNDK_VERSION is current"
am: 4ef5040cc3

Change-Id: I79f43fa6db5f043122fc17c2d89c03bfc0690494
2017-03-29 04:40:05 +00:00
Treehugger Robot 4ef5040cc3 Merge "Ensure that BOARD_VNDK_VERSION is current" 2017-03-29 04:34:29 +00:00
Colin Cross e611741d85 Merge "Add min and max supported versions"
am: ae4779e254

Change-Id: Ic6d0fb99e95d55253be00f7b191d3287a207c2c8
2017-03-29 00:49:20 +00:00
Colin Cross 8fb3f39bcd Merge "Move comments to the previous line"
am: 906a3ea5d6

Change-Id: I70787abb1a80987fb89a4444c68b9658c80c0622
2017-03-28 22:27:44 +00:00
Colin Cross c901659377 Add min and max supported versions
Add MIN_PLATFORM_VERSION and MAX_PLATFORM_VERSION to track
the range of releases that are expected to be released from
the current branch.

Also simplify version_defaults.mk by moving most of the code
to envsetup.mk.

Test: build/make/tests/envsetup_tests.sh
Change-Id: I4f19c31c267e202f8f5ba1384a8b4385d725f9d7
2017-03-28 13:32:04 -07:00
Colin Cross 349a7a7f1a Move comments to the previous line
End-of-line comments cause the variable to be set to a space, which
confuses using ifdef on it.

Test: builds
Change-Id: I7b1eb3b9febff1a5a5fca1e6623b2b36d538dacc
Merged-In: I7b1eb3b9febff1a5a5fca1e6623b2b36d538dacc
2017-03-28 13:24:45 -07:00
Makoto Onuki 0a069a74c2 Merge "Add USE_FILESLIST_GO to switch to fileslist.go"
am: d625ef2894

Change-Id: I6d869be0b7ab9084168803ceaaf58fc2ba3c8da5
2017-03-28 16:50:21 +00:00
Makoto Onuki d625ef2894 Merge "Add USE_FILESLIST_GO to switch to fileslist.go" 2017-03-28 16:41:05 +00:00
Denis Vnukov 562ac35058 Changing default Jack arguments.
This change sets Jack default arguments to enable some of lambda
optimizations, namely: lambda grouping in scope of a single package
and using singletin lambda objects for stateless lambdas.

Test: tested manually

Change-Id: Id2d0c37e3462f1e3137cfef2684cf6e74df6089b
2017-03-28 12:13:32 +02:00
Dan Willemsen 2c3289bf37 Ensure that BOARD_VNDK_VERSION is current
BOARD_VNDK_VERSION controls which version of the VNDK is used for the
build. We only support compiling against the current VNDK, and we don't
support installing old prebuilt VNDK libraries yet, so ensure this
variable is set to "current".

Once we support installing old prebuilt VNDK libraries, we'll also need
to disable building modules that use the VNDK.

Test: build-aosp_arm.ninja is the same before/after
Test: Ensure there are no boards that set BOARD_VNDK_VERSION
Test: Set BOARD_VNDK_VERSION := invalid
Change-Id: Ic26c9f44e356a0734f522b4538cb866d5b901d43
2017-03-27 22:55:21 -07:00
Steve Muckle 9c0198e6e9 Merge "Fix modules.dep breakage with multiple module dependencies"
am: 73461abd0c

Change-Id: I96080a797abb1f9d9887ab993082ce0c10a931ca
2017-03-28 01:21:57 +00:00
Treehugger Robot 73461abd0c Merge "Fix modules.dep breakage with multiple module dependencies" 2017-03-28 01:11:39 +00:00
Steve Muckle b74e0b9b0d Fix modules.dep breakage with multiple module dependencies
If a module has multiple dependencies, the current regexp for making
the dependencies absolute paths only modifies the first dependency.

Test: build sailfish with module configuration including multiple
      dependencies
Change-Id: I8f2b40c8c5ec228aa8f831086bcdd561c8714910
2017-03-27 13:48:28 -07:00
Dan Willemsen eb90e156e1 Merge "Fix fileslist for system other image"
am: b05fe25b9f

Change-Id: I63edd0d9aa171189911948a9da80b5b5e6368109
2017-03-24 23:17:12 +00:00
Makoto Onuki 9fe97e231b Add USE_FILESLIST_GO to switch to fileslist.go
fileslist.go is still disabled by default.  To enable, use:
USE_FILESLIST_GO=true m -j

Bug: 36274890
Test: Manual, with m -j

Change-Id: I722e17fa7fb6ba91e2b2c44cd7524d974cbe4a56
2017-03-24 16:12:16 -07:00
Dan Willemsen 5c8542e1b4 Fix fileslist for system other image
This got lost from the previous backport, since systemotherimage wasn't
in AOSP yet.

(The Merged-In is a random Change-Id only on master so that this only
merges up to master)

Test: lunch aosp_marlin-eng; m -j systemotherimage
Change-Id: I92c05f27c92d877f3b83e5c5ae2e76728eb162bd
Merged-In: Iafed66e19bc114552b0261dd299379dbb37873c6
2017-03-24 21:26:21 +00:00
Jiyong Park cbf76f6353 Add LOCAL_OVERRIDES_MODULES
LOCAL_OVERRIDES_MODULES is similar to LOCAL_OVERRIDES_PACKAGES, but is
for executables.

Bug: 36491275
Test: LOCAL_OVERRIDES_MODULES := foo should prevent a target executable
foo from being installed. If foo is not a target executable, error
should be reported.

Change-Id: I558f3d94105f9e319f8413c1290799f1c70ee131
2017-03-24 19:31:49 +09:00
Dan Willemsen e9e4001b34 Merge "Depend on (bs|img)diff for target-files-package"
am: 90151623fc

Change-Id: I99856e5d45ce90f36a2432fb8d05360384e3f2b9
2017-03-24 07:29:42 +00:00
Dan Willemsen d79a08f9fb Depend on (bs|img)diff for target-files-package
add_img_to_target_files may use these to create the recovery patch, so
add a dependency. They were previously a transitive dependency through
the system image to the standalone recovery patch creation.

Bug: 36575896
Test: rm out/host/linux-x86/bin/imgdiff; m -j target-files-package
Change-Id: I2a43220e94c09393e88e1d9950032f5665a0d2ce
2017-03-23 22:09:06 -07:00
Colin Cross 7b5dc8ad3e Merge "Add TARGET_PLATFORM_VERSION to lunch"
am: a007142381

Change-Id: Ic9b38a74041f839300f82a4ecfb724079b62a900
2017-03-24 00:24:16 +00:00
Treehugger Robot a007142381 Merge "Add TARGET_PLATFORM_VERSION to lunch" 2017-03-24 00:14:01 +00:00
Dan Willemsen 5179e70cc3 Merge "Ensure /system/vendor symlink exists in target-files-package"
am: ac8b2ab702

Change-Id: Iff5b31f1b46c9d1740d5d26e48e3cae5fed48602
2017-03-23 21:57:02 +00:00
Dan Willemsen f75d7fa8ea Ensure /system/vendor symlink exists in target-files-package
This used to happen in the system image creation, but the target-files
didn't really depend on the system image, so I removed that dependency.
But then we weren't creating the symlink all the time.

This should be safe to run in parallel with the same link step in the
system creation.

Bug: 36540023
Test: m -j target-files-package, ensure vendor symlink is created
      without system.img.
Change-Id: I37059fa1ce759a0870dc4c65c5515050992245e2
2017-03-23 13:22:46 -07:00
Colin Cross 8873713f36 Add TARGET_PLATFORM_VERSION to lunch
lunch can now take combos in the form:
$TARGET_PRODUCT
$TARGET_PRODUCT-$TARGET_BUILD_VARIANT
$TARGET_PRODUCT-$TARGET_BUILD_VARIANT-$TARGET_PLATFORM_VERSION

If all 3 are not specified the unspecified ones will take the
default values provided by the build system (eng, and currently
OPR1).

In addition, error handling for invalid products, variants and
versions is moved to the build system.

Bug: 34972208
Test: build/make/tests/envsetup_tests.sh
Change-Id: Ib0aaa98633448ba9bd8df911704c9cb3a8ebbe85
2017-03-23 09:44:08 -07:00
Colin Cross ce9dfdeee6 Merge "Desugar when javac version is 1.7"
am: ed44a54991

Change-Id: I71b868d277fbf81700cd85e45a1f852c90247120
2017-03-23 02:57:24 +00:00
Treehugger Robot ed44a54991 Merge "Desugar when javac version is 1.7" 2017-03-23 02:49:40 +00:00
Dan Willemsen f4b5c3139c Merge changes I84e4f878,I37b65eb9
am: bfc4f5e339

Change-Id: I2281b87887b0e5bb6e66d3a8446f84fdccd654dc
2017-03-23 02:20:53 +00:00
Treehugger Robot bfc4f5e339 Merge changes I84e4f878,I37b65eb9
* changes:
  Parallelize system*.img and target-files-package
  Add missing dependencies of targets-files-package
2017-03-23 02:16:35 +00:00
Colin Cross 200951bdb7 Desugar when javac version is 1.7
Modules compiled with javac 1.7 may have LOCAL_STATIC_JAVA_LIBRARIES
pointing to jars that contain code compiled with javac 1.8, and may
need desugaring.

Test: m -j ANDROID_COMPILE_WITH_JACK=false checkbuild
Change-Id: I470fc0a2fba51179a3ef95986cb3030194cd8f1c
2017-03-22 18:37:53 +00:00
Dan Willemsen 02e29c5b48 Merge "Speed up non-AB ota_from_target_files in the build system"
am: 47ba4239c8

Change-Id: I00f06fa1f26563e9c0d3951df986f85105ea8946
2017-03-22 02:23:06 +00:00
Colin Cross f6cf099b27 Use new naming scheme for TARGET_PLATFORM_VERSION
Replace the current naming scheme for TARGET_PLATFORM_VERSION
(O, ODR1, OMR1, P) with one that matches the user-visible
branch version (OPR1, OPD1, OPM1, PPR1).

Temporarily map P -> PPR1 to decouple this change from updating
the build servers.

Bug: 34972208
Test: m -j TARGET_PLATFORM_VERSION=PPR1
Test: m -j TARGET_PLATFORM_VERSION=P
Change-Id: Ib00b13abe79a744e344b88bb1d800524ab09d585
(cherry picked from commit d8bc190a63)
2017-03-22 01:48:03 +00:00
Dan Willemsen 47ba4239c8 Merge "Speed up non-AB ota_from_target_files in the build system" 2017-03-22 01:41:39 +00:00
Treehugger Robot 53d66b5903 Merge "Use new naming scheme for TARGET_PLATFORM_VERSION" 2017-03-22 01:19:53 +00:00
Colin Cross 9efe51f27a Use new naming scheme for TARGET_PLATFORM_VERSION
Replace the current naming scheme for TARGET_PLATFORM_VERSION
(O, ODR1, OMR1, P) with one that matches the user-visible
branch version (OPR1, OPD1, OPM1, PPR1).

Temporarily map P -> PPR1 to decouple this change from updating
the build servers.

Bug: 34972208
Test: m -j TARGET_PLATFORM_VERSION=PPR1
Test: m -j TARGET_PLATFORM_VERSION=P
Change-Id: Ib00b13abe79a744e344b88bb1d800524ab09d585
Merged-In: Ib00b13abe79a744e344b88bb1d800524ab09d585
2017-03-21 23:38:02 +00:00
Dan Willemsen aadd499bc3 Parallelize system*.img and target-files-package
We don't actually need to build the system image before
target-files-package, we just need to make sure everything is present in
$(PRODUCT_OUT)/system. So switch the dependencies around.

This can't be done as easily for the vendor image, since it may be a
prebuilt, or we may need to install some kernel modules into
$(PRODUCT_OUT)/vendor when building vendor.img. It tends to be smaller
anyway, so the time savings isn't as big.

Test: Make sure the build server outputs the same files
Test: Ensure target-files-package is identical before/after.
Change-Id: I84e4f878491ab2b71582f4f49418dbfbba75590f
2017-03-21 16:36:14 -07:00
Dan Willemsen 653bea928a Add missing dependencies of targets-files-package
And move simple cases of $(ACP) to cp. That does change OTA/bin/updater
from 0640 to 0700, but that's more consistent anyways.

Test: m -j target-files-package; ensure it's the same before/after.
Change-Id: I37b65eb9ddccd2f360aa007f929ece35c9e44f9b
2017-03-21 16:32:43 -07:00
Dan Willemsen cea5cd210e Speed up non-AB ota_from_target_files in the build system
We've just created the target files package and still have the extracted
directory, so pass that to ota_from_target_files so that it doesn't have
to re-extract what we just compressed.

This saves a little bit of time -- for bullhead-userdebug on internal
master, this brings the time to build an OTA from ~340s -> ~310s. Much
of the time is still spent generating and signing the OTA.

Test: lunch bullhead-userdebug; m -j otapackage
Test: bullhead-ota-*.zip is identical before/after
Change-Id: Ib51cf6b02123e9c49280e9957c6590645470a52c
2017-03-21 15:34:27 -07:00
Nan Zhang e22afd4998 Merge "Fixed the issue that dirname: META got zipped twice."
am: 8b6458e9a9

Change-Id: Idd8eb1727778c52a8abea497477e3999c3d9706d
2017-03-21 22:24:52 +00:00
Treehugger Robot 8b6458e9a9 Merge "Fixed the issue that dirname: META got zipped twice." 2017-03-21 22:15:19 +00:00
Nan Zhang cabecd9c55 Fixed the issue that dirname: META got zipped twice.
When building target-files-package, dir: META has to be copied first
to help early validation of the .zip file.

In order to prevent $(zip_root)/META from getting copied twice to $@.list,
use the method (find -path -prune -o -print) instead of (grep pattern -v).

Test: m target-files-package
Bug: b/31676493
Change-Id: Id6b4d77fb62aa136253de88573cc51a575b90be2
2017-03-21 20:07:41 +00:00
Colin Cross 235e342639 Merge changes I0508b2cc,I3d6bbc36
am: 767cb900a1

Change-Id: I72a150e3220e249b2601d27606f42f47197e9a2a
2017-03-21 19:37:14 +00:00
Colin Cross 31060fdde1 Don't desugar static java libraries
Static java libraires are designed to be included in another
java library.  If desugar runs on the static java library,
the resulting jar will contain the desugared lambda classes.
When the static jar is included into another java library
and desugar runs again, it desugars the static java library
classes again, producing the same desugared lambda classes
and colliding in the final jar.

Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I0508b2cc9c56dbbd4ac0aba44fb99ea2a27715e0
2017-03-21 10:23:45 -07:00
Colin Cross d01997faa6 Use DEFAULT_APP_TARGET_SDK for dx and desugar
DEFAULT_APP_TARGET_SDK is PLATFORM_VERSION_CODENAME (for example 'P')
for non-release builds, and PLATFORM_SDK_VERSION (for example 25) for
release builds.  Use it for dx and desugar, and translate
PLATFORM_VERSION_CODENAME to 10000 to enable features in the current
development version.

Bug: 36087246
Bug: 36118520
Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I3d6bbc36a8869e4ced6bb850bc32f37b4cba3f85
2017-03-21 10:23:45 -07:00
Dan Willemsen 6acc699303 Merge "Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE"
am: d69837deea

Change-Id: I4402a902cf1f490445a952904668693b8bc2b7fa
2017-03-21 06:08:20 +00:00
Treehugger Robot d69837deea Merge "Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE" 2017-03-21 06:02:14 +00:00
Dan Willemsen 05a2b931e9 Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE
The vendor image will have more than just proprietary modules in it
under Treble, so let's stop marking open source code as proprietary just
to move it to vendor.

Bug: 36452052
Test: compare build-aosp_arm.ninja before/after, no changes.
Test: Try defining LOCAL_VENDOR_MODULE / LOCAL_PROPRIETARY_MODULE in the
same and different ways, ensure it works.
Change-Id: I0ab046bcb7563a20d44ed00667e18497ef0873a8
2017-03-20 20:57:04 -07:00
Jin Qian 9c0b12db47 Merge "Revert "device-tests: As a dependency to tests""
am: 5b216025ba

Change-Id: I6305f1e4cb12d7af27a897812fe68934b1dc884b
2017-03-21 01:06:00 +00:00
Jin Qian 5b216025ba Merge "Revert "device-tests: As a dependency to tests"" 2017-03-21 01:03:08 +00:00
Jin Qian df086140a8 Revert "device-tests: As a dependency to tests"
This reverts commit f153603ccc.

Change-Id: Ib439e2351da6c5eabcf412b29c6d798d05e01612
2017-03-21 01:00:41 +00:00
Dan Willemsen 35bdbdfdc3 Merge "Remove USE_SOONG_UI=false"
am: ebf57f6f0a

Change-Id: Ieba4905ed40fd167d58978ca628998f402cd3658
2017-03-20 23:14:51 +00:00
Treehugger Robot ebf57f6f0a Merge "Remove USE_SOONG_UI=false" 2017-03-20 23:11:10 +00:00
Dan Willemsen 21f7aa5b2c Merge "Use built module instead of installed module for profman"
am: 46eeb0580c

Change-Id: I2d264e0ab38b495111babaafa765d23dff60f9f7
2017-03-20 23:00:20 +00:00
Treehugger Robot 46eeb0580c Merge "Use built module instead of installed module for profman" 2017-03-20 22:46:07 +00:00
Simran Basi 318840dfb6 Merge "device-tests: As a dependency to tests"
am: 26594fce3f

Change-Id: I657421f3379637084e4b1d51187d733e4c9a0cca
2017-03-20 22:21:48 +00:00
Dan Willemsen 25e9607a46 Remove USE_SOONG_UI=false
Test: m -j
Change-Id: I4eccbf9884385f11db84f6e0f28d55d21d06cac3
2017-03-20 14:22:20 -07:00
Dan Willemsen 3d072d547f Use built module instead of installed module for profman
This means that we won't have to rebuild the odex files after an
installclean.

Test: profile.prof is identical before/after
Test: m -j; m installclean; m -j
Change-Id: I53c630ce0c5a985d856e26bd7bb3d8c76958aaab
2017-03-20 14:00:31 -07:00
Simran Basi f153603ccc device-tests: As a dependency to tests
This change will build device-tests whenever tests is built.

Bug: 35386840
Test: None
Change-Id: If587bf74bb66b7ce5552493c73368bb68b6d34af
2017-03-20 13:14:49 -07:00
Dan Willemsen 7195fb8920 Merge "Revert "install *.so in different paths for their types""
am: 8311d46c86

Change-Id: I330c5b3014dd331dc2f7369ac635b3de2ee54aca
2017-03-17 22:52:53 +00:00
Treehugger Robot 8311d46c86 Merge "Revert "install *.so in different paths for their types"" 2017-03-17 22:45:31 +00:00
Simran Basi 0aa305aacc Merge "device-tests & general-tests: build out zips."
am: dd908dd925

Change-Id: If51d656f068fac56cc8ebf2e0a25235ccc97cdd7
2017-03-17 17:50:23 +00:00
Treehugger Robot dd908dd925 Merge "device-tests & general-tests: build out zips." 2017-03-17 17:45:05 +00:00
Dan Willemsen de4e71b27b Revert "install *.so in different paths for their types"
This reverts commit 842a985f90. It's
causing test failures, warnings and complaints, so backing it out and
we'll resolve those before putting it back in.

This also bundles in the revert of a minor warning/error fixup for this
code, and does the correct thing with the CleanSpec.mk (which can't just
be reverted).

Bug: 33681361
Test: m -j
Change-Id: Ic889ce6a4737a497ad6bf633424ce1860713f7d0
2017-03-16 16:54:40 -07:00
Miao Wang 45976ab0c9 Merge "Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition."
am: 3fd80635af

Change-Id: Id6c164577684e0ed03e8ff1adf29d4648cf31f6c
2017-03-16 06:49:54 +00:00
Treehugger Robot 3fd80635af Merge "Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition." 2017-03-16 06:45:48 +00:00
Jiyong Park 42fc6363a6 Merge "Silence module path warnings for a while"
am: d5c3d1366f

Change-Id: I9bc012f72dd347b725c1104c22eb84940966df5c
2017-03-16 05:54:32 +00:00
Jiyong Park 79f5918199 Silence module path warnings for a while
Warning messages like, "libart_fake: framework library must be installed
to system/lib64 but requested to be installed at system/fake-libs64.
Please fix.", are temporarily muted since some of those warnings might
be false alarms.

Let's just silence the warning for everybody and investigate the cases
internally by turning on the build flag SHOW_MODULE_PATH_WARNINGS.

Test: the warning messages should not be shown unless built with
SHOW_MODULE_PATH_WARNINGS=true.

Change-Id: I5eb3ab3385c92a5192723ff1008277c321162191
2017-03-16 12:57:21 +09:00
Simran Basi c8f21f6c4e device-tests & general-tests: build out zips.
Generates the output zips of the device-tests & general-tests
buildable suites.

Bug: 35386840
Test: make dist device-tests general-tests -j
Change-Id: I253bcd8615379334b52b4d770a5c4f7e07a58795
2017-03-15 17:56:50 -07:00
Colin Cross 2afade582d resolve merge conflicts of da00e137ec to stage-aosp-master
Change-Id: Ie81c0f4f5f14ae3e51ee717a50d0c29b26161b90
2017-03-15 10:20:24 -07:00
Treehugger Robot da00e137ec Merge "Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME" 2017-03-15 17:04:58 +00:00
Colin Cross 8843039368 Merge "package-modules: use && instead of ; between copy commands"
am: e0e20079c2

Change-Id: I5984eeac0581b8fdd5ae6186291cce02f430e450
2017-03-15 02:18:40 +00:00
Colin Cross b3bfc7172b Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME
Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME from
TARGET_PLATFORM_VERSION.  Add explicit values for O, even though
they are the same as the fall backs, as placeholders for future
values.

Bug: 35445510
Test: manual
Merged-In: I30a7142f732c85b637d2ce072373bc867cedcd42
Change-Id: I30a7142f732c85b637d2ce072373bc867cedcd42
2017-03-15 01:10:28 +00:00
Colin Cross f075bcbc98 package-modules: use && instead of ; between copy commands
Using ; to join commands in a rule causes failures to be ignored by
make.  Use && instead, and add true at the end as the second operand
to the last && operator.

Also inline copy-test-in-batch, batching is no longer necessary as
kati will fall back to a shell script if the recipe is too long to
fit in a command line.

Test: builds
Change-Id: I4a2528bf2a15106cfabaae0336662c4a0464271d
2017-03-14 16:58:34 -07:00
Alex Klyubin 47b3e3d92e Merge "Add /file_contexts.bin only to devices which need it"
am: 77dab1ed35

Change-Id: Ic290b4c919b28bd9110f0f7fd782a564beb53ca0
2017-03-14 14:47:24 +00:00
Treehugger Robot 77dab1ed35 Merge "Add /file_contexts.bin only to devices which need it" 2017-03-14 14:41:31 +00:00
Jiyong Park 0871e0029f Merge "fix: cannot determine the type of modules with class 'samples'"
am: b1331938a3

Change-Id: I2908df25418d37f4be1c653110233900a063af8c
2017-03-14 02:21:43 +00:00
Jiyong Park d4ca89bfd6 fix: cannot determine the type of modules with class 'samples'
Test: make sdk should not break

Change-Id: I849befde3c6b91f0b417aa6b11a909c6c4aad627
2017-03-14 09:40:29 +09:00
Jiyong Park a2b86b14a5 Merge "install *.so in different paths for their types"
am: 55b14bdaa4

Change-Id: I170c49e7107dc7f345e844e544e89d1590ad59d3
2017-03-14 00:22:47 +00:00
Treehugger Robot 55b14bdaa4 Merge "install *.so in different paths for their types" 2017-03-14 00:15:50 +00:00
Alex Klyubin 092c9025a9 Add /file_contexts.bin only to devices which need it
/file_contexts.bin is needed only by devices which do not have
PRODUCT_FULL_TREBLE set to true. Adding this file to devices which
have PRODUCT_FULL_TREBLE set to true causes confusion and wastes
about 800 kB of space.

/file_contexts.bin was being added unconditionally to all devices due
to the build system needing the combined file_contexts file for
host-side labelling of filesystems in images and for inclusion into
target files ZIP (again, to be used for host-side labelling later).

This change switches these targets to depend on the same file, but
from intermediates directory. As a result, everything continues to
work just fine, but without pulling in /file_contexts.bin. On devices
which need /file_contexts.bin, it is pulled in by
system/core/init/Android.mk.

Test: /file_contexts.bin still there on bullhead, but not there on
      sailfish with PRODUCT_FULL_TREBLE set to true.
Test: Clean build, device boots up with, no new denials.
      Reboot to recovery, recovery boots up fine too, no denials.
      This was tested on sailfish-eng and marlin-eng.
Bug: 36002414

Change-Id: I9bbbb08bbf7d874bba0bafcc19bcbf9eec564326
2017-03-13 13:28:34 -07:00
Dan Willemsen 83667a3821 Merge "Speed up *TS zip file creation"
am: 6d0f949296

Change-Id: I082a5072d27d4e93008de98fc864be1e20f03748
2017-03-13 19:55:17 +00:00
Dan Willemsen 6d0f949296 Merge "Speed up *TS zip file creation" 2017-03-13 19:50:44 +00:00
Alex Klyubin 05796fe8b3 Merge "Explicitly depend on sepolicy artifacts in recovery targets"
am: cc6e84223b

Change-Id: I129bfe67ed120254d5b6c8e8f00b0ddfed346156
2017-03-13 18:24:43 +00:00
Alex Klyubin 2a7171a71a Explicitly depend on sepolicy artifacts in recovery targets
This makes recoveryimage/bootimage targets explicitly depend on SELinux
policy artifacts needed by recovery. Prior to this change, the
dependency was contrived: these targets would rely on copying these
files from "root" directory, and then overwriting sepolicy file with
sepolicy.recovery.

Test: Clean build, flash, device boots up just fine. No new denials.
      Reboot into recovery, recovery boot up just fine, no denials.
      This was tested on bullhead (non A/B device) and sailfish (A/B
      device).
Bug: 33642277
Change-Id: Id2369253d0c7e02e079ae01ac7140b41880fd5ad
2017-03-13 08:43:02 -07:00
Jiyong Park 842a985f90 install *.so in different paths for their types
Shared libraries are now installed to different directories depending on
their types.

* NDK libraries: /system/lib/ndk (with symlink from /system/lib)
* VNDK libraries: /system/lib/vndk
* VNDK-ext libraries: /system/lib/vndk-ext
* Framework-only libraries: /system/lib
* Vendor-only libraries: /vendor/lib
* Same-process HALs: /vendor/lib/sameprocess

However, if LOCAL_MODULE_PATH is explicitly set, then it is respected,
with a warning message. Module owners are highly encouraged to
investigate the warnings and use alternatives to LOCAL_MODULE_PATH;
combination of LOCAL_[PROPRIETARY|OEM|ODM]_MODULE, LOCAL_MODULE_CLASS
and LOCAL_RELATIVE_PATH will cover most of the cases.

Furthermore, for each shared libraries whose path is changed, a symolic
link from the original path to the new path is *temporarily* generated.
e.g. /system/lib/libbase.so -> vndk/libbase.so. This is
to prevent sudden breakage of the code expecting the lib from the old
path. This symbolic links will eventually be removed before O launch
(b/34917183).

Finally, BOARD_SAME_PROCESS_HAL_DEPS is added. It contains the list of
shared libraries implementing the same-process HALs and its internal sub
libraries. This is designed to be defined in BoardConfig.mk

Bug: 33681361
Test: build & run. Libraries must be in the correct directories.
Symlinks from the old path to the new path must exist.

Change-Id: I46130aac09ae65400fd4d0abbc2e12dddd154fb1
2017-03-13 08:27:09 +09:00
Dan Willemsen c4cf49569f Speed up *TS zip file creation
This also makes the resulting zip files more repeatable -- the file list
is sorted and the entries have static timestamps.

On my machine, this saves ~30 seconds for android-cts.zip, it now takes
less than a second.

Test: m -j cts; compare output from without this change
Change-Id: Ia71e35878ff98ba9775115860530e87eee47739f
2017-03-10 13:39:26 -08:00
Tao Bao a592924505 Merge "releasetools: Drop the support for BBOTA v1 and v2."
am: c3e3406125

Change-Id: Id4903588e514c5182f2db1126c5778f69e86a370
2017-03-10 19:32:18 +00:00
Tao Bao debedc3343 Merge "releasetools: Remove dead functions in EdifyGenerator."
am: c87b38f547

Change-Id: Ia1eae3a4e401048c8cbfbf9bc85597dfc450fc4c
2017-03-09 20:31:19 +00:00
Tao Bao 8fad03e771 releasetools: Drop the support for BBOTA v1 and v2.
BBOTA v1 and v2 (introduced in L and L MR1 respectively) don't support
resumable OTA. We shouldn't generate packages using v1/v2 at the risk of
bricking devices.

BBOTA v3 (since M) and v4 (since N) both support resumable OTAs. BBOTA
v4 additionally supports using FEC to possibly recover a corrupted
image.

Bug: 33694730
Test: Generate full and incremental OTAs w/ and w/o the CL. They should
      give identical packages (in v4).
Change-Id: Ib89d9cd63ba08e8e9aa4131bed18876b89d244c0
2017-03-09 12:25:46 -08:00
Tao Bao c87b38f547 Merge "releasetools: Remove dead functions in EdifyGenerator." 2017-03-09 20:24:19 +00:00
Tao Bao f388104eaa releasetools: Remove dead functions in EdifyGenerator.
Remove the following functions that are needed for file-based OTAs only:
 - SetPermissions()
 - SetPermissionsRecursive()
 - MakeSymlinks()
 - DeleteFiles()
 - DeleteFilesIfNotMatching()
 - RenameFiles()
 - SkipNextActionIfTargetExists()

Bug: 35853185
Test: Verified there's no reference to these functions.
Change-Id: Iff24a9d705476211effaef28eed2a147fa5fcbce
2017-03-08 16:37:07 -08:00
Steven Moreland 05a7a4da70 Merge "hardware/interfaces: Android.mk always -Werror"
am: df58de6303

Change-Id: I5bc41aee011d13f7579563fa0e8e6aa6988ddc04
2017-03-08 23:20:58 +00:00
Treehugger Robot df58de6303 Merge "hardware/interfaces: Android.mk always -Werror" 2017-03-08 23:16:35 +00:00
Dan Willemsen 6ffe13f8e7 Merge changes Ia5ce6870,I155654cd
am: c619f99e2f

Change-Id: I5006c4e87607a55f914b90f7218802bc29fc76c5
2017-03-08 20:51:19 +00:00
Dan Willemsen c619f99e2f Merge changes Ia5ce6870,I155654cd
* changes:
  Zip after add_img_to_target_files
  Allow add_img_to_target_files to work on a directory
2017-03-08 20:45:56 +00:00
Steven Moreland 324c436084 hardware/interfaces: Android.mk always -Werror
Bug: 35840847
Test: pass
Change-Id: I6ebf3f5d279ff405446592cdabaeca9d1fdf6cf9
2017-03-08 16:29:50 +00:00
Sen Jiang 75a7a591ba Merge "Put system_version in target_files.zip"
am: 3838ae7e9b

Change-Id: I357ce185442ec04c028858f187e42187c062a287
2017-03-08 03:25:41 +00:00
Sen Jiang 9b8e4ca518 Put system_version in target_files.zip
Bug: 35364984
Test: m dist
Change-Id: I309acb41eb85de239c4c1718e14d9442ca1b0408
(cherry picked from commit cea4d52d2fee19281e660943129e1ad3bdc51fef)
2017-03-07 17:40:27 -08:00
Dan Willemsen 2a5a34f6bd Zip after add_img_to_target_files
For aosp_marlin (on AOSP), this speeds up target files creation from
~57 seconds to ~15 seconds.

For marlin-userdebug (on internal master), this speeds up target files
creation from ~300 seconds to ~95 seconds.

This does make some minor changes to the resulting target_files zip:

* All of the META files are actually at the beginning of the zip now,
  previously the ones created by add_img_to_target_files would be at
  the end.
* The images are slightly larger. Go's zip implementation in soong_zip
  isn't quite as good as the `zip` tool.
* vendor_filesystem_config.txt isn't present if we're not building a
  vendor image.

Test: aosp_marlin target_files zip changes look reasonable
Test: marlin target_files zip changes look reasonable
Test: bullhead target_files zip changes look reasonable
Change-Id: Ia5ce6870b85559d65107c3b94332391b4b43a0ea
2017-03-07 15:28:42 -08:00
Steven Moreland 0e1913f4ff Merge "Add vnod."
am: 2b33e46593

Change-Id: I006ef6b77e33f5b6e075fa392326e3e0eebb4610
2017-03-07 21:59:18 +00:00
Steven Moreland a2e734d786 Add vnod.
Short name for vendorimage-nodeps like snod.

Bug: 33356516
Test: works
Change-Id: Iad62aa5a021d603fa9cebe90f4e28cf09d5d49ae
2017-03-07 12:17:51 -08:00
Mathieu Chartier 52e0317804 Merge "Fix profile dependency"
am: 4d42fef1db

Change-Id: Idd14fa4a1e0141558a301b80eb53da0442adf79b
2017-03-06 20:22:20 +00:00
Mathieu Chartier fb6c6b38c3 Fix profile dependency
Otherwise it doesn't work for incremental builds.

Bug: 34929159
Bug: 35997300

Test: repo sync && m

Change-Id: I78ead57cf89a9d0f26dbf4f3a225a9357bdca1b3
2017-03-06 11:38:49 -08:00
Howard Chen 8fafc4a830 Merge "Support kernel modules in vendor, recovery images"
am: 2f6c2b44d0

Change-Id: Iaca1daa513a5474d97324a47c182d14485146be2
2017-03-04 03:41:05 +00:00
Treehugger Robot 2f6c2b44d0 Merge "Support kernel modules in vendor, recovery images" 2017-03-04 03:35:00 +00:00
Howard Chen adbb9c30d1 Support kernel modules in vendor, recovery images
Support BOARD_VENDOR_KERNEL_MODULES which accepts a list of the
kernel module binaries. Binaries listed there are copied to
$(TARGET_OUT_VENDOR)/lib/modules and 'depmod' is executed to generate
the dependencies. BOARD_RECOVERY_KERNEL_MODULES is similarly
implemented to provide a way to specify kernel modules to be copied
to the recovery image.

Bug: 33305644
Test: android master build on marlin and load dummy modules
Merged-In: I0a58a270dbb0d2d38fd089f4abff66e62e14fac1
Change-Id: Ia5f429508ca3d7c77448358e42af6efa98fa8624
2017-03-03 18:35:30 -08:00
Mathieu Chartier bc8f7d7f52 Merge "Move profile logic to dex_preopt_odex_install"
am: b05880e311

Change-Id: If5beeb66a79b90d3dd1963033c4473d0ab75b487
2017-03-04 02:25:30 +00:00
Mathieu Chartier b05880e311 Merge "Move profile logic to dex_preopt_odex_install" 2017-03-04 02:21:24 +00:00
Alex Deymo 4afbddcdf7 Merge "Update product_id and product_version location."
am: a57a2fd118

Change-Id: Ie1b80f0eb8e7a2041a9c693187d95cb331cf0940
2017-03-04 01:51:25 +00:00
Alex Deymo c4ca4c41f8 Merge "Add PRODUCT_IOT to the list of product vars."
am: e90295014f

Change-Id: I1f41687a0e747765baa07931035b360977683837
2017-03-04 01:51:00 +00:00
Alex Deymo a57a2fd118 Merge "Update product_id and product_version location." 2017-03-04 01:46:21 +00:00
Alex Deymo e90295014f Merge "Add PRODUCT_IOT to the list of product vars." 2017-03-04 01:46:06 +00:00
Mathieu Chartier 2ac264fe13 Move profile logic to dex_preopt_odex_install
It is not necessary to have it in setup_one_odex since the profile is
the same for multilib.

Prevents errors related to using ../ in profile path resulting in not
having a directory.

Bug: 34929159
Test: m

Change-Id: Ifdcba119f3599b0c80e27594781db5e4d64bd473
2017-03-03 16:23:14 -08:00
Mathieu Chartier ab70e664c3 Merge "Avoid copying profile"
am: c2159fd5b6

Change-Id: Ida40968af33c5559986336c328067f1bfdfacdde
2017-03-03 22:42:15 +00:00
Mathieu Chartier c2159fd5b6 Merge "Avoid copying profile" 2017-03-03 22:36:46 +00:00
Sen Jiang efcda5173d Merge "Remove DBus support."
am: cf858d873b

Change-Id: I09cbc25da9f801128b21bbda691f18f465fb2c9c
2017-03-03 20:57:36 +00:00
Sen Jiang cf858d873b Merge "Remove DBus support." 2017-03-03 20:54:38 +00:00
Mathieu Chartier 62e1ed7a63 Avoid copying profile
We can just use the source profile.

Bug: 34929159
Test: m

Change-Id: Ibbc0b392052f2a7f76bada13493ca62dc0334ace
2017-03-03 12:47:30 -08:00
Mathieu Chartier 1bf2231a4a Merge "Use ANDROID_LOG_TAGS to filter spammy profman output"
am: 4fdf2189b0

Change-Id: I278362252ae7d8b5d70795e7394d3730a61a1fc1
2017-03-03 17:50:25 +00:00
Mathieu Chartier 4fdf2189b0 Merge "Use ANDROID_LOG_TAGS to filter spammy profman output" 2017-03-03 17:47:08 +00:00
Alex Deymo b4309d4f54 Update product_id and product_version location.
These files are used by the update console to determine the product
associated with a given target_files.zip.

Bug: 35804180
Bug: 33211225
Test: `make dist` generates a target_files.zip with these files.
Change-Id: I6066da07d76749ae64c26d5f661c7a6d06f3fb3d
2017-03-03 17:32:42 +00:00
Alex Deymo 8fe63c3899 Add PRODUCT_IOT to the list of product vars.
This variable tells whether the product is an Android Things variant of
Android.

Bug: 32549448
Test: `make dist` on an iot product.
Change-Id: I0875951ae57867bc8bf47885e77e494d6284acdb
2017-03-02 22:08:41 -08:00
Vijay Venkatraman e4f88be6ed Merge "Fix for compile error when BUILD_HEADER_LIBRARY is used"
am: 69e8252aec

Change-Id: Icddb2f285d9f08a6fce89dcac69cf38259d9edf6
2017-03-03 04:15:40 +00:00
Vijay Venkatraman 69e8252aec Merge "Fix for compile error when BUILD_HEADER_LIBRARY is used" 2017-03-03 04:10:50 +00:00
Sen Jiang d1f397e8b4 Remove DBus support.
external/dbus and external/dbus-binding-generator was removed from
the manifest.

Bug: 31602715
Test: make checkbuild
Change-Id: Iea0277720acad8ac0fa630b8745f90fb3c3b5f00
2017-03-02 18:00:21 -08:00
Mathieu Chartier c185f742e1 Merge "Add local preopt options for generating app image and profile"
am: fea31c0b9e

Change-Id: I58a6232ff9b001669b6b0f2c88e42b282e2e0ddc
2017-03-03 01:18:16 +00:00
Mathieu Chartier fea31c0b9e Merge "Add local preopt options for generating app image and profile" 2017-03-03 01:14:03 +00:00
Mathieu Chartier 1e91c9db07 Use ANDROID_LOG_TAGS to filter spammy profman output
Test: mm

Bug: 34929159

Change-Id: I794c4a063ab3b4e515ecc20b58a6f985e093fa21
2017-03-02 17:03:06 -08:00
Miao Wang 57be564940 Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition.
- TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE is the output directory of
 RENDERSCRIPT_BITCODE (libclcore.bc) for vendors.
 - It is only used if LOCAL_PROPRIETARY_MODULE := true specified for the
 bitcode module.

Bug: 34396220
Bug: 34334222
Test: mm
Change-Id: I10237470eff0d8a693ce73313944e9b24595c5b7
2017-03-02 15:48:24 -08:00
Mathieu Chartier a4b993b5b9 Add local preopt options for generating app image and profile
If true, LOCAL_DEX_PREOPT_APP_IMAGE cause dex2oat to generate an app
image.

If true, LOCAL_DEX_PREOPT_GENERATE_PROFILE generates a profile based
on a class listing. LOCAL_DEX_PREOPT_PROFILE_CLASS_LISTING must be
defined in this case.

Bug: 34929159

Test: device booting, image loaded

(cherry picked from commit 9968fdcd85)

Change-Id: Ib79ada86a4ac617491723f80d99a3add3d52a7f4
2017-03-02 15:17:04 -08:00
Vijay Venkatraman 465b17fc3c Fix for compile error when BUILD_HEADER_LIBRARY is used
Test: include $(BUILD_HEADER_LIBRARY) in Android.mk and compile
Change-Id: If720be2d73b1c026961c75b65d82887b5dd41442
2017-03-02 11:47:33 -08:00
Richard Uhler bf0fea29e6 Merge "Don't include patch information for dex preopt."
am: 6f8e0d06e4

Change-Id: I99b47062c2c4db2c3f64e16a4188ff046fd5e7d4
2017-03-02 09:24:22 +00:00
Richard Uhler 6f8e0d06e4 Merge "Don't include patch information for dex preopt." 2017-03-02 09:18:48 +00:00
Steven Moreland 848e9430bc Merge "Add PRODUCT_FULL_TREBLE."
am: 5236e11c54

Change-Id: I40bf15624baf78113e3731476d46f2be0eb9cf61
2017-03-02 04:39:27 +00:00
Steven Moreland c10f1413d5 Add PRODUCT_FULL_TREBLE.
PRODUCT_FULL_TREBLE: whether the device has Treble fully enabled (no
passthrough hals, vendor.img, split sepolicy, etc..)

PRODUCT_FULL_TREBLE_OVERRIDE: used if someone wants to consider a device
as full Treble even if it didn't launch with Android O.

Bug: 35809750
Test: PRODUCT_FULL_TREBLE set appropriately with
PRODUCT_FULL_TREBLE_OVERRIDE and PRODUCT_SHIPPING_API_LEVEL = 24/25

Change-Id: I069448beaf26c70acb6c45d4228d8fdfe9476410
2017-03-01 19:08:24 -08:00
Ryan Campbell 425bbada28 Merge "Use c and cpp objects for gcov."
am: d579b8eb1f

Change-Id: I6490b5b6c443952ac672847df8748df31e5933ff
2017-03-01 03:10:24 +00:00
Ryan Campbell d579b8eb1f Merge "Use c and cpp objects for gcov." 2017-03-01 03:05:56 +00:00
Ryan Campbell 5a6ea36cb8 Use c and cpp objects for gcov.
Instead of using all_objects and translating .o to .gcno, use
cpp_objects, gen_cpp_objects, c_objects, gen_c_objects, objc_objects,
and objcpp_objects. Fixes bug with .s files breaking coverage builds.

Bug: 35843991
Test: lunch sailfish-userdebug && make -j60 NATIVE_COVERAGE=true
COVERAGE_PATHS="vendor/google_devices/marlin/proprietary/mm-camera/mm-camera2"
Change-Id: Ib2f8eef889f075ec82f79d8c3ae0fe31962b653d
2017-02-28 16:29:06 -08:00
Simran Basi 22cc401165 Merge "Add support for multiple LOCAL_COMPATIBILITY_SUITES & undefined testcase directories."
am: 6abedc9b3e

Change-Id: Ic01ee13e25df68d8cf850fa81b445150f16f1136
2017-02-28 23:46:09 +00:00
Treehugger Robot 6abedc9b3e Merge "Add support for multiple LOCAL_COMPATIBILITY_SUITES & undefined testcase directories." 2017-02-28 23:42:18 +00:00
Dan Willemsen d1378dec05 Merge changes I5e684409,I4fa35540,I24015ef0
am: 93de77745c

Change-Id: I2ac9d2922435058bcd900f902c308736f6710bed
2017-02-28 21:37:03 +00:00
Dan Willemsen 93de77745c Merge changes I5e684409,I4fa35540,I24015ef0
* changes:
  Improve module tags warnings
  Improve warnings for package-modules.mk
  Fix all_named_products, remove kati_all_products
2017-02-28 21:30:55 +00:00
Dan Willemsen d9b773845d Merge "Turn USE_SOONG_UI on by default"
am: 39a6418d76

Change-Id: If4a59c9d051f4d3dd4152f5f30da50bf5feeceaf
2017-02-28 20:42:27 +00:00
Simran Basi 6bea37c7fa Add support for multiple LOCAL_COMPATIBILITY_SUITES & undefined testcase directories.
1) Updates the LOCAL_COMPATIBILITY_SUITE line to allow for a
   testcase to belong to multiple suites.
2) Building testcases no longer fails if
   COMPATIBILITY_TESTCASES_OUT_<suite> is not defined. This
   testcase will just not output to that directory.
   This will be utilized by the device-tests and general-tests
   suites that don't require any extra output besides the common
   testcase directory.

Bug: 35394351
Test: 1) Added multiple *TS testcases to cts & vts and verified they
       ended up in the common directory and each suite's testcase
       directory. Specifically tested CtsSplitApp to ensure the
       split usecase still works as well.
      2) Added a CTS testcase to the device-tests suite, built
       device-tests and verified the cts/android-cts/testcases
       copy was not produced.

Change-Id: Ic4c4e87e62be4fc0c5e394d88cc359518346dffa
2017-02-28 12:41:40 -08:00
Dan Willemsen 73da612ed0 Turn USE_SOONG_UI on by default
Set USE_SOONG_UI=false to disable the new soong_ui wrapper.

Test: m -j blueprint_tools
Test: USE_SOONG_UI=false m -j blueprint_tools
Change-Id: I0b217939a29fd51e69ef594f824b14e25a4c8c4d
2017-02-28 18:57:12 +00:00
Richard Uhler 41408b0e1a Don't include patch information for dex preopt.
Because we always compile pic, patch information is not needed.

Test: phone boots.
Bug: 33192586
Change-Id: I46a6db713e0ce21300e3f4b86bd771a68eeed0c4
2017-02-28 17:05:12 +00:00
Ryan Campbell 26a4ce0b65 Merge "Support path exclusion for native coverage."
am: e317a2d19e

Change-Id: I1b0f1d4bc0664ba5bd0f24dee8e0778d18a82504
2017-02-28 02:11:25 +00:00
Treehugger Robot e317a2d19e Merge "Support path exclusion for native coverage." 2017-02-28 02:06:57 +00:00
Ryan Campbell b55ff74713 Support path exclusion for native coverage.
Specify list of paths to exclude from coverage instrumentation.

Test: make NATIVE_COVERAGE=true COVERAGE_PATHS=hardware/interfaces
COVERAGE_EXCLUDE_PATHS=hardware/interfaces/graphics
Bug: 35769817

Change-Id: I3747fdddb381101b9ebf51909b9686e820148aad
2017-02-27 09:09:16 -08:00
Colin Cross d730a19870 Merge "Port java.mk desugar changes to host_dalvik_java_library.mk"
am: 12e17ca46c

Change-Id: I31bec1f575b0fcf9d4875f381a1f982abc2d9d7b
2017-02-25 01:40:50 +00:00
Dan Willemsen 1e4fb7f161 Improve module tags warnings
Stop blaming base_rules.mk, put the module makefile at the beginning
of the line. That way scripts like warn.py can parse this better.

Test: multiproduct_kati, grep logs
Change-Id: I5e6844097b44e47b8126159c1760b7524134310d
2017-02-24 23:52:22 +00:00
Colin Cross 8f2f7b9fab Port java.mk desugar changes to host_dalvik_java_library.mk
host_dalvik_java_library.mk shares less of the implementation
with the device side than I thought, port the desugar changes
from java.mk.

Test: m -j ANDROID_FORCE_JACK_ENABLED=disabled core-oj-hostdex
Change-Id: I5e09673c5eae6bf95d63540e7b626c67da87e9f1
2017-02-24 23:51:12 +00:00
Dan Willemsen e19ca033c6 Improve warnings for package-modules.mk
Include the calling makefile and package name instead of just a warning
pointing to package-modules.mk

Test: multiproduct_kati, grep logs
Change-Id: I4fa35540b9695b44eea6c23463e137ec37d1d2c9
2017-02-24 15:49:50 -08:00
Dan Willemsen 594c3fc3d7 Fix all_named_products, remove kati_all_products
all_named_products was giving the file path instead of product name for
the name:path format of PRODUCT_MAKEFILES.

kati_all_products has been replaced with multiproduct_kati

Test: get_build_var all_named_products
Test: multiproduct_kati
Change-Id: I24015ef0778ac7cd45201aa55c1737b0553f09fe
2017-02-24 15:49:46 -08:00
Josh Gao aa19e7a2bb Merge "Statically link libwinpthread into windows binaries."
am: 61d68b6152

Change-Id: I616c7ddc16239086006f0d9a99fd0742ea0cd780
2017-02-24 21:08:55 +00:00
Josh Gao 61d68b6152 Merge "Statically link libwinpthread into windows binaries." 2017-02-24 21:02:25 +00:00
Dan Willemsen 100edc4a4c Merge "Add progress indicator to Android.mk includes"
am: 353a659a31

Change-Id: Iee11804f88b35c6b6c8da47792dc4568f9862307
2017-02-24 17:56:08 +00:00
Dan Willemsen 353a659a31 Merge "Add progress indicator to Android.mk includes" 2017-02-24 17:50:13 +00:00
Tao Bao e44f4e439d Merge "Make the packaging of VBOOT_SIGNER tools conditional."
am: 56a2d9ff56

Change-Id: Icaac7d166f3d7d61d7e4480dd15f72cc44817407
2017-02-24 17:45:07 +00:00
Tao Bao 56a2d9ff56 Merge "Make the packaging of VBOOT_SIGNER tools conditional." 2017-02-24 17:41:33 +00:00
Josh Gao 4d9268e704 Statically link libwinpthread into windows binaries.
Statically link libwinpthread.a, so that we don't have to ship a
libwinpthread dll with all of our windows exectuables.

Bug: http://b/31665213
Test: wine adb.exe
Test: wine fastboot.exe
Change-Id: I96414e980d8894f8f6a58c1c7bbd9dc5e0f5169c
2017-02-23 17:56:44 -08:00
Tao Bao d2aed4309a Make the packaging of VBOOT_SIGNER tools conditional.
Otherwise it may fail the targets that don't have
external/vboot_reference in the manifest.

Bug: 35467608
Test: lunch aosp_dragon-userdebug; m otatools-package
Test: lunch aosp_bullhead-userdebug; m otatools-package
Change-Id: I35700a4d7d0723992badcfb4a03be85d07a4b9a9
2017-02-23 14:32:44 -08:00
Colin Cross dced3d40ad Merge "Remove cpusets and schedboost product variables"
am: 1adeeb8b3c

Change-Id: I850154eab83fa021423630d935b84afa20e7eced
2017-02-23 19:21:13 +00:00
Treehugger Robot 1adeeb8b3c Merge "Remove cpusets and schedboost product variables" 2017-02-23 19:16:07 +00:00
Tao Bao 3dec68ea3f Merge "Makefile: Add the missing dependency on FUTILITY."
am: 4e429cccd6

Change-Id: I4e26b51ae65f1d13bf4d8e959422876c0956c568
2017-02-23 18:52:41 +00:00
Tao Bao 4e429cccd6 Merge "Makefile: Add the missing dependency on FUTILITY." 2017-02-23 18:47:13 +00:00
Colin Cross 4a4325d313 Merge "Pass min sdk version to dx and desugar"
am: bbad7c3e1f

Change-Id: I5bfc25abcca9a3cfcb22ed0c5bf39e626fe64ec4
2017-02-23 18:20:23 +00:00
Colin Cross bbad7c3e1f Merge "Pass min sdk version to dx and desugar" 2017-02-23 18:18:38 +00:00
Colin Cross 119e97b375 Remove cpusets and schedboost product variables
They are no longer needed, remove them.

Bug: 35129304
Bug: 35128496
Test: builds
Change-Id: Ic0bb04f80d78a1aef2adfeb2af816eecabdbc4ba
2017-02-23 09:47:36 -08:00
Tao Bao 4b577413ff Makefile: Add the missing dependency on FUTILITY.
Bug: 35467608
Test: lunch aosp_dragon-userdebug; m dist
Change-Id: If3824ac22926f3c3cc09d5b82cb0f6da4132f937
2017-02-22 22:54:49 -08:00
Colin Cross c432176a09 Merge "Don't duplicate default platform libraries into proguard flags"
am: f7b6bf8cb1

Change-Id: Ie0320268dcd5c751570fe333f0e32cfdd7c81524
2017-02-23 02:15:18 +00:00
Colin Cross f7b6bf8cb1 Merge "Don't duplicate default platform libraries into proguard flags" 2017-02-23 02:12:27 +00:00
Colin Cross 5118a25bd9 Don't duplicate default platform libraries into proguard flags
Test: builds
Change-Id: Ib972d954972614f3e6ce522c58fce06beeda3cea
2017-02-22 14:37:03 -08:00
Simran Basi 0d0f7e1c7b Merge "Add device-tests and general-tests make targets."
am: c436f9eeec

Change-Id: Ic238377df600af06397d31bd4f5661e9a7e5316e
2017-02-22 19:46:18 +00:00
Treehugger Robot c436f9eeec Merge "Add device-tests and general-tests make targets." 2017-02-22 19:35:47 +00:00
Dan Willemsen 33631b3580 Add progress indicator to Android.mk includes
Test: m -j
Change-Id: I1e6fd020a06b49c243be14953d9f417e64ac7b8b
2017-02-22 11:20:51 -08:00
Colin Cross 536ef4e35a Pass min sdk version to dx and desugar
Test: make checkbuild
Change-Id: Idde9712508571ea623126c7d25d2fa67eccf4833
2017-02-22 11:10:37 -08:00
Paul Duffin 3e93d553ec Merge "Filter JUnit and android.test classes from applications using proguard"
am: 38a231d6c3

Change-Id: I42f53657f38aaead6bfde4015992991dbb058575
2017-02-22 12:20:54 +00:00
Paul Duffin 38a231d6c3 Merge "Filter JUnit and android.test classes from applications using proguard" 2017-02-22 12:15:27 +00:00
Colin Cross f78a2f821c Merge "Use ifndef or ifeq () instead of ifeq """
am: 1948f64dd5

Change-Id: I0a582b85ae540f9b164c93cf5363049258983a64
2017-02-22 04:30:00 +00:00
Colin Cross 63fe36abbe Use ifndef or ifeq () instead of ifeq ""
ifeq with quotes is technically correct make syntax, but rarely used.
Replace it with the simpler ifndef when comparing against empty, or
with parenthesis for consistency.

Test: builds
Change-Id: Idcbe0586c4626c67d560694596b0bd9f5f93484a
2017-02-21 17:29:10 -08:00
Simran Basi 9c295b4415 Add device-tests and general-tests make targets.
Adds the device-tests and general-tests makefiles and
added include lines to main.mk so that individual test
modules can be built properly.

These targets do not build any special tradefed wrapper
that normal *TS's usually employ. They are not necessary
here.

Bug: 35350788
Test: Updated several CTS test modules to belong to these
      suites instead and ran:
      `rm -rf out; make clean; make device-tests general-tests -j`
      then verified the output.

Change-Id: I40e3958375f7b39cb56508f2812ce9760d403f6f
2017-02-21 17:04:47 -08:00
Dan Willemsen 283ed982cd Merge "Stop double-printing config"
am: a7d4e0cd73

Change-Id: Icefca1547a8361d3678b8be7d30776325de47b73
2017-02-22 00:58:46 +00:00
Dan Willemsen 0d25529b4c Stop double-printing config
Don't print the config in Kati when we've already printed it in soong_ui
or the make wrapper.

Test: m -j
Test: USE_SOONG_UI=true m -j
Change-Id: Ic6dce0ab29d584d85c6642c597f6e9dcd6ba9dca
2017-02-21 15:12:15 -08:00
Paul Duffin f22aca1e47 Filter JUnit and android.test classes from applications using proguard
The new javac/desugar/proguard/dx based toolchain can fail if
there are duplicate classes in the -injars and -libraryjars
passed to proguard. That causes problems for b/30188076 which
is attempting to remove various junit and android.test classes
from the API because it requires the changes to add those
classes statically to applications are submitted simultaneously
with the change to remove the classes from the API which is not
feasible.

This change simply causes Proguard to ignore the classes from
the application JAR so it will always use them from the library.
That allows the changes to be done separately and only requires
that this change is reverted simultaneously with the change to
update the API.

Bug: 30188076
Test: make checkbuild and make -j ANDROID_FORCE_JACK_ENABLED=disabled checkbuild
Change-Id: I6ed6c45a159d6261d90245551aa2913cc82d2e8b
2017-02-21 13:11:13 +00:00
Paul Duffin 4e5d1b0624 Merge "2nd attempt to remove legacy-test from TARGET_DEFAULT_JAVA_LIBRARIES"
am: 6cf9da761a

Change-Id: Ie5425a088e63d2b13c1b4e92da2243176ce9706b
2017-02-20 11:58:37 +00:00
Paul Duffin 6cf9da761a Merge "2nd attempt to remove legacy-test from TARGET_DEFAULT_JAVA_LIBRARIES" 2017-02-20 11:51:01 +00:00
Colin Cross 58ffd38f97 Merge "Revert "Revert "Add soong_javac_filter to all javac commands"""
am: 29f3642dd1

Change-Id: I1e39a9155fecc6cb0a1031d2b04299fdfdf1442b
2017-02-20 07:01:22 +00:00
Colin Cross 440079b84b Revert "Revert "Add soong_javac_filter to all javac commands""
This reverts commit 52d2253ff9.

Test: pipe the grok build output through soong_javac_filter
Change-Id: I449a61ed2c95b3e1afd51a31a11baab15d97e2f2
2017-02-19 19:56:51 -08:00
Colin Cross 2f23c5caf7 Merge "Disable building coverage with javac"
am: 271b1f6521

Change-Id: Ie65e362bd9736623dec3041891f060cf56b98895
2017-02-19 06:28:53 +00:00
Treehugger Robot 271b1f6521 Merge "Disable building coverage with javac" 2017-02-19 06:22:26 +00:00
Colin Cross 25a79dacd9 Disable building coverage with javac
Emma is unable to process framework.jar, and making framework
classes.jar depend on the emma output causes builds to fail when
emma is enabled.  Make classes.jar depend on the jarjar output
instead, bypassing emma for now.

Test: m -j EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true check-public-api
Change-Id: I861282292816e29ca27b67a3eef978d951c1a4dc
2017-02-17 23:47:26 -08:00
Colin Cross 9003bc7d4b Merge "Build all the way to classes.dex for checkbuild"
am: 41c7d8423b

Change-Id: I11b0cea9ccd40b29e6dc1338a0d29194df1d2579
2017-02-18 01:38:21 +00:00
Treehugger Robot 41c7d8423b Merge "Build all the way to classes.dex for checkbuild" 2017-02-18 01:35:40 +00:00
Colin Cross e4381dcac2 Merge "Add a desugar step between javac and proguard"
am: 9e92c2fd18

Change-Id: I1bcbc1a9d98cad43b5f67f54b8e09de8bf8eb67b
2017-02-18 01:13:19 +00:00
Colin Cross 9e92c2fd18 Merge "Add a desugar step between javac and proguard" 2017-02-18 01:10:08 +00:00
Tao Bao 6498b2efbf Merge "Build FUTILITY tool from futility-host."
am: c53607d9cc

Change-Id: Ieabf4a622916a7ed18b0adac4f5091dcea96d659
2017-02-18 01:09:48 +00:00
Tao Bao c53607d9cc Merge "Build FUTILITY tool from futility-host." 2017-02-18 01:04:31 +00:00
Dan Willemsen e4a0dd15cc Merge "Remove unused zipalign macros"
am: 56183c2ee2

Change-Id: I7c743f2b694652af35f74b0e61c3dfe290812b18
2017-02-18 00:18:45 +00:00
Treehugger Robot 56183c2ee2 Merge "Remove unused zipalign macros" 2017-02-18 00:12:42 +00:00
Dan Willemsen ea2687fab6 Merge "Add Header Library support to Make"
am: 4f794fdd50

Change-Id: I44b0f0fe5c0f4d65bf205165e4ec05403f738066
2017-02-17 23:55:16 +00:00
Dan Willemsen 4f794fdd50 Merge "Add Header Library support to Make" 2017-02-17 23:50:41 +00:00
Colin Cross e1159f5b39 Build all the way to classes.dex for checkbuild
Test: m -j checkbuild
Change-Id: Ie1b7be01c9bbcf1a32399f19d050a93410bdb42b
2017-02-17 15:03:07 -08:00
Colin Cross eac5ce4e97 Add a desugar step between javac and proguard
This enables support for lambdas by passing class files through the
desugar tool.

Test: m -j checkbuild tests cts
Change-Id: I14ec152355243fd67fe2f107ccbe67a1b4e7e262
2017-02-17 15:03:06 -08:00
Colin Cross cb78c50239 Merge "Revert "Add soong_javac_filter to all javac commands""
am: 6dd4debe74

Change-Id: I31aedc360439bd26f205d6db1502297d7ca5b63a
2017-02-17 23:00:09 +00:00
Colin Cross 6dd4debe74 Merge "Revert "Add soong_javac_filter to all javac commands"" 2017-02-17 22:54:06 +00:00
Colin Cross 52d2253ff9 Revert "Add soong_javac_filter to all javac commands"
This reverts commit a341bf0f86.

Breaks grok builds that replace javac with another tool:
reading standard input: bufio.Scanner: token too long

Change-Id: I825587c465b05c1fbddb7794dc1c84f5f2c883d1
2017-02-17 22:53:42 +00:00
Colin Cross 8283b186be Merge changes I7e8fcd2e,Ie12d743c
am: 547f7393d7

Change-Id: Id9cd5b894a599ca660363234863fdfc6602575d2
2017-02-17 22:34:39 +00:00
Colin Cross 547f7393d7 Merge changes I7e8fcd2e,Ie12d743c
* changes:
  Add soong_javac_filter to all javac commands
  Re-enable dx support
2017-02-17 22:19:08 +00:00