Commit Graph

952 Commits

Author SHA1 Message Date
Treehugger Robot ab5ce7e1fe Merge "Move BUILD_*_FROM_FILE to config.mk" 2017-11-04 01:22:26 +00:00
Colin Cross e96bfdb337 Move BUILD_*_FROM_FILE to config.mk
BUILD_NUMBER_FROM_FILE and BUILD_DATETIME_FROM_FILE may need to
be referenced before main.mk has been parsed, move them to config.mk.

Bug: 68865363
Test: m -j TARGET_PRODUCT=full TARGET_BUILD_APPS=Gallery
      aapt dump xmltree out/target/product/generic/obj/APPS/Gallery_intermediates/package.apk AndroidManifest.xml | grep Version
Change-Id: I9361a394469e61fcdf5a2b9509ef2bb2b373d6e7
2017-11-03 16:35:02 -07:00
Dan Willemsen 52f74821d3 Switch deprecation message to $(warning)
This way it shows up when using the old copy of lunch, which hides
stdout.

Test: source old_envsetup; lunch aosp_marlin-eng
Change-Id: I4bccf37fe69c0d7affb5805d05a2750e5d9a3da4
2017-11-03 15:52:50 -07:00
Alan Leung 65168a4143 Workaround for USE_D8 not in --dumpvars-mode
Bug: 68406220
Test: m checkbuild && USE_D8=false m checkbuild
Change-Id: Ia9916fb69b22449ff9eadd334f135807d999276f
2017-11-02 15:31:03 -07:00
Treehugger Robot dee5abd85a Merge "Always use MKE2FS to build ext4 image" 2017-11-02 21:34:49 +00:00
Jin Qian f0ebe872a2 Always use MKE2FS to build ext4 image
Bug: 64395169
Change-Id: I0118fe8ee5f677fdb9da616a11de304b2aefd0ba
2017-11-01 16:37:38 -07:00
Treehugger Robot 9767853ed0 Merge "Export AAPT-related variables to soong" 2017-10-31 23:39:24 +00:00
Colin Cross c7bd540a6e Export AAPT-related variables to soong
Test: m checkbuild
Change-Id: I1816df9b9cc7b51e228d6d847cefa2d51a524897
2017-10-30 17:31:44 -07:00
Dan Willemsen ce9a40650d Remove make version check
We should never be using make here anymore, only Kati.

Test: none
Change-Id: I6e716d76e3656c2bad1cf17c6de92bdeda763d5b
2017-10-30 13:52:47 -07:00
Dan Willemsen 41cc5022c1 Merge "Prevent using config.mk from make, clean up unused code" 2017-10-30 20:11:32 +00:00
Søren Gjesse 6836c47b8b Merge "Added support for using R8 instead of Proguard + dx"
am: 9047dce212

Change-Id: Ibf7489aa1af1b2ae5fc5540b3eceec0c4a67a32b
2017-10-24 06:45:36 +00:00
Søren Gjesse 0c1fe64ce8 Added support for using R8 instead of Proguard + dx
With this change building with USE_R8=true will run R8 instead of Proguard + dx
for all targets that have LOCAL_PROGUARD_ENABLED set. R8 (through the
compatproguard wrapper) will use the same options as Proguard for now.

Additional Proguard configurations for R8 can be added using LOCAL_R8_FLAG_FILES
on individual targets. This makes it possible to make configuration updates
without touching the Proguard + dx configuration

Test: m -j
Test: m -j USE_D8=true USE_R8=true
Test: m -j USE_D8=true USE_R8=false
Test: m -j USE_D8=true
Change-Id: I78e8a0fd17cc5cefedccffe95b93c94a60a727f1
2017-10-23 08:58:30 +02:00
Nan Zhang 117151358c Merge "Remove Turbine definition from config.mk"
am: a6d7420c58

Change-Id: If37be35711fbb8e2c728915c23c54d86f41fa83a
2017-10-21 01:28:46 +00:00
Treehugger Robot a6d7420c58 Merge "Remove Turbine definition from config.mk" 2017-10-21 01:20:45 +00:00
Alan Leung 70e5a23d9e Merge "Remove D8 make variables."
am: 3c8949e342

Change-Id: I9ad7a96b4b317c85a68f62f9812337bb109ddbfa
2017-10-20 19:05:04 +00:00
Nan Zhang 9438dbea25 Remove Turbine definition from config.mk
Test: m clean && m -j

Change-Id: I5444301864c2e4f08eb525c286994898f5ec2494
2017-10-19 23:05:45 -07:00
Alan Leung 3c736b9315 Remove D8 make variables.
Bug: 67754178
Test: m -j32 checkbuild && USE_D8=true m -j32 checkbuild

Change-Id: I474e57365a8b2c5ff82b5774cb38e6846454f854
2017-10-19 16:24:05 -07:00
Dan Willemsen 8cf5aa5e92 Prevent using config.mk from make, clean up unused code
Print a large warning and stop unless we're using ckati. Then remove a
bunch of code that soong_ui doesn't use.

Test: command make -f build/core/config.mk
Test: . build/envsetup.sh; lunch aosp_arm-eng; m nothing
Test: cs/CALLED_FROM_SETUP
Change-Id: Ib823d5ef8955fb68dbc9a035cfa8d5ac4903534a
2017-10-19 20:26:23 +00:00
Colin Cross c5122aee9d Merge "Use system modules generated by soong when using javac -target 1.9" am: 58cd98dc47 am: 7c381d8015
am: 3541a96d76

Change-Id: I70c1cabb3fe7f3c34c54d9b360259229d7bb6243
2017-10-17 18:57:03 +00:00
Colin Cross 7c381d8015 Merge "Use system modules generated by soong when using javac -target 1.9"
am: 58cd98dc47

Change-Id: I1525b7088afee77baee014fd346cf19cf6a9641e
2017-10-17 18:43:21 +00:00
Colin Cross f960257c14 Use system modules generated by soong when using javac -target 1.9
Soong has support for building system modules.  Use the directories
produced by Soong with --system to replace -bootclasspath arguments
when using javac -target 1.9.

