Commit graph

3709 commits

Author SHA1 Message Date
Tim Murray
125a3c9fb0 Always use prebuilt clang, even if we're explicitly building clang/LLVM.
This is needed for self-hosting Clang/LLVM.

bug 13588226

Change-Id: Ic98adc2b174b12ce046b7b65bbc28901a766a485
2014-04-01 16:08:51 -07:00
Brian Carlstrom
49c80cd9b6 cortex-a7 supports div
(cherry picked from commit cece45d226)

Change-Id: I9975171ef2c2cd3a9481fa0896473fec684095f3
2014-04-01 10:25:59 -07:00
Daniel Leung
625974cf2a Add intel to the vendor whitelist
Change-Id: I91d6ff72629523050b4f26c2d731cac90ef49348
Signed-off-by: Daniel Leung <daniel.leung@intel.com>
Reviewed-by: Jovanovic, Radivoje <radivoje.jovanovic@intel.com>
Reviewed-by: Boie, Andrew P <andrew.p.boie@intel.com>
Reviewed-by: Kumar-mayernik, Nisha <nisha.kumar-mayernik@intel.com>
Reviewed-by: Gumbel, Matthew K <matthew.k.gumbel@intel.com>
Tested-by: Gumbel, Matthew K <matthew.k.gumbel@intel.com>
2014-04-01 10:38:12 +08:00
Ying Wang
b34af41e57 Merge "Fix java version detection when _JAVA_OPTIONS is set." 2014-03-31 23:53:52 +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
Christopher Ferris
0c4870a4cd Merge "Specify -mcpu=cortex-a15 for denver CPU variants." 2014-03-31 19:06:28 +00:00
Ying Wang
1c380c13d9 Merge "Remove the unnecessary indirection of TARGET_STRIP_COMMAND" 2014-03-31 17:30:06 +00:00
Narayan Kamath
431b4bb354 Merge "Extend the CPU ABI specification mechanism." 2014-03-31 12:09:51 +00:00
Ying Wang
ce1c596e15 Remove the unnecessary indirection of TARGET_STRIP_COMMAND
Now all archs use the same strip command which can be put just in
transform-to-stripped.

Change-Id: Ief79697d47ea142fc9e63e63a7e2dace9e839165
2014-03-28 17:25:34 -07:00
Mathieu Chartier
1da02a1ae1 Merge "Change LIBART_IMG_TARGET_BASE_ADDRESS to 0x70000000" 2014-03-28 19:19:13 +00:00
Narayan Kamath
1a43b375b4 Extend the CPU ABI specification mechanism.
Add a (read only) system property that is a comma
separated list of ABIs supported by the device in order
of preference. For example, typical arm-v8 device might
define:

ro.cpu.abilist = arm64-v8a,armeabi-v7a,armeabi

For most purposes, a single flattened list like the above is
probably more useful than the parallel system of variables
TARGET_CPU_ABI{2} / TARGET_2ND_ARCH_CPU_ABI{2} that we use
in the build system.

Change-Id: If9102669ad9f5f8fd89a8bcc5bf88cca1acadc3c
2014-03-28 17:10:47 +00:00
Ying Wang
01f11b2aa9 Increase the maximum javac heap size.
Java 7 needs more memory when you run some annotation tools.

Change-Id: Ia8b423244b9ce164500b24867fe2b3d10a5089ff
2014-03-26 19:23:46 -07:00
Colin Cross
e6e48f67d8 add support for LOCAL_MULTILIB
LOCAL_MULTILIB replaces LOCAL_32_BIT_ONLY and
LOCAL_NO_2ND_ARCH, although both are still supported.

Set LOCAL_MULTILIB := 32 to always build a module 32-bit.
This is the same as specifying LOCAL_32_BIT_ONLY.

Set LOCAL_MULTILIB := first to always build a module for
the first architecture (64-bit on a 64-bit target, 32-bit on a
32-bit target).  This is the same as specifying LOCAL_NO_2ND_ARCH.

Set LOCAL_MULTILIB := both to build for both architectures
on a mulitlib (64-bit) target.

If LOCAL_MULTILIB is not set libraries will default to "both",
and executables, packages, and prebuilts will default to building
for the first architecture if supported by the module, otherwise
the second.

Executables that set LOCAL_MULTILIB := both must set either
LOCAL_MODULE_STEM_32 and LOCAL_MODULE_STEM_64 or
LOCAL_MODULE_PATH_32 and LOCAL_MODULE_PATH_64 to specify how to
differentiate the install locations of the two versions.

Change-Id: I22ab6aa342b231c307b1d8a86cea4fd91eea39f5
2014-03-26 13:12:59 -07:00
Colin Cross
5a9db90e40 add support for LOCAL_MODULE_STEM_32 and LOCAL_MODULE_STEM_64
Some executables will need to be built for both 32-bit and 64-bit.
For linker/linker64, debuggerd/debuggerd64, and a few more, they
will be installed in the same path (/system/bin), but with different
filenames.  Allow the module to specify LOCAL_MODULE_STEM_32 and
LOCAL_MODULE_STEM_64 to name the two versions.

