Commit Graph

622 Commits

Author SHA1 Message Date
Neil Fuller c5c60e2c2a am f7ce9508: am 4dfda1fa: Merge "Remove Java 6 build support"
* commit 'f7ce9508dec85c67d3a2ebe84db073a01355eba5':
  Remove Java 6 build support
2014-10-29 17:11:24 +00:00
Neil Fuller acd65c7db0 am 97ef1d46: Merge "Add OpenJDK 8 experimental support"
* commit '97ef1d46cdae3776e49900b2ed92748f6127bbb0':
  Add OpenJDK 8 experimental support
2014-10-28 04:50:49 +00:00
Ying Wang 83cd45517d Store symbols.zip in apps_only build. automerge: a60fb49
automerge: a73b611

* commit 'a73b611e6b2a626b144170f15509e02f3318976e':
  Store symbols.zip in apps_only build.
2014-10-28 03:36:22 +00:00
Ying Wang a60fb49704 Store symbols.zip in apps_only build.
Bug: 18103055
Change-Id: I0eb335e944138b0edc3050d19c076891f499a07c
2014-10-27 17:57:11 +00:00
Neil Fuller f7ce9508de am 4dfda1fa: Merge "Remove Java 6 build support"
* commit '4dfda1fa4201e41022396b77054168ffc73b590c':
  Remove Java 6 build support
2014-10-24 20:18:15 +00:00
Neil Fuller 960f22c11d Add OpenJDK 8 experimental support
Targeting 1.7: just adding support for the tools.

Various issues exist with OpenJDK 8: it doesn't build to completion
yet.

Change-Id: I54942f497264234e4bef488c8d17d243b4ef2f14
2014-10-23 14:07:29 +01:00
Neil Fuller 46e00ea4ba Remove Java 6 build support
Change-Id: I9754844af58e3f81d7eb9dae286128d17a2cb56c
2014-10-22 10:53:59 +01:00
Andreas Gampe ec70fdaa35 am d8a89a88: am c776f063: Merge "Build: Do not set interpreted mode for SDK build" into lmp-dev
* commit 'd8a89a8847897dd3c0a2b05dcc09c6f3ccc44c8f':
  Build: Do not set interpreted mode for SDK build
2014-10-04 15:45:06 +00:00
Andreas Gampe 783e667b2a am c776f063: Merge "Build: Do not set interpreted mode for SDK build" into lmp-dev
* commit 'c776f06379929f1e1b9d1f4bb0749faf36e19670':
  Build: Do not set interpreted mode for SDK build
2014-10-03 22:25:17 +00:00
Andreas Gampe 2abc44c2fe Build: Do not set interpreted mode for SDK build
In case of emulator images created for an sdk build (sdk, win_sdk,
sdk_addon), do not set dex2oat to compile apps interpret-only.

Bug: 17796919

Change-Id: I6961aa20fd3b6ea164a1f55321387e84c8983550
2014-10-03 13:46:24 -07:00
Brian Carlstrom 4d0595b596 am 8c444b61: am b97b1e59: Merge "Enable dalvik.vm.lockprof.threshold on eng builds in addition to userdebug"
* commit '8c444b61b3d3fab99f9bd617a8d7705c81e8da7a':
  Enable dalvik.vm.lockprof.threshold on eng builds in addition to userdebug
2014-09-19 22:01:46 +00:00
Brian Carlstrom da51aa7a13 am 8c444b61: am b97b1e59: Merge "Enable dalvik.vm.lockprof.threshold on eng builds in addition to userdebug"
* commit '8c444b61b3d3fab99f9bd617a8d7705c81e8da7a':
  Enable dalvik.vm.lockprof.threshold on eng builds in addition to userdebug
2014-09-19 22:01:42 +00:00
Brian Carlstrom 85d56eba99 Enable dalvik.vm.lockprof.threshold on eng builds in addition to userdebug
Bug: 17572009
Change-Id: I0cfc1aa2dd93a8dac21d23d813801c74ed37079a
2014-09-19 11:30:27 -07:00
Calin Juravle 371acf350f am e8892aa4: Merge "Push ISA features into system properties" into lmp-dev
* commit 'e8892aa4ec043fa86fe6c0dbe58f8586fd636bcd':
  Push ISA features into system properties
2014-08-26 17:57:11 +00:00
Calin Juravle 68b246401d Push ISA features into system properties
We need to know instruction set featues at runtime as well so that the
apps get compiled on target with the proper features. The properties are
read by installd and passed to dex2oat.

Bug: 16716262

(cherry picked from commit 28be9d8884)

Change-Id: I45b363558dea17e9b049e4a83a55990b4911d9d8
2014-08-26 18:47:44 +01:00
Calin Juravle 28be9d8884 Push ISA features into system properties
We need to know instruction set featues at runtime as well so that the
apps get compiled on target with the proper features. The properties are
read by installd and passed to dex2oat.

Bug: 16716262
Change-Id: Ia73f2055f696880d45a63a0d6e0ee98d37a01113
2014-08-26 18:05:52 +01:00
Brian Carlstrom cced082f5d Move from dalvik.vm.image-dex2oat-flags to dalvik.vm.dex2oat-filter [build]
This will allow us to conditionally change the compiler-filter based on other properties.

Bug: 15165413

(cherry picked from commit 4d30e5e260)

Change-Id: I84e8038c6536291e6775f39b33556b8169fdf292
2014-08-06 17:50:39 -07:00
Brian Carlstrom 479eca858c resolved conflicts for merge of 9b80095e to lmp-dev-plus-aosp
Change-Id: Id37b96441818c5542b8c340f968183162a47191a
2014-08-04 12:21:46 -07:00
Brian Carlstrom 4d30e5e260 Move from dalvik.vm.image-dex2oat-flags to dalvik.vm.dex2oat-filter [build]
This will allow us to conditionally change the compiler-filter based on other properties.

Bug: 15165413
Change-Id: Ie3f9292d35e9d4abf93271b7d22b72d185ee5ce2
2014-07-30 15:57:16 -07:00
Ying Wang 495630f653 Don't fail the build for dangling module names.
Change-Id: I939253552e7ca6a672f662ae6be3eac41f5bab41
2014-07-30 10:20:56 -07:00
Ying Wang 06940df713 resolved conflicts for merge of ef44fb2d to lmp-dev-plus-aosp
Change-Id: I5551e6b1303f2b37d199a1b894f37c50839fdecc
2014-07-17 14:51:13 -07:00
Ying Wang b2be5ffded Remove linker64 and debuggerd64
We don't have separate *64 module names any more.
Now both 32-bit and 64-bit variants are built under the same module name.