Since soong can't generate current SDK stubs yet, and no existing
SDK stubs need -target, only use -target 1.9 for modules that are
not compiling against the SDK.  That means in practice the only
system modules that will be used for now is the default one,
core-system-modules.

Bug: 63986449
Test: m -j EXPERIMENTAL_USE_OPENJDK9=true makes some progress
Change-Id: I350ef50aedf36fdd72458c23d4fe8a2edf1a9a02
2017-10-16 17:55:24 -07:00
Dan Willemsen a4e6ce4fdc Merge "Use CALLED_FROM_SETUP instead of KATI" am: bd4239a1e1 am: 8e7153bf98
am: 9e000cd290

Change-Id: Ie96924dcc57f253f8a1904a3d97263361ec83a4d
2017-10-13 09:55:07 +00:00
Dan Willemsen 8e7153bf98 Merge "Use CALLED_FROM_SETUP instead of KATI"
am: bd4239a1e1

Change-Id: I2495d57b7038bca63aa148b3a3f02c3ae9d88a87
2017-10-13 07:32:03 +00:00
Dan Willemsen 20f99a60ea Use CALLED_FROM_SETUP instead of KATI
So that we can use kati instead of make for the initial config loading.

Test: m clean; m nothing
Test: USE_GOMA=true m nothing
Test: m PRODUCT-aosp_x86-sdk
Test: m APP-Calculator
Test: multiproduct_kati -only-config  (on AOSP and internal master)
Change-Id: I5d3af847607fa48868c2045401977eca37dc6ae1
2017-10-12 15:35:42 -07:00
Alan Leung 2f9c555fd7 Merge "Revert "Enable D8 by default."" am: bc29d906bc am: 81e4d14cc7
am: 693c19ad7a

Change-Id: I843d91ceb573e64f8af060a921c6c9fcc35cdeb3
2017-10-09 21:45:40 +00:00
Alan Leung 81e4d14cc7 Merge "Revert "Enable D8 by default.""
am: bc29d906bc

Change-Id: Ic839c5b69dca0866049ae4b4f48f41a64fa06697
2017-10-09 21:35:16 +00:00
Alan Leung ba985e6efe Revert "Enable D8 by default."
Breaks EmulatorSmokeTests

Bug: 67569208

This reverts commit 4c1a09823c.

Change-Id: I85b28b9b59226f4ce6fda0ea2445933eade07d89
2017-10-09 21:24:52 +00:00
Alan Leung 9bf2c705d3 Merge "Enable D8 by default." am: a867dfa71c am: d46624b4d8
am: 209e7bf321

Change-Id: Ie15ea435e30075aa572c508431ec214b6ec3f0e0
2017-10-09 20:50:42 +00:00
Alan Leung d46624b4d8 Merge "Enable D8 by default."
am: a867dfa71c

Change-Id: I0e68a345fb18cb52033480678eca6979bcb94f5e
2017-10-09 20:18:15 +00:00
Alan Leung 4c1a09823c Enable D8 by default.
Bug: 67569208
Test: m -j32

Change-Id: Ie80ce7ca0e6955ef6c1fbae1fa5b169374068cf4
2017-10-09 07:41:35 +00:00
Alan Leung a42c3b554f Merge "Add USE_D8_BY_DEFAULT in makefile." am: 03e8fb10d1 am: 5f1417897c
am: e6bf28ffe7

Change-Id: I26965f59880539274abbefa22a9a583b393e4064
2017-10-05 09:29:59 +00:00
Alan Leung 5f1417897c Merge "Add USE_D8_BY_DEFAULT in makefile."
am: 03e8fb10d1

Change-Id: I68ba9afe7406fe84ddb9b5d18e583b89d0b8ccd8
2017-10-05 09:20:21 +00:00
Alan Leung 013a37b760 Add USE_D8_BY_DEFAULT in makefile.
Bug: 65854021
Test: m USE_D8=true  showcommands out/target/common/obj/JAVA_LIBRARIES/okhttp_intermediates/with-local/classes.dex
Change-Id: Iec1a05bf6f03cf856faf2e013fa169e1a0beaf7a
2017-10-03 17:15:01 -07:00
Colin Cross 69ced5de5e Delete jack support am: a6bc3a8a4c
am: 37bf2b1250

Change-Id: I19133aedbfe91f7cd49588b33f517dc4bb17b91c
2017-10-02 20:00:16 +00:00
Colin Cross e673deb280 Delete jack support
Remove all support for running jack.

Bug: 65302138
Test: m -j checkbuild
Change-Id: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
Merged-In: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
(cherry picked from commit 5db5d31d73)
2017-10-02 11:15:19 -07:00
Colin Cross a6bc3a8a4c Delete jack support
Remove all support for running jack.

Bug: 65302138
Test: m -j checkbuild
Change-Id: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
Merged-In: I1ef87c88af3f2689f8b0dcf1a01c958b16159631
(cherry picked from commit 5db5d31d73)
2017-10-02 18:06:56 +00:00
Dan Willemsen 69bcd308ff Enforce TARGET_USES_MKE2FS := true for new devices
am: e49ee7095f

Change-Id: I0a79501423f055a87d18fcc73e03492be944a155
2017-09-30 02:14:49 +00:00
Dan Willemsen e49ee7095f Enforce TARGET_USES_MKE2FS := true for new devices
Bug: 62434479
Test: verify failure on 27 device w/o TARGET_USES_MKE2FS
Test: verify success on 27 device w/ TARGET_USES_MKE2FS
Test: `build/test/build_test.sh -only-config` on oc-mr1-dev and master
Change-Id: Ib7e8dad404a1eaf70f47ee1d46528be4aabd6e80
2017-09-29 22:56:30 +00:00
Colin Cross 69f05bb9d7 Merge changes I0a1aa003,I000c3c22 am: a4a1f2089b am: e69ccc7fb6
am: 1db082a142

Change-Id: Icbf9dfba83879afd62bf62f1b1343acf3f045c5c
2017-09-26 18:57:14 +00:00
Colin Cross e69ccc7fb6 Merge changes I0a1aa003,I000c3c22
am: a4a1f2089b