Change-Id: I573e8678c7332245a064f31246be0a05f0a9e25f
2014-03-25 13:49:58 -07:00
Colin Cross
87974056d9 add support for LOCAL_MODULE_PATH_32 and LOCAL_MODULE_PATH_64
Some executables will need to be built for both 32-bit and 64-bit.
For tests, it will be convienient to keep the name of the executable
the same, but install them in a different location.  Add
LOCAL_MODULE_PATH_32 and LOCAL_MODULE_PATH_64 to allow a module
to specify different paths for 32-bit and 64-bit executables.

Change-Id: I3be830e899c6d485fe55c25c66b20b3fe64c795e
2014-03-25 13:48:40 -07:00
Tim Murray
01aa01dbfa Merge "Make Clang host builds hermetic on Linux." 2014-03-25 18:33:29 +00:00
Colin Cross
a3c76c2824 Merge "remove libeffects from 64-bit blacklist" 2014-03-25 17:54:56 +00:00
Tim Murray
02cefc93a8 Make Clang host builds hermetic on Linux.
This lays the groundwork for making builds hermetic on Darwin as well.
That will be fixed in a future patch.

bug 13435344

Change-Id: Iae82d0b9efad0598d682ff5fd4daa737aa607866
2014-03-24 19:38:47 -07:00
Andrew Hsieh
92d50c1a10 Pick gnu-libstdc++ based on TARGET_GCC_VERSION
Previously we have only one set of include/lib paths for
LOCAL_NDK_STL_VARIANT:=gnustl_static regardless of GCC
version, which is wrong because each GCC version
come with its own libstdc++.

Change-Id: I2a01c2120b6948aedce00e2f8d08dfc6932126dd
2014-03-25 09:46:27 +08:00
Colin Cross
966c9194a6 remove libeffects from 64-bit blacklist
Everything under frameworks/av/media/libeffects compiles fine for
64-bit

Change-Id: I03519a98903b7d65936053ef7eda8926cce60ea0
2014-03-24 18:40:11 -07:00
Shu Zhang
453afb242c Specify -mcpu=cortex-a15 for denver CPU variants.
Change-Id: Ic27484c92a48b45148021a61420ffdd55a9dd945
2014-03-24 16:19:50 +08:00
Ying Wang
d8d3721240 Complete installed shared library dependency
Previously the installed shared library dependency doesn't include
modules introduced by LOCAL_SHARED_LIBRARIES_<arch>.
This change fix the problem.
It also cleans up use of the shared library variable.

Bug: 13528787
Change-Id: Id8d807cc57f0ec4a71f18b64545d91191efad8fb
2014-03-21 16:17:04 -07:00
Colin Cross
8c1bbdb96e Merge "remove more projects from 64-bit blacklist" 2014-03-20 20:16:53 +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
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
Colin Cross
e6d118574b remove more projects from 64-bit blacklist
These all build now.

Change-Id: If7c5f58512a2931617900ddc730797750ab8301c
2014-03-20 00:08:20 -07:00
Mathieu Chartier
3408ca0e0d Change LIBART_IMG_TARGET_BASE_ADDRESS to 0x70000000
Required for getting ART with valgrind on device working since
valgrind maps things in the 0x60000000 address range.

Bug: 13323732

Change-Id: I05efdbf3fe5acd1418e1d4ced5844154fb4c5d37
2014-03-19 16:52:43 -07:00
Glenn Kasten
cb902fff82 Merge "A few other removals for the 64 bit blacklist." 2014-03-19 21:32:22 +00:00
Narayan Kamath
c7d24d029b A few other removals for the 64 bit blacklist.
- external/chromium now compiles
- stagefright codecs now compile.
- frameworks/base now compiles.

Change-Id: I1226b79cd3e0b5e2fd786bb506e022b47fe5e264
2014-03-19 13:15:31 +00:00
Christopher Ferris
a6e2f9322c Add a method to leave the symbol table in a library.
When LOCAL_STRIP_MODULE := keep_symbols is set, then the normal strip rules
will be modified so that only the .debug_* sections are removed. The original
symbol table is left alone.

This allows the compilation of certain libraries so that libbacktrace library
can provide meaningful names to functions.

Bug: 12958251
Change-Id: I82bdc304a463012e29086325ccb51163464cb4a9
2014-03-18 17:34:41 -07:00
Ying Wang
ed56902c29 Remove arm64 clang build warning
Now we have enabled arm64 clang.
This change remvoed arm64 clang build warning and cleaned the
arm64 unknow c flags.

