summaryrefslogtreecommitdiffstats
path: root/core
Commit message (Collapse)AuthorAgeFilesLines
* Merge "Decouple platform compiler and NDK library versioning."Ben Cheng2014-04-117-3/+21
|\
| * Decouple platform compiler and NDK library versioning.Ben Cheng2014-04-107-3/+21
| | | | | | | | | | | | | | TARGET_GCC_VERSION: select compiler from prebuilts/gcc/... TARGET_NDK_GCC_VERSION: select libraries from prebuilts/ndk/... Change-Id: I4422a42cdc97aa92b40798014cba82c3c123bbd2
* | build: remove packages/ from 64-bit blacklistColin Cross2014-04-101-4/+0
| | | | | | | | | | | | | | | | Everything under packages/ will build for 64-bit now, and package.mk has been updated to not produce 64-bit libraries on devices that don't support them (all of them right now). Change-Id: I2c10e41f727cfc8fe237819308a6dfa34c4fff3f
* | build: use TARGET_SUPPORTS_32_BIT_APPS and TARGET_SUPPORTS_64_BIT_APPSColin Cross2014-04-101-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use TARGET_SUPPORTS_32_BIT_APPS and TARGET_SUPPORTS_64_BIT_APPS to determine which native libraries to build for an app. If both are set, it will use 64-bit unless TARGET_PREFER_32_BIT is set. If only one is set, it will only build apps that work on that architecture. If neither is set it will fall back to only building 32-bit apps. On existing 32-bit devices neither variable will be set, and the build system will continue to build 32-bit apps. Once a device has support for a 64-bit runtime, the same logic that selects the dual runtimes should set TARGET_SUPPORTS_32_BIT_APPS and TARGET_SUPPORTS_64_BIT_APPS, and packages will be built for the preferred arch, or fall back to the non-preferrred arch if necessary. For testing, a device may set TARGET_SUPPORTS_64_BIT_APPS without TARGET_SUPPORTS_32_BIT_APPS to produce only 64-bit apps. Change-Id: I5b5e23f15602c3cf9bd96791971208a85492c7a3
* | build: add support for LOCAL_MULTILIB := 64Colin Cross2014-04-102-1/+5
| | | | | | | | | | | | | | | | I don't expect it to be useful for modules, but package.mk will use it to only install 64-bit native apps on devices that only have a 64-bit zygote. Change-Id: If3f5a81c3a60bd13fa6ded08e2a7579a29877324
* | build: fix TARGET_PREFER_32_BITColin Cross2014-04-102-29/+40
|/ | | | | | | | | | | TARGET_PREFER_32_BIT can't assume that the 32-bit rule is allowed, it needs to try the 32-bit rule first, then fall back to the 64-bit rule in case the module specifies LOCAL_MODULE_TARGET_ARCH or LOCAL_MODULE_UNSUPPORTED_TARGET_ARCH to disallow the 32-bit build. Also port TARGET_PREFER_32_BIT to package.mk. Change-Id: I07520b75c4ee11a1e95a82b3afa2a33d4907eb04
* Merge "Revert "Use aarch64-linux-android-4.9 for arm64 build.""Ben Cheng2014-04-101-5/+6
|\
| * Revert "Use aarch64-linux-android-4.9 for arm64 build."Ben Cheng2014-04-101-5/+6
| | | | | | | | | | | | This reverts commit 6154690d8615995b961530479ddc1a34946efe49. Change-Id: I7427ad6ca1f74ad632229348bac31ebdbc0590ad
* | Merge "Use aarch64-linux-android-4.9 for arm64 build."Ben Cheng2014-04-101-6/+5
|\ \ | |/
| * Use aarch64-linux-android-4.9 for arm64 build.Ben Cheng2014-04-091-6/+5
| | | | | | | | | | | | | | Change-Id: I63e1b54947326fb5da07af7691d4729bcbf99ac1 GCC: 4.9 (which supports -fstack-protector) Binutils: 2.24 (which supports gc-sections) GDB: 7.7
* | Increase the maximum javac heap size again.Ying Wang2014-04-091-1/+1
|/ | | | Change-Id: Ic3422650ea22977f3dcfd74505cb287ff6543c2d
* Stop defining HAVE_TIMEDWAIT_MONOTONIC.Narayan Kamath2014-04-099-54/+0
| | | | | | | We no longer provide this function in bionic. All callers should be moved over to pthread_condattr_setclock(). Change-Id: Iccd3384b40de423f7d5f9521b6d8073bf8bdea42
* Merge "Add 32 / 64 bit abi lists to system properties."Narayan Kamath2014-04-093-22/+40
|\
| * Add 32 / 64 bit abi lists to system properties.Narayan Kamath2014-04-083-22/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | Merge "Fix javadoc error "class file for ↵Ying Wang2014-04-071-0/+2
|\ \ | | | | | | | | | sun.util.resources.OpenListResourceBundle not found""
| * | Fix javadoc error "class file for sun.util.resources.OpenListResourceBundle ↵Ying Wang2014-04-071-0/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | not found" It seems to be a javac/javadoc bug. See https://code.google.com/p/doclava/issues/detail?id=38 sun.util.resources.OpenListResourceBundle is a class defined in the host rt.jar, but sometimes on some platform javadoc/javac can't find it. -XDignore.symbol.file tells javadoc/javac to skip the stubs file ct.sym and link against rt.jar directly. Change-Id: I3930f7399fc14b2d6b43c29f737fa90f37515aff
* | Different bootclasspath for droiddoc.Ying Wang2014-04-071-4/+6
| | | | | | | | | | | | | | | | | | | | - If it's host module, don't set bootclasspath; - If it's arget module, - It can build against the API stubs; - It can build against a historical SDK version; - It can build against core.jar Change-Id: Id1ec3ba624bc38068b206ad7173f4facf590e021
* | Fix droiddoc generation.Narayan Kamath2014-04-071-6/+2
|/ | | | | | | | | | | | We want javadoc generated from the standard libraries we supply and not the host standard libraries. This also has the side effect of fixing javadoc generation for java7 APIs that android introduced, while compiling with java6. bug: 8992787 Change-Id: Idebc7e12c7743a43b425ef4971f4482719fd480d
* Build with java7 by default.Narayan Kamath2014-04-043-53/+35
| | | | | | | | | | | | | | | | | | | | 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
* Disable host -fPIE if BUILD_HOST_static is set.Ying Wang2014-04-041-1/+6
| | | | | | | It turns out -static doesn't work with -fPIE. Bug: 13568878 Change-Id: I66951a5517dece1c5f4f22c329cf703bd99b5163
* Unset _JAVA_OPTIONS before running "java -version".Ying Wang2014-04-021-6/+6
| | | | | | | 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
* Merge "Add GYP as a target type that requires 2nd arch."Torne (Richard Coles)2014-04-021-1/+1
|\
| * Add GYP as a target type that requires 2nd arch.Torne (Richard Coles)2014-04-021-1/+1
| | | | | | | | | | | | | | | | | | "GYP" class targets are used by external/chromium_org for gyp's "none" type. The processing in these targets needs a separate intermediate directory for the primary/secondary architecture, so add it to the list in intermediates-dir-for along with libraries/executables. Change-Id: Id05899c83b45ed0647dfbfa6b0b2e7f61b04348b
* | Add warning message for java6 builds.Narayan Kamath2014-04-021-1/+20
| | | | | | | | | | | | | | | | | | The instruction URL has been amended and a few additional details have been added. (cherry picked from 8c06afdea3d3c422d653b40fd19d5e3d4be64af2) Change-Id: Icaffc3b13ed881ac7e29f2021ed31eb1f877a5ab
* | Call "java[c] -version" only onceYing Wang2014-04-021-9/+14
| | | | | | | | | | | | | | | | | | and print out the full output if error occurs. Bug: 11672548 (cherry picked from 7b66d366bf5c469130f71d0870424fcd265e0301) Change-Id: I8e2f2ffa2f28146405273b04667efe3c8d1c03ad
* | Merge "Bring main.mk in sync with master."Narayan Kamath2014-04-021-1/+5
|\ \ | |/ |/|
| * Bring main.mk in sync with master.Narayan Kamath2014-04-011-1/+5
| | | | | | | | | | | | | | | | | | | | 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
* | Merge "Use debug versions of dex2oat explicitly."Nicolas Geoffray2014-04-022-8/+9
|\ \
| * | Use debug versions of dex2oat explicitly.Nicolas Geoffray2014-04-012-8/+9
| | | | | | | | | | | | Change-Id: Ie7c238908a5739af752a08fec1a04914026a8f96
* | | Remove redundant my_target_global_ldflagsDmitriy Ivanov2014-04-012-10/+0
| | | | | | | | | | | | | | | | | | | | | * Fix: my_target_global_ldflags is defined in binary.mk so they effectivelly override previous definition Change-Id: I9c7d9bde82c3a6d25a94ae109fa71ecaa33640b0
* | | Always use prebuilt clang, even if we're explicitly building clang/LLVM.Tim Murray2014-04-011-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | This is needed for self-hosting Clang/LLVM. bug 13588226 Change-Id: Ic98adc2b174b12ce046b7b65bbc28901a766a485
* | | cortex-a7 supports divBrian Carlstrom2014-04-011-1/+1
| |/ |/| | | | | | | | | (cherry picked from commit cece45d22652ca0d8a57a6cb03c5ca2a915a9a07) Change-Id: I9975171ef2c2cd3a9481fa0896473fec684095f3
* | Add intel to the vendor whitelistDaniel Leung2014-04-011-0/+1
| | | | | | | | | | | | | | | | | | | | 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>
* | Merge "Fix java version detection when _JAVA_OPTIONS is set."Ying Wang2014-03-311-6/+6
|\ \
| * | Fix java version detection when _JAVA_OPTIONS is set.Peter Ammon2014-03-311-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _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
* | | Merge "Specify -mcpu=cortex-a15 for denver CPU variants."Christopher Ferris2014-03-311-1/+1
|\ \ \ | |/ / |/| |
| * | Specify -mcpu=cortex-a15 for denver CPU variants.Shu Zhang2014-03-241-1/+1
| | | | | | | | | | | | Change-Id: Ic27484c92a48b45148021a61420ffdd55a9dd945
* | | Merge "Remove the unnecessary indirection of TARGET_STRIP_COMMAND"Ying Wang2014-03-318-33/+9
|\ \ \
| * | | Remove the unnecessary indirection of TARGET_STRIP_COMMANDYing Wang2014-03-288-33/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Now all archs use the same strip command which can be put just in transform-to-stripped. Change-Id: Ief79697d47ea142fc9e63e63a7e2dace9e839165
* | | | Merge "Extend the CPU ABI specification mechanism."Narayan Kamath2014-03-312-0/+23
|\ \ \ \ | |/ / / |/| | |
| * | | Extend the CPU ABI specification mechanism.Narayan Kamath2014-03-282-0/+23
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Merge "Change LIBART_IMG_TARGET_BASE_ADDRESS to 0x70000000"Mathieu Chartier2014-03-281-1/+1
|\ \ \
| * | | Change LIBART_IMG_TARGET_BASE_ADDRESS to 0x70000000Mathieu Chartier2014-03-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Required for getting ART with valgrind on device working since valgrind maps things in the 0x60000000 address range. Bug: 13323732 Change-Id: I05efdbf3fe5acd1418e1d4ced5844154fb4c5d37
* | | | Increase the maximum javac heap size.Ying Wang2014-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Java 7 needs more memory when you run some annotation tools. Change-Id: Ia8b423244b9ce164500b24867fe2b3d10a5089ff
* | | | add support for LOCAL_MULTILIBColin Cross2014-03-268-17/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | add support for LOCAL_MODULE_STEM_32 and LOCAL_MODULE_STEM_64Colin Cross2014-03-255-26/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | add support for LOCAL_MODULE_PATH_32 and LOCAL_MODULE_PATH_64Colin Cross2014-03-253-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | Merge "Make Clang host builds hermetic on Linux."Tim Murray2014-03-256-10/+82
|\ \ \ \
| * | | | Make Clang host builds hermetic on Linux.Tim Murray2014-03-246-10/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | | | Merge "remove libeffects from 64-bit blacklist"Colin Cross2014-03-251-4/+0
|\ \ \ \ \ | |_|_|/ / |/| | | |