Change-Id: I1956a6a88ec6fe280798be01928239d098dfe27a
2014-07-17 14:01:12 -07:00
Ying Wang 1a9e1b43e9 am daaec135: am 5899ad25: am b00bb2d8: Merge "Resolve :32 to 32-bit variant only if the variant exists."
* commit 'daaec135b4d141335fc1f4e3edf9eb526c9f6954':
  Resolve :32 to 32-bit variant only if the variant exists.
2014-06-24 19:42:46 +00:00
Ying Wang daaec135b4 am 5899ad25: am b00bb2d8: Merge "Resolve :32 to 32-bit variant only if the variant exists."
* commit '5899ad254d3b94653b88e5f0f41f54690f22bd24':
  Resolve :32 to 32-bit variant only if the variant exists.
2014-06-24 19:35:31 +00:00
Ying Wang 7e73eb3f7c Resolve :32 to 32-bit variant only if the variant exists.
Otherwise we just use the original module name.
With this change :32 in 32-bit product configuration will be installed
as expected.

Change-Id: Ibbbf3e8807a17b47f4259c00000a63336bc02f92
2014-06-24 10:22:17 -07:00
Colin Cross a1ac473676 am b110da5f: am 9d8854e3: Merge "build: delete 64-bit blacklist"
* commit 'b110da5f2bf9cf105dd675648075d13c942d1892':
  build: delete 64-bit blacklist
2014-06-18 20:24:56 +00:00
Colin Cross bf2f0c729b am a1ac4736: am b110da5f: am 9d8854e3: Merge "build: delete 64-bit blacklist"
* commit 'a1ac47367636c0473156679f8f30af626df7da85':
  build: delete 64-bit blacklist
2014-06-18 21:40:27 +00:00
Colin Cross ae2986e51a build: delete 64-bit blacklist
The last projects in the blacklist have been fixed, delete the code.

Change-Id: I0fe7809bd18e32516374c9cb2a6f71df1d3c62ee
2014-06-17 21:35:44 -07:00
Ying Wang 0d26882d85 am 2ebf7c1c: am 6b468193: am cc2a47bf: Merge "Check existence of both 64-bit and 32-bit module variants."
* commit '2ebf7c1c5f3e04f13fa7d80dcc5d060306a8a475':
  Check existence of both 64-bit and 32-bit module variants.
2014-06-11 21:37:45 +00:00
Ying Wang 01c4f4622b am dceddd91: am 79b46720: am 02f98a26: Merge "Fix loophole in module expansion."
* commit 'dceddd91d9a6516346e752b9f942747bea931cfa':
  Fix loophole in module expansion.
2014-06-11 20:49:20 +00:00
Ying Wang 2ebf7c1c5f am 6b468193: am cc2a47bf: Merge "Check existence of both 64-bit and 32-bit module variants."
* commit '6b468193536c1925944ccbf6269ee057e080aef4':
  Check existence of both 64-bit and 32-bit module variants.
2014-06-11 02:29:37 +00:00
Ying Wang dceddd91d9 am 79b46720: am 02f98a26: Merge "Fix loophole in module expansion."
* commit '79b46720e606e3db5fff87f672b73613a9a19c69':
  Fix loophole in module expansion.
2014-06-10 22:29:18 +00:00
Ying Wang ff3a904522 Check existence of both 64-bit and 32-bit module variants.
- Do the module name resolving for both host and target modules.
- Check existence of both 64-bit and 32-bit module variants.

Change-Id: I8ada0e734efac6c8dafade8708fff9797b19a78d
2014-06-10 19:23:29 -07:00
Ying Wang e1b867dde7 Fix loophole in module expansion.
Previously we only expanded product_MODULES with LOCAL_REQUIRED_MODULES,
but not modules introduced by LOCAL_SHARED_LIBRARIES; Later we did a further
shared libary expansion in vendor_module_check.mk.
It couldn't track C in the following case:
A : B, by LOCAL_SHARED_LIBRARIES; B : C, by LOCAL_REQUIRED_MODULES.

With this change, we transformed the LOCAL_SHARED_LIBRARIES dependencies
into LOCAL_REQUIRED_MODULES dependencies before doing the required
module expansion and the loophole is closed.
All module names are now expanded to product_MODULES now and it makes
vendor_module_check.mk simpler.

Change-Id: I8835a478d2ce0ce10601a8449f446f07b01c2b7f
2014-06-10 14:30:30 -07:00
Brian Carlstrom c93c03081b am ab6f84e3: am e0df9d95: Merge "Only enable WITH_DEXPREOPT by default for libdvm.so"
* commit 'ab6f84e3d1886237e9516ebe4660d8e1042a6a75':
  Only enable WITH_DEXPREOPT by default for libdvm.so
2014-05-29 21:06:19 +00:00
Brian Carlstrom 3f5ff08dc5 Only enable WITH_DEXPREOPT by default for libdvm.so
Bug: 14298175

(cherry picked from commit 9f8e214a91)

Change-Id: I96ba4e198b7bc1b7d9a502c432590f41c87d05c4
2014-05-29 09:38:04 -07:00
Brian Carlstrom e469ea36ff am 9f8e214a: Only enable WITH_DEXPREOPT by default for libdvm.so
* commit '9f8e214a919097284a88cb19a1b85ceafc202a67':
  Only enable WITH_DEXPREOPT by default for libdvm.so
2014-05-29 16:37:20 +00:00
Brian Carlstrom 9f8e214a91 Only enable WITH_DEXPREOPT by default for libdvm.so
Bug: 14298175
Change-Id: I42255a61667f88924a779fff1812134044c7b6b2
2014-05-28 22:13:07 -07:00
Ying Wang 1dc4f0bace am 2bf10a72: am cdcb6926: am 6cb69bd4: Merge "Add HOST_PREFER_32_BIT to support 32-bit-by-default multilib build"
* commit '2bf10a72f87a8e97923286aa331f7db81e2361ca':
  Add HOST_PREFER_32_BIT to support 32-bit-by-default multilib build
