Commit Graph

14115 Commits

Author SHA1 Message Date
Dan Willemsen
cd4d0d4cc3 Merge changes I7b2fc184,I71f6fcaf
am: ea655a138f

Change-Id: Icd7c2390a0a35777bda0a93af534d6a4254fff9b
2017-10-02 20:46:14 +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
4d99527dcd Move generated aidl/logtags java classes to a subfolder
So that they can't be generated into src/, which would be added to the
source list automatically.

Bug: 36698184
Test: m telephony-common without this change, pass
Test: m telephony-common without the cleanspec, fail with dup class
Test: m telephony-common with the cleanspec, pass
Change-Id: I7b2fc1847d52ff4a9ba8c69e76123fe152629ef8
2017-09-29 20:36:50 -07:00
Dan Willemsen
ba9b0fbc05 Fix multiple output file generation for AAPT2
Make R.stamp actually part of the same rule that creates R.java.
Otherwise if the generated sources directory is removed, we don't
regenerate R.java / Manifest.java.

Also move the package-export.apk and proguard options file into the same
rule.

Test: m telephony-common; rm out/target/common/obj/*/*_intermediates/src; m telephony-common
Change-Id: I71f6fcaf20593ca23271d52d15537aaa9ef4cc77
2017-09-29 20:35:32 -07:00
Colin Cross
bf7020608f Merge "Respect LOCAL_MIN_SDK_VERSION for dx"
am: a426e0e974

Change-Id: I2a4d370f7788365d5f87dc58490e4979363b6a5e
2017-09-29 20:17:59 +00:00
Colin Cross
9deb331f20 Respect LOCAL_MIN_SDK_VERSION for dx
Follow Jack's behavior for now and pass LOCAL_MIN_SDK_VERSION to
dx.  Don't pass it to desugar for now, desugar with low
--min_sdk_version numbers enables features we haven't verified
yet, and existing apps won't be using the new language features
that require extra desugaring.

Test: examine classes.dex from an app with LOCAL_MIN_SDK_VERSION
Change-Id: Ic7d679b1b11fba98a33418a4f79d4762a91f1f9c
2017-09-28 21:40:35 -07:00
Colin Cross
56294539dc Merge "Disable jack completely"
am: 480ee2e58c

Change-Id: I72f0d856228dc5b68e5f581802d5a64f9c814255
2017-09-28 00:40:05 +00:00
Treehugger Robot
480ee2e58c Merge "Disable jack completely" 2017-09-28 00:34:50 +00:00
Colin Cross
6684528a6d Disable jack completely
Always set ANDROID_COMPILE_WITH_JACK=false.

Bug: 65302138
Test: m -j checkbuild
Change-Id: I98dfdca27b4338048d50e016a79fbf4e3d86a020
2017-09-27 13:17:59 -07:00
Dan Willemsen
c8e3f1e0d8 Merge "Add -lm to the default libs for Linux & Darwin"
am: 5118763940

Change-Id: I8685d42c742db41d186176346254833249cd0d59
2017-09-27 07:13:58 +00:00
Treehugger Robot
5118763940 Merge "Add -lm to the default libs for Linux & Darwin" 2017-09-27 07:08:57 +00:00
Dan Willemsen
a8fd8de638 Merge "Check available host libraries"
am: b643f2caec

Change-Id: I1edbd953ad6114d4276ecb676e85d73d7657d8ac
2017-09-27 03:57:43 +00:00
Treehugger Robot
b643f2caec Merge "Check available host libraries" 2017-09-27 03:50:45 +00:00
Colin Cross
a938462068 Merge "Switch from jack to javac for unbundled builds"
am: 355de0a00d

Change-Id: Ib281dd853420430e4e06fb0144b727e9a029be86
2017-09-27 03:33:31 +00:00
Colin Cross
355de0a00d Merge "Switch from jack to javac for unbundled builds" 2017-09-27 03:26:13 +00:00
Dan Willemsen
a3a06feeed Add -lm to the default libs for Linux & Darwin
libm is a default library for device builds, so default it for host
builds as well.

Also removes duplicate additions of -ldl, -lpthread, -lm and -lrt.

Test: m host
Change-Id: I6a07e12053090eb6997b79d4091c28ac9a9022de
2017-09-26 20:26:11 -07:00
Colin Cross
2c717745b2 Merge changes I06179fca,Ie48746c8,Ia47ebc95
am: b182ea7bcb

Change-Id: Iab7d8000f1f7bb1b8d5b63c4a4a1720b35558725
2017-09-27 02:43:56 +00:00
Treehugger Robot
b182ea7bcb Merge changes I06179fca,Ie48746c8,Ia47ebc95
* changes:
  Disable turbine for unbundled builds
  Allow disabling turbine
  Simplify the *-lib-* functions
2017-09-27 02:36:24 +00:00
Colin Cross
5601842176 Disable turbine for unbundled builds
We don't yet have a turbine prebuilt, so disable turbine for
unbundled builds for now.

Test: none
Change-Id: I06179fca1764a86e387c8bd154ae052e2669d15b
2017-09-26 17:39:01 -07:00
Colin Cross
7dc9043546 Allow disabling turbine
m -j TURBINE_ENABLED=false will build without turbine.  This is
primarily useful for A/B comparisions of turbine builds, but will
also be used to temporarily disable turbine for unbundled builds
until we have turbine prebuilts.

Bug: 64308460
Test: m -j TURBINE_ENABLED=false java
Test: m -j java
Change-Id: Ie48746c8bfc60c361be9634cb1805ca1c09aa1fe
2017-09-26 16:23:00 -07:00
Colin Cross
9b2e4c6950 Simplify the *-lib-* functions
Simplify the java-lib-* type functions, three layers of abstraction
is a bit much for a single line function, and isn't reducing enough
duplication to be worth the complexity.

Add app-lib-* functions and use them.

Test: m -j checkbuild
Change-Id: Ia47ebc95e4af2073396233416f14fdee7d856844
2017-09-26 16:23:00 -07:00
Dan Willemsen
13c0785b09 Merge "Only define proguard dictionary as output if obfuscating"
am: 96a782f1ea

Change-Id: I1928c25cda47679030c06d24bc63d8d7f5024329
2017-09-26 21:52:10 +00:00
Treehugger Robot
96a782f1ea Merge "Only define proguard dictionary as output if obfuscating" 2017-09-26 21:45:28 +00:00
Dan Willemsen
bdd6a756d1 Only define proguard dictionary as output if obfuscating
If we're not obfuscating, proguard doesn't generate the mapping file,
and ninja will consider the edge dirty, since one of the output files
does not exist.

Also disable it for jack, since jack writes to a different file.

Bug: 66929996
Test: m cts; m cts
Test: m ahat-test with a clean build
Change-Id: Iff6707c44cbd86cd9328bbad8322398bc9d960fd
2017-09-26 13:01:49 -07:00
Colin Cross
e69ccc7fb6 Merge changes I0a1aa003,I000c3c22
am: a4a1f2089b

Change-Id: I84d3a5fb255a3b6720f1076429e351fe43510ffe
2017-09-26 18:48:46 +00:00
Treehugger Robot
a4a1f2089b Merge changes I0a1aa003,I000c3c22
* changes:
  Use dx or d8 from prebuilts/build-tools
  Desugar lambdas in javac unbundled builds
2017-09-26 18:29:22 +00:00
Colin Cross
b7665ed25c Merge "Fix unbundled jack builds"
am: fcdbbd0dbf

Change-Id: I88eca5617801e22c4056deef7b3c40f4c1191f53
2017-09-26 09:02:44 +00:00
Treehugger Robot
fcdbbd0dbf Merge "Fix unbundled jack builds" 2017-09-26 08:58:21 +00:00
Bowgo Tsai
4cd430cb3e Merge "Do not remove init.recovery.*.rc in recovery root"
am: f184554771

Change-Id: I73f9681e2af81e2873cf732e2f47d8d547a87e87
2017-09-26 07:32:24 +00:00
Treehugger Robot
f184554771 Merge "Do not remove init.recovery.*.rc in recovery root" 2017-09-26 07:26:50 +00:00
Dan Willemsen
4dbb354514 Check available host libraries
Soong has a list of allowed host libraries. Check that list for make
modules as well.

Test: build/soong/build_test.bash (Linux&Darwin, aosp&internal)
Test: Add bad library in LOCAL_LDLIBS, ensure it errors
Change-Id: Icc48533487576998b049dc6c704c410172a91521
2017-09-26 00:14:01 -07:00
Colin Cross
0a68e5e66f Fix unbundled jack builds
Recent change Icbc8987468f237aa351708b33c3abe5ea3d1816e was
unconditionally adding core-oj and core-libart as the
bootclasspath for all jack compiles, which is incorrect and
was breaking unbundled builds that don't have sources for
core-oj and core-libart.  Only add them when LOCAL_SDK_VERSION
is not set.

Test: unbundled build
Change-Id: I6bab7e36e8178384f13cf9df8183a53fcb4b23f8
2017-09-25 23:47:21 -07:00
Colin Cross
df0c2fd298 Merge changes from topic "bootclasspath_default_libs"
am: e58881ac38

Change-Id: I4af17bc7c0668478cc9027029a05711fa2e2c945
2017-09-26 01:18:41 +00:00
Colin Cross
fa4d9fbfdd Add dependencies on bootclasspath libraries
am: 1d1e5ef61b

Change-Id: Ied184dcd38338e6a7941a36dcc1fb4dce6f5f286
2017-09-26 01:18:30 +00:00
Colin Cross
e0f8317395 Reindent bootclasspath code
am: f6bc1a1ac0

Change-Id: I629bc0508e7d60248d4af9aef15352692e04c2cf
2017-09-26 01:18:20 +00:00
Colin Cross
210e530342 Switch from jack to javac for unbundled builds
Default to ANDROID_COMPILE_WITH_JACK=false when TARGET_BUILD_APPS
is set.

Test: m -j TARGET_BUILD_APPS=Gallery2
Change-Id: Ibd2bdac6c7e2c4e2c6107fd35bd049fc8cb8dafe
2017-09-25 16:15:11 -07: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
Colin Cross
b541aae17c Remove duplication of bootclasspath in LOCAL_JAVA_LIBRARIES
The bootclasspath libraries have direct dependencies now, so
remove them from LOCAL_JAVA_LIBRARIES so they don't also end
up in the classpath.

Test: m -j checkbuild
Test: m -j ANDROID_COMPILE_WITH_JACK=true java
Test: manually inspection of build-${TARGET_PRODUCT}.ninja
      only has expected changes
Test: no changes to system.img
Change-Id: Icbc8987468f237aa351708b33c3abe5ea3d1816e
2017-09-25 16:15:10 -07:00
Colin Cross
1d1e5ef61b Add dependencies on bootclasspath libraries
The libraries in the bootclasspath were getting their dependencies
because they were also in the default libraries list.  Make the
dependencies explicit in preparation for rearranging the default
libraries.

Test: m -j checkbuild
Change-Id: I3ea004714a31cd648ec2ef57ed3099bce70bc6b9
2017-09-25 16:14:42 -07:00
Bowgo Tsai
b5b3bc6d5c Do not remove init.recovery.*.rc in recovery root
When making recovery image, it removes init*.rc under recovery root,
then copies init.recovery.*.rc from normal root to recovery root.

However, init.recovery.*.rc shouldn't exist in normal root because it
is only needed for recovery mode.

This change removes init*.rc under recovery root as before but skips
removing init.recovery.*.rc. So in device/*/*.mk, we can just copy
init.recovery.*.rc to recovery root without coping it to normal root
directory.

