Commit Graph

309 Commits

Author SHA1 Message Date
Ying Wang 2f7b92c90a The order of SDK version matters.
Because some places assumes the last item is the latest public SDK
version number.

Change-Id: I0ac83ab204dcabec0b9399db1bebc77322808074
2014-07-21 13:44:06 -07:00
Ying Wang efb935800b Support "LOCAL_SDK_VERSION := system_current"
A module can declare "LOCAL_SDK_VERSION := system_current" to build
against the android system stubs generated from source.
For now this is only supported in platform build.

Change-Id: I1e9bbd159886bc0ea3a02b1dc4cbcb1a56e9cb15
2014-07-19 17:00:50 -07:00
Geremy Condra 740b6636cc Add support for signed boot images. 2014-07-10 14:53:08 -07:00
Ying Wang 829f68bb02 Support to check System API.
Change-Id: I60f8c9bb13efb6a440bb735d634f63fab035c810
2014-06-26 17:54:28 -07:00
Brian Carlstrom b1dafb1804 Switch from core to core-libart
Bug: 14298175
Change-Id: I1db40e7c67322d80a108b2b88e6d2e6d275d7898
2014-06-18 17:42:32 -07:00
Brian Carlstrom 55fa2ea206 resolved conflicts for merge of 8fd9944e to master
Change-Id: I1ceda92267675d4ca460b6f990c0acea4b4812a8
2014-06-18 19:25:30 -07:00
Brian Carlstrom 8fd9944e8f am 32d25fda: am dab766a7: Merge "Switch from core to core-libart"
* commit '32d25fdabfaadc95292b43a29b695d8229333bcf':
  Switch from core to core-libart
2014-06-19 02:17:54 +00:00
JP Abgrall 5bfed5a320 core+tools: support specifying F2FS as the fstype for userdata
- Support TARGET_USERIMAGES_USE_F2FS.
- Support BOARD_USERDATAIMAGE_FILE_SYSTEM_TYPE.
- Support "userdata_fs_type" in the prop dict.
- Update build_image to recognize f2fs and call the correct command.

Change-Id: If31cc8bd235f93a4c7814fab36e6e2d13d3037ad
Signed-off-by: JP Abgrall <jpa@google.com>
2014-06-17 13:32:14 -07:00
Narayan Kamath b60ccd6672 am ae65e2eb: am d73ec26a: Merge "Make default 64-bit primary, 32-bit secondary"
* commit 'ae65e2eb8d5f530d4292a5c70bac113f18900e9d':
  Make default 64-bit primary, 32-bit secondary
2014-06-17 10:05:13 +00:00
Brian Carlstrom d795046319 Make default 64-bit primary, 32-bit secondary
Change-Id: I2613a5072e2778307eebdc95d81f184f748ce9f5
2014-06-16 23:59:43 -07:00
Narayan Kamath 9d62dbc532 resolved conflicts for merge of b60ccd66 to master
Change-Id: I731af090c472d70a6c0627cef87239dc6df91645
2014-06-17 11:11:35 +01:00
Ying Wang 541b1d0f7c am fe9ad097: am b1f65358: am 5ad17493: Merge "Support .asm being compiled by yasm targeted for x86."
* commit 'fe9ad0975ade10219a5fa9a77d034ba77735e393':
  Support .asm being compiled by yasm targeted for x86.
2014-06-11 17:44:54 +00:00
Ying Wang fe9ad0975a am b1f65358: am 5ad17493: Merge "Support .asm being compiled by yasm targeted for x86."
* commit 'b1f65358a8af7548dfb02de281b081fc356881b4':
  Support .asm being compiled by yasm targeted for x86.
2014-06-09 21:51:01 +00:00
Ying Wang 7b913ce6fa Support .asm being compiled by yasm targeted for x86.
Change-Id: Icd6626a082facf920b0e49e2fbe8861e94400552
2014-06-06 11:00:36 -07:00
Colin Cross 949ed75bb9 am 423242b5: am 828b5183: am e45c8607: Merge changes Ibc943b75,Ib4ccf373,I30ff439b,I7bde0130
* commit '423242b59ea01dffbb7f79c7c045528f7c351c4b':
  set a prebuilt directory name for the 2nd arch
  add vendor directories to gdb shared library search path
  add 2nd arch gcc to the path
  fix paths when 2nd arch gcc is a different version