2014-05-23 19:43:57 +00:00
Ying Wang 2bf10a72f8 am cdcb6926: am 6cb69bd4: Merge "Add HOST_PREFER_32_BIT to support 32-bit-by-default multilib build"
* commit 'cdcb6926d40b502ed89a285cdd4d99beb4cf8009':
  Add HOST_PREFER_32_BIT to support 32-bit-by-default multilib build
2014-05-23 17:48:27 +00:00
Ying Wang 9734252ccf Don't build tests in PDK build.
Change-Id: I8994be0938a3ce87a097669c28b232fd04b77a36
2014-05-21 17:45:52 -07:00
Ying Wang c2c368fb76 check build tests modules in eng and userdebug builds
To catch more build breakage, check build tests modules in eng and
userdebug builds.

Change-Id: Ic3b34dcd199e50e555c33eb686a501acef59a8c2
2014-05-21 11:00:57 -07:00
Ying Wang 966c1e0cae Add HOST_PREFER_32_BIT to support 32-bit-by-default multilib build
We already support pure 32-bit and 64-bit-by-default multilib build.
With HOST_PREFER_32_BIT we can build 32-bit-by-default multilib build.
This will be lest disruptive during the period we transition to
64-bit-by-default.

Bug: 13751317
Change-Id: I0d56ce4abbe4afeaacfd70d709f6a349791c0722
2014-05-20 18:03:21 -07:00
Ying Wang 8200231ae1 am e50f2d9f: am 40b49d30: am a74ade94: Merge "Support host multilib build"
* commit 'e50f2d9f32a27d8290692dbf99ab8b247ef9d553':
  Support host multilib build
2014-05-15 01:09:49 +00:00
Ying Wang e50f2d9f32 am 40b49d30: am a74ade94: Merge "Support host multilib build"
* commit '40b49d3043bd41ca5548b99b537038187fdca258':
  Support host multilib build
2014-05-15 00:44:53 +00:00
Ying Wang 6feb6d5607 Support host multilib build
This change basically ported our target multilib to the host side.
It supports 2 host build modes: x86 and x86_64 multilib build.
For now you need to set "BUILD_HOST_64bit=true" to switch to x86_64
multilib build. Later we'll default to x86_64 build and have a flag
to force 32-bit only build, which may be needed by SDK build.

In host module definition, like in target ones, you can use the
following
LOCAL variables to set up multilib configuration:
LOCAL_MULTILIB: can be "both", "first", "32" or "64".
It also supports the same set of arch or 32-vs-64 specific LOCAL
variables.
By default, it builds only for the first arch.

To keep path compatibility, in x86_64 build files are still output to
out/host/linux-x86; Both 32-bit and 64-bit executables are in
out/host/linux-86/bin;
In x86_64 build 32-bit shared libraries are installed to
out/host/linux-x86/lib32
and 64-bit shared libraries are installed to out/host/linux-x86/lib;
32-bit object files are output to out/host/linux-x86/obj32 and 64-bit
object files
are output to out/host/linux-x86/obj.

Bug: 13751317
Change-Id: I6044f83b7db369a33e05209e8c588eb6dc83409f
2014-05-14 16:55:04 -07:00
David 'Digit' Turner edc702c7d6 am 873782cc: am 9e3259f5: am fb67f05d: Merge changes I53b2ada9,I30794ea5
* commit '873782ccd44349c766f5d74e65b3b323618dd6ed':
  Disable emulator from platform builds.
  envsetup.sh: Use prebuilt emulator binaries if available.
2014-05-11 09:28:16 +00:00
David 'Digit' Turner 873782ccd4 am 9e3259f5: am fb67f05d: Merge changes I53b2ada9,I30794ea5
* commit '9e3259f50d6aa2ca4430430d71d2fffd58662650':
  Disable emulator from platform builds.
  envsetup.sh: Use prebuilt emulator binaries if available.
2014-05-11 09:23:35 +00:00
David 'Digit' Turner f6e2694dd2 Disable emulator from platform builds.
Now that emulator prebuilts are available under prebuilts/android-emulator/,
disable building the emulator from source in all platform builds, except
if one defines BUILD_EMULATOR to 'true' in its environment.

NOTE: This patch should be applied after this one to avoid issues
      with the GPU emulation libraries:
            https://android-review.googlesource.com/93980

Change-Id: I53b2ada9ca0c2e159dccee7cdca7f55f6b0d1d42
2014-05-09 15:32:39 +02:00
Ying Wang af3f1a5454 am d6214b31: am 0d4b3df6: Merge "Target "tests" now only builds the modules tagged as "tests""
* commit 'd6214b3161161faf63a60b3ad3f595569a481192':
  Target "tests" now only builds the modules tagged as "tests"
2014-05-09 00:10:43 +00:00
Ying Wang 07b2055d3e Target "tests" now only builds the modules tagged as "tests"
But not install them.
This prevents "make tests" polluting system.img or userdata.img.
We have new mechanism to build and package up modules into zip file in
build/core/tasks/tools.
Change package-modules.mk to install DATA/ instead of data/ in the
zip file; Better handle of module name conflicting.

Bug: 13585955
Change-Id: I7586a8c7995b984c9ead0ba2fa84dd5d2dd20bd1
2014-05-08 17:01:25 -07:00
Ying Wang 151c5060c9 Merge "Target "tests" now only builds the modules tagged as "tests"" 2014-05-08 23:43:31 +00:00
Brian Carlstrom 0e183b2d33 am 676c8f04: am 4ed19f0f: am 1e63c2d1: Merge "Add dalvik.vm.dex2oat-flags for eng build"
* commit '676c8f0450a9dfb84c12257195ba05619aeed970':
  Add dalvik.vm.dex2oat-flags for eng build
2014-05-08 22:00:37 +00:00
Brian Carlstrom 676c8f0450 am 4ed19f0f: am 1e63c2d1: Merge "Add dalvik.vm.dex2oat-flags for eng build"
* commit '4ed19f0f4294544d0447025f0079a9d9e185a495':
  Add dalvik.vm.dex2oat-flags for eng build
