diff options
author | Ben Cheng <bccheng@google.com> | 2014-04-02 13:57:00 -0700 |
---|---|---|
committer | Ben Cheng <bccheng@google.com> | 2014-04-02 13:59:52 -0700 |
commit | 65453211e00f83dee15ba04e3297852d1683160d (patch) | |
tree | 1feda08de2c1d27a5872847fb1a180e9d4d3dee2 /gcc-4.9/gcc/config/aarch64 | |
parent | 3afa2d0f090d332334952779d7c0ad6e3a20c1f3 (diff) | |
download | toolchain_gcc-65453211e00f83dee15ba04e3297852d1683160d.tar.gz toolchain_gcc-65453211e00f83dee15ba04e3297852d1683160d.tar.bz2 toolchain_gcc-65453211e00f83dee15ba04e3297852d1683160d.zip |
[4.9] Apply aarch64 patches for Android toolchain build.
- The changes in gcc/config.gcc and gcc/config/aarch64/aarch64-linux.h
will be upstreamed.
- libatomic is disabled for now.
- md_unwind_header in libgcc/config.host is also disabled for now due to
lack of sys/ucontext.h.
Change-Id: Idad7c75a9eaf27e6737fe3a217ff2791b4bf8358
Diffstat (limited to 'gcc-4.9/gcc/config/aarch64')
-rw-r--r-- | gcc-4.9/gcc/config/aarch64/aarch64-linux.h | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/gcc-4.9/gcc/config/aarch64/aarch64-linux.h b/gcc-4.9/gcc/config/aarch64/aarch64-linux.h index a8f077156..4eacdb239 100644 --- a/gcc-4.9/gcc/config/aarch64/aarch64-linux.h +++ b/gcc-4.9/gcc/config/aarch64/aarch64-linux.h @@ -22,6 +22,7 @@ #define GCC_AARCH64_LINUX_H #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-aarch64%{mbig-endian:_be}.so.1" +#define BIONIC_DYNAMIC_LINKER "/system/bin/linker64" #define CPP_SPEC "%{pthread:-D_REENTRANT}" @@ -35,13 +36,38 @@ %{mbig-endian:-EB} %{mlittle-endian:-EL} \ -maarch64linux%{mbig-endian:b}" -#define LINK_SPEC LINUX_TARGET_LINK_SPEC - #define TARGET_OS_CPP_BUILTINS() \ do \ { \ GNU_USER_TARGET_OS_CPP_BUILTINS(); \ + ANDROID_TARGET_OS_CPP_BUILTINS(); \ } \ while (0) +#undef LINK_SPEC +#define LINK_SPEC \ + LINUX_OR_ANDROID_LD (LINUX_TARGET_LINK_SPEC, \ + LINUX_TARGET_LINK_SPEC " " ANDROID_LINK_SPEC) + +#undef CC1_SPEC +#define CC1_SPEC \ + LINUX_OR_ANDROID_CC (GNU_USER_TARGET_CC1_SPEC, \ + GNU_USER_TARGET_CC1_SPEC " " ANDROID_CC1_SPEC) + +#define CC1PLUS_SPEC \ + LINUX_OR_ANDROID_CC ("", ANDROID_CC1PLUS_SPEC) + +#undef LIB_SPEC +#define LIB_SPEC \ + LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \ + GNU_USER_TARGET_NO_PTHREADS_LIB_SPEC " " ANDROID_LIB_SPEC) + +#undef STARTFILE_SPEC +#define STARTFILE_SPEC \ + LINUX_OR_ANDROID_LD (GNU_USER_TARGET_STARTFILE_SPEC, ANDROID_STARTFILE_SPEC) + +#undef ENDFILE_SPEC +#define ENDFILE_SPEC \ + LINUX_OR_ANDROID_LD (GNU_USER_TARGET_ENDFILE_SPEC, ANDROID_ENDFILE_SPEC) + #endif /* GCC_AARCH64_LINUX_H */ |