2014-05-22 19:40:46 +00:00
Colin Cross 423242b59e am 828b5183: am e45c8607: Merge changes Ibc943b75,Ib4ccf373,I30ff439b,I7bde0130
* commit '828b518377f69516ea6cbb9ad160d81ced6980d5':
  set a prebuilt directory name for the 2nd arch
  add vendor directories to gdb shared library search path
  add 2nd arch gcc to the path
  fix paths when 2nd arch gcc is a different version
2014-05-22 19:36:15 +00:00
Colin Cross 12d18eb563 set a prebuilt directory name for the 2nd arch
In order to install 32-bit gdbserver on a 64-bit build,
prebuilts/misc/Android.mk needs to know the prebuilt directory name
for the 2nd arch.

Change-Id: Ibc943b758eb9404f7f5f9fbbd8720cc67f6a6f01
2014-05-22 12:01:23 -07:00
Yuncheol Heo 623d706253 Fix the path for findbugs.
Change-Id: I45485f1aeaf7fc3db2839f42829278d8c0ec97e3
2014-05-20 17:13:34 +09:00
Brian Carlstrom 8d422a3a0b am 8074ff4d: am a8355eca: am 64f3a191: Merge "Multilib support for odex"
* commit '8074ff4d0f962a933586b9809d1f1bdffe1fe5ed':
  Multilib support for odex
2014-05-19 17:04:54 +00:00
Brian Carlstrom 8074ff4d0f am a8355eca: am 64f3a191: Merge "Multilib support for odex"
* commit 'a8355ecaadf9a0d052165d0cc14564927eb9a202':
  Multilib support for odex
2014-05-19 16:59:16 +00:00
Brian Carlstrom 64f3a191f9 Merge "Multilib support for odex" 2014-05-19 16:50:17 +00:00
Ying Wang b9aa5d43de Multilib support for odex
If the VM is libart and DEXPREOPT is enabled,
- For a Java library and the boot image, we build for both 1st arch and
  2nd arch.
- For an app, we build for the multilib arch the module is targeted for.
The odex file will be in <arch_name>/<module_name>.odex inside the same
dir where the jar/apk file gets installed.
Nothing changed if it's built for libdvm.

Bug: 14694978
Change-Id: I45118a83758b41d52d6c9e38f93f0ba2775a6c74
2014-05-18 22:04:58 -07:00
Ying Wang 5415835c41 am 5989a051: am 023209b6: am 5ee3f096: Merge "Default TARGET_CPU_SMP to true."
* commit '5989a05130ff3cd4a789afb2fd09e9f03a58bc3c':
  Default TARGET_CPU_SMP to true.
2014-05-17 00:16:07 +00:00
Ying Wang 5989a05130 am 023209b6: am 5ee3f096: Merge "Default TARGET_CPU_SMP to true."
* commit '023209b63ee4be4289b3e07b3c3dc54773523094':
  Default TARGET_CPU_SMP to true.
2014-05-17 00:12:50 +00:00
Ying Wang d450706704 Default TARGET_CPU_SMP to true.
Change-Id: If8c52c8ed66d52452967d09885dfe1ca9da13688
2014-05-16 16:27:11 -07:00
Ying Wang a448430343 am 9e55ed53: am 47316a27: am 5137d458: Merge "Force to build llvm from source in 64-bit host build."
* commit '9e55ed53ef7dfebc759a2494503b19e33b0c47d7':
  Force to build llvm from source in 64-bit host build.
2014-05-16 19:05:40 +00:00
Ying Wang 9e55ed53ef am 47316a27: am 5137d458: Merge "Force to build llvm from source in 64-bit host build."
* commit '47316a27eac94c45e47a26cb52cc5b03753dd24e':
  Force to build llvm from source in 64-bit host build.
