gcc:
authorro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 31 Jan 2011 13:52:42 +0000 (13:52 +0000)
committerro <ro@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 31 Jan 2011 13:52:42 +0000 (13:52 +0000)
* configure.ac (gcc_cv_ld_static_option): Define.
(gcc_cv_ld_dynamic_option): Define.
(gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
instead.
(HAVE_LD_STATIC_DYNAMIC): Update message.
(LD_STATIC_OPTION): Define.
(LD_DYNAMIC_OPTION): Define.
* configure: Regenerate.
* config.in: Regenerate.
* gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
HAVE_LD_STATIC_DYNAMIC]: Use them.

gcc/cp:
* g++spec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
LD_STATIC_OPTION, LD_DYNAMIC_OPTION.

gcc/fortran:
* gfortranspec.c (add_arg_libgfortran) [HAVE_LD_STATIC_DYNAMIC] Use
LD_STATIC_OPTION, LD_DYNAMIC_OPTION.

gcc/go:
* gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
LD_STATIC_OPTION, LD_DYNAMIC_OPTION.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169435 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config.in
gcc/configure
gcc/configure.ac
gcc/cp/ChangeLog
gcc/cp/g++spec.c
gcc/fortran/ChangeLog
gcc/fortran/gfortranspec.c
gcc/gcc.c
gcc/go/ChangeLog
gcc/go/gospec.c

index b054ad2..272dc42 100644 (file)
@@ -1,3 +1,17 @@
+2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * configure.ac (gcc_cv_ld_static_option): Define.
+       (gcc_cv_ld_dynamic_option): Define.
+       (gcc_cv_ld_static_dynamic): Tru64 UNIX support -noso/-so_archive
+       instead.
+       (HAVE_LD_STATIC_DYNAMIC): Update message.
+       (LD_STATIC_OPTION): Define.
+       (LD_DYNAMIC_OPTION): Define.
+       * configure: Regenerate.
+       * config.in: Regenerate.
+       * gcc.c (init_spec) [USE_LIBUNWIND_EXCEPTIONS &&
+       HAVE_LD_STATIC_DYNAMIC]: Use them.
+
 2011-01-31  Nick Clifton  <nickc@redhat.com>
 
        * config/rx/rx.c (rx_get_stack_layout): Only save call clobbered
index 9df41a1..f3b0eee 100644 (file)
 #undef HAVE_LDFCN_H
 #endif
 
-/* Define if your linker supports plugin. */
-#ifndef USED_FOR_TARGET
-#undef HAVE_LTO_PLUGIN
-#endif
 
 /* Define if your linker supports --as-needed and --no-as-needed options. */
 #ifndef USED_FOR_TARGET
 #endif
 
 
-/* Define if your linker supports -Bstatic/-Bdynamic option. */
+/* Define if your linker supports -Bstatic/-Bdynamic or equivalent options. */
 #ifndef USED_FOR_TARGET
 #undef HAVE_LD_STATIC_DYNAMIC
 #endif
 #endif
 
 
+/* Define if your linker supports plugin. */
+#ifndef USED_FOR_TARGET
+#undef HAVE_LTO_PLUGIN
+#endif
+
+
 /* Define to 1 if you have the <malloc.h> header file. */
 #ifndef USED_FOR_TARGET
 #undef HAVE_MALLOC_H
 #endif
 
 
+/* Define to the linker option to enable use of shared objects. */
+#ifndef USED_FOR_TARGET
+#undef LD_DYNAMIC_OPTION
+#endif
+
+
+/* Define to the linker option to disable use of shared objects. */
+#ifndef USED_FOR_TARGET
+#undef LD_STATIC_OPTION
+#endif
+
+
 /* Define to the linker flags to use for -pthread. */
 #ifndef USED_FOR_TARGET
 #undef LIB_THREAD_LDFLAGS_SPEC
index 6bde5f9..85af3e5 100755 (executable)
@@ -23051,6 +23051,8 @@ fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking linker -Bstatic/-Bdynamic option" >&5
 $as_echo_n "checking linker -Bstatic/-Bdynamic option... " >&6; }
 gcc_cv_ld_static_dynamic=no