Change-Id: Ia583a78c6d364e603ff09df423aa34a6e03d0b9b
2014-03-18 15:58:13 -07:00
Glenn Kasten
97542cc9bf Merge "Don't blacklist all of frameworks/av for 64-bit" 2014-03-18 21:45:12 +00:00
Glenn Kasten
488fe8481a Don't blacklist all of frameworks/av for 64-bit
Change-Id: Ic2db99b1b577e3355c50982af5068bce32edf4ba
2014-03-18 12:12:54 -07:00
Ying Wang
594f2a4261 Remove unused LOCAL_ASSET_FILES.
Change-Id: Ie0b2b2e30a158b779016767fb868f3e03b2f828a
2014-03-18 11:31:09 -07:00
Andrew Hsieh
73d800e519 Add LOCAL_NDK_STL_VARIANT:=c++_static and c++_shared
Add llvm libc++ static and shared libraries

Change-Id: I92af9b6ab21cbf8ea82e014a4c11aeb5455920f9
2014-03-17 20:30:45 +08:00
Ying Wang
1cda15d323 Merge "Don't modify LOCAL_STRIP_MODULE" 2014-03-16 20:02:56 +00:00
Ying Wang
e1889af2d5 Don't modify LOCAL_STRIP_MODULE
LOCAL_STRIP_MODULE will be reused in multilib build.

Change-Id: I3512efb360c7eaafad02859723ab4368778effed
2014-03-16 12:43:49 -07:00
Colin Cross
db24577bbd Merge "Work in progress to enable build system support for Clang." 2014-03-15 23:54:03 +00:00
Tim Murray
b5f333bbef Work in progress to enable build system support for Clang.
Change-Id: I278b48bcd976afcbde8d86261da9b9b9efc9002c
2014-03-14 00:39:03 -07:00
Andrew Hsieh
933e8940d0 Merge "Fix HOST_TOOLCHAIN_PREFIX" 2014-03-14 00:19:19 +00:00
Narayan Kamath
cc8d6dab9a Merge "Revert "Remove external/chromium from the 64 bit blacklist."" 2014-03-13 09:29:52 +00:00
Narayan Kamath
c00ab8e012 Revert "Remove external/chromium from the 64 bit blacklist."
This reverts commit 27bf51144a.

Change-Id: Ic7e4fff8f87342a248172c2fc0d1358b4db1c25c
2014-03-13 09:29:22 +00:00
Narayan Kamath
252496247f Merge "Remove external/chromium from the 64 bit blacklist." 2014-03-13 09:05:32 +00:00
Dmitriy Ivanov
d5cd1e2ecf Add TARGET_2ND_ARCH to dumpvar
Change-Id: Ida87a61cceb55b7ebc28735b4688a03a10c01096
2014-03-12 11:13:41 -07:00
Narayan Kamath
27bf51144a Remove external/chromium from the 64 bit blacklist.
This isn't the same as chromium_org (which is used by the
webview). This is a 3 year old snapshot of the net stack which
compiles under 64 bit. It's currently used on aosp master by
libstagefright_chromium_http.

This project can be removed if the changes that remove the
chromium dependency are cherry-picked to aosp/master.

Change-Id: I5d0f9ed03ea9842b47d980d77ea32bc7a3f6998f
2014-03-12 14:43:38 +00:00
Andrew Hsieh
cbe162e914 Fix HOST_TOOLCHAIN_PREFIX
Previously HOST_TOOLCHAIN_PREFIX can't accept toolchain in arch-os-*-gcc
format.  Fix it so we can try out new host toolchain, eg.

  HOST_TOOLCHAIN_PREFIX=prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.11-4.6/bin/x86_64-linux- make

Change-Id: Ic1092593036c41d5471e788654fb4e0991dd7e40
2014-03-12 19:27:59 +08:00
Ying Wang
ba8b377d89 Split WITHOUT_CLANG to WITHOUT_HOST_CLANG and WITHOUT_TARGET_CLANG
Still keep WITHOUT_CLANG, which enables both.

Bug: 13402154
Change-Id: I32cb668223997719875751bf3d64f592d6086830
2014-03-10 18:59:12 -07:00
Ian Rogers
aa54033b46 Define __STDC_CONSTANT_MACROS globally to work around host build differences.
Change-Id: I945128b3087b28f62467c7123b759e3514027574
2014-03-10 16:49:41 -07:00
Ian Rogers
c61a9425cd Revert "Define __STDC_LIMIT_MACROS globally to work around host build differences."
This reverts commit 668427c941.

Change-Id: I3694aad84e7499e4c6839db0bd06acf5166e4802
2014-03-10 23:27:01 +00:00
Ian Rogers
668427c941 Define __STDC_LIMIT_MACROS globally to work around host build differences.
Change-Id: I571fc5a4b35c830ca8de4dc3117aef258dffa1bd
2014-03-10 15:30:39 -07:00