From: John David Anglin Date: Fri, 11 Feb 2011 02:06:55 +0000 (+0000) Subject: backport: config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts. X-Git-Tag: releases/gcc-4.5.3~234 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=025181ca8d56783549f097f4140aabdbd0b311fc;p=thirdparty%2Fgcc.git backport: config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts. Backport from mainline: 2011-02-07 John David Anglin * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts. * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock, pthread_mutex_unlock): Remove. * config/pa/t-pa-hpux11: Remove rules to build pthread stubs. * config/pa/t-pa64: Likewise. * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against shared libc if not linking against libpthread. * config/pa/pa-hpux11.h (LIB_SPEC): Likewise. From-SVN: r170040 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d133983c7779..8b6a30071e08 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,17 @@ +2011-02-10 John David Anglin + + Backport from mainline: + 2011-02-07 John David Anglin + + * config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts. + * config/pa/stublib.c (pthread_default_stacksize_np, pthread_mutex_lock, + pthread_mutex_unlock): Remove. + * config/pa/t-pa-hpux11: Remove rules to build pthread stubs. + * config/pa/t-pa64: Likewise. + * config/pa/pa64-hpux.h (LIB_SPEC): In static links, link against + shared libc if not linking against libpthread. + * config/pa/pa-hpux11.h (LIB_SPEC): Likewise. + 2011-02-03 Michael Meissner Backport from mainline: diff --git a/gcc/config.gcc b/gcc/config.gcc index 712ea04e7b89..544fae18426f 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -1066,7 +1066,6 @@ hppa[12]*-*-hpux11*) else tmake_file="$tmake_file pa/t-slibgcc-dwarf-ver" fi - extra_parts="libgcc_stub.a" case x${enable_threads} in x | xyes | xposix ) thread_file=posix diff --git a/gcc/config/pa/pa-hpux11.h b/gcc/config/pa/pa-hpux11.h index e46042433dfe..ec8c56c72efd 100644 --- a/gcc/config/pa/pa-hpux11.h +++ b/gcc/config/pa/pa-hpux11.h @@ -114,23 +114,19 @@ along with GCC; see the file COPYING3. If not see -z %{mlinker-opt:-O} %{!shared:-u main -u __gcc_plt_call}\ %{static:-a archive} %{shared:-b}" -/* HP-UX 11 has posix threads. HP libc contains pthread stubs so that - non-threaded applications can be linked with a thread-safe libc - without a subsequent loss of performance. For more details, see - . */ +/* HP-UX 11 has posix threads. HP's shared libc contains pthread stubs + so that non-threaded applications can be linked with a thread-safe + libc without a subsequent loss of performance. For more details, + see . */ #undef LIB_SPEC #define LIB_SPEC \ "%{!shared:\ %{fopenmp:%{static:-a archive_shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a archive_shared -ldld -a archive -lc}}}\ + %{static:%{!nolibdld:-a archive_shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}\ %{shared:%{mt|pthread:-lpthread}}" -/* The libgcc_stub.a library needs to come last. */ -#undef LINK_GCC_C_SEQUENCE_SPEC -#define LINK_GCC_C_SEQUENCE_SPEC \ - "%G %L %G %{!nostdlib:%{!nodefaultlibs:%{!shared:-lgcc_stub}}}" - #undef STARTFILE_SPEC #define STARTFILE_SPEC \ "%{!shared:%{pg:gcrt0%O%s}%{!pg:%{p:mcrt0%O%s}%{!p:crt0%O%s}} \ diff --git a/gcc/config/pa/pa64-hpux.h b/gcc/config/pa/pa64-hpux.h index 7edc38235181..574b3175cea9 100644 --- a/gcc/config/pa/pa64-hpux.h +++ b/gcc/config/pa/pa64-hpux.h @@ -61,34 +61,40 @@ along with GCC; see the file COPYING3. If not see "%{!shared:\ %{!p:%{!pg:%{fopenmp:%{static:-a shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}}\ %{p:%{!pg:%{static:%{!mhp-ld:-a shared}%{mhp-ld:-a archive_shared}}\ -lprof %{static:-a archive}\ %{fopenmp:%{static:-a shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}}\ %{pg:%{static:%{!mhp-ld:-a shared}%{mhp-ld:-a archive_shared}}\ -lgprof %{static:-a archive}\ %{fopenmp:%{static:-a shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}}\ %{shared:%{mt|pthread:-lpthread}}" #else #define LIB_SPEC \ "%{!shared:\ %{!p:%{!pg:%{fopenmp:%{static:-a shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}}\ %{p:%{!pg:%{static:%{mgnu-ld:-a shared}%{!mgnu-ld:-a archive_shared}}\ -lprof %{static:-a archive}\ %{fopenmp:%{static:-a shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}}\ %{pg:%{static:%{mgnu-ld:-a shared}%{!mgnu-ld:-a archive_shared}}\ -lgprof %{static:-a archive}\ %{fopenmp:%{static:-a shared} -lrt %{static:-a archive}}\ %{mt|pthread:-lpthread} -lc\ - %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\ + %{static:%{!nolibdld:-a shared -ldld -a archive -lc}\ + %{!mt:%{!pthread:-a shared -lc -a archive}}}}}\ %{shared:%{mt|pthread:-lpthread}}" #endif diff --git a/gcc/config/pa/stublib.c b/gcc/config/pa/stublib.c index a9121008e94b..8b38c8e39b2f 100644 --- a/gcc/config/pa/stublib.c +++ b/gcc/config/pa/stublib.c @@ -56,33 +56,3 @@ _Jv_RegisterClasses (void *p) { } #endif - -#ifdef L_pthread_default_stacksize_np -int pthread_default_stacksize_np (unsigned long __attribute__((unused)), - unsigned long *); -int -pthread_default_stacksize_np (unsigned long new, unsigned long *old) -{ - if (old) - *old = 0; - return 0; -} -#endif - -#ifdef L_pthread_mutex_lock -int pthread_mutex_lock (void * __attribute__((unused))); -int -pthread_mutex_lock (void *p) -{ - return 0; -} -#endif - -#ifdef L_pthread_mutex_unlock -int pthread_mutex_unlock (void * __attribute__((unused))); -int -pthread_mutex_unlock (void *p) -{ - return 0; -} -#endif diff --git a/gcc/config/pa/t-pa-hpux11 b/gcc/config/pa/t-pa-hpux11 index 15b0a85e166a..2773828ac39f 100644 --- a/gcc/config/pa/t-pa-hpux11 +++ b/gcc/config/pa/t-pa-hpux11 @@ -1,26 +1,2 @@ TARGET_LIBGCC2_CFLAGS = -fPIC -frandom-seed=fixed-seed LIB2FUNCS_EXTRA=lib2funcs.asm quadlib.c -LIBGCCSTUB_OBJS = pthread_default_stacksize_np-stub.o \ - pthread_mutex_lock-stub.o \ - pthread_mutex_unlock-stub.o - -stublib.c: $(srcdir)/config/pa/stublib.c - rm -f stublib.c - cp $(srcdir)/config/pa/stublib.c . - -pthread_default_stacksize_np-stub.o: stublib.c $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -O2 -DL_pthread_default_stacksize_np stublib.c \ - -o pthread_default_stacksize_np-stub.o - -pthread_mutex_lock-stub.o: stublib.c $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -O2 -DL_pthread_mutex_lock stublib.c \ - -o pthread_mutex_lock-stub.o - -pthread_mutex_unlock-stub.o: stublib.c $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -O2 -DL_pthread_mutex_unlock stublib.c \ - -o pthread_mutex_unlock-stub.o - -$(T)libgcc_stub.a: $(LIBGCCSTUB_OBJS) - -rm -rf $(T)libgcc_stub.a - $(AR) rc $(T)libgcc_stub.a $(LIBGCCSTUB_OBJS) - $(RANLIB) $(T)libgcc_stub.a diff --git a/gcc/config/pa/t-pa64 b/gcc/config/pa/t-pa64 index 08c1529d2659..66b7e545cf80 100644 --- a/gcc/config/pa/t-pa64 +++ b/gcc/config/pa/t-pa64 @@ -19,10 +19,7 @@ TARGET_LIBGCC2_CFLAGS = -fPIC -Dpa64=1 -DELF=1 -mlong-calls LIB2FUNCS_EXTRA = quadlib.c -LIBGCCSTUB_OBJS = rfi-stub.o dfi-stub.o jvrc-stub.o cxaf-stub.o \ - pthread_default_stacksize_np-stub.o \ - pthread_mutex_lock-stub.o \ - pthread_mutex_unlock-stub.o +LIBGCCSTUB_OBJS = rfi-stub.o dfi-stub.o jvrc-stub.o cxaf-stub.o stublib.c: $(srcdir)/config/pa/stublib.c rm -f stublib.c @@ -44,18 +41,6 @@ jvrc-stub.o: stublib.c $(GCC_PASSES) $(GCC_FOR_TARGET) -c -O2 -DL_Jv_RegisterClasses stublib.c \ -o jvrc-stub.o -pthread_default_stacksize_np-stub.o: stublib.c $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -O2 -DL_pthread_default_stacksize_np stublib.c \ - -o pthread_default_stacksize_np-stub.o - -pthread_mutex_lock-stub.o: stublib.c $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -O2 -DL_pthread_mutex_lock stublib.c \ - -o pthread_mutex_lock-stub.o - -pthread_mutex_unlock-stub.o: stublib.c $(GCC_PASSES) - $(GCC_FOR_TARGET) -c -O2 -DL_pthread_mutex_unlock stublib.c \ - -o pthread_mutex_unlock-stub.o - $(T)libgcc_stub.a: $(LIBGCCSTUB_OBJS) -rm -rf $(T)libgcc_stub.a $(AR) rc $(T)libgcc_stub.a $(LIBGCCSTUB_OBJS)