Change-Id: I84d3a5fb255a3b6720f1076429e351fe43510ffe
2017-09-26 18:48:46 +00:00
Colin Cross 78542b9e13 Use dx or d8 from prebuilts/build-tools
Test: m -j checkbuild
Test: m -j TARGET_BUILD_APPS=Gallery2 ANDROID_COMPILE_WITH_JACK=false
Change-Id: I0a1aa00388ac1aab9c8ba967e815f923fe466ced
2017-09-25 16:15:11 -07:00
Colin Cross 5d969a3df4 Desugar lambdas in javac unbundled builds
Use prebuilt core-lambda-stubs from prebuilts/sdk and desugar from
prebuilts/build-tools to desugar lambdas in javac unbundled builds.

Test: apps build with ANDROID_COMPILE_WITH_JACK=false
Bug: 62038127
Change-Id: I000c3c2234443aa17f091784726ab9f63c0cc361
2017-09-25 16:15:11 -07:00
Miao Wang 1d6d78ef38 Merge "Correctly set the linker search path for libm and libc." am: b463cdc874 am: 6062710fed
am: e277ce63f8

Change-Id: Ib34fe4f4f47f68cbdf0271c61f5102b35a4db9f0
2017-09-23 00:48:05 +00:00
Miao Wang 6062710fed Merge "Correctly set the linker search path for libm and libc."
am: b463cdc874

Change-Id: I07df49db9881ee4e37b56f771d7a523680e06c04
2017-09-23 00:44:04 +00:00
Treehugger Robot b463cdc874 Merge "Correctly set the linker search path for libm and libc." 2017-09-23 00:34:21 +00:00
Miao Wang 28e78f4600 Correctly set the linker search path for libm and libc.
- ndk/r10 is removed, we need to use SOONG ndk stubs instead.
  - Use MIN_SUPPORTED_SDK_VERSION instead of hard coded version 9 for
    32 bit compilation.

Bug: 38342163
Test: mm
Test: make -j40 FORCE_BUILD_RS_COMPAT=true RSTest_Compat
Change-Id: I9549446cb7f8faee8842b06f096d035535dc7f3d
2017-09-22 14:57:02 -07:00
Dan Willemsen 621eeeae55 Merge "Remove ijar" am: 1dcffadbc7 am: dee143988e
am: a3e8ffd536

Change-Id: I80497bc760a2e6571b4a837b02f5db9f42f932b7
2017-09-22 21:34:34 +00:00
Dan Willemsen dee143988e Merge "Remove ijar"
am: 1dcffadbc7

Change-Id: I55b0892905cf67655661f5a15ef3574e9e27db97
2017-09-22 21:30:17 +00:00
Dan Willemsen 6f2284e4fe Remove ijar
It's no longer used.

Test: cs/
Change-Id: Ib24094e494d4caa390f83df28c179b6012691ebc
2017-09-21 16:08:51 -07:00
Alan Leung befd06d051 Merge "Replace DX_ALT_JAR with USE_D8" am: 3b236ad3e3 am: 524ede46bb
am: a2243f1ef8

Change-Id: I7489b09152336e685a8e1faf682ed85c6fd269fc
2017-09-20 20:11:06 +00:00
Alan Leung 524ede46bb Merge "Replace DX_ALT_JAR with USE_D8"
am: 3b236ad3e3

Change-Id: I193a3d98cbbdc3f7bb88fb588c9ef9fba8b837c4
2017-09-20 20:01:42 +00:00
Nan Zhang 6cdb1f8bc7 Merge "Use merge_zips to merge jars during Java build in Make." am: 39bbfe217a am: d9001d2733
am: 177e7ffb20

Change-Id: I2178aa1eb4a0e74a3057758f4651ad569bdd6257
2017-09-20 20:00:46 +00:00
Treehugger Robot 3b236ad3e3 Merge "Replace DX_ALT_JAR with USE_D8" 2017-09-20 19:56:38 +00:00
Nan Zhang d9001d2733 Merge "Use merge_zips to merge jars during Java build in Make."
am: 39bbfe217a

Change-Id: Iad7343ad4d2889fc39161e8ab14449f42d23008b
2017-09-20 19:53:47 +00:00
Nan Zhang 9bd540594d Use merge_zips to merge jars during Java build in Make.
1. Use merge_zips to merge jars without unzipping/rezipping static Java
libraries. And seperate merging process as a independent Make target so
that Javac can only depend on Turbine.

2. Remove duplicate vars: "full_java_lib_deps" in droiddoc.mk

3. Also use classes-header.jar for link_apk & link_instr

Bug: b/65455145
Test: m clean && m -j32

Change-Id: I7b0307664a6b86075c983284fce099bd3946318c
2017-09-19 18:49:33 -07:00
Colin Cross a541eaa665 Merge "Revert "Upgrade to ManifestMerger2""
am: c165d9c9ba

Change-Id: I048de67c02b32f9179d245fd98636333c366bddf
2017-09-19 15:48:24 +00:00
Colin Cross 34054eb615 Revert "Upgrade to ManifestMerger2"
This reverts commit a636f16b34.

Bug: 36005379
Change-Id: If5516b34c103016529de4d591038e9e34260a8e8
2017-09-19 15:40:25 +00:00
Colin Cross 8304b5732a Merge "Upgrade to ManifestMerger2"
am: 4971146b2b

Change-Id: I1be76ff452d131f1a4dbe0b12e3b1389fc46f935
2017-09-19 06:44:19 +00:00
Colin Cross a636f16b34 Upgrade to ManifestMerger2
Switch to using ManifestMerger2 from
prebuilts/gradle-plugin/com/android/tools/build/manifest-merger/25.3.1/manifest-merger-25.3.1.jar

Bug: 36005379
Test: m -j checkbuild
Change-Id: Ia03a1eb096ebab9578e5b08183faa86f6818ff3c
Merged-In: I83bd3f95778e93796d06f063aa7c61d2a63b117b
(cherry picked from commit e76e8021eb)
2017-09-18 21:08:58 +00:00
Colin Cross 710a41358a Upgrade to ManifestMerger2
Switch to using ManifestMerger2 from
prebuilts/gradle-plugin/com/android/tools/build/manifest-merger/26.0.0-beta2/manifest-merger-26.0.0-beta2.jar