2014-05-16 19:02:52 +00:00
Ying Wang 6374153fbf Force to build llvm from source in 64-bit host build.
Bug: 13751317
Change-Id: I4a4150bfe21607eb7a2342bbd8120b431427eee5
2014-05-16 09:37:23 -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
Ying Wang 03ff5c3a58 am 37aacb8a: am 72344a73: am 8012d8f3: Merge "Treat denver like cortex-a15."
* commit '37aacb8a31970197fb62aab3e5978e3bb4b0709b':
  Treat denver like cortex-a15.
2014-05-13 16:43:46 +00:00
Ying Wang 37aacb8a31 am 72344a73: am 8012d8f3: Merge "Treat denver like cortex-a15."
* commit '72344a7329ab984de716b630cb88039d9ed820a0':
  Treat denver like cortex-a15.
2014-05-13 16:38:47 +00:00
Ying Wang fb910ddb1d Treat denver like cortex-a15.
See also build/core/combo/arch/arm/armv7-a-neon.mk.

Change-Id: Ie18e1f133f56a9f7da80e304052c92edad933a31
2014-05-13 09:02:56 -07:00
Ying Wang 80ca4a97e3 am ccd6223f: am ba0bb801: am a16583a0: Merge "Fix windows/mingw build."
* commit 'ccd6223f5658dbc627cfe4827d3d6571107ef616':
  Fix windows/mingw build.
2014-05-06 19:21:35 +00:00
Ying Wang ccd6223f56 am ba0bb801: am a16583a0: Merge "Fix windows/mingw build."
* commit 'ba0bb801c3cfee582e454432e6a0a75491e54236':
  Fix windows/mingw build.
2014-05-06 19:19:15 +00:00
Ying Wang 1401c76c2f Fix windows/mingw build.
Bug: 14446414
Change-Id: I9d12ed8afb6d4d5a09ef9b2844eb193b52b74271
2014-05-06 12:11:09 -07:00
Ying Wang bf145f8805 am bf4cdb49: am c3b2314a: am a37550ed: Merge "Use prebuilt flex."
* commit 'bf4cdb49a3e56b37f8bd2eeeeeb4a72795dcd0a9':
  Use prebuilt flex.
2014-05-06 18:52:06 +00:00
Ying Wang bf4cdb49a3 am c3b2314a: am a37550ed: Merge "Use prebuilt flex."
* commit 'c3b2314a58e8d6f90766db2ef82303bafcefb766':
  Use prebuilt flex.
2014-05-06 18:46:10 +00:00
Ying Wang a37550edd3 Merge "Use prebuilt flex." 2014-05-06 18:41:00 +00:00
Ying Wang fb1236a9a8 Use prebuilt flex.
Bug: 14446414
Change-Id: I07fe8d7f246de853e5bae17286834268e36d260c
2014-05-05 18:34:57 -07:00
Colin Cross 39fef1f420 am 6f916664: am 735628e8: am 2ff8919d: Merge changes I7e809264,I504cea21,Ibd2165e6
* commit '6f9166640a62f694a257a307284ea1c442f66a7b':
  build: add core_64_bit.mk
  build: reverse abi list when TARGET_PREFER_32_BIT_APPS is set
  build: split TARGET_PREFER_32_BIT for apps and executables
2014-05-05 20:22:36 +00:00
Colin Cross 6f9166640a am 735628e8: am 2ff8919d: Merge changes I7e809264,I504cea21,Ibd2165e6
* commit '735628e8d19fae51574bd5057c142db56797a2b0':
  build: add core_64_bit.mk
  build: reverse abi list when TARGET_PREFER_32_BIT_APPS is set
  build: split TARGET_PREFER_32_BIT for apps and executables
2014-05-05 20:18:09 +00:00
Colin Cross 2a4f0ff32f build: reverse abi list when TARGET_PREFER_32_BIT_APPS is set
If the product prefers 32-bit apps signal that preference to
PackageManager by reversing the abi list.

Also uses the absence of TARGET_SUPPORTS_32_BIT_APPS and
TARGET_SUPPORTS_64_BIT_APPS to remove those ABIs from the
ABI list.