Bug: 65570851
Test: normal/recovery boot sailfish, checks init.recovery.sailfish.rc
      only exists in recovery root.
Change-Id: I069596fe2192d9dcbbdf2b77079b93ede3ed39ae
2017-09-25 18:39:22 +08:00
Colin Cross
f6bc1a1ac0 Reindent bootclasspath code
Apply indentation to the bootclasspath selection code.

Test: m -j checkbuild
Change-Id: I5ca15636d34d43f9ebe7264d566d06d8c045b0e3
2017-09-23 19:48:27 -07: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
Colin Cross
cc5e24c1db Merge "Revert "Revert "Support <dir>:<file> for LOCAL_JAVA_RESOURCE_FILES"""
am: cb1e04a11f

Change-Id: I4380ad5ba81879334bf505136acef2fc86a11b48
2017-09-22 22:41:26 +00:00
Colin Cross
cb1e04a11f Merge "Revert "Revert "Support <dir>:<file> for LOCAL_JAVA_RESOURCE_FILES""" 2017-09-22 22:36:43 +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
dee143988e Merge "Remove ijar"
am: 1dcffadbc7

Change-Id: I55b0892905cf67655661f5a15ef3574e9e27db97
2017-09-22 21:30:17 +00:00
Dan Willemsen
1dcffadbc7 Merge "Remove ijar" 2017-09-22 21:23:13 +00:00