Bug: 36005379
Test: m -j checkbuild
Change-Id: I83bd3f95778e93796d06f063aa7c61d2a63b117b
Merged-In: I83bd3f95778e93796d06f063aa7c61d2a63b117b
(cherry picked from commit e76e8021eb)
2017-09-18 21:03:23 +00:00
Alan Leung be7b6ed397 Replace DX_ALT_JAR with USE_D8
Which would invoke the d8 script instead of calling javac on the jar.

BUG: 65212022
Test: m USE_D8=true
Change-Id: I8ee0b14210cb40895b0b208a01606e10a41f0acf
2017-09-18 12:39:52 -07:00
Steven Moreland cb373600f2 Merge "Update compatibility matrix logic." into oc-mr1-dev
am: d7314b90bd

Change-Id: I72de0f154db027414baf4c09c2b5e050f838a267
2017-09-05 21:14:30 +00:00
Nan Zhang fa8b66f5cc Merge changes from topic "turbine"
am: 872246de0f

Change-Id: I13cba047e145d0ab8c486a4ee60d53f2f5470737
2017-09-01 00:21:34 +00:00
Nan Zhang b3ec534bd1 Revert "Revert "Add Turbine as part of java build toolchain in Make.""
This reverts commit 33dcd0c5eb.

Reason for revert: <stub.jar.toc needs classes.jar.toc which is no longer existed after Turbine was introduced. So use classes.jar to represent stub.jar.toc>

Bug: b/64308460
Test: m clean && time m -j32 ANDROID_COMPILE_WITH_JACK=true
Change-Id: If618993f1e0c789d93cc15664212603f994fd460
2017-08-31 14:56:54 -07:00
Nan Zhang 2c82a22d96 Merge "Revert "Add Turbine as part of java build toolchain in Make.""
am: 91ffbf2fbe

Change-Id: I1a1131df064f2243220407dddd3f913ace7d26aa
2017-08-31 20:41:25 +00:00
Nan Zhang 33dcd0c5eb Revert "Add Turbine as part of java build toolchain in Make."
This reverts commit 0739155c86.

Reason for revert: <sdk_google_aw_x86-sdk (linux) build 4310016 in git_master is broken>

Change-Id: I525d48557bd0425917e61a85f596663ccc63c887
2017-08-31 19:56:59 +00:00
Nan Zhang 2764a16085 Merge "Add Turbine as part of java build toolchain in Make."
am: 0b23748128

Change-Id: Ieed94b471fea95b91b7bc54da8d3860cb794f921
2017-08-31 18:16:13 +00:00
Nan Zhang 0739155c86 Add Turbine as part of java build toolchain in Make.
1. Bundle static_java_header_libs during turbine-classes.jar if
necessary. This can be improved if we have the ability to merge jars on
the fly.

2. Copy sdk/stubs-classes.jar to sdk/stubs-classes-header.jar, and Use
.KATI_RESTAT to cut un-necessary targets rebuilt.

3. Copy prebuilt-classes.jar to prebuilt-classes-header.jar since
Turbine doesn't apply to prebuilt.

4. Run jarjar after Turbine compilation, otherwise downstream targets
won't find corresponding symbols.

5. Change classes.jar in -classpath used in Desugar to
classes-header.jar.

6. Change legacy-libs in Proguard from classes.jar to
classes-header.jar.

7. Add .KATI_RESTAT for turbine-classes.jar, and remove IJAR.

8.boot.art is re-generated during the incremental rebuild since
javalib.jar got re-generated. Then boot.art re-triggered lots of
downstream targets to be rebuilt. So we add .KATI_RESTAT for javalib.jar
to prevent downstream to be rebuilt. The ziptime & commit-change-to-toc
operation for javalib.jar(small) didn't bring too much overhead when we build
from clean state.

Next step: specify static_java_header_libs in -classpath, and merge jars
at the end.

touch frameworks/base/core/java/com/google/android/util/Procedure.java &&
time m
time: 1m58s (794 -> 49 targets)

m clean && time m java
time: 9m34s

Bug: b/64308460

Test: m clean && m checkbuild

Change-Id: Iefcc234405b9f461b6882c06bba15e21fa783d28
2017-08-30 16:01:39 -07:00
Steven Moreland 5bce7f201e Update compatibility matrix logic.
Use c_m.<level>.xml for matrices which correspond
to released API levels.

Test: manual
Test: build system complains when files are missing
Bug: 63603463
Change-Id: I16bcab9a7548876ec2bedf9c5d70a126ac50b8d5
2017-08-30 14:48:08 -07:00
Dan Willemsen eba39713c8 Merge changes I863200b2,Ifdd9663b am: 770a498e99 am: 10e9d25035
am: 1761a50f5f

Change-Id: Ia50645f20aaa01796536f784baf06605604008cd
2017-07-26 21:53:59 +00:00
Dan Willemsen 10e9d25035 Merge changes I863200b2,Ifdd9663b
am: 770a498e99

Change-Id: Id9e3dd9d5e8ac3d85d5203dd6430243d9daf01bf
2017-07-26 21:45:04 +00:00
Dan Willemsen ce7f8dd15a Run `uname -sm` once, don't use python for HOST_OS_EXTRA
This saves 20-50ms for `lunch` (~7-10%), and double that for every build
execution.

Test: Check HOST_OS_EXTRA on Linux & Mac
Change-Id: I863200b2287c8867f40606237895b1d3ad91e1b3
2017-07-26 10:49:22 -07:00
Dan Willemsen dc068b0762 Stop calling `java -version`, remove HOST_JDK_IS_64BIT_VERSION
All users of this variable have been removed. This command was adding
50-175ms to `lunch` (~15-30%), and was running at least twice (serially)
in every build too.

Test: cs/HOST_JDK_IS_64BIT_VERSION
Test: prebuilts/jdk/jdk8/linux-x86/bin/java -version, is 64-bit.
Change-Id: Ifdd9663b010ec45918b29ac037849f49c8cd8f69
2017-07-26 10:49:04 -07:00
Colin Cross 19bd3427d0 Merge "Use java prebuilts" am: 45d2ef40f2 am: d35fe2c55e
am: 1589539f10

Change-Id: Ie701576175eef2469de22e68623a6914ca20239d
2017-07-25 00:52:37 +00:00
Colin Cross d35fe2c55e Merge "Use java prebuilts"
am: 45d2ef40f2