2014-05-08 21:57:32 +00:00
Ying Wang 571fee8985 Target "tests" now only builds the modules tagged as "tests"
But not install them.
This prevents "make tests" polluting system.img or userdata.img.
We have new mechanism to build and package up modules into zip file in
build/core/tasks/tools.
Change package-modules.mk to install DATA/ instead of data/ in the
zip file; Better handle of module name conflicting.

Bug: 13585955
Change-Id: I7586a8c7995b984c9ead0ba2fa84dd5d2dd20bd1
2014-05-08 14:52:39 -07:00
Brian Carlstrom fceb115bd6 Add dalvik.vm.dex2oat-flags for eng build
Bug: 12869646
Change-Id: I794320267c846225931f12075c7f32d7848081e9
2014-05-06 20:40:11 -07:00
Ying Wang 51f0d3f58a resolved conflicts for merge of 70555a16 to master
Change-Id: Ibb8ea3159e2a3fa7a70f2359a02c4625812995a8
2014-04-15 13:55:24 -07:00
Ying Wang 70555a1677 am fcd22c88: Merge "Allow to build target-files.zip in sdk build." into klp-modular-dev
* commit 'fcd22c8848b829eec7e661fb270fea1a18bcba28':
  Allow to build target-files.zip in sdk build.
2014-04-15 16:12:26 +00:00
Ying Wang 4709d7c3a5 Allow to build target-files.zip in sdk build.
and put the target-files.zip on the build server.

Bug: 13763122
Change-Id: I71ab6aa40666fdb24ec0da0fbfc7b73753d4f0c7
2014-04-14 17:25:43 -07:00
Alan Viverette 38568b424d Preserve symlinked OUT_DIR by only clearing contents
Change-Id: I824ecd46d7fd31885024ff20cf5cbd52e2cbb713
2014-04-07 18:55:05 -07:00
Ying Wang 821b37d817 am 0df45b08: am 260942fa: Merge "Build with java7 by default."
* commit '0df45b0898710a2e7ddd723fae450ad701a4614d':
  Build with java7 by default.
2014-04-05 01:53:59 +00:00
Narayan Kamath c84889b80a Build with java7 by default.
All introduce a flag LEGACY_USE_JAVA6 to force java6 builds.
This is an unsupported configuration, and provided temporarily
to iron out regressions and compare build output (if required.).

- Increment the version check sequence number.
- Move a more specific check (OpenJDK vs non OpenJDK) after
  the more general version check.
- Update the link in the version check error message to the
  "initializing" page instead of the "download" page. The latter
  talks about repo, mainly.

bug: 8992787

Change-Id: I313e17b1911768d4f3bc318c4162c53dec6eaf0d

Conflicts:
	core/main.mk
2014-04-04 18:44:47 -07:00
Narayan Kamath 422fadcf79 Build with java7 by default.
All introduce a flag LEGACY_USE_JAVA6 to force java6 builds.
This is an unsupported configuration, and provided temporarily
to iron out regressions and compare build output (if required.).

- Increment the version check sequence number.
- Move a more specific check (OpenJDK vs non OpenJDK) after
  the more general version check.
- Update the link in the version check error message to the
  "initializing" page instead of the "download" page. The latter
  talks about repo, mainly.

bug: 8992787

Change-Id: I313e17b1911768d4f3bc318c4162c53dec6eaf0d
2014-04-04 09:55:57 +01:00
Ying Wang 8700eb6049 am 88e1a110: am 680e0370: am 59ff6009: Merge "Unset _JAVA_OPTIONS before running "java -version"."
* commit '88e1a1103acaf5e61fd11a7c006a0c465214ac78':
  Unset _JAVA_OPTIONS before running "java -version".
2014-04-03 08:31:27 +00:00
Ying Wang 88e1a1103a am 680e0370: am 59ff6009: Merge "Unset _JAVA_OPTIONS before running "java -version"."
* commit '680e037007fd0f4207a4734b8fccce17a91ee682':
  Unset _JAVA_OPTIONS before running "java -version".
2014-04-03 01:57:25 +00:00
Ying Wang 8a52b231d2 Unset _JAVA_OPTIONS before running "java -version".
Unfortunately the previous approach of grepping out java version before
"head -n 1" clash with the effort of running "java -version" only once.

Change-Id: Ic78719c3bf1a54a45342d74bbbfa8e83bbc1bce1
2014-04-02 18:15:10 -07:00
Narayan Kamath bfc9b30d36 am 81fc969b: am cf352c5d: Merge "Add warning message for java6 builds."
* commit '81fc969b65fb4cc7dc9f5698aa8c37c657f853ef':
  Add warning message for java6 builds.
2014-04-02 12:26:38 +00:00
Narayan Kamath bee0ec4196 Add warning message for java6 builds.
The instruction URL has been amended and a few additional
details have been added.

(cherry picked from 8c06afdea3)

Change-Id: Icaffc3b13ed881ac7e29f2021ed31eb1f877a5ab
2014-04-02 13:16:15 +01:00
Narayan Kamath 839d2829bc am 35200762: am e28df19e: Merge "Call "java[c] -version" only once"
* commit '35200762980aa2c0f90e73e38af94fd29b50f91f':
  Call "java[c] -version" only once
2014-04-02 10:57:13 +00:00
Narayan Kamath 823f0ba6b8 am 0239220a: am 2f5de9f5: Merge "Bring main.mk in sync with master."
* commit '0239220a67f168fa30703e07750d1f4907dc99bf':
  Bring main.mk in sync with master.
2014-04-02 10:57:13 +00:00
Ying Wang 8d45e51803 Call "java[c] -version" only once
and print out the full output if error occurs.
Bug: 11672548

(cherry picked from 7b66d366bf)

Change-Id: I8e2f2ffa2f28146405273b04667efe3c8d1c03ad
2014-04-02 10:45:17 +00:00
Narayan Kamath d5fb782682 Bring main.mk in sync with master.
These lines were removed in aosp in commit e2d27887b
but a bad merge conflict resolution left them in master.

Subsequent changes on master started using these variables
so they're being brought back.

