Disable .gnu.attributes tags in compatibility-ldbl.o
authorAlan Modra <amodra@gmail.com>
Wed, 28 Sep 2016 22:03:17 +0000 (07:33 +0930)
committerAlan Modra <amodra@gcc.gnu.org>
Wed, 28 Sep 2016 22:03:17 +0000 (07:33 +0930)
compatibility-ldbl.o is compiled with -mlong-double-64.  When
long double .gnu.attributes tags are checked by the linker, it
complains about the mismatch between this file and others in
libstdc++.

* configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
* src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
Use LONG_DOUBLE_COMPAT_FLAGS.
* Makefile.in: Regenerate.
* configure: Regenerate.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* python/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* src/c++11/Makefile.in: Regenerate.
* src/c++98/Makefile.in: Regenerate.
* src/filesystem/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.

From-SVN: r240602

15 files changed:
libstdc++-v3/ChangeLog
libstdc++-v3/Makefile.in
libstdc++-v3/configure
libstdc++-v3/configure.ac
libstdc++-v3/doc/Makefile.in
libstdc++-v3/include/Makefile.in
libstdc++-v3/libsupc++/Makefile.in
libstdc++-v3/po/Makefile.in
libstdc++-v3/python/Makefile.in
libstdc++-v3/src/Makefile.am
libstdc++-v3/src/Makefile.in
libstdc++-v3/src/c++11/Makefile.in
libstdc++-v3/src/c++98/Makefile.in
libstdc++-v3/src/filesystem/Makefile.in
libstdc++-v3/testsuite/Makefile.in

index ee5a63fc45c9222dfc13d3c246c12d788837283c..d0e2980462cbc2e69690b7486b00117d367c0461 100644 (file)
@@ -1,3 +1,21 @@
+2016-09-29  Alan Modra  <amodra@gmail.com>
+
+       * configure.ac (LONG_DOUBLE_COMPAT_FLAGS): New ACSUBST.
+       * src/Makefile.am (compatibility-ldbl.o, compatibility-ldbl.lo):
+       Use LONG_DOUBLE_COMPAT_FLAGS.
+       * Makefile.in: Regenerate.
+       * configure: Regenerate.
+       * doc/Makefile.in: Regenerate.
+       * include/Makefile.in: Regenerate.
+       * libsupc++/Makefile.in: Regenerate.
+       * po/Makefile.in: Regenerate.
+       * python/Makefile.in: Regenerate.
+       * src/Makefile.in: Regenerate.
+       * src/c++11/Makefile.in: Regenerate.
+       * src/c++98/Makefile.in: Regenerate.
+       * src/filesystem/Makefile.in: Regenerate.
+       * testsuite/Makefile.in: Regenerate.
+
 2016-09-28  Jonathan Wakely  <jwakely@redhat.com>
 
        * include/std/chrono (system_clock): Fix typo in comment.
index 3159b714a1a4713e989935b2d64a731c0d91ed67..c29c09c126f9bed85619e46612acd67002fbe308 100644 (file)
@@ -191,6 +191,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 04612bde76eed141dbb13fa5b444fb7332682db5..f7b424b9e63554dc238293a1aaabe8d78f49b16d 100755 (executable)
@@ -645,6 +645,7 @@ baseline_dir
 HWCAP_FLAGS
 GLIBCXX_LDBL_COMPAT_FALSE
 GLIBCXX_LDBL_COMPAT_TRUE
+LONG_DOUBLE_COMPAT_FLAGS
 ENABLE_CXX11_ABI_FALSE
 ENABLE_CXX11_ABI_TRUE
 glibcxx_cxx98_abi
@@ -11596,7 +11597,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11599 "configure"
+#line 11600 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -11702,7 +11703,7 @@ else
   lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
   lt_status=$lt_dlunknown
   cat > conftest.$ac_ext <<_LT_EOF
-#line 11705 "configure"
+#line 11706 "configure"
 #include "confdefs.h"
 
 #if HAVE_DLFCN_H
@@ -15388,7 +15389,7 @@ $as_echo "$glibcxx_cv_atomic_long_long" >&6; }
   # Fake what AC_TRY_COMPILE does.
 
     cat > conftest.$ac_ext << EOF
