From b6e375800c9a2f02a732cbdf5e87a860c3d954e1 Mon Sep 17 00:00:00 2001 From: Andrew Hsieh Date: Thu, 27 Dec 2012 09:14:35 +0800 Subject: Fix OpenMP Based on 1271761f530c0050154e8d526b95f952df551751, 92c478dba755a1a2f6f00ff390666acbffd41982, and 51df2e98d22e2c6f5d2a16860bc8fc3644179c1d. With the following modifications: 1. Translate -pthread to -lc instead of -lpthread Android doesn't have (has pthread* in libc.so instead) 2. Because of 1., we can restore to the original order of LINUX_OR_ANDROID_LD Change-Id: I505250c32b9908cb17bb269dc26e73c91669c07f --- gcc-4.7/gcc/config/arm/linux-eabi.h | 2 +- gcc-4.7/gcc/config/gnu-user.h | 8 +++++--- gcc-4.7/gcc/config/i386/gnu-user.h | 2 +- gcc-4.7/gcc/config/i386/gnu-user64.h | 2 +- gcc-4.7/gcc/config/linux-android.h | 4 ++-- gcc-4.7/gcc/config/mips/gnu-user.h | 8 +++++--- 6 files changed, 15 insertions(+), 11 deletions(-) (limited to 'gcc-4.7') diff --git a/gcc-4.7/gcc/config/arm/linux-eabi.h b/gcc-4.7/gcc/config/arm/linux-eabi.h index ddeb627c9..9074c519f 100644 --- a/gcc-4.7/gcc/config/arm/linux-eabi.h +++ b/gcc-4.7/gcc/config/arm/linux-eabi.h @@ -87,7 +87,7 @@ #undef LIB_SPEC #define LIB_SPEC \ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \ - ANDROID_LIB_SPEC " " GNU_USER_TARGET_LIB_SPEC ) + GNU_USER_TARGET_LIB_SPEC_LESS_PTHREAD " " ANDROID_LIB_SPEC) #undef STARTFILE_SPEC #define STARTFILE_SPEC \ diff --git a/gcc-4.7/gcc/config/gnu-user.h b/gcc-4.7/gcc/config/gnu-user.h index cb457490e..644a1a8a2 100644 --- a/gcc-4.7/gcc/config/gnu-user.h +++ b/gcc-4.7/gcc/config/gnu-user.h @@ -74,10 +74,12 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #undef CPLUSPLUS_CPP_SPEC #define CPLUSPLUS_CPP_SPEC "-D_GNU_SOURCE %(cpp)" -#define GNU_USER_TARGET_LIB_SPEC \ - "%{pthread:-lpthread} \ - %{shared:-lc} \ +#define GNU_USER_TARGET_LIB_SPEC_LESS_PTHREAD \ + "%{shared:-lc} \ %{!shared:%{mieee-fp:-lieee} %{profile:-lc_p}%{!profile:-lc}}" +#define GNU_USER_TARGET_LIB_SPEC \ + "%{pthread:-lpthread} "\ + GNU_USER_TARGET_LIB_SPEC_LESS_PTHREAD #undef LIB_SPEC #define LIB_SPEC GNU_USER_TARGET_LIB_SPEC diff --git a/gcc-4.7/gcc/config/i386/gnu-user.h b/gcc-4.7/gcc/config/i386/gnu-user.h index 12b00e164..ec45caa9a 100644 --- a/gcc-4.7/gcc/config/i386/gnu-user.h +++ b/gcc-4.7/gcc/config/i386/gnu-user.h @@ -127,7 +127,7 @@ along with GCC; see the file COPYING3. If not see #undef LIB_SPEC #define LIB_SPEC \ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \ - GNU_USER_TARGET_LIB_SPEC " " ANDROID_LIB_SPEC) + GNU_USER_TARGET_LIB_SPEC_LESS_PTHREAD " " ANDROID_LIB_SPEC) #undef STARTFILE_SPEC #define STARTFILE_SPEC \ diff --git a/gcc-4.7/gcc/config/i386/gnu-user64.h b/gcc-4.7/gcc/config/i386/gnu-user64.h index a389ebb6c..ed06b6afe 100644 --- a/gcc-4.7/gcc/config/i386/gnu-user64.h +++ b/gcc-4.7/gcc/config/i386/gnu-user64.h @@ -97,7 +97,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #undef LIB_SPEC #define LIB_SPEC \ LINUX_OR_ANDROID_LD (GNU_USER_TARGET_LIB_SPEC, \ - GNU_USER_TARGET_LIB_SPEC " " ANDROID_LIB_SPEC) + GNU_USER_TARGET_LIB_SPEC_LESS_PTHREAD " " ANDROID_LIB_SPEC) #undef STARTFILE_SPEC #define STARTFILE_SPEC \ diff --git a/gcc-4.7/gcc/config/linux-android.h b/gcc-4.7/gcc/config/linux-android.h index c6d9cddb9..c19b1c13d 100644 --- a/gcc-4.7/gcc/config/linux-android.h +++ b/gcc-4.7/gcc/config/linux-android.h @@ -53,8 +53,8 @@ "--noexecstack" #define ANDROID_LIB_SPEC \ - "%{!static: -ldl}" \ - "%{pthread:-lc}" + "%{!static: -ldl} \ + %{pthread: -lc}" #define ANDROID_STARTFILE_SPEC \ "%{shared: crtbegin_so%O%s;:" \ diff --git a/gcc-4.7/gcc/config/mips/gnu-user.h b/gcc-4.7/gcc/config/mips/gnu-user.h index ebce0822f..33e7b51a9 100644 --- a/gcc-4.7/gcc/config/mips/gnu-user.h +++ b/gcc-4.7/gcc/config/mips/gnu-user.h @@ -93,11 +93,13 @@ along with GCC; see the file COPYING3. If not see #undef ASM_OUTPUT_REG_POP #undef LINUX_SUBTARGET_LIB_SPEC -#define LINUX_SUBTARGET_LIB_SPEC "\ -%{pthread:-lpthread} \ +#define LINUX_SUBTARGET_LIB_SPEC_LESS_PTHREAD "\ %{shared:-lc} \ %{!shared: \ %{profile:-lc_p} %{!profile:-lc}}" +#define LINUX_SUBTARGET_LIB_SPEC "\ +%{pthread:-lpthread} " \ +LINUX_SUBTARGET_LIB_SPEC_LESS_PTHREAD #ifdef HAVE_AS_NO_SHARED /* Default to -mno-shared for non-PIC. */ @@ -157,7 +159,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv); #undef LIB_SPEC #define LIB_SPEC \ LINUX_OR_ANDROID_LD (LINUX_SUBTARGET_LIB_SPEC, \ - LINUX_SUBTARGET_LIB_SPEC " " ANDROID_LIB_SPEC) + LINUX_SUBTARGET_LIB_SPEC_LESS_PTHREAD " " ANDROID_LIB_SPEC) #undef STARTFILE_SPEC #define STARTFILE_SPEC \ -- cgit v1.2.3