Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/gpl3/gcc #if 0 the x and y symbols in GLIBCXX_3.4 n...



details:   https://anonhg.NetBSD.org/src/rev/52213dd44492
branches:  trunk
changeset: 449268:52213dd44492
user:      mrg <mrg%NetBSD.org@localhost>
date:      Fri Mar 01 08:15:23 2019 +0000

description:
#if 0 the x and y symbols in GLIBCXX_3.4 namespace.  they cause
duplicate symbols on netbsd.  see PR#54027.

with this disabled, turn on using the symver-config.h for the
gnu.ver processing so that other defines are handled.

fix some depends for gnu.ver processing.

diffstat:

 external/gpl3/gcc/dist/libstdc++-v3/config/abi/pre/gnu.ver |   6 ++++++
 external/gpl3/gcc/lib/libstdc++-v3/Makefile                |  14 +++++++++-----
 2 files changed, 15 insertions(+), 5 deletions(-)

diffs (58 lines):

diff -r ab3e4fc63933 -r 52213dd44492 external/gpl3/gcc/dist/libstdc++-v3/config/abi/pre/gnu.ver
--- a/external/gpl3/gcc/dist/libstdc++-v3/config/abi/pre/gnu.ver        Fri Mar 01 08:05:46 2019 +0000
+++ b/external/gpl3/gcc/dist/libstdc++-v3/config/abi/pre/gnu.ver        Fri Mar 01 08:15:23 2019 +0000
@@ -1007,7 +1007,10 @@
 #ifdef HAVE_SYMVER_SYMBOL_RENAMING_RUNTIME_SUPPORT
    # GLIBCXX_ABI compatibility only.
     # std::string
+    # XXXMRG this causes dupe symbols on netbsd
+#if 0
     _ZNKSs11_M_disjunctEPKc;
+#endif
     _ZNKSs15_M_check_lengthE[jmy][jmy]PKc;
     _ZNSs4_Rep26_M_set_length_and_sharableE*;
     _ZNSs7_M_copyEPcPKc[jmy];
@@ -1015,7 +1018,10 @@
     _ZNSs9_M_assignEPc[jmy]c;
 
     # std::wstring
+    # XXXMRG this causes dupe symbols on netbsd
+#if 0
     _ZNKSbIwSt11char_traitsIwESaIwEE11_M_disjunctEPKw;
+#endif
     _ZNKSbIwSt11char_traitsIwESaIwEE15_M_check_lengthE[jmy][jmy]PKc;
     _ZNSbIwSt11char_traitsIwESaIwEE4_Rep26_M_set_length_and_sharableE*;
     _ZNSbIwSt11char_traitsIwESaIwEE7_M_copyEPwPKw[jmy];
diff -r ab3e4fc63933 -r 52213dd44492 external/gpl3/gcc/lib/libstdc++-v3/Makefile
--- a/external/gpl3/gcc/lib/libstdc++-v3/Makefile       Fri Mar 01 08:05:46 2019 +0000
+++ b/external/gpl3/gcc/lib/libstdc++-v3/Makefile       Fri Mar 01 08:15:23 2019 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: Makefile,v 1.44 2019/02/27 08:21:42 mrg Exp $
+#      $NetBSD: Makefile,v 1.45 2019/03/01 08:15:23 mrg Exp $
 
 REQUIRETOOLS=  yes
 NOLINT=                # defined
@@ -18,15 +18,19 @@
 COPTS.random.cc+=      ${${ACTIVE_CC} == "clang":? -mrdrnd :}
 .endif
 
+DIST=          ${GCCDIST}
+GNUVER=                ${DIST}/libstdc++-v3/config/abi/pre/gnu.ver
 SYMBOLS=       libstdc++-symbols.ver
 .if ${MKPIC} != "no"
-${SYMBOLS}: Makefile
-       cat ${DIST}/libstdc++-v3/config/abi/pre/gnu.ver ${G_port_specific_symbol_files} | \
+${SYMBOLS}: Makefile ${GNUVER}
+       cat ${GNUVER} ${G_port_specific_symbol_files} | \
        ${TOOL_GREP} -E -v '^[     ]*#(#| |$$)' | \
-       ${CXX} -I${DESTDIR}/usr/include/g++ -E -P -include ${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}/c++config.h - > \
+       ${CXX} -I${DESTDIR}/usr/include/g++ -E -P -include ${.CURDIR}/arch/${LIBSTDCXX_MACHINE_ARCH}/symver-config.h - > \
        ${.TARGET}.tmp && mv ${.TARGET}.tmp ${.TARGET} && rm -f ${.TARGET}.tmp
 
-CLEANFILES+=   ${SYMBOLS}
+CLEANFILES+=   ${SYMBOLS} ${SYMBOLS}.tmp
+
+DPADD+=                ${SYMBOLS}
 
 .if ${MKPICLIB} != "no"
 libstdc++_pic.a:: ${SYMBOLS}



Home | Main Index | Thread Index | Old Index