Commit Graph

4235 Commits

Author SHA1 Message Date
Alexander Ivchenko 388dce3192 Refine TARGET_GLOBAL_CFLAGS for x86 and x86_64:
Remove -msse2 for x86 (-mssse3 should be provided by the compiler).
       Remove -fPIC (compiler provides by default).
       Remove -fno-inline-functions-called-once.

Change-Id: Ibb29934224c4eedfff926dc72c3b6342c1861ac9
2014-09-09 17:27:32 +04:00
Ying Wang 8b3476986a Add LOCAL_POST_LINK_CMD.
For now we support LOCAL_POST_LINK_CMD only for static executables.
This fixed the hack of building linker which need to insert additional
step after link.

Bug: 17403674
Change-Id: Iefdfe1e3fab3a30c5d4ad701d46f931481eab572
2014-09-05 15:47:59 -07:00
Chih-Hung Hsieh 9aa69a6752 Add LOCAL_CLANG_*FLAGS for clang only flags.
To be used only for some modules.

Change-Id: I107ec37f11f738f860598f0c86c4ad7ec20c9011
2014-09-04 18:43:16 -07:00
Tim Murray 039cd7e076 Merge "Add LOCAL_NO_FPIE." 2014-09-03 22:46:45 +00:00
Tim Murray 595d0dbd5b Add LOCAL_NO_FPIE.
Not all executables should be built with -pie.

bug 15814177

Change-Id: I402e8a531866b507ee80a0bf677f9f3551ca7693
2014-09-03 15:39:50 -07:00
Ying Wang 7754e0ce89 Merge "[MIPS64] Modify the default MIPS64 build to MIPS64R6." 2014-09-03 19:20:29 +00:00
Stephen Hines 2f9fa52025 Merge "Fix build breakage due to incorrect bcc_compat RS_TRIPLE." 2014-09-03 16:02:09 +00:00
Stephen Hines 5c72544d48 Fix build breakage due to incorrect bcc_compat RS_TRIPLE.
Bug: 17333374
Change-Id: I13582ce0cde86f7b3728aa4f45a5197438d65a2d
(cherry picked from commit 52626d2a7b)
2014-09-02 21:46:25 -07:00
Ying Wang cee38d55f8 Merge "[MIPSR6] R6 target options for clang" 2014-09-03 01:02:54 +00:00
Raghu Gandham 10326b3d7f [MIPS64] Modify the default MIPS64 build to MIPS64R6.
Change-Id: I797e4c2e5b69c6991545c26886b5b25e6f8c2a67
2014-09-02 16:30:00 -07:00
Ying Wang 7ba7d7f4f5 Default host module to 64-bit except for SDK builds.
Set "HOST_PREFER_32_BIT := true" only if "sdk" or "win_sdk" is among the
make command line goals, or it's a MinGW windows build, which only builds
host SDK tools.

Bug: 13751317
Change-Id: I8ec1a97a5d1af065a153b16523c2ee3434d0dd71
2014-09-02 16:04:31 -07:00
Stephen Hines ec8778e89f Merge "Fix RS_TRIPLE and RS_TRIPLE_CFLAGS." 2014-09-02 16:23:11 +00:00
Ying Wang 7852b80c05 Merge "Add missing flags to x86 (both 32- and 64-bit) arch variants. Delete x86_64-atom.mk as we don't support 64-bit on old Atom." 2014-09-01 17:47:55 +00:00
Stephen Hines 039675adb8 Fix RS_TRIPLE and RS_TRIPLE_CFLAGS.
Bug: 17333374

Add RS_TRIPLE_CFLAGS to ensure that we build with the proper defines on
targets like x86. This also changes all build targets to use the
proper 32/64-bit triples when creating their runtime libraries.

Change-Id: I8f6175b1a14af6d03ee90f32069f3688ec227fb9
2014-08-29 15:20:05 -07:00
Brian Carlstrom a4331e35b6 Add --no-include-debug-symbols to avoid bloat in user builds
Bug: 16938924

(cherry picked from commit 91b9d01b6b)

