# Define the names for selecting java in LANGUAGES.
java: jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) \
- gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext)
+ gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) \
+ gjnih$(exeext)
# Define the name of target independent tools to be installed in $(bindir)
# Names are subject to changes
-JAVA_TARGET_INDEPENDENT_BIN_TOOLS = gcjh jv-scan jcf-dump
+JAVA_TARGET_INDEPENDENT_BIN_TOOLS = gcjh gjnih jv-scan jcf-dump
# Tell GNU make to ignore these if they exist.
.PHONY: java
java/win32-host.o java/zextract.o version.o errors.o ggc-none.o \
intl.o
+GJNIH_OBJS = java/gjavah-jni.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \
+ java/win32-host.o java/zextract.o version.o errors.o \
+ ggc-none.o intl.o
+
JVSCAN_OBJS = java/parse-scan.o java/jv-scan.o version.o intl.o
JCFDUMP_OBJS = java/jcf-dump.o java/jcf-io.o java/jcf-depend.o java/jcf-path.o \
rm -f $@
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GCJH_OBJS) $(CPPLIBS) $(ZLIB) $(LIBS)
+gjnih$(exeext): $(GJNIH_OBJS) $(LIBDEPS)
+ rm -f $@
+ $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(GJNIH_OBJS) $(CPPLIBS) $(ZLIB) $(LIBS)
+
jv-scan$(exeext): $(JVSCAN_OBJS) $(LIBDEPS)
rm -f $@
$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ $(JVSCAN_OBJS) $(LIBICONV) $(LIBS)
html:: $(htmldir)/java/index.html
JAVA_MANFILES = doc/gcj.1 doc/gcjh.1 doc/jv-scan.1 doc/jcf-dump.1 doc/gij.1 \
doc/jv-convert.1 doc/grmic.1 doc/grmiregistry.1 \
- doc/gcj-dbtool.1
+ doc/gcj-dbtool.1 doc/gjnih.1
java.man: $(JAVA_MANFILES)
-rm -rf $(DESTDIR)$(bindir)/$(JAVA_INSTALL_NAME)$(exeext)
-rm -rf $(DESTDIR)$(man1dir)/$(JAVA_INSTALL_NAME)$(man1ext)
-rm -rf $(DESTDIR)$(man1dir)/gcjh$(man1ext)
+ -rm -rf $(DESTDIR)$(man1dir)/gjnih$(man1ext)
-rm -rf $(DESTDIR)$(man1dir)/jv-scan$(man1ext)
-rm -rf $(DESTDIR)$(man1dir)/jcf-dump$(man1ext)
-rm -rf $(DESTDIR)$(man1dir)/gij$(man1ext)
-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) gcjh$(exeext) jv-scan$(exeext) jcf-dump$(exeext) s-java
+ -rm -f jc1$(exeext) $(GCJ)$(exeext) jvgenmain$(exeext) gcjh$(exeext) \
+ gjnih$(exeext) jv-scan$(exeext) jcf-dump$(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 $(docobjdir)/gcjh.1
+ -rm -f $(docobjdir)/gcj.1 $(docobjdir)/gcjh.1 $(docobjdir)/gjnih.1
-rm -f $(docobjdir)/jv-scan.1 $(docobjdir)/jcf-dump.1
-rm -f $(docobjdir)/gij.1
-rm -f $(docobjdir)/jv-convert.1
-DDEFAULT_TARGET_VERSION=\"$(version)\" \
$(srcdir)/java/jcf-path.c $(OUTPUT_OPTION)
+# create gjnih's object
+java/gjavah-jni.o: $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(JAVA_TREE_H) \
+ java/gjavah.c java/jcf-reader.c java/jcf.h java/javaop.h version.h $(GGC_H) \
+ intl.h
+ $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(ZLIBINC) \
+ -DJNI_DEFAULT=1 \
+ $(srcdir)/java/gjavah.c $(OUTPUT_OPTION)
+
TEXI_JAVA_FILES = java/gcj.texi $(docdir)/include/fdl.texi \
$(docdir)/include/gpl.texi $(docdir)/include/gcc-common.texi \
gcc-vers.texi
$(TEXI2HTML) -I $(docdir)/include -I $(srcdir)/java -o $(@D) $<
.INTERMEDIATE: gcj.pod gcjh.pod jv-scan.pod jcf-dump.pod gij.pod \
- jv-convert.pod grmic.pod grmiregistry.pod gcj-dbtool.pod
+ jv-convert.pod grmic.pod grmiregistry.pod gcj-dbtool.pod gjnih.pod
gcj.pod: java/gcj.texi
-$(TEXI2POD) -D gcj < $< > $@
gcjh.pod: java/gcj.texi
-$(TEXI2POD) -D gcjh < $< > $@
+gjnih.pod: java/gcj.texi
+ -$(TEXI2POD) -D gjnih < $< > $@
jv-scan.pod: java/gcj.texi
-$(TEXI2POD) -D jv-scan < $< > $@
jcf-dump.pod: java/gcj.texi