Change-Id: Ic8f3c295130c47eb0d66057880f9d4f70c89af94
2014-04-01 13:13:13 +01:00
Ying Wang 710e0265bc resolved conflicts for merge of f966bda4 to master
Change-Id: Ic2a16e62c6b9683bd235673e548901381dec9322
2014-03-31 18:17:22 -07:00
Ying Wang f966bda49f am 4714d3d7: am b34af41e: Merge "Fix java version detection when _JAVA_OPTIONS is set."
* commit '4714d3d7a604391d174049a7a595e80ebab2da18':
  Fix java version detection when _JAVA_OPTIONS is set.
2014-04-01 00:15:50 +00:00
Peter Ammon bb406bf4c0 Fix java version detection when _JAVA_OPTIONS is set.
_JAVA_OPTIONS is an environment variable that
can be used to affect the behavior of java and javac.
It is currently required to get Android to build on
some configurations, where the default Java heap size
is too small. Unfortunately, if _JAVA_OPTIONS is set,
both java and javac will output its value to the console
as the first line on every invocation, including trivial
ones like java -version. This will confuse main.mk’s
version detection, which only looks at the first line of
output. Tweak the version detection to run grep before
head, so that the _JAVA_OPTIONS line is filtered by the grep.

Change-Id: I69aee52b56d27711b7d3087ec6b3ebab07ffc3af
2014-03-31 15:36:02 -07:00
Narayan Kamath 9c2daa97e1 Merge "Add warning message for java6 builds." 2014-03-21 10:43:49 +00:00
Ying Wang 81717cc251 am 84fbc7e8: am 996f3826: am c5a56344: am 1c43aaea: Merge "Remove the redundant DISABLE_DEXPREOPT"
* commit '84fbc7e82a0a075c3cc8bb73baa9e6d87fd53aa4':
  Remove the redundant DISABLE_DEXPREOPT
2014-03-20 22:27:16 +00:00
Ying Wang 996f3826f7 am c5a56344: am 1c43aaea: Merge "Remove the redundant DISABLE_DEXPREOPT"
* commit 'c5a563447a68c30dd998b7cd6f8f8c30693edc37':
  Remove the redundant DISABLE_DEXPREOPT
2014-03-20 20:18:38 +00:00
Ying Wang c6848b398d Remove the redundant DISABLE_DEXPREOPT
To disable dexpreopt, use just:
WITH_DEXPREOPT=false

Change-Id: I5804f3774f8ec50eb16c5336776dbce0c28b16d9
2014-03-20 13:01:31 -07:00
Narayan Kamath 8c06afdea3 Add warning message for java6 builds.
Change-Id: If5a402e1412e5adb5340b101854e9fbb4c5d4ec8
2014-03-20 10:35:52 +00:00
Ying Wang 557282dbc4 am 332bbced: am a8d273d3: am bbe5f88e: Merge "Conditionally include the \'samplecode\' rules."
* commit '332bbced6d075eccdf54b00d4178afc59db6f096':
  Conditionally include the 'samplecode' rules.
2014-02-26 20:15:01 +00:00
Ying Wang a8d273d3ce am bbe5f88e: Merge "Conditionally include the \'samplecode\' rules."
* commit 'bbe5f88e1df32d1c998b424eb05ab99cc35c1e8b':
  Conditionally include the 'samplecode' rules.
2014-02-26 20:06:26 +00:00
Ying Wang 48fbc42f93 Conditionally include the 'samplecode' rules.
Not sure goal 'samplecode' is still used by anybody these days.

Change-Id: I808a021a6e4be6a97c4b5c256b94374c1b3dae47
2014-02-26 11:55:38 -08:00
Tsu Chiang Chuang 43d524854a add exception to be able to build emulator_tests in conjunction with the
sdk.

Change-Id: Ic4c63c756c78da97657e08faa5b4b6891b951b03
2014-02-25 10:38:22 -08:00
Ying Wang 6d5ca9f46b am 52cefc36: resolved conflicts for merge of 6ca56b6a to klp-modular-dev-plus-aosp
* commit '52cefc36cf4718cd85e6e35832b2a8674ba9e838':
  Make the module existence check nonfatal
2014-02-18 19:24:39 +00:00
Ying Wang 52cefc36cf resolved conflicts for merge of 6ca56b6a to klp-modular-dev-plus-aosp
Change-Id: I8f647bb5ff9a4de1fbdbfb1dae169e547aeba3ce
2014-02-18 11:17:53 -08:00
Ying Wang b1d75bd81d Make the module existence check nonfatal
Now we have sdk variants that may inherit the non-existent module names
from the device product.

Change-Id: Ibe96a33cde650fd79ae4731561dcb674203c3b91
2014-02-14 13:39:42 -08:00
Ying Wang 1fd8265d1a am 1e8fec5b: am e2f06adb: Merge "Don\'t check the existence for the 64-bit modules for 32-bit SDK build."
* commit '1e8fec5baea381604a2bf197bfb091eeb7aa36ef':
  Don't check the existence for the 64-bit modules for 32-bit SDK build.
2014-02-14 00:15:42 +00:00
Ying Wang 940d68af53 Don't check the existence for the 64-bit modules for 32-bit SDK build.
Change-Id: I0d5d6ecc07332bef6854466fd98380eb12fc08fc
2014-02-13 15:56:34 -08:00
Colin Cross 84a20ac12e am 2c32144b: resolved conflicts for merge of 7cd7bd65 to klp-modular-dev-plus-aosp
* commit '2c32144b328e0191fa32bf342dc7eb01d6174b6e':
  HACK: add 64-bit directory blacklist
  add support for module supported or unsupported target architectures
2014-02-12 23:00:21 +00:00
Ying Wang e6a65a5f15 resolved conflicts for merge of b6d53f0b to master
Change-Id: Id01809e2a72ca8ba13594621690273fc6f982095
2014-02-12 14:58:06 -08:00
Ying Wang 6336d6bf07 am 1968f286: am b12cce10: Merge "Refine module name resolving in multilib build"
* commit '1968f286d69c36692bd5788fa8745ed16ccc03cb':
  Refine module name resolving in multilib build
2014-02-12 22:47:33 +00:00
Colin Cross 02e31d240a HACK: add 64-bit directory blacklist
Change-Id: I431e8b220db81d51930dc0b3d95995df120c179a
2014-02-12 12:17:55 -08:00
Ying Wang bec954d05e Merge "Clean up dangling module names" 2014-02-12 01:31:22 +00:00
Ying Wang d18e570fba Clean up dangling module names
Those modules have disappeared from the source tree.