Change-Id: I504cea21b6f800a7a9e7706b4a7123d3fb07c383
2014-05-01 10:55:43 -07:00
Colin Cross a3339e98e6 build: split TARGET_PREFER_32_BIT for apps and executables
Introduce two new flags, TARGET_PREFER_32_BIT_APPS and
TARGET_PREFER_32_BIT_EXECUTABLES that individually control
compilation of apps and executables.  If TARGET_PREFER_32_BIT is
set, the build system will automatically set both new flags.

Change-Id: Ibd2165e688675c2884d9e7ddf82d7dd6c28521f3
2014-04-30 18:18:59 -07:00
Colin Cross 477cf2b029 verity: switch to C++ version of build_verity_tree
The C++ version avoids the need to unsparse the image to generate
the verity image, and is much faster for images with large regions
of don't care (treated as zeroes).

Change-Id: I8396b08a5fdb93f27d8c71c9c1ac23cb75cf1f7f
2014-04-28 17:19:13 -07:00
Colin Cross 8a30f72c0c verity: clean up verity build dependencies
Move image dependencies out of PRODUCT_PACKAGES and into direct
dependencies for the image building rules.

Fix the test for PRODUCT_SUPPORTS_VERITY, it needs to check for
the current project as the global is no longer set.

Change-Id: I811501834ae5ec658229bd505fcc48275ff578c9
2014-04-28 17:19:04 -07:00
Ian Rogers 621cefb88a am 29eb3d09: am 9b3fb2c3: am 67c20928: Merge "For 64-bit, use 32-bit DEXPREOPT if zygote64 isn\'t enabled."
* commit '29eb3d09c83c71e3178b027f9bcc5b4e4d75ca47':
  For 64-bit, use 32-bit DEXPREOPT if zygote64 isn't enabled.
2014-04-18 23:21:35 +00:00
Ian Rogers 29eb3d09c8 am 9b3fb2c3: am 67c20928: Merge "For 64-bit, use 32-bit DEXPREOPT if zygote64 isn\'t enabled."
* commit '9b3fb2c32b89b3d20d6dda521ea3cd81ec75ce19':
  For 64-bit, use 32-bit DEXPREOPT if zygote64 isn't enabled.
2014-04-18 23:18:43 +00:00
Ian Rogers 5d186aee8e For 64-bit, use 32-bit DEXPREOPT if zygote64 isn't enabled.
Change-Id: Ia95d74517f8182031d6044ae55559010a98ec5ca
2014-04-18 15:23:40 -07:00
Narayan Kamath 110ea46e09 resolved conflicts for merge of 8af7e8ed to master
Change-Id: Ib427b36e133e29d1c2e9cea065e4e63c1e2e2122
2014-04-09 12:33:03 +01:00
Narayan Kamath 8af7e8ed3e resolved conflicts for merge of 1852237a to klp-modular-dev-plus-aosp
Change-Id: I09a8a4e95fc956392a0c61f38bd12332149a8d96
2014-04-09 10:03:41 +01:00
Narayan Kamath 7303ebda84 Add 32 / 64 bit abi lists to system properties.
Introduce ro.product.cpu.abilist32 / abilist64, which are
comma separated lists of the 32 and 64 bit ABIs that the
device supports. These properties are used by the zygote and
system server to determine what ABI an app should be
started with.

