Mail Archives: djgpp-workers/2003/11/30/12:54:59
Hello.
Some of the C++ programs in tests/libc fail to build. Namely,
tests/libc/dos:
bash-2.04$ pwd
c:/develop/djgpp.rw3/tests/libc/dos
bash-2.04$ make
gcc @../../gcc.opt -I. -I- -I../../../include -c echome.c
ld ../../../lib/crt0.o echome.o ../../../lib/libc.a -o echome.exe c:/djgpp/lib/gcc-lib/djgpp/3.32/libgcc.a -T c:/djgpp/lib/gcc-lib/djgpp/3.32/djgpp-x.djl
gcc @../../gcc.opt -I. -I- -I../../../include -c ff.c
ld ../../../lib/crt0.o ff.o ../../../lib/libc.a -o ff.exe c:/djgpp/lib/gcc-lib/djgpp/3.32/libgcc.a -T c:/djgpp/lib/gcc-lib/djgpp/3.32/djgpp-x.djl
gpp @../../gpp.opt -I. -I- -I../../../include -c ffxx.cc
ld ../../../lib/crt0.o ffxx.o ../../../lib/libc.a -o ffxx.exe c:/djgpp/lib/gcc-lib/djgpp/3.32/libgcc.a -T c:/djgpp/lib/gcc-lib/djgpp/3.32/djgpp-x.djl
ffxx.o(.eh_frame+0x11):ffxx.cc: undefined reference to `__gxx_personality_v0'
make.exe: *** [ffxx.exe] Error 1
rm echome.o ff.o ffxx.o
Below is a start on fixing this. It duplicates some of the fixes
we made under src/ for building C++ files.
I'll add this to the to-do list.
Bye, Rich =]
Index: tests/makefile.inc
===================================================================
RCS file: /cvs/djgpp/djgpp/tests/makefile.inc,v
retrieving revision 1.4
diff -p -u -3 -r1.4 makefile.inc
--- tests/makefile.inc 16 Dec 2002 11:40:09 -0000 1.4
+++ tests/makefile.inc 30 Nov 2003 16:57:15 -0000
@@ -1,3 +1,4 @@
+# Copyright (C) 2003 DJ Delorie, see COPYING.DJ for details
# Copyright (C) 2002 DJ Delorie, see COPYING.DJ for details
# Copyright (C) 2001 DJ Delorie, see COPYING.DJ for details
@@ -6,11 +7,12 @@ include $(TOP)/../makefile.def
.SUFFIXES: .o .i .c .cc .s
GCC = gcc @$(TOP)/../gcc.opt -I. -I- -I$(TOP)/../../include $(CFLAGS) -c $<
+GPP = gpp @$(TOP)/../gpp.opt -I. -I- -I$(TOP)/../../include $(CFLAGS) -c $<
%.o : %.c
$(GCC)
%.o : %.cc
- $(GCC)
+ $(GPP)
%.o : %.S
$(GCC)
@@ -66,8 +68,11 @@ EXE = @${TOP}/../../bin/stubify.exe $@
-diff $^ > $@
cat $@
-all :: $(EXES)
+all :: $(TOP)/../gpp.opt $(EXES)
@rem.com
+
+$(TOP)/../gpp.opt : $(TOP)/../gcc.opt
+ sed -f $(TOP)/../gpp.sed $< > $@
tests :: $(ERRS)
--- /dev/null 2003-11-30 17:09:29.000000000 +0000
+++ tests/.cvsignore 2003-11-30 17:08:40.000000000 +0000
@@ -0,0 +1 @@
+gpp.opt
--- /dev/null 2003-11-30 17:09:29.000000000 +0000
+++ tests/gpp.sed 2003-07-28 21:11:46.000000000 +0000
@@ -0,0 +1,7 @@
+# Copyright (C) 2003 DJ Delorie, see COPYING.DJ for details
+#
+# For building the GPP support option file code strip out
+# C options that are not allowed for C++ source
+#
+s:-Wbad-function-cast::g
+s:-Wmissing-declarations::g
- Raw text -