Change-Id: Icb9e7cd6ad37a5ff37fb72d12a058be79dbabf68
2017-07-25 00:47:17 +00:00
Colin Cross e97e69359a Use java prebuilts
Point the make java variables at JDK prebuilts in
prebuilts/jdk/jdk8, add them to the path, and clean up
some old overrides.

Reapplies Ibbeb30fab96e45aedd5bb6d710d1170f85789982 after updating
some more manifests to include the prebuilts.

Bug: 62956999
Test: m -j checkbuild
Change-Id: I9e27aa5cb04d1ed09e43b798e5d654843afc000f
(cherry picked from commit 1931750940)
2017-07-20 15:14:26 +00:00
Colin Cross f2da657628 Merge "Revert "Use java prebuilts"" am: 4d69df5191 am: f4e78ccf25
am: 96018b3d10

Change-Id: Ib54b8c0fbb95179bff97abe028d133da3528380f
2017-07-19 22:58:23 +00:00
Colin Cross f4e78ccf25 Merge "Revert "Use java prebuilts""
am: 4d69df5191

Change-Id: I978bf3d25e0be2a2a6b40c5b396821cc2a8d9365
2017-07-19 22:52:21 +00:00
Colin Cross 4d69df5191 Merge "Revert "Use java prebuilts"" 2017-07-19 22:44:12 +00:00
Colin Cross 02112900cc Revert "Use java prebuilts"
This reverts commit 1931750940.

Change-Id: I7a99fd6c53d35a2a674f2d60b113a727f3c453ce
2017-07-19 22:42:46 +00:00
Colin Cross 1a05e52e6d Merge "Merge "Use java prebuilts" am: 26e1b6d6c2 am: fcbaa25380" into oc-dev-plus-aosp
am: 7b38914e4e

Change-Id: I61313e8009c964868cf4984a7f86811748e98819
2017-07-19 22:19:03 +00:00
Colin Cross fcbaa25380 Merge "Use java prebuilts"
am: 26e1b6d6c2

Change-Id: If761856f9fd509d2c5694844b6bb10966717e0b1
2017-07-19 22:13:09 +00:00
Colin Cross 26e1b6d6c2 Merge "Use java prebuilts" 2017-07-19 22:08:48 +00:00
Colin Cross f113b854b1 Merge "Revert "Use dx.jar directly"" am: c7e3e962f8 am: 4cea760106
am: 3f273622f4

Change-Id: Iea8d21663dfdbd490c3aad69e405c5b6d014cf97
2017-07-18 07:25:36 +00:00
Colin Cross 4cea760106 Merge "Revert "Use dx.jar directly""
am: c7e3e962f8

Change-Id: Icd5402f7cc789224753537c070a91cbf6267ee66
2017-07-18 07:14:26 +00:00
Treehugger Robot c7e3e962f8 Merge "Revert "Use dx.jar directly"" 2017-07-18 07:08:19 +00:00
Colin Cross e44e75aa89 Revert "Use dx.jar directly"
This reverts commit e37a3c959a.

Reason for revert: breaks art test runner

Change-Id: Ice0cd3020ddec7f31eb789867a45f047a75a05d0
2017-07-18 05:22:59 +00:00
Colin Cross 5a6cc2bda2 Merge "Use dx.jar directly" am: c68434c971 am: 4828fcad41
am: 5cf757bb85

Change-Id: I1c2b1f760b34b76fb63ac0ad7816680a7dc9d3a0
2017-07-17 20:53:12 +00:00
Jeff Gaston a72da88c31 Merge "Update to latest jacoco usage" am: 483fae7430 am: 6264b662f3
am: 7ce0d9c1e7

Change-Id: Id57cc47edc61a7e30dc4fcf4f113ee9ce85a4b7f
2017-07-17 20:52:40 +00:00
Colin Cross 4828fcad41 Merge "Use dx.jar directly"
am: c68434c971

Change-Id: Ief2c88d3ba0e93c7eb7bb9db0ac2b0a0b886bcea
2017-07-17 20:45:31 +00:00
Jeff Gaston 6264b662f3 Merge "Update to latest jacoco usage"
am: 483fae7430

Change-Id: Ibc94d5ba6db7690441825dd655b6cb26d989b78d
2017-07-17 20:44:10 +00:00
Colin Cross c68434c971 Merge "Use dx.jar directly" 2017-07-17 20:40:13 +00:00
Jeff Gaston 483fae7430 Merge "Update to latest jacoco usage" 2017-07-17 20:36:39 +00:00
Tianjie Xu a4caab580c Merge "Generate brotli compressed {}.new.dat for full OTA" am: 1b28eca1a1 am: a07a04c737
am: 4b53a17756

Change-Id: If03919b9012f4a693e895b02a0c148eeb0a4da5e
2017-07-14 23:34:39 +00:00
Tianjie Xu a07a04c737 Merge "Generate brotli compressed {}.new.dat for full OTA"
am: 1b28eca1a1

Change-Id: I3474e8efb634513fbc4876e5c272cf56b3443e12
2017-07-14 23:27:21 +00:00
Colin Cross 1931750940 Use java prebuilts
Point the make java variables at JDK prebuilts in
prebuilts/jdk/jdk8, add them to the path, and clean up
some old overrides.

Bug: 62956999
Test: m -j checkbuild
Change-Id: Ibbeb30fab96e45aedd5bb6d710d1170f85789982
2017-07-14 14:18:53 -07:00
Jeff Gaston aaae43cd24 Update to latest jacoco usage
Bug: 36792868
Test: EMMA_INSTRUMENT_STATIC=true m -j

Change-Id: I419b543283b52be9a72f5c6b10e4cbea68782174
2017-07-14 13:04:05 -07:00
Tianjie Xu b0a29ad8c2 Generate brotli compressed {}.new.dat for full OTA
Brotli has a better compression ratio than deflation. So for non-AB
full OTA, we can compress the new.dat with brotli first and store it
in the zip package.
This increase the OTA generation time by ~5 minutes for a full OTA
(measured based on 2.0G system.new.dat)

