28 lines
1.1 KiB
Diff
28 lines
1.1 KiB
Diff
Index: libstdc++/ChangeLog
|
|
from Alexandre Oliva <oliva@dcc.unicamp.br>
|
|
|
|
* config/dec-osf.ml: Force all of libgcc into libstdc++, to avoid
|
|
multiply-defined linker errors.
|
|
|
|
Index: libstdc++/config/dec-osf.ml
|
|
===================================================================
|
|
RCS file: /egcs/carton/cvsfiles/egcs/libstdc++/config/dec-osf.ml,v
|
|
retrieving revision 1.2
|
|
diff -u -r1.2 dec-osf.ml
|
|
--- libstdc++/config/dec-osf.ml 1998/08/30 21:18:41 1.2
|
|
+++ libstdc++/config/dec-osf.ml 1999/07/15 07:40:11
|
|
@@ -3,4 +3,12 @@
|
|
|
|
LIBS = $(ARLIB) $(ARLINK) $(SHLIB) $(SHLINK)
|
|
DEPLIBS = ../$(SHLIB)
|
|
-SHDEPS = -lm
|
|
+SHDEPS = -lm -Wl,-all,-lgcc,-none
|
|
+# Some testcases in the testsuite required symbols from libgcc, say,
|
|
+# __pure_virtual, that would not have been copied into libstdc++
|
|
+# without this -Wl switch above. But __pure_virtual depended on other
|
|
+# symbols of libgcc that had been copied to libstdc++. However,
|
|
+# DU4.0d's ld would report such symbols as duplicates, and refuse to
|
|
+# link. Forcing some symbols from libgcc into libstdc++ ensures that
|
|
+# we don't get such late undefined symbols, avoiding the bogus
|
|
+# multiple-definition errors.
|