https://code.google.com/p/android/issues/detail?id=61210

Change-Id: Iab369d2f591f46eb86b9fccf2087515edf974662
2014-02-11 17:28:30 -08:00
Ying Wang 14a6cbd902 Refine module name resolving in multilib build
-- Added TARGET_PREFER_32_BIT, which sets LOCAL_32_BIT_ONLY for an
   executable, if LOCAL_NO_2ND_ARCH is not true.

Name resolving in 64-bit multilib build:
-- Name resolving in PRODUCT_PACKAGES:
   foo:32 resolves to foo_32;
   foo:64 resolves to foo;
   foo resolves to both foo and foo_32 (if foo_32 is defined).

-- Name resolving for LOCAL_REQUIRED_MODULES:
   If a module is built for 2nd arch, its required module resolves to
   32-bit variant, if it exits;
   Otherwise for executable and shared library, a required module
   resolves to the default 64-bit variant; for other module classes,
   required module foo resolves to both foo and foo_32 (if foo_32 is
   defined)

Bug: 12898862
Change-Id: I5fda1a77f58814097b10b5ad2743ee25adfaecc4
2014-02-10 22:39:14 -08:00
Ying Wang fc33037547 Dedup the targets and dependencies of required modules.
For whatever reason, two modules may have the same file as their
installed module. In that case circular dependency is created if the two
modules have requited-by relation.

Change-Id: I15ed271ca3f3c343e4662182ded5ccc63d6c42cc
2014-01-31 19:56:31 -08:00
Ying Wang 3136010cdd Dedup the targets and dependencies of required modules.
For whatever reason, two modules may have the same file as their
installed module. In that case circular dependency is created if the two
modules have requited-by relation.

Change-Id: I15ed271ca3f3c343e4662182ded5ccc63d6c42cc
2014-01-31 19:22:35 -08:00
Ying Wang 4d2cc665ea Set up rules to build shared libraries for TARGET_2ND_ARCH
The rules for the 2nd arch are set up in the second inclusion
of shared_library_internal.mk.
Intermediate fils of libfoo of the 2nd arch will be built into
$(PRODUCT_OUT)/obj_$(TARGET_2ND_ARCH)/SHARED_LIBRARIES/libfoo_intermediates/
and the built libfoo.so will be in
$(PRODUCT_OUT)/obj_$(TARGET_2ND_ARCH)/lib.

Bug: 11654773
Change-Id: I58bbe5a05a65f63bce6279131552f3792000716e
2014-01-24 13:35:30 -08:00
Brian Carlstrom 0cf57dc99f Add missing paren in "java -version" check
Change-Id: Id66e795423e8d25b48ac996956748a93060ea5db
2014-01-20 23:48:45 -08:00
Ying Wang 791fa6a909 Set up rules to build shared libraries for TARGET_2ND_ARCH
The rules for the 2nd arch are set up in the second inclusion
of shared_library_internal.mk.
Intermediate fils of libfoo of the 2nd arch will be built into
$(PRODUCT_OUT)/obj_$(TARGET_2ND_ARCH)/SHARED_LIBRARIES/libfoo_intermediates/
and the built libfoo.so will be in
$(PRODUCT_OUT)/obj_$(TARGET_2ND_ARCH)/lib.

Bug: 11654773
Change-Id: I58bbe5a05a65f63bce6279131552f3792000716e
2014-01-16 15:43:47 -08:00
Narayan Kamath 1d755aaa7b resolved conflicts for merge of 6835cbf9 to master
Change-Id: I21593edf5f597bc79ff91b756bdaf6921b05cba7
2013-12-06 17:31:38 +00:00
Narayan Kamath e2d27887be A few more Java7 related clean ups.
- Separate SDK checking from version checking and
  make messages clearer.
- Add explicit source & target versions for javac to
  make things clearer.
- Rename flag from EXPERIMENTAL_USE_JAVA7_OPENJDK to
  EXPERIMENTAL_USE_JAVA7.
- Allow Oracle JDK 1.7 to be used on Mac OS, since there's
  no official OpenJDK support for that platform.

Change-Id: I454d2c917ed78f03ec7559a99659fefe7e7d50f3
2013-12-05 13:23:06 +00:00
Ying Wang 13ca2c7f5c am 71e5dd30: am 7a772619: Merge "core: support make 4.00"
* commit '71e5dd3055dc6a441ce20f0905f1b3893f79d27e':
  core: support make 4.00
2013-12-02 23:31:44 +00:00
Ying Wang 7a77261988 Merge "core: support make 4.00" 2013-12-02 19:16:02 +00:00
Ying Wang ad69099131 Add experimental flag to support OpenJDK builds.
bug: 8992787

(cherry picked from commit d1dbe7f5a2)

Change-Id: Ie977d4f26ae8d3eee9d7b9cf2c0c270bee5b54b3
2013-11-26 10:30:14 +00:00
The Android Open Source Project b9041a45b1 Merge commit 'c73341006286c391ae4d268a77f5e008045d5308' into HEAD
Change-Id: I4bf7d32d65e19dfa1f0533fdd3b2295c50b13005
2013-11-22 11:06:11 -08:00
Ying Wang 7b66d366bf Call "java[c] -version" only once
and print out the full output if error occurs.
Bug: 11672548

Change-Id: Iba217789f7ab69d73902a4dc82e8975b2f6a48fc
2013-11-13 15:05:15 -08:00
Elliott Hughes 2773ab94d7 am 36e681b0: resolved conflicts for merge of 12f87a5b to klp-dev-plus-aosp
* commit '36e681b02a7cd2554f038bcac65d7fdfc7889273':
  Remove the hacks needed to support ash and mksh concurrently.
2013-11-07 09:44:31 -08:00
Elliott Hughes 36e681b02a resolved conflicts for merge of 12f87a5b to klp-dev-plus-aosp
Change-Id: I8ce0a86bbaae0c1e3ce5ed46de628ea22ea17d16
2013-11-07 09:08:00 -08:00
Elliott Hughes 12f87a5b77 am a05365ce: Merge "Remove the hacks needed to support ash and mksh concurrently."
* commit 'a05365ceceaead86651f61f7ba66153e36b7be5d':
  Remove the hacks needed to support ash and mksh concurrently.