Bug: 34220646
Test: Generate a full OTA for bullhead
Change-Id: I9c0550af8eafcfa68711f74290c8e2d05a96648f
2017-07-14 10:53:21 -07:00
Colin Cross e37a3c959a Use dx.jar directly
Use $(JAVA) to invoke dx.jar instead of the dx wrapper script.
Also allow the dx command line or the dx jar to be specified on
the command line.  Allows better dependencies on dx.jar, and
doesn't rely on having java on the path.

Bug: 62956999
Test: m -j checkbuild
Change-Id: I5f265132690ad28b3139954fea44eb0c4a43393a
2017-07-07 13:34:33 -07:00
Colin Cross 4ef344a5dd Merge "Refactor prebuilt tools" am: bc45a33c93 am: 68016fc55f
am: 54c8cb91b8

Change-Id: I0c8cd66738b37aabc3191449a99dc781b6132225
2017-07-07 20:29:19 +00:00
Colin Cross 68016fc55f Merge "Refactor prebuilt tools"
am: bc45a33c93

Change-Id: I689375970e4e4045d986b62a21f8ed7aa4e34a38
2017-07-07 20:24:15 +00:00
Colin Cross cd20d5980c Refactor prebuilt tools
Put the prebuilt and non-prebuilt tools selections into the two
clauses of an if block to simplify the next patch.

Test: m -j checkbuild
Change-Id: Idd01bc81a2b619f7fc23df7566a01b46598433a3
2017-07-07 18:16:28 +00:00
Bryan Eyler 3458b5f5a9 Merge "Re-compute DX command if it changes for PDK." am: 7edc11830a am: 1558db6a87
am: 0602eacffe

Change-Id: I85fc208af6c4b173df917bf3cd6e5d0c26e8c72c
2017-07-07 01:38:51 +00:00
Bryan Eyler 1558db6a87 Merge "Re-compute DX command if it changes for PDK."
am: 7edc11830a

Change-Id: Ied18008a334db388efe5d396bc3a7186f6c7e327
2017-07-07 01:32:49 +00:00
Bryan Eyler d4794315ff Re-compute DX command if it changes for PDK.
Bug 62360631
Tested build of PDK.

Test: builds
Change-Id: I7cbd649a8a3ce4326e513d5a808b76fbb011d99e
Merged-In: I7cbd649a8a3ce4326e513d5a808b76fbb011d99e
(cherry picked from commit af4bde4239)
2017-07-06 16:22:01 -07:00
Colin Cross 373a13c0ca Merge "Provide make variables for java binaries" am: 5e19557eb9 am: e885ccf0df
am: d8a22925f5

Change-Id: I8681d9c889018fe656f5ef4cc380d1a3af8c325f
2017-07-01 01:45:16 +00:00
Colin Cross e885ccf0df Merge "Provide make variables for java binaries"
am: 5e19557eb9

Change-Id: Ib1be7da98214e3b6c27867b80005e18cc68a0d33
2017-07-01 01:36:14 +00:00
Colin Cross 0851df8c82 Provide make variables for java binaries
Replace java -> $(JAVA), etc. to prepare for moving java binaries
out of the path and using full paths to them.

Test: builds
Bug: 62956999
Change-Id: I5dfcd0d4e855ecde69cd127169e9545e59723d12
2017-07-01 01:03:14 +00:00
Colin Cross 7a1615fb66 Merge "Get java config from soong" am: bf215d166b am: 253ffe20e1
am: df973cb239

Change-Id: I4b6ad0f2f019f7e3804fc55a86db0d0930888f27
2017-06-23 22:02:04 +00:00
Colin Cross df973cb239 Merge "Get java config from soong" am: bf215d166b
am: 253ffe20e1

Change-Id: I4250672ec7cd18a4f82c3e4019a9ec418a17df11
2017-06-23 21:57:03 +00:00
Colin Cross b12d4b7ac2 Get java config from soong
Soong will export java config variables.

Test: builds
Change-Id: If185543f8f36a30e7632946c16351d44f012bd6a
2017-06-22 17:21:05 -07:00
Mariano Giardina a43852fcdc Merge "Revert "core: Move core.oat bootjar definitions into core/config"" am: 1e14bc3b7b am: cc33b6005f
am: 78d9b75329

Change-Id: I1bd6af643810358d4ea8426338607c6f506dad72
2017-06-15 11:15:23 +00:00
Mariano Giardina 78d9b75329 Merge "Revert "core: Move core.oat bootjar definitions into core/config"" am: 1e14bc3b7b
am: cc33b6005f

Change-Id: I2f7465d6bd723c85aa0c028e8e8268d631c13d02
2017-06-15 11:12:23 +00:00
Mariano Giardina 1e14bc3b7b Merge "Revert "core: Move core.oat bootjar definitions into core/config"" 2017-06-15 11:01:29 +00:00
Mariano Giardina 2f137ee118 Revert "core: Move core.oat bootjar definitions into core/config"
This reverts commit 8c50798243.

Possible culprit of breakage in git_master sdk_google_aw_x86:
FAILED: out/target/product/generic_x86/dex_bootjars/system/framework/x86/boot.art 
ex2oatd E 06-15 03:56:00 47990 47990 runtime.cc:1761] Failed to return pre-allocated NoClassDefFoundError
dex2oatd F 06-15 03:56:00 47990 47990 thread.cc:3591] Check failed: new_exception != nullptr 

Testing if Treehugger passes with the rollback before submitting

https://android-build.googleplex.com/builds/submitted/4101897/sdk_google_aw_x86-sdk/latest/view/logs/build_error.log

Change-Id: Iceac31e775eaf3cd5fd9b3d2a17d3af200e35b27
2017-06-15 10:14:51 +00:00
Yoshisato Yanagisawa 1cceaef3fc Merge "Set JAVAC_WRAPPER if USE_GOMA is set." am: aa09aa819f am: cc2ca23b1e
am: 7b691489a8

Change-Id: I1aad4f8b17853308346d62cf70a54d6503ba9675
2017-06-15 07:42:11 +00:00
Yoshisato Yanagisawa 7b691489a8 Merge "Set JAVAC_WRAPPER if USE_GOMA is set." am: aa09aa819f
am: cc2ca23b1e

