This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[gcjx] Patch: FYI: make jc1 build
- From: Tom Tromey <tromey at redhat dot com>
- To: Java Patch List <java-patches at gcc dot gnu dot org>
- Cc: Gcc Patch List <gcc-patches at gcc dot gnu dot org>
- Date: 23 Jan 2005 16:50:32 -0700
- Subject: [gcjx] Patch: FYI: make jc1 build
- Reply-to: tromey at redhat dot com
I'm checking this in on the gcjx branch.
With this patch you can now build and link jc1 (but not the other
programs in gcc/java, those will come later).
Tom
Index: ChangeLog
from Tom Tromey <tromey@redhat.com>
* glue.hh: Include gcjx-config.h early.
* Make-lang.in (jc1$(exeext)): Use $(CXX).
(JAVA_OBJS): Updated.
(java/java-gimplify.o): Removed.
(java/boehm.o): Updated dependencies.
(java/jvgenmain.o): Likewise.
(java/mangle.o): Likewise.
(java/mangle_name.o): Likewise.
(java/parse-scan.o-warn): Removed.
(java/parse.o-warn): Likewise.
(java/jcf-io.o-warn): Likewise.
(java.mostlyclean): Updated.
(java.maintainer-clean): Likewise.
Index: Make-lang.in
===================================================================
RCS file: /cvs/gcc/gcc/gcc/java/Make-lang.in,v
retrieving revision 1.151.2.3
diff -u -r1.151.2.3 Make-lang.in
--- Make-lang.in 23 Jan 2005 02:09:51 -0000 1.151.2.3
+++ Make-lang.in 23 Jan 2005 23:50:11 -0000
@@ -77,10 +77,10 @@
gt-java-hooks.h gt-java-langhooks.h gt-java-mangle.h : s-gtype ; @true
# Executables built by this Makefile:
-JAVA_OBJS = java/abi.o java/boehm.o java/builtins.o java/classobj.o \
-java/decl.o java/driver.o java/java-gimplify.o java/jvspec.o \
-java/langhooks.o java/lower.o java/mangle.o java/mangle_name.o \
-java/tree.o java/treegen.o
+JAVA_OBJS = java/abi.o java/builtins.o java/classobj.o java/decl.o \
+java/driver.o java/langhooks.o java/lower.o java/tree.o java/treegen.o
+# later:
+# java/boehm.o java/mangle.o java/mangle_name.o
JVGENMAIN_OBJS = java/jvgenmain.o java/mangle_name.o errors.o intl.o
@@ -90,17 +90,12 @@
# String length warnings
jvspec.o-warn = -Wno-error
-# Bison-1.75 output often yields (harmless) -Wtraditional warnings
-java/parse-scan.o-warn = -Wno-error
-java/parse.o-warn = -Wno-error
-
-# Use of non-standardized scandir
-java/jcf-io.o-warn = -Wno-error
+LIBGCJX = -L../gcjx/.libs -lgcjx
jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS)
rm -f $@
- $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
- $(JAVA_OBJS) $(BACKEND) $(ZLIB) $(LIBICONV) $(LIBS)
+ $(CXX) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
+ $(JAVA_OBJS) $(BACKEND) $(LIBGCJX) $(ZLIB) $(LIBICONV) $(LIBS)
jcf-dump$(exeext): $(JCFDUMP_OBJS) $(LIBDEPS)
rm -f $@
@@ -194,14 +189,12 @@
# We just have to delete files specific to us.
java.mostlyclean:
- -rm -f java/parse.c java/parse-scan.c
-rm -f java/*$(objext) $(DEMANGLER_PROG)
-rm -f java/*$(coverageexts)
-rm -f jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) s-java
java.clean:
java.distclean:
-rm -f java/config.status java/Makefile
- -rm -f java/parse.output java/y.tab.c
java.maintainer-clean:
-rm -f $(docobjdir)/gcj.1
-rm -f $(docobjdir)/gij.1
@@ -236,18 +229,16 @@
$(CXX) $(CXXFLAGS) $(gcc_java_cxxflags) -c -o $@ $<
java/boehm.o: java/boehm.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
- $(TREE_H) $(JAVA_TREE_H) java/parse.h toplev.h
-java/jvgenmain.o: java/jvgenmain.c $(CONFIG_H) $(JAVA_TREE_H) $(SYSTEM_H) \
+ $(TREE_H) toplev.h
+java/jvgenmain.o: java/jvgenmain.c $(CONFIG_H) $(SYSTEM_H) \
coretypes.h $(TM_H) intl.h
-java/mangle.o: java/mangle.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) $(SYSTEM_H) \
+java/mangle.o: java/mangle.c $(CONFIG_H) $(SYSTEM_H) \
coretypes.h $(TM_H) toplev.h $(GGC_H) gt-java-mangle.h
-java/mangle_name.o: java/mangle_name.c $(CONFIG_H) java/jcf.h $(JAVA_TREE_H) \
+java/mangle_name.o: java/mangle_name.c $(CONFIG_H) \
$(SYSTEM_H) coretypes.h $(TM_H) toplev.h $(GGC_H)
-java/java-gimplify.o: java/java-gimplify.c $(CONFIG_H) $(SYSTEM_H) \
- coretypes.h $(TM_H) $(JAVA_TREE_H) tree-gimple.h toplev.h
-TEXI_JAVA_FILES = java/gcj.texi $(docdir)/include/fdl.texi $(docdir)/include/gpl.texi \
- $(docdir)/include/gcc-common.texi
+TEXI_JAVA_FILES = java/gcj.texi $(docdir)/include/fdl.texi \
+ $(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi
# Documentation
doc/gcj.info: $(TEXI_JAVA_FILES)
Index: glue.hh
===================================================================
RCS file: /cvs/gcc/gcc/gcc/java/Attic/glue.hh,v
retrieving revision 1.1.2.3
diff -u -r1.1.2.3 glue.hh
--- glue.hh 23 Jan 2005 01:58:51 -0000 1.1.2.3
+++ glue.hh 23 Jan 2005 23:50:11 -0000
@@ -29,6 +29,17 @@
#include <config.h>
+// A few things redefined in the gcjx config header.
+#undef PACKAGE
+#undef PACKAGE_BUGREPORT
+#undef PACKAGE_NAME
+#undef PACKAGE_STRING
+#undef PACKAGE_TARNAME
+#undef PACKAGE_VERSION
+
+// Include this early to get the same libstc++ flags as gcjx.
+#include <gcjx-config.h>
+
// We include this before we include other GCC headers, so that we can
// avoid bad interactions between GCC's identifier poisoning and
// libstdc++'s use of those same identifiers.
@@ -73,14 +84,6 @@
// define is just an optimization. But FIXME anyway.
#undef get_identifier
-// A few things redefined in the gcjx config header.
-#undef PACKAGE
-#undef PACKAGE_BUGREPORT
-#undef PACKAGE_NAME
-#undef PACKAGE_STRING
-#undef PACKAGE_TARNAME
-#undef PACKAGE_VERSION
-
// Now include things from gcjx.
#include "typedefs.hh"
#include "java/builtins.hh"