2013-11-07 08:35:17 -08:00
Elliott Hughes 32bfd70333 Remove the hacks needed to support ash and mksh concurrently.
We no longer have ash, and we'd rather not have unnecessary symbolic links
on the system.

Change-Id: Icfb1a51f1baaf1861c203f6ed93843b094deb65d
2013-11-05 11:13:49 -08:00
Ying Wang d1dbe7f5a2 Add experimental flag to support OpenJDK builds.
bug: 8992787

Change-Id: Ice0fc7dea1d855914fdab9a01b1ac9c722031288
2013-10-28 19:09:28 +00:00
synergydev 2b537262fe core: support make 4.00
Make 4.00 is now out, and builds work fine with it.

Change-Id: I49e36d651a7997a52270badb0e8badd975f64e8f
2013-10-17 12:49:07 -07:00
Mike Lockwood 253555b5e3 "make dist" should not try to package apps for embedded builds
Change-Id: Icbe522737f7b8a44c8a458b32678fe0472b94dff
2013-10-02 07:51:11 -07:00
Ying Wang 293ad10d25 Remove unnecessary dependencies between host and target modules.
With this change, modules introduced by LOCAL_REQUIRED_MODULES will be
split by host/target: target modules only depend on target modules and
host modules only depend on host modules.

Bug: 9303948
Change-Id: I4078a7983aa3c00e99534f3f170dfe4b66b12287
2013-09-18 09:01:03 -07:00
Ying Wang 20ef354e8c Load the ONE_SHOT_MAKEFILE even in dont_bother mode
This makes "mmm <path> snod" work again.
Note that snod has dependency on the rest of the command line goals,
which is all_modules for ONE_SHOT_MAKEFILE,
so build race condition is avoided.

Change-Id: Ib0c0e622530cde773180a095e5ec4dde1149b8e5
2013-09-09 12:13:25 -07:00
Ying Wang 39e08f2827 Delete dead code.
frameworks/policies/base/PolicyConfig.mk does no longer exist.

Change-Id: I34d4820bc7c1e19ac84095f5f2caf6aefdfe1bd3
2013-09-09 11:35:42 -07:00
Ying Wang 495f684024 In apps_only build dist a module only if it has a BUILT file.
This allows you to specify a PHONY target in TARGET_BUILD_APPS.

Change-Id: Idd813cd0dbdb14c705fbd3187596d4c64b99d045
2013-08-27 15:04:57 -07:00
Ying Wang 62c81f821f Collect NOTICE files for apps_only build.
In apps_only build (after running tapas or exporting TARGET_BUILD_APPS),
run "make notice_files" to collect and combine the NOTICE files of
modules that are needed by the apps.

Bug: 10445634
Change-Id: I6555bba1104e43b48c723c82143c46d444a75e80
2013-08-24 13:55:59 -07:00
Ying Wang b6cf5b2f41 am b88ca53a: am ddce2eb0: am de32713f: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit 'b88ca53a465ef004a60ceb9c4c641c3c997edeb5':
  Collect and store proguard obfuscation dictionary files.
2013-08-23 12:19:48 -07:00
Ying Wang ae9115a525 Collect and store proguard obfuscation dictionary files.
Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.

Bug: 9407666
Change-Id: I51c78bf0f42f959dc920de230e60e0f71ed0d0ea
2013-08-23 12:13:24 -07:00
Ying Wang c3e977acf1 am 2363485c: am 06de9f94: am 8709497e: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
* commit '2363485c2fb3f08d36e8cdbb2240b9c3993b470c':
  Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:17:47 -07:00
Ying Wang 58ad70618d am 93b95dc4: am aa87a11d: am afd7457a: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
* commit '93b95dc4b9f9b4e04e8a0fac25c958d5c52266e4':
  Collect and store proguard obfuscation dictionary files.
2013-08-23 10:12:26 -07:00
Ying Wang df8b48449a Revert "Collect and store proguard obfuscation dictionary files."
This reverts commit 41dbe1e535.

Change-Id: I023594779128083b75a069fd860cd29dd7951ef5
2013-08-23 17:11:18 +00:00
Ying Wang 41dbe1e535 Collect and store proguard obfuscation dictionary files.
Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.

Bug: 9407666
Change-Id: I0324eed6bb236abb0d3725f8d2a0b6c5c31935fe
2013-08-22 20:54:31 -07:00
Ying Wang a7deb0857c Add phony goal GET-INSTALL-PATH
It can be used as a goal of mm/mmm.
It prints out modules' install paths, which can be used by the runtest
utility.

Change-Id: If113e4c990b672acbacf723104583c0157d43c3b
2013-08-16 13:24:47 -07:00
Ying Wang ad7fd29b31 Don't bother going through the source tree
Don't bother going through the source tree in more circumstances:
all cleaning goals, helping goals, no-deps goals.

Bug: 10244578
Change-Id: Id53a249085c62838e4193962a85e0ac34f46954f
2013-08-09 10:08:30 -07:00
Ying Wang 16b92edc38 Remove unnecessary dependencies between host and target modules.
With this change, modules introduced by LOCAL_REQUIRED_MODULES will be
split by host/target: target modules only depend on target modules and
host modules only depend on host modules.

Bug: 9303948
Change-Id: I4078a7983aa3c00e99534f3f170dfe4b66b12287
2013-07-31 20:00:45 -07:00
Ying Wang 172f5f5746 More verbose on what the build system is doing
Sometimes users get confused for long time of no message printed to the
screen.

Change-Id: I99d3b2954f3dcba47d5ee5dd9fd760578c0e0192
2013-07-31 12:22:57 -07:00
Ying Wang 54d9cc3fac am cd9cadbc: am 7768c91c: am 94de1eba: Put a copy of the radio/bootloader files in the dist dir.
* commit 'cd9cadbcf68bfe07ac994e61aa00969572ae3fd5':
  Put a copy of the radio/bootloader files in the dist dir.
2013-07-26 13:00:20 -07:00
Ying Wang 94de1eba0e Put a copy of the radio/bootloader files in the dist dir.
Bug: 10035750
Change-Id: I3b51e61ec737899d9264885a1e66c89a7a740d54
2013-07-26 12:19:20 -07:00
JP Abgrall 1390cac3ce core: don't hardcode "out" during findleaves.py invocations.
"out" can be $OUT_DIR