Change-Id: I0b744e0aaacc11fe8983f22f56ffc546a07ae764
2014-08-28 18:10:42 -07:00
Chih-Hung Hsieh fb482c6d5d Clang rejects -Wno-old-style-declaration flag.
BUG: 17258227
Change-Id: I2a35263298ffd8dd7cda25183e185274cbf62b7b
2014-08-26 16:37:00 -07:00
Chih-Hung Hsieh b699b0ea58 Merge "Clang does not recognize -Wno-literal-suffix." 2014-08-26 23:01:34 +00:00
Chih-Hung Hsieh 4d12b5788d Clang does not recognize -Wno-literal-suffix.
BUG: 17258227
Change-Id: I2d98e68daa780fbe0e127605840ae7edcb4e9880
2014-08-26 15:30:04 -07:00
Calin Juravle 18f23def0e Merge "Push ISA features into system properties" 2014-08-26 17:52:12 +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
Chih-Hung Hsieh 0278174764 Add GCC only flags to clang .mk files.
BUG: 17258227
Change-Id: Iec9fdb21a9fa31e18a17704beb27bb493c9b7192
2014-08-25 16:49:53 -07:00
Elliott Hughes 0fa6a4063d HAVE_FUTEX is unused.
I missed this the other day.

Change-Id: Ifb6912de3aae6d03593ffb08d8d9555dc9e53f4d
2014-08-20 21:26:19 -07:00
Elliott Hughes a9ec8350b0 Merge "Remove HAVE_ANDROID_PTHREAD_SETNAME_NP." 2014-08-21 04:20:34 +00:00
Elliott Hughes 10f5a420eb Merge "HAVE_OPEN_MEMSTREAM is no longer used." 2014-08-21 04:16:48 +00:00
Elliott Hughes 70f3f33c2d Remove HAVE_ANDROID_PTHREAD_SETNAME_NP.
https://android-review.googlesource.com/104945 removes the only user.

Change-Id: I303d941036ab889ab747f26561506a5e1c93f0c2
2014-08-20 20:21:29 -07:00
Elliott Hughes 31c667ed3a HAVE_OPEN_MEMSTREAM is no longer used.
Bug: 17164505
Change-Id: I8055e52019d8cdea957d0fb8cbd46ca9b52564e1
2014-08-20 16:17:28 -07:00
Dan Albert e0f44ac25d Performance improvement for whole static libs
Improves performance for LOCAL_WHOLE_STATIC_LIBS by copying the first .a
to the new .a rather than extracting and recreating

Change-Id: Iecdb5e4bb2ce987bb41a70c3393d18a6d72ae689
2014-08-20 13:58:36 -07:00
Elliott Hughes 36ba1db405 Merge "Remove unused entries from AndroidConfig.h." 2014-08-16 04:09:33 +00:00
Elliott Hughes 032ac32bdb Remove unused entries from AndroidConfig.h.
We should probably try to remove these files completely, but this at
least takes care of the stuff that's completely obsolete.

Change-Id: Ic71b7b491c119963068294e258dc6afe5a45b40d
2014-08-18 12:18:59 -07:00
Dan Albert be0af1f7fb Merge "Strip my_clang on assignment." 2014-08-16 04:09:33 +00:00
Dan Albert db905e7b11 Strip my_clang on assignment.
There were a few cases that my_clang was being used without being
stripped. This was causing uses like the following to fail because it
would be partially applied (use clang as the compiler, but don't strip
out incompatible cflags).

    LOCAL_CLANG := true # explanation

To avoid this problem in the future, just strip my_clang when it is
assigned.

Change-Id: I41c2f36a4d4c3aa305a25b4a151c066dad5ffe0f
2014-08-18 11:14:38 -07:00
Elliott Hughes f8d885793d Merge "Remove HAVE_GETTID." 2014-08-16 04:09:33 +00:00
Elliott Hughes 1ac1401a06 Remove HAVE_GETTID.
Bug: 17048545
Change-Id: Ib5b72ecb451a26cb393147a44601566400ca1dd6
2014-08-18 10:49:12 -07:00
Dmitriy Ivanov c15103fa72 Add compile time check for statically linked libc
Bug: 17047392

(cherry picked from commit 655d6851f3)

Change-Id: Ia824137e690b9bca1688a7603254273a737ddcbb
2014-08-15 15:02:09 -07:00
Tim Murray 06659bc9b7 Add flag to enable default clang builds--USE_CLANG_PLATFORM_BUILD.
bug 17007253

Change-Id: Ib11c017bf8aee384e6780e2a1252221fbff3327a
2014-08-13 12:18:30 -07:00
Ying Wang 5bac962903 Fix HOST_LIBRARY_PATH.
Since we switched to $(HOST_OUT)/lib64 for 64-bit libraries and
$(HOST_OUT)/lib for 32-bit libraries.

Change-Id: Ie43bc03c37e2ac8542412a7543a6af5d60c6f725
2014-08-14 12:48:25 -07:00
Ying Wang bfd651600c Apply TARGET_GLOBAL_LDFLAGS to transform-bc-to-so
This fixes mips unbundled build since we switched to mips64el toolchain
for both mips and mips64.
TODO: multilib build support.