This changes move abilist related make steps out of envsetup.mk
and into config.mk because they depend on variables set by
core/combo/***. Additionally, config.mk performs a few additional
cleanups of these variables (like stripping them) after the
inclusion of envsetup.mk so this seems like a better place to
put them.

bug: 13647418

Change-Id: I3db39bdd761220c5b4966f651892fb592396f9a1
2014-04-08 17:40:40 +01: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
Brian Carlstrom 3415c72d7c am 31061ccf: am 5e5d26b1: am 47e60739: Merge "cortex-a7 supports div"
* commit '31061ccfdaf01603dfdf20f15df8021d1c7d0b85':
  cortex-a7 supports div
2014-04-01 18:33:38 +00:00
Brian Carlstrom 31061ccfda am 5e5d26b1: am 47e60739: Merge "cortex-a7 supports div"
* commit '5e5d26b1efc6cb73e80e09598ab606678524ff21':
  cortex-a7 supports div
2014-04-01 18:27:32 +00:00
Brian Carlstrom 49c80cd9b6 cortex-a7 supports div
(cherry picked from commit cece45d226)

Change-Id: I9975171ef2c2cd3a9481fa0896473fec684095f3
2014-04-01 10:25:59 -07:00
Ying Wang 636dc20d1a resolved conflicts for merge of ad495272 to master
Change-Id: I6b47768f44b1a6136ca31936e19f943ee72cb627
2014-03-20 15:24:52 -07:00
Ying Wang 46d69e9914 am 9ce34617: am 4f9d6f57: Merge "Fix embedded build"
* commit '9ce34617a001338093b0de85443925a37a967f0d':
  Fix embedded build
2014-03-20 19:36:32 +00:00
Ying Wang 8c7e74ee05 Fix embedded build
1) Disable dexpreopt if DALVIK_VM_LIB isn't set up by the product.
2) DEX2OAT_TARGET_INSTRUCTION_SET_FEATURES is moved to config.mk,
for it's only decided by target arch.
3) Move Java module input from embedded.mk to base.mk.

Change-Id: Ife70b0cd8cee2e5c92f356c808affa56f494b49a
2014-03-20 12:13:10 -07:00
Hui Shu 749aee5f5e Merge "Add removed.txt for doclava api consistency check" 2014-03-13 22:11:23 +00:00
Ying Wang 7670415852 am 61cf1df7: am 60ef9d5b: Merge "jdk error message should not mention the version"
* commit '61cf1df7edbb9d52a6f151b011633b2859213c35':
  jdk error message should not mention the version
2014-03-10 19:29:36 +00:00
Chris Wren 22e3835e33 jdk error message should not mention the version
the version is checked elsewhere

Bug: 13362810
Change-Id: I91e322780d8422ae78b9a4dc8ee008b99f860404
2014-03-10 12:25:31 -07:00
Chris Wren d30905cab0 Merge "jdk error message should not mention the version" 2014-03-07 20:45:56 +00:00
Chris Wren 1f11575b7c jdk error message should not mention the version
the version is checked elsewhere

Bug: 13362810
Change-Id: I91e322780d8422ae78b9a4dc8ee008b99f860404
2014-03-07 15:21:08 -05:00
Andrew Hsieh dc7e26d27e am 887a76fa: am 1537f8bf: am 12493c89: am 6808c260: Merge "Use analyzer at new location: prebuilts/misc/{linux-x86,darwin-x86}/analyzer"
* commit '887a76fa476d25cb0e8297e3511042ddf8209877':
  Use analyzer at new location: prebuilts/misc/{linux-x86,darwin-x86}/analyzer
2014-03-04 01:19:10 +00:00
Andrew Hsieh 1537f8bfde am 12493c89: am 6808c260: Merge "Use analyzer at new location: prebuilts/misc/{linux-x86,darwin-x86}/analyzer"
* commit '12493c892e59d826eec41caea6bc90a5778bb672':
  Use analyzer at new location: prebuilts/misc/{linux-x86,darwin-x86}/analyzer
2014-03-04 01:12:03 +00:00
Andrew Hsieh c4f7fbae02 Use analyzer at new location: prebuilts/misc/{linux-x86,darwin-x86}/analyzer
Analyzer needed by WITH_STATIC_ANALYZER and WITH_SYNTAX_CHECK is
moved from prebuilts/clang/{linux-x86,darwin-x86}/host/3.3 to
prebuilts/misc/{linux-x86,darwin-x86}/analyzer

See https://android-review.googlesource.com/#/c/83852/

BUG=13243591

Usage:

"WITH_SYNTAX_CHECK=1 make ..." instructs build system to invoke "clang -fsyntax-only"
to utilize clang's better diagnostics before calling LOCAL_CC/LOCAL_CXX for code generation.
The compilation time is slightly longer, and the generated object file should be the same as
w/o WITH_SYNTAX_CHECK

"WITH_STATIC_ANALYZER=1 m/mm/mmm/mma/mmma ..." instructs build system to run static
analyzer via "clang --analyze" on a successful build.  If analyzer finds any issue, instruction
to open report is displayed. See http://clang-analyzer.llvm.org/scan-build.html for details.

WITH_STATIC_ANALYZER trumps WITH_SYNTAX_CHECK if both exist.  Project use lots of GCC extensions
(eg. nested function) not supported by clang may opt out by adding LOCAL_NO_STATIC_ANALYZER:=true

Change-Id: Ib3dda3ffb0fd3aaf2eadec867a966d1dd2868fb1
2014-03-03 18:47:02 +08:00
Derek Sollenberger aa42672165 Remove global Skia includes and associated shortcuts.
bug:13225538
Change-Id: I7deff74f5c0cd7b6ad0e120ffbc378c5eb8d75ee
2014-02-27 14:43:13 -05:00
Hui Shu e8af17eb27 Add removed.txt for doclava api consistency check
BUG: b/11293324
Change-Id: Ie7cda9bc7d3a1e6c433eb073cc878b149cead8a0
2014-02-21 17:59:45 -08:00
Ying Wang d4fe0bdfcb am 9b996f80: am eb9b62e0: Merge "Make -rpath-link work with multilib."
* commit '9b996f80a95f48bae153c35bacc0360c004e5258':
  Make -rpath-link work with multilib.
2014-02-22 00:58:46 +00:00
Ying Wang 9b996f80a9 am eb9b62e0: Merge "Make -rpath-link work with multilib."
* commit 'eb9b62e08d25ec9067a3f47634a2b8cf750230d8':
  Make -rpath-link work with multilib.
2014-02-22 00:45:52 +00:00
Ying Wang 9fb3526648 Make -rpath-link work with multilib.
Change-Id: If69ea6ed6cdbb657ed4005f8217d653e29626783
2014-02-21 16:20:20 -08:00
Ying Wang 30d8e12c87 resolved conflicts for merge of d616a73d to master
Change-Id: I92007bc1c4987c9601b5478b06e3bbe3c02b9535
2014-02-08 10:27:35 -08:00
Ying Wang d616a73db2 am 737a51dd: Merge "Refactor llvm_config.mk and support the 2nd arch"
* commit '737a51dd7294b0443b4f1ac55372310d635c5121':
  Refactor llvm_config.mk and support the 2nd arch
2014-02-07 18:09:13 +00:00
Ying Wang 1f9828387d Refactor llvm_config.mk and support the 2nd arch
1. Following the setup of gcc in build/core/combo/,
we added the [HOST|TARGET]_<arch>.mk clang config files,
and load only the configs needed by the current product.
2. Added support for the 2nd arch.

Change-Id: I2a383418a9688a050b39492f8e489d40eeeb5f2d
2014-02-07 09:11:22 -08:00
Ying Wang dd22aee1f4 am 69c3f457: am dc7fee9f: Set up rules to merge AndroidManifest.xmls
* commit '69c3f4570d80eab99bfcab604209dc7bb3ae5537':
  Set up rules to merge AndroidManifest.xmls
2014-02-06 18:11:51 +00:00
Ying Wang 69c3f4570d am dc7fee9f: Set up rules to merge AndroidManifest.xmls
* commit 'dc7fee9fbf46ac06c840c7edfd51fbefeece63e4':
  Set up rules to merge AndroidManifest.xmls
2014-02-06 18:07:51 +00:00
Christopher Ferris 5d8ee71506 am 6d0899ea: am afbbce3f: Merge "Add library test makefile solutions."
* commit '6d0899ea4735293cca61661366dd98917f200bb3':
  Add library test makefile solutions.
2014-02-06 03:07:49 +00:00
Ying Wang dc7fee9fbf Set up rules to merge AndroidManifest.xmls
Now you can merge the library manifest files to the main app's
AndroidManifest.xml with LOCAL_FULL_LIBS_MANIFEST_FILES.
LOCAL_FULL_LIBS_MANIFEST_FILES is a list of paths relative to the top of
the source tree.

Bug: 12907528
Change-Id: I16a347c83dfb6fbbb7d5d40284b7c65aa682fdd2
2014-02-05 18:24:45 -08:00
Christopher Ferris 70ca5e5b39 Add library test makefile solutions.
Change-Id: Ibc8df9b0e2342683158936bf011425780df8f02a
2014-02-05 16:36:42 -08:00
Ying Wang 1d274d2686 Load compiler environment for a second arch.
This is the first step to build 32-bit libraries in a 64-bit product.
It will work like this:
1) In the product's BoardConfig.mk, define:
TARGET_2ND_ARCH, TARGET_2ND_ARCH_VARIANT, TARGET_2ND_CPU_VARIANT.
The build system uses those variables to set up an additional compiler
environment for the second arch.

2) When parsing Android.mks, the build system sets up rules to build a
module for both the 1st arch and the 2nd arch, unless it's explicitly
asked to skip so.
Android.mk will be adapted if there is additional rule of generating
source files.
The build system will accept arch-specific LOCAL_ variables, such as
LOCAL_CFLAGS_arm, LOCAL_CFLAGS_armv7-a-neon, LOCAL_CFLAGS_cortex-a15,
LOCAL_CFLAGS_aarch64 etc. Modules use such variables to set up build for
various archs at the same time.

3) Install binary of the 2nd arch by adding "<module_name>:32" to
PRODUCT_PACKAGES. All 2nd-arch libraries linked in by "<module_name>:32"
will be installed automatically.

Bug: 11654773
Change-Id: I2df63cd5463a07bf5358bee2a109f8fb9590fe30

Conflicts:
	core/combo/TARGET_linux-arm.mk
2014-01-24 13:34:26 -08:00
Ying Wang e1d44c3b4a Load compiler environment for a second arch.
This is the first step to build 32-bit libraries in a 64-bit product.
It will work like this:
1) In the product's BoardConfig.mk, define:
TARGET_2ND_ARCH, TARGET_2ND_ARCH_VARIANT, TARGET_2ND_CPU_VARIANT.
The build system uses those variables to set up an additional compiler
environment for the second arch.

2) When parsing Android.mks, the build system sets up rules to build a
module for both the 1st arch and the 2nd arch, unless it's explicitly
asked to skip so.
Android.mk will be adapted if there is additional rule of generating
source files.
The build system will accept arch-specific LOCAL_ variables, such as
LOCAL_CFLAGS_arm, LOCAL_CFLAGS_armv7-a-neon, LOCAL_CFLAGS_cortex-a15,
LOCAL_CFLAGS_aarch64 etc. Modules use such variables to set up build for
various archs at the same time.

3) Install binary of the 2nd arch by adding "<module_name>:32" to
PRODUCT_PACKAGES. All 2nd-arch libraries linked in by "<module_name>:32"
will be installed automatically.

Bug: 11654773
Change-Id: I2df63cd5463a07bf5358bee2a109f8fb9590fe30
2014-01-16 14:30:02 -08:00
Ying Wang 734afe4e42 am 94ff79ea: am adc66128: am b6c57051: am f5ce4fa9: Merge "Install 64-bit libraries to /system/lib64."
* commit '94ff79eaf2d66be4c83656a41b4efa38ad34a970':
  Install 64-bit libraries to /system/lib64.
2014-01-14 20:15:45 +00:00
Ying Wang c634974d37 Install 64-bit libraries to /system/lib64.
/system/lib always contains 32-bit libraries, and /system/lib64 (if
present) always contains 64-bit libraries.
Move things around a little bit, so TARGET_ARCH can be used to define
the build paths.

Bug: 11654773
Change-Id: I2edd91e162c7a20d7719d7bae15e5fa6c2a5b498
2014-01-13 16:20:31 -08:00
Ying Wang 057375d783 am 03a06f41: am 9507a0fd: am 82c59aef: am 71e8a22e: Merge "Add DEXPREOPT support for ART"
* commit '03a06f4158e9eea9152f25286fcf2c30044d4e06':
  Add DEXPREOPT support for ART
2013-12-18 01:06:10 +00:00
Brian Carlstrom ced4bff58e Add DEXPREOPT support for ART
Change-Id: I24d0d7b2a23a769f5d69bd4dc14be22e1475b759
2013-12-17 14:44:00 -08:00
Narayan Kamath 7b199e3fa6 am 87286198: am b8d3879e: am 99bb0365: am 948206c0: Merge "Fix tools path on Mac OS for java 7."
* commit '87286198486fb43b35b6dcf8c64ca32a2ec60432':
  Fix tools path on Mac OS for java 7.
2013-12-06 17:51:54 +00:00
Narayan Kamath ab2e2e792e Fix tools path on Mac OS for java 7.
Change-Id: Ieb72b9e10771ee372bacf20258242cb006c29fef
2013-12-05 17:56:23 +00:00
Narayan Kamath 40dae1fefa Rework the generation of host java libraries.
We currently have two types of host libraries, those
meant for the host VM (Sun, OpenJDK etc.) and those meant
for a host dalvik build. The former need to be compiled
against the host standard libraries and the latter need
to be compiled against libcore. This change introduces
two new build rules to complement the existing the existing
host rules.

BUILD_HOST_DALVIK_JAVA_LIBRARY : Build a java library for
a host build of dalvik. Bootclasspath will be set to a host
build of libcore.
BUILD_HOST_DALVIK_STATIC_JAVA_LIBRARY : Build a static java
library for a host build of dalvik. Bootclasspath will be set
to a host build of libcore.

This change also removes support for the LOCAL_BUILD_HOST_DEX
flag, which is now unnecessary.

bug: 8992787

(cherry picked from commit 0dd273a3f6)

Change-Id: I3569fff8eaa4d26d55fcc317bd98471f55d74c14
2013-11-25 10:17:53 +00:00
The Android Open Source Project b9041a45b1 Merge commit 'c73341006286c391ae4d268a77f5e008045d5308' into HEAD
Change-Id: I4bf7d32d65e19dfa1f0533fdd3b2295c50b13005
2013-11-22 11:06:11 -08:00
Colin Cross 52a341b995 add BUILD_NATIVE_BENCHMARK
Similar to BUILD_NATIVE_TEST, but links against libbenchmark
instead of libgtest.

Change-Id: I97d44db4807a79efa9bca56c108082ac45c943b8
2013-11-15 14:43:33 -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
Narayan Kamath 0dd273a3f6 Rework the generation of host java libraries.
We currently have two types of host libraries, those
meant for the host VM (Sun, OpenJDK etc.) and those meant
for a host dalvik build. The former need to be compiled
against the host standard libraries and the latter need
to be compiled against libcore. This change introduces
two new build rules to complement the existing the existing
host rules.

BUILD_HOST_DALVIK_JAVA_LIBRARY : Build a java library for
a host build of dalvik. Bootclasspath will be set to a host
build of libcore.
BUILD_HOST_DALVIK_STATIC_JAVA_LIBRARY : Build a static java
library for a host build of dalvik. Bootclasspath will be set
to a host build of libcore.

This change also removes support for the LOCAL_BUILD_HOST_DEX
flag, which is now unnecessary.

bug: 8992787

Change-Id: I3569fff8eaa4d26d55fcc317bd98471f55d74c14
2013-11-07 09:39:05 +00: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
Andrew Hsieh 69e339d783 am 246daf75: resolved conflicts for merge of 2b5d2c55 to klp-dev-plus-aosp
* commit '246daf755a6607db575b5bef13d5cc761d4ebbb0':
  Add "WITH_STATIC_ANALYZER=1 m/mm/mmm/mma/mmma ..."
2013-09-10 19:34:10 -07:00
Andrew Hsieh 246daf755a resolved conflicts for merge of 2b5d2c55 to klp-dev-plus-aosp
Change-Id: Icd9d5eff3f9acba042c100f694309f902c9d56cf
2013-09-10 18:07:23 -07:00