Change-Id: Ie7288bc85507008efeed8bf5a3b42ceb2392062b
2017-06-15 07:38:39 +00:00
Treehugger Robot aa09aa819f Merge "Set JAVAC_WRAPPER if USE_GOMA is set." 2017-06-15 07:28:26 +00:00
Igor Murashkin ca811c825c Merge "core: Move core.oat bootjar definitions into core/config" am: 5e1aa20225 am: db52463bb3
am: 9c57325093

Change-Id: If1ec447b21e277a023b016868db1633379acc5e0
2017-06-15 03:19:07 +00:00
Igor Murashkin 9c57325093 Merge "core: Move core.oat bootjar definitions into core/config" am: 5e1aa20225
am: db52463bb3

Change-Id: I7fe90df0a8dae2fb5aa9f0dbcfc21a77b2700a87
2017-06-15 03:16:07 +00:00
Igor Murashkin 8c50798243 core: Move core.oat bootjar definitions into core/config
TARGET_CORE_JARS and HOST_CORE_JARS define the minimal
bootclasspath jars necessary to run with dalvikvm/art.

Also refactor PRODUCT_BOOT_JARS to reuse TARGET_CORE_JARS.

(These changes are required to figure out what --bootclasspath_entry
to pass to desugar).

Bug: 36902714
Test: make -j32 && make -j32 build-art-host build-art-target
Change-Id: I620e28be41047a1d501d7f144fe415ee4a0af36f
2017-06-14 10:02:09 -07:00
Yoshisato Yanagisawa 4f3e5685fc Set JAVAC_WRAPPER if USE_GOMA is set.
Now, people can also use goma for building javac.  Let me make it by
default.

Test: USE_GOMA=true m -j4
Bug: 62334576
Change-Id: I941ce42dc0f9cbd0dcc00e6fd19368c3af11695f
2017-06-14 07:57:54 +00:00
Yifan Hong f61b430e62 Use different versions for framework compatibility matrix
Keyed on MATRIX_LEVEL_OVERRIDE, FULL_TREBLE, SHIPPING_API_LEVEL,
and SDK_VERSION.

Bug: 62136051

Test: m system_compatibility_matrix.xml -j; \
    grep -e"gatekeeper" -B1 $OUT/system/compatibility_matrix.xml; \
    grep -e"oemlock" -B1 $OUT/system/compatibility_matrix.xml

bullhead: gatekeeper is optional, no oemlock (legacy.xml)
marlin without COMP_LEVEL_OVERRIDE: gatekeeper is not optional,
        no oemlock (26.xml)
marlin with COMP_LEVEL_OVERRIDE: gatekeeper is not optional,
        oemlock exists (current.xml)
new devices with COMP_LEVEL_OVERRIDE: same as above.

Change-Id: Icf7269df91950a8c3585a7e5f0022e6737954b77
2017-06-07 19:27:35 +00:00
Dan Willemsen bd98d429ce Merge "Fix ALLOW_MISSING_DEPENDENCIES in PDK builds" am: 8340ae35a7 am: c1fa14696a
am: f6eef888f4

Change-Id: If5cf8057c9536f05cf224a71edcd290b7347be58
2017-06-07 01:46:46 +00:00
Dan Willemsen ccc48163ea Fix ALLOW_MISSING_DEPENDENCIES in PDK builds
ALLOW_MISSING_DEPENDENCIES was being set up before TARGET_BUILD_PDK, so
PDK builds were not triggering ALLOW_MISSING_DEPENDENCIES.

Bug: 62086238
Test: m -j nothing (check out/soong/soong.variables for AllowMissingDependencies)
Test: PDK_FUSION_PLATFORM_ZIP=test.zip m -j nothing (check AllowMissingDependencies)
Change-Id: I70919fbc7e397e55356cb467c6218cf6e7279c6c
2017-06-02 15:25:20 -07:00
Steven Moreland 8fb19697da Merge "Move math function definitions." am: b5e90583ef am: d1eab0ea46
am: a2f3561259

Change-Id: I86436840a6c5877901a13384faea6e699f0edfa9
2017-06-02 00:25:16 +00:00
Treehugger Robot b5e90583ef Merge "Move math function definitions." 2017-06-02 00:11:04 +00:00
Steven Moreland a64f33668e Move math function definitions.
Created math.mk and moved all math function definitions there.
Then, included this file in config.mk. This allows the functions to be
used by whatever includes config.mk (envsetup and build).

Test: manually setting combinations of PRODUCT_SHIPPING_API_LEVEL
  and PRODUCT_FULL_TREBLE_OVERRIDE and looking at values of
  PRODUCT_FULL_TREBLE.
Bug: 62229856
Change-Id: Icdab4214a1e65ae202411613dbcb9c9ea5f43b09
2017-05-31 20:41:49 +00:00
Miao Wang b19c923c77 Merge "Update RenderScript build config and definitions." am: dddd7738d0 am: 4751b9e700
am: 527eee8b8f

Change-Id: Ife66e15b0c458a9fb622e56b7ab348e345d780b0
2017-05-26 22:51:36 +00:00
Treehugger Robot dddd7738d0 Merge "Update RenderScript build config and definitions." 2017-05-26 22:29:36 +00:00
Dan Willemsen 118ceaea9a Merge changes I73787aff,I0d149812 am: 64caaf4679 am: 060e215f84
am: 6106d440c1

Change-Id: I509ee75ca9ee6c8dcacb839103d499bfe790dd23
2017-05-26 22:16:34 +00:00
Miao Wang a9fed83fae Update RenderScript build config and definitions.
Bug: 38342163

  - obj/lib is deprecated and TARGET_OUT_INTERMEDIATE_LIBRARIES will be
  removed. We need to use per-module intermediates directory instead.
  - prebuilts/ndk/current folder is gone. For libm and libc, we just
  need ndk/r10 as stub libs for linking.

Test: mm and made sure this does not affect on device target.
Test: make -j50 FORCE_BUILD_RS_COMPAT=true RSTest_Compat works as
expected.

Change-Id: I8fbf5c10322707849a23c6b0dacc28b028db451e
2017-05-26 13:48:08 -07:00
Dan Willemsen 562baccae8 Remove the rest of showcommands, dist goal
showcommands is all handled in soong_ui, make/kati/ninja never see the
argument.