Change-Id: I7add92d2cecfc3ab739785ceef6700240a25093a
2014-08-13 19:03:16 -07:00
Andreas Gampe 1be3336d1c Merge "Add a WITH_DEXOPT_BOOT_IMG_ONLY configuration option." 2014-08-11 18:05:20 +00:00
Alex Light 440cc769a3 Add a WITH_DEXOPT_BOOT_IMG_ONLY configuration option.
If WITH_DEXOPT_BOOT_IMG_ONLY=true and WITH_DEXPREOPT=true then we will
only preopt the boot.art and boot.oat files, leaving everything else to
be compiled at first boot. This has fast startup times of WITH_DEXPREOPT
but has a smaller space usage and allows one to update the non-image
parts of /system without reflashing.

Bug: 16938924

Change-Id: Ib366b6b5ad80f7078f01bf51f9fbc29ea7e5d777
2014-08-11 16:40:23 +00:00
Ying Wang 594a10ae77 Consistent use of USE_MINGW
Change-Id: I05e212e5a99639d0196006b9c2ec35072c54f399
2014-08-07 20:08:04 -07:00
Dan Albert 95994def18 Fix Windows SDK build.
Change-Id: Ia2a318957aa525f0e72b556a693a20f513146b64
2014-08-07 18:29:11 -07:00
Dan Albert b6bb71b85d Inhibit implicit -Bsymolic in -shared.
Bug: 16853291

Change-Id: Id70488b077256a70137c4417f21be2c2d1d4341c
2014-08-07 15:43:16 -07:00
Dan Albert 4803ce2696 Fix uses of -fPIC and -fPIE.
We've been using -fPIC and -fPIE together in the global cflags all this
time. These options are incompatible. The only reason we haven't been
hit by this before is because of the forced -Bsymbolic in GCC. To fix
this, pass -fpic when compiling objects for shared libraries and -fpie
when compiling objects for executables. For static libraries, also use
-fpic. We have to do this because static libraries might be included in
either a shared library or an executable. Code compiled with -fpie
cannot be included in a shared library, but code compiled with -fpic
may be included in an executable.

We've also been using -fpic and -fPIC together. These are different
options, and only the latter will take effect.
http://stackoverflow.com/a/967010

The final thing this fixes is that we had -f(PIC|PIE) flags being passed
to link commands. These are compile time flags, and don't do anything at
link time.

Bug: 16823325
Change-Id: Ic76f47e63dc2c81b7e1a8058bae1b3dc8565d606
2014-08-07 10:20:58 -07:00
Alex Light ce090d3f45 Make system use patchoat to relocate during runtime.
Change DexPreOpt to include patch information of all compiled files so
we can relocate at runtime.

Bug: 15358152

Change-Id: Ibe92d8b55a24bbf718b0416a21b76e5df7a2de26
2014-08-05 10:22:09 -07:00
Varvara Rainchik 2d645ab323 Add missing flags to x86 (both 32- and 64-bit) arch variants.
Delete x86_64-atom.mk as we don't support 64-bit on old Atom.

Change-Id: I0b9ab61cd9b840f32c30059cb3ba9704c733c42a
Signed-off-by: Varvara Rainchik <varvara.rainchik@intel.com>
2014-08-04 18:46:14 +04:00
Brian Carlstrom 430ec575cd Merge "Move from dalvik.vm.image-dex2oat-flags to dalvik.vm.dex2oat-filter [build]" 2014-08-01 01:50:59 +00:00
Duane Sand 13066a8d4c [MIPSR6] R6 target options for clang
Pass along new R6 target arch options and floating
point register model options to clang.
Also pass along older arch variants.

This patch depends on recent Mips extensions to 3.5 clang.
The new options are rejected by aosp's current 3.5 clang.
This only affects builds for mips32r6/mips64r6, not Android's
default builds for mips32r2.

Change-Id: Ic921dc14ced34a83143a82e322124b3ef035014a
2014-07-31 14:58:48 -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
Elliott Hughes d23798bfdc Merge "[MIPSR6] Add mips64r6 and mips32r6 targets" 2014-07-30 11:26:00 +00:00
David 'Digit' Turner 44ee3419e7 Update host linux toolchain to gcc 4.8
This patch ensures the build system uses the prebuilt gcc-4.8 toolchain
when building host Linux binaries, instead of the gcc-4.6 one.

Change-Id: I7b449650714ba4314a780827e0243f2af40ec82c
2014-07-31 19:51:40 +02:00