+gcc_cv_ld_static_option='-Bstatic'
+gcc_cv_ld_dynamic_option='-Bdynamic'
 if test $in_tree_ld = yes ; then
   if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 10 -o "$gcc_cv_gld_major_version" -gt 2; then
     gcc_cv_ld_static_dynamic=yes
@@ -23062,6 +23064,12 @@ elif test x$gcc_cv_ld != x; then
       gcc_cv_ld_static_dynamic=yes
   else
     case "$target" in
+      # Tru64 UNIX support -noso/-so_archive instead of -Bstatic/-Bdynamic.
+      alpha*-dec-osf*)
+        gcc_cv_ld_static_dynamic=yes
+       gcc_cv_ld_static_option="-noso"
+       gcc_cv_ld_dynamic_option="-so_archive"
+        ;;
       # IRIX 6 ld supports -Bstatic/-Bdynamic.
       mips-sgi-irix6*)
         gcc_cv_ld_static_dynamic=yes
@@ -23077,6 +23085,16 @@ if test x"$gcc_cv_ld_static_dynamic" = xyes; then
 
 $as_echo "#define HAVE_LD_STATIC_DYNAMIC 1" >>confdefs.h
 
+
+cat >>confdefs.h <<_ACEOF
+#define LD_STATIC_OPTION "$gcc_cv_ld_static_option"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define LD_DYNAMIC_OPTION "$gcc_cv_ld_dynamic_option"
+_ACEOF
+
 fi
 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_ld_static_dynamic" >&5
 $as_echo "$gcc_cv_ld_static_dynamic" >&6; }
index 60d4f31..6a90014 100644 (file)
@@ -3112,6 +3112,8 @@ fi
 
 AC_MSG_CHECKING(linker -Bstatic/-Bdynamic option)
 gcc_cv_ld_static_dynamic=no
+gcc_cv_ld_static_option='-Bstatic'
+gcc_cv_ld_dynamic_option='-Bdynamic'
 if test $in_tree_ld = yes ; then
   if test "$gcc_cv_gld_major_version" -eq 2 -a "$gcc_cv_gld_minor_version" -ge 10 -o "$gcc_cv_gld_major_version" -gt 2; then
     gcc_cv_ld_static_dynamic=yes
@@ -3123,6 +3125,12 @@ elif test x$gcc_cv_ld != x; then
       gcc_cv_ld_static_dynamic=yes
   else
     case "$target" in
+      # Tru64 UNIX support -noso/-so_archive instead of -Bstatic/-Bdynamic.
+      alpha*-dec-osf*)
+        gcc_cv_ld_static_dynamic=yes
+       gcc_cv_ld_static_option="-noso"
+       gcc_cv_ld_dynamic_option="-so_archive"
+        ;;
       # IRIX 6 ld supports -Bstatic/-Bdynamic.
       mips-sgi-irix6*)
         gcc_cv_ld_static_dynamic=yes
@@ -3136,7 +3144,11 @@ elif test x$gcc_cv_ld != x; then
 fi
 if test x"$gcc_cv_ld_static_dynamic" = xyes; then
        AC_DEFINE(HAVE_LD_STATIC_DYNAMIC, 1,
-[Define if your linker supports -Bstatic/-Bdynamic option.])
+[Define if your linker supports -Bstatic/-Bdynamic or equivalent options.])
+       AC_DEFINE_UNQUOTED(LD_STATIC_OPTION, "$gcc_cv_ld_static_option",
+[Define to the linker option to disable use of shared objects.])
+       AC_DEFINE_UNQUOTED(LD_DYNAMIC_OPTION, "$gcc_cv_ld_dynamic_option",
+[Define to the linker option to enable use of shared objects.])
 fi
 AC_MSG_RESULT($gcc_cv_ld_static_dynamic)
 
index b38ed5f..48bc1db 100644 (file)
@@ -1,3 +1,8 @@
+2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * g++spec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
+       LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
+
 2011-01-29  Dodji Seketeli  <dodji@redhat.com>
 
        PR c++/47311