Remove the dist goal, since we'll never pass it to ninja, only to Kati
as a modifier.

Remove DUMP_%, since that's not used anywhere (it appears to be in our
code search via the NDK build system)

Test: m -j showcommands dist
Change-Id: I0d1498128caece685e98c2c2b5b0c3f545da0e11
2017-05-26 12:57:04 -07:00
Dan Willemsen 50ecd4abf2 Merge "Move dataclean and installclean to soong_ui" am: 5d80b734f2 am: 303a902ac6
am: 5851c47ec0

Change-Id: I4b40be30baeb9a8f557c1900fc9e096f2fc0c1b3
2017-05-23 22:48:42 +00:00
Treehugger Robot 5d80b734f2 Merge "Move dataclean and installclean to soong_ui" 2017-05-23 22:32:34 +00:00
Treehugger Robot d5f8deb3ac Merge "Makefile: copy mke2fs.conf to ota root" 2017-05-23 19:45:37 +00:00
Tobias Thierer 5497bc1aaa Merge "Make: Don't rely on presence of tools.jar in toolchain." am: 00e3bd93da am: bf0f0e26d7
am: ca910f5a42

Change-Id: I5172ca890b34a623f9726307b5ce0b778294254a
2017-05-22 09:58:25 +00:00
Tobias Thierer 00e3bd93da Merge "Make: Don't rely on presence of tools.jar in toolchain." 2017-05-22 09:33:31 +00:00
Tobias Thierer 3c4c0b6ab3 Make: Don't rely on presence of tools.jar in toolchain.
Some cts, doclava and javassist code uses private APIs that require
tools.jar to be on the classpath when building with the standard
OpenJDK 8 toolchain. However, OpenJDK 9 toolchains do not have this
file nor require it to be on the classpath. The reliance on the
presence of tools.jar means that AOSP can currently not build on
such toolchains.

After this CL, when EXPERIMENTAL_USE_OPENJDK9 is set, the value of
HOST_JDK_TOOLS_JAR is empty.

That flag can be set via:

export EXPERIMENTAL_USE_OPENJDK9=true

and unset via:

unset EXPERIMENTAL_USE_OPENJDK9

Test: make checkbuild (using OpenJDK 8 toolchain)
Test: manually confirmed that device boots
Bug: 38177295
Change-Id: Icc5451b51e44a574fd21024d434ed1fa8711de17
2017-05-20 14:17:05 +01:00
Steven Moreland 841508562d Merge "Add soong variable for PRODUCT_FULL_TREBLE." am: ec0dec8599 am: 7c318e8914
am: 094743b773

Change-Id: I3e44906669e251241b94029087040bdeab49c662
2017-05-20 00:19:34 +00:00
Steven Moreland 2b32469c47 Add soong variable for PRODUCT_FULL_TREBLE.
Required to preserve sane defaults for old codebases.

Test: inspect soong.variables
Test: ensure PRODUCT_SHIPPING_API_LEVEL is set in config.mk
Bug: 38415912
Change-Id: I0244fb02754663be3106391c9360fd1b2cc00d4a
2017-05-18 17:16:09 -07:00
Dan Willemsen 0f2ab46038 Move dataclean and installclean to soong_ui
This can be a little faster, but also means that we don't need to call
kati/ninja twice when we need to handle the automatic installclean.

Test: m -j installclean
Test: m -j dataclean
Change-Id: I8f5e5544bcf30c58bf9abee30a37256cb18436ac
2017-05-18 13:42:40 -07:00
Jin Qian 3bac9b132e Makefile: copy mke2fs.conf to ota root
Bug: 34947454
Change-Id: I99999c4f56df295c0bb028daf3dcc0898176c5ed
(cherry picked from commit 53524b5da9)
2017-05-16 17:33:22 -07:00
Alan Leung 1f5a362c97 Merge "Allows DX alternative Jar." am: 26d769ea3f am: 16168c016d
am: 5065fe2130

Change-Id: I6763da75914cd41c1bf3f78593c276c171401d0b
2017-05-16 22:05:53 +00:00
Treehugger Robot 26d769ea3f Merge "Allows DX alternative Jar." 2017-05-16 21:50:49 +00:00
Alan Leung 83857b6cbd Allows DX alternative Jar.
Test: m -j20 ANDROID_COMPILE_WITH_JACK=false DX_ALT_JAR=/mnt/m02/dx_alt.jar

Change-Id: I6163280101ff973bc8202a82d2fed42cf0ce6209
(cherry picked from commit b147846b67)
2017-05-16 13:34:42 -07:00
Dan Willemsen e74e77fe01 Merge changes from topics 'soong_ui_installclean', 'soong_ui_version', 'soong_ui_clean' am: 212c418ee7 am: 39187e8882
am: c6f9429171

Change-Id: Iedcb0edf8d51ac18ddbfaa25e36e2a6a25299912
2017-05-16 18:16:39 +00:00
Dan Willemsen bd8ac3284d Move clean/clobber to soong_ui
So that we don't have to load up all the makefile state just to remove
the output directory.

Starting from a completely empty out directory:
 kati:    16s
 soong_ui: 2.0s

From a minimal out directory (m -j blueprint_tools):
 kati:     3.8s
 soong_ui: 0.4s

Test: m -j clean
Test: m -j clobber
Change-Id: Iec1ce032c7cc7ed102430080e857fc421b66309c
2017-05-15 14:02:38 -07:00
Jeff Sharkey 7c39b2d866 Merge "Define paths for new "-exactApi" output files." into oc-dev
am: e90119fd4b

Change-Id: I73bcd067244077cba67aa268c7419c3377a8aabd
2017-05-10 16:03:57 +00:00
Jeff Sharkey e1d620e8a1 Define paths for new "-exactApi" output files.
This new feature creates files with exactly the annotated APIs
instead of a giant superset.  (This makes it easier to compare diffs
between releases.)

Test: make update-api && make -j32 online-system-api-sdk-docs
Bug: 38146029
Change-Id: Ia7ddac43a0ead380025e248ee22072e11c50e263
2017-05-09 19:03:04 -06:00