Bug: 7183057
Change-Id: I7b52d40de4398f481e47f6d6d719fb550d874f73
2013-07-11 19:08:06 -07:00
Ying Wang fcec57a116 Allow to run checkbuild in sdk build.
Bug: 9594464
Change-Id: Ia02e7d8fc157cdfe2e065ce9e42a3800457f89f6
2013-06-26 18:00:17 -07:00
Ying Wang 951e0f1e8d am fe365531: am 1e1241ce: Dist static Java library modules.
* commit 'fe365531b0ee363640fb50d5a230c0b999fbbe4d':
  Dist static Java library modules.
2013-06-12 15:41:57 -07:00
Ying Wang 1e1241ce3d Dist static Java library modules.
With this change, we can build and dist static jar files, as well as
apks.

Bug: 9386024
Change-Id: Iab4660d8dfd7a2d164714a2124445de298075901
2013-06-12 15:29:38 -07:00
Ying Wang d72db32f84 Remove unnecessary dependencies between host and target modules.
With this change, modules introduced by LOCAL_REQUIRED_MODULES will be
split by host/target: target modules only depend on target modules and
host modules only depend on host modules.

Bug: 9303948
Change-Id: I4078a7983aa3c00e99534f3f170dfe4b66b12287
2013-06-06 18:05:53 -07:00
Ying Wang 237770761f am 8150cfcb: am 9592af96: Merge "Do vendor check on modules installed by LOCAL_SHARED_LIBRARIES" into jb-mr2-dev
* commit '8150cfcb209dfb6ad86413cf3d4373d074f54062':
  Do vendor check on modules installed by LOCAL_SHARED_LIBRARIES
2013-04-16 09:02:55 -07:00
Ying Wang d6b1d61d84 Do vendor check on modules installed by LOCAL_SHARED_LIBRARIES
Since commit 6c86a1 we have split LOCAL_SHARED_LIBRARIES out of
LOCAL_REQUIRED_MODULES and the vendor check does no longer cover the
installed modules introduced by LOCAL_SHARED_LIBRARIES.
This change brings back the coverage.

Change-Id: Ie78692e48f173a3350792eb2fee8127ff9433caa
2013-04-15 17:41:55 -07:00
Ying Wang b036e955fc Allow to set BUILD_EMULATOR outside the core build system.
For example, you can set it as enviromental variable, command line
makefile variable, or board config variable.

Change-Id: I5a4dbb70270cb4952109b5d96fbbf61eb2603502
2013-04-12 14:14:36 -07:00
Ying Wang a0febe5e6d Support to build vendor.img
Bug: 8341435
Change-Id: I2db7970936984d38aed35054e3f695d298f4e512
2013-03-25 09:53:16 -07:00
Raphael Moll cdfb5bac3a resolved conflicts for merge of a3aea5b6 to jb-mr2-dev
Change-Id: I4ff0adb3f9d9b5ae293c4903569e871ac5f2e9ae
2013-03-14 12:42:04 -07:00
Raphael Moll 8a2b7707dd Build SDK using prebuilts/devtools.
Cleans up some unused/renamed files:
- sdk_only_whitelist is better named windows_sdk_whitelist.
- a few product.mk dependencies should not be listed here
  any more but in the sdk/product.mk instead (which they were.)

Change-Id: Ifad3049321c8ec4edd8b94b83e570eebba442e7d
2013-03-13 15:30:35 -07:00
Ying Wang 512b9628b0 Remove nonexisting module names.
Change-Id: I825de45f1b982e4aa391b11bf18ba90432272fa7
2013-03-07 18:29:56 -08:00
Ying Wang 2e65cd5510 Don't install all host modules by default.
Instead we should explicitly set up the dependency, if the module will
be used in the build process; Use LOCAL_MODULE_TAGS with eng, debug or
tests if the module is for testing; or add to PRODUCT_PACKAGES if it's
required by a product.

Change-Id: Ic26319c26c1166bc1062dfbcfb4e006af185249a
2013-03-06 11:47:36 -08:00
Ying Wang 534fcd766e Allow to call dist-for-goals multiple times for the same file
You can dist the same file for multiple goals in multiple calls to
dist-for-goals. The first call will establish the real copy rule, while
the rest call just establishes the goals' dependency on the dest file.
This enable uss to remove the bizarre $(if ..) enclosing the droid and
sdk dist while avoiding make's multiple rules warning.

Change-Id: I76475db76a9e6167e0e606dd582b54e80dfcdd22
2013-03-01 16:51:26 -08:00
Jean-Baptiste Queru 4dbbd8a37e am 757e212c: am 0426da29: Merge "Fixed error message for using OpenJDK."
* commit '757e212ca2eb5584efb1631c3b26241ffb06e3c6':
  Fixed error message for using OpenJDK.
2013-02-25 21:21:03 +00:00
Tim Roes 304f5194fd Fixed error message for using OpenJDK.
Output a meaningful error message, when OpenJDK is detected
instead of giving the "wrong java version" output.
That output confused several users (from experiences in IRC)
since it gives you an output like "You are using java
version 1.6.0, right version would be Java SE 1.6".

Change-Id: I31ceeb03f1f98524b2b7de9b8be45231985fdb9e
Signed-off-by: Tim Roes <tim.roes88@googlemail.com>
2013-02-23 20:25:00 +01:00
Ying Wang 50e52fa11e Don't run cleanspecs if you are using mm/mmm.
There is lurky bug in the previous logic I believe:
in rare cases, people saw almost all cleansteps rerun.
Anyway, it's very rare that you need to run cleansteps when you run mm/mmm.

Change-Id: I42e84b3bf01590712ba1b167fe9a500f4ae1ddde
2013-02-22 18:15:29 -08:00
Ying Wang 9485a57bb2 Untwist the target/host shared library dependencies.
Before this, if there are duplicate module names in both the host and
target spaces, LOCAL_SHARED_LIBRARIES results in mixed dependencies.

Bug: 7026946
Change-Id: I5407e3d078a8903c94978cc6d3e256851c52340f
2013-02-22 14:32:30 -08:00