index 9ebf6bc..3a9faa9 100644 (file)
@@ -1,6 +1,6 @@
 /* Specific flags and argument handling of the C++ front end.
    Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
-   2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+   2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -316,7 +316,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
 #ifdef HAVE_LD_STATIC_DYNAMIC
       if (library > 1 && !static_link)
        {
-         generate_option (OPT_Wl_, "-Bstatic", 1, CL_DRIVER,
+         generate_option (OPT_Wl_, LD_STATIC_OPTION, 1, CL_DRIVER,
                           &new_decoded_options[j]);
          j++;
        }
@@ -337,7 +337,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
 #ifdef HAVE_LD_STATIC_DYNAMIC
       if (library > 1 && !static_link)
        {
-         generate_option (OPT_Wl_, "-Bdynamic", 1, CL_DRIVER,
+         generate_option (OPT_Wl_, LD_DYNAMIC_OPTION, 1, CL_DRIVER,
                           &new_decoded_options[j]);
          j++;
        }
index ecdf2de..f787a97 100644 (file)
@@ -1,3 +1,8 @@
+2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * gfortranspec.c (add_arg_libgfortran) [HAVE_LD_STATIC_DYNAMIC] Use
+       LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
+
 2011-01-31  Tobias Burnus  <burnus@net-b.de>
 
        PR fortran/47042
index a9bc714..2d732fd 100644 (file)
@@ -192,12 +192,12 @@ add_arg_libgfortran (bool force_static ATTRIBUTE_UNUSED)
 {
 #ifdef HAVE_LD_STATIC_DYNAMIC
   if (force_static)
-    append_option (OPT_Wl_, "-Bstatic", 1);
+    append_option (OPT_Wl_, LD_STATIC_OPTION, 1);
 #endif
   append_option (OPT_l, FORTRAN_LIBRARY, 1);
 #ifdef HAVE_LD_STATIC_DYNAMIC
   if (force_static)
-    append_option (OPT_Wl_, "-Bdynamic", 1);
+    append_option (OPT_Wl_, LD_DYNAMIC_OPTION, 1);
 #endif
 }
 
index ea3403b..1736b09 100644 (file)
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -1375,7 +1375,8 @@ init_spec (void)
                            "-lgcc_eh"
 #ifdef USE_LIBUNWIND_EXCEPTIONS
 # ifdef HAVE_LD_STATIC_DYNAMIC
-                           " %{!static:-Bstatic} -lunwind %{!static:-Bdynamic}"
+                           " %{!static:" LD_STATIC_OPTION "} -lunwind"
+                           " %{!static:" LD_DYNAMIC_OPTION "}"
 # else
                            " -lunwind"
 # endif
index 7c1f272..ff6958a 100644 (file)
@@ -1,3 +1,8 @@
+2011-01-31  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
+
+       * gospec.c (lang_specific_driver) [HAVE_LD_STATIC_DYNAMIC] Use
+       LD_STATIC_OPTION, LD_DYNAMIC_OPTION.
+
 2011-01-21  Ian Lance Taylor  <iant@google.com>
 
        * go-lang.c (go_langhook_init): Omit float_type_size when calling
index 7d21ace..55a3bcd 100644 (file)
@@ -1,5 +1,5 @@
 /* gospec.c -- Specific flags and argument handling of the gcc Go front end.
-   Copyright (C) 2009, 2010 Free Software Foundation, Inc.
+   Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
 
 This file is part of GCC.
 
@@ -301,7 +301,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
 #ifdef HAVE_LD_STATIC_DYNAMIC
       if (library > 1 && !static_link)
        {
-         generate_option (OPT_Wl_, "-Bstatic", 1, CL_DRIVER,
+         generate_option (OPT_Wl_, LD_STATIC_OPTION, 1, CL_DRIVER,
                           &new_decoded_options[j]);
          j++;
        }
@@ -315,7 +315,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
 #ifdef HAVE_LD_STATIC_DYNAMIC
       if (library > 1 && !static_link)
        {
-         generate_option (OPT_Wl_, "-Bdynamic", 1, CL_DRIVER,
+         generate_option (OPT_Wl_, LD_DYNAMIC_OPTION, 1, CL_DRIVER,
                           &new_decoded_options[j]);
          j++;
        }