* pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
authordanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 28 Feb 2004 22:40:38 +0000 (22:40 +0000)
committerdanglin <danglin@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 28 Feb 2004 22:40:38 +0000 (22:40 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@78632 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/pa/pa64-hpux.h

index f255b8a..750d29b 100644 (file)
@@ -1,3 +1,7 @@
+2004-02-28  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>
+
+       * pa64-hpux.h (LIB_SPEC): Fix linking under HP-UX 11.00 with -p and -pg.
+
 2004-02-28  Kazu Hirata  <kazu@cs.umass.edu>
 
        * genattr.c (main): Don't define
index eed1672..098f47f 100644 (file)
@@ -57,14 +57,20 @@ Boston, MA 02111-1307, USA.  */
    %{static:-a archive} %{shared:%{mgnu-ld:-shared}%{!mgnu-ld:-b}}"
 #endif
 
-/* Like the default, except no -lg.  */
+/* Profiling support is only provided in libc.a.  However, libprof and
+   libgprof are only available in shared form on HP-UX 11.00.  We use
+   the shared form if we are using the GNU linker or an archive form
+   isn't available.  We also usually need to link with libdld and it's
+   only available in shared form.  */
 #undef LIB_SPEC
 #define LIB_SPEC \
   "%{!shared:\
      %{!p:%{!pg: -lc %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
-     %{p:%{!pg:-lprof -lc\
-       %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
-     %{pg:-lgprof -lc\
+     %{p:%{!pg:%{static:%{mgnu-ld:-a shared}%{!mgnu-ld:-a archive_shared}}\
+          -lprof %{static:-a archive} -lc\
+          %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
+     %{pg:%{static:%{mgnu-ld:-a shared}%{!mgnu-ld:-a archive_shared}}\
+       -lgprof %{static:-a archive} -lc\
        %{static:%{!nolibdld:-a shared -ldld -a archive -lc}}}}\
    /usr/lib/pa20_64/milli.a"