-#line 15391 "configure"
+#line 15392 "configure"
 int main()
 {
   typedef bool atomic_type;
@@ -15423,7 +15424,7 @@ $as_echo "$glibcxx_cv_atomic_bool" >&6; }
     rm -f conftest*
 
     cat > conftest.$ac_ext << EOF
-#line 15426 "configure"
+#line 15427 "configure"
 int main()
 {
   typedef short atomic_type;
@@ -15458,7 +15459,7 @@ $as_echo "$glibcxx_cv_atomic_short" >&6; }
     rm -f conftest*
 
     cat > conftest.$ac_ext << EOF
-#line 15461 "configure"
+#line 15462 "configure"
 int main()
 {
   // NB: _Atomic_word not necessarily int.
@@ -15494,7 +15495,7 @@ $as_echo "$glibcxx_cv_atomic_int" >&6; }
     rm -f conftest*
 
     cat > conftest.$ac_ext << EOF
-#line 15497 "configure"
+#line 15498 "configure"
 int main()
 {
   typedef long long atomic_type;
@@ -15575,7 +15576,7 @@ $as_echo "$as_me: WARNING: Performance of certain classes will degrade as a resu
   # unnecessary for this test.
 
     cat > conftest.$ac_ext << EOF
-#line 15578 "configure"
+#line 15579 "configure"
 int main()
 {
   _Decimal32 d1;
@@ -15617,7 +15618,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
   # unnecessary for this test.
 
     cat > conftest.$ac_ext << EOF
-#line 15620 "configure"
+#line 15621 "configure"
 template<typename T1, typename T2>
   struct same
   { typedef T2 type; };
@@ -15651,7 +15652,7 @@ $as_echo "$enable_int128" >&6; }
     rm -f conftest*
 
     cat > conftest.$ac_ext << EOF
-#line 15654 "configure"
+#line 15655 "configure"
 template<typename T1, typename T2>
   struct same
   { typedef T2 type; };
@@ -79344,6 +79345,7 @@ $as_echo "${default_libstdcxx_abi}" >&6; }
 
 
 ac_ldbl_compat=no
+LONG_DOUBLE_COMPAT_FLAGS="-mlong-double-64"
 case "$target" in
   powerpc*-*-linux* | \
   sparc*-*-linux* | \
@@ -79375,10 +79377,15 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
 $as_echo "#define _GLIBCXX_LONG_DOUBLE_COMPAT 1" >>confdefs.h
 
     port_specific_symbol_files="\$(top_srcdir)/config/os/gnu-linux/ldbl-extra.ver"
+    case "$target" in
+      powerpc*-*-linux*)
+       LONG_DOUBLE_COMPAT_FLAGS="$LONG_DOUBLE_COMPAT_FLAGS -mno-gnu-attribute" ;;
+    esac
   fi
 esac
 
 
+
 # Check if assembler supports disabling hardware capability support.
 
   test -z "$HWCAP_FLAGS" && HWCAP_FLAGS=''
index baf605cfea6ace85e0c9bd8b50276da528d320af..7d0fafab514365411b1074aff94dd14fc2d5ccf4 100644 (file)
@@ -375,6 +375,7 @@ GLIBCXX_ENABLE_LIBSTDCXX_DUAL_ABI([yes])
 GLIBCXX_DEFAULT_ABI
 
 ac_ldbl_compat=no
+LONG_DOUBLE_COMPAT_FLAGS="-mlong-double-64"
 case "$target" in
   powerpc*-*-linux* | \
   sparc*-*-linux* | \
@@ -389,8 +390,13 @@ case "$target" in
     AC_DEFINE([_GLIBCXX_LONG_DOUBLE_COMPAT],1,
              [Define if compatibility should be provided for -mlong-double-64.])
     port_specific_symbol_files="\$(top_srcdir)/config/os/gnu-linux/ldbl-extra.ver"
+    case "$target" in
+      powerpc*-*-linux*)
+       LONG_DOUBLE_COMPAT_FLAGS="$LONG_DOUBLE_COMPAT_FLAGS -mno-gnu-attribute" ;;
+    esac
   fi
 esac
+AC_SUBST(LONG_DOUBLE_COMPAT_FLAGS)
 GLIBCXX_CONDITIONAL(GLIBCXX_LDBL_COMPAT, test $ac_ldbl_compat = yes)
 
 # Check if assembler supports disabling hardware capability support.
