config.gcc (hppa[12]*-*-hpux11*): Don't set extra_parts.
authorJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>
Mon, 7 Feb 2011 23:51:54 +0000 (23:51 +0000)
committerJohn David Anglin <danglin@gcc.gnu.org>
Mon, 7 Feb 2011 23:51:54 +0000 (23:51 +0000)
* 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: r169906

gcc/ChangeLog
gcc/config.gcc
gcc/config/pa/pa-hpux11.h
gcc/config/pa/pa64-hpux.h
gcc/config/pa/stublib.c
gcc/config/pa/t-pa-hpux11
gcc/config/pa/t-pa64

index 205c781208d39a28647967325889a18a2ed3cb31..a239eca2a041334660bdcecab8bff36aee0547e6 100644 (file)
@@ -1,3 +1,14 @@
+2011-02-07  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * 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-07  Iain Sandoe  <iains@gcc.gnu.org>
 
        PR target/47558
index d79e73420be8259660b4e27361619cee7a4a7920..c11b85477cd4fbc1efabf450fa8d45b50c4abc4d 100644 (file)
@@ -1140,7 +1140,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
index 462fccb6732df1844537f2684c1e88dd13e71fc5..b0fc868a104e40477dfbfd02fc659161150e1fb5 100644 (file)
@@ -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
-   <http://docs.hp.com/en/1896/pthreads.html>.  */
+/* 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 <http://docs.hp.com/en/1896/pthreads.html>.  */
 #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}} \
index 7d9f027558710d70ac31754ea6351122308af16f..cc9724a6e7ebbb5b22ba31d78306fe6f52531a84 100644 (file)
@@ -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
 
index bcf0a37c452ccbfabf797b05708e534a925a7b5d..288645a37721818f4c40a1d7368f64346b01c06c 100644 (file)
@@ -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
index 15b0a85e166a457acfbb7d39f9f92b20d5b92dcc..2773828ac39f194b7d5c7e4577257f6258efb8ed 100644 (file)
@@ -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
index 0a4827ee34c517e426b1fb28ae1afb441a1b0676..488c4d55308f48f67d8b15c6c89eda1abbcf5fd7 100644 (file)
 
 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)