index 3e729c130e76cd25395cb2478f83f1b2513e79cc..c3874f757a4f79d0165913eac02aa320e269210a 100644 (file)
@@ -163,6 +163,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 502a89e1fb0963010edabdeddc4dc0f4501ecc9f..4e2b9e4f6763d4512d67a48ab0b70dd6c7584484 100644 (file)
@@ -163,6 +163,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index e828ed909cae06e4455644db825742439fdda5fa..3e663e0026aed5ea399fbd39ac3a1e845f1828b9 100644 (file)
@@ -236,6 +236,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 13993c85819e2f7ac4a4c4d0e2cc1ca63ba5c0bf..83f13d08a956eaa42a96d8820375bc2cf79fe5e8 100644 (file)
@@ -163,6 +163,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 25b2ed487b2588e03a99dba6c766b0e488d297d7..dcc9e06be43b6f61a30e78854d409ae9f1922d47 100644 (file)
@@ -193,6 +193,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 00a6168508df4fc36ecffabf9c43f0214f6ad377..d9830c2a8db7316453b2ba74da0adb601e45463c 100644 (file)
@@ -109,9 +109,9 @@ libstdc___la_LINK = $(CXXLINK) $(libstdc___la_LDFLAGS)
 # pass -mlong-double-64.
 if GLIBCXX_LDBL_COMPAT
 compatibility-ldbl.lo: compatibility-ldbl.cc
-       $(LTCXXCOMPILE) -mlong-double-64 -c $<
+       $(LTCXXCOMPILE) $(LONG_DOUBLE_COMPAT_FLAGS) -c $<
 compatibility-ldbl.o: compatibility-ldbl.cc
-       $(CXXCOMPILE) -mlong-double-64 -c $<
+       $(CXXCOMPILE) $(LONG_DOUBLE_COMPAT_FLAGS) -c $<
 endif
 
 # Use special rules for C++11 files/objects.
index 09fe24eab67c8602ad2c3c681f645ad5a444702c..ed532699fe736175810d5c27edb56216462fa6a0 100644 (file)
@@ -226,6 +226,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
@@ -902,9 +903,9 @@ vpath % $(top_srcdir)/src/c++11
 # Use special rules for compatibility-ldbl.cc compilation, as we need to
 # pass -mlong-double-64.
 @GLIBCXX_LDBL_COMPAT_TRUE@compatibility-ldbl.lo: compatibility-ldbl.cc
-@GLIBCXX_LDBL_COMPAT_TRUE@     $(LTCXXCOMPILE) -mlong-double-64 -c $<
+@GLIBCXX_LDBL_COMPAT_TRUE@     $(LTCXXCOMPILE) $(LONG_DOUBLE_COMPAT_FLAGS) -c $<
 @GLIBCXX_LDBL_COMPAT_TRUE@compatibility-ldbl.o: compatibility-ldbl.cc
-@GLIBCXX_LDBL_COMPAT_TRUE@     $(CXXCOMPILE) -mlong-double-64 -c $<
+@GLIBCXX_LDBL_COMPAT_TRUE@     $(CXXCOMPILE) $(LONG_DOUBLE_COMPAT_FLAGS) -c $<
 
 # Use special rules for C++11 files/objects.
 compatibility-c++0x.lo: compatibility-c++0x.cc
index 30c4a23b87a5d96ea4525d60225e29f27eb7b6c1..465ec3a4fb82312cc87d151dd5e139eafcb930c0 100644 (file)
@@ -196,6 +196,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 931f8793216368a3f7451d331984a11100e41695..591fe709476a7929ec964774eb8c419ec919edf3 100644 (file)
@@ -197,6 +197,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 7e77aa55b8bf58b2432b17956799a6d77811d6ab..a620c68f0171cf99e757fd5a7b2d59a4017db105 100644 (file)
@@ -205,6 +205,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@
index 31fa94c42cb0d536170e5c81eef93ff35f2fa303..b37758b2ccbc9969a57e6f7b82f5b035f06efe4b 100644 (file)
@@ -163,6 +163,7 @@ LIBS = @LIBS@
 LIBTOOL = @LIBTOOL@
 LIPO = @LIPO@
 LN_S = @LN_S@
+LONG_DOUBLE_COMPAT_FLAGS = @LONG_DOUBLE_COMPAT_FLAGS@
 LTLIBICONV = @LTLIBICONV@
 LTLIBOBJS = @LTLIBOBJS@
 MAINT = @MAINT@