X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=java%2FMakefile.am;h=abd11ee09c40c1c95051cf3bb8cba828ac7d8121;hp=6ca6f290e261204aac1756c1c030b273c7a9a5b6;hb=5a10318ac808fb3cb0bf9071e0cf6b63a0b3eb6a;hpb=2b568496e6d571be317bcecd58785edbf5d39ba1 diff --git a/java/Makefile.am b/java/Makefile.am index 6ca6f29..abd11ee 100644 --- a/java/Makefile.am +++ b/java/Makefile.am @@ -15,28 +15,42 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -CPTH = com/redhat/et/libguestfs +include $(top_srcdir)/subdir-rules.mk + +# Old RHEL 5 autoconf doesn't have builddir. +builddir ?= $(top_builddir)/java + +# XXX: Need to fix generator.ml dependencies +# +# Files generated by generator.ml: +# Makefile.inc +# All files listed in Makefile.inc +# com_redhat_et_libguestfs_GuestFS.c +# Bindtests.java + +java_prefix = com/redhat/et/libguestfs + +# Pull in automatically generated built sources +include $(srcdir)/Makefile.inc java_sources = \ - $(CPTH)/LibGuestFSException.java \ - $(CPTH)/IntBool.java \ - $(CPTH)/PV.java \ - $(CPTH)/VG.java \ - $(CPTH)/LV.java \ - $(CPTH)/Stat.java \ - $(CPTH)/StatVFS.java \ - $(CPTH)/GuestFS.java + $(java_built_sources) \ + com/redhat/et/libguestfs/LibGuestFSException.java java_tests = \ - t/GuestFS005Load.java \ - t/GuestFS010Launch.java + Bindtests.java \ + t/GuestFS005Load.java \ + t/GuestFS010Launch.java \ + t/GuestFS050LVCreate.java EXTRA_DIST = \ $(java_sources) \ $(java_tests) \ - run-java-test + run-bindtests \ + run-java-tests \ + Makefile.inc -CLEANFILES = *~ doc-stamp +CLEANFILES = doc-stamp $(builddir)/com/redhat/et/libguestfs/*.class com_redhat_et_libguestfs_GuestFS.h *.class *.jar api/com/redhat/et/libguestfs/*.html api/* if HAVE_JAVA @@ -46,7 +60,7 @@ libguestfs_jardir = $(JAR_INSTALL_DIR) libguestfs_jar_DATA = libguestfs-${VERSION}.jar libguestfs_jar_class_files = $(java_sources:.java=.class) $(libguestfs_jar_class_files): %.class: %.java - $(JAVAC) $(JAVAC_FLAGS) -classpath $(CPTH) $(java_sources) + $(JAVAC) $(JAVAC_FLAGS) -d $(builddir) -classpath @srcdir@:$(builddir) -sourcepath @srcdir@:$(builddir) $< libguestfs-${VERSION}.jar: $(libguestfs_jar_class_files) $(JAR) cf $@ $^ @@ -60,12 +74,12 @@ libguestfs_jni_la_SOURCES = \ libguestfs_jni_la_LIBADD = $(top_builddir)/src/libguestfs.la libguestfs_jni_la_LDFLAGS = -version-info $(JNI_VERSION_INFO) -libguestfs_jni_la_CFLAGS = -Wall -I$(top_builddir)/src $(JNI_CFLAGS) +libguestfs_jni_la_CFLAGS = -Wall -I$(top_srcdir)/src -I$(top_builddir)/src $(JNI_CFLAGS) BUILT_SOURCES = com_redhat_et_libguestfs_GuestFS.h -com_redhat_et_libguestfs_GuestFS.h: $(CPTH)/GuestFS.class - $(JAVAH) -classpath .:$(CPTH) com.redhat.et.libguestfs.GuestFS +com_redhat_et_libguestfs_GuestFS.h: $(java_prefix)/GuestFS.class + $(JAVAH) -classpath @srcdir@:$(builddir) com.redhat.et.libguestfs.GuestFS # Documentation. @@ -79,16 +93,28 @@ doc-stamp: $(java_sources) com.redhat.et.libguestfs touch $@ +install-data-hook: + mkdir -p $(DESTDIR)$(datadir)/javadoc/$(PACKAGE_NAME)-java-$(PACKAGE_VERSION) + cp -a api/* $(DESTDIR)$(datadir)/javadoc/$(PACKAGE_NAME)-java-$(PACKAGE_VERSION) + # Tests (not comprehensive). -TESTS = $(java_tests:.java=.class) +TESTS = run-bindtests run-java-tests TESTS_ENVIRONMENT = \ JAVA=$(JAVA) \ - CLASSPATH=t:libguestfs-$(VERSION).jar \ - LIBGUESTFS_PATH=$(abs_top_builddir) \ - ./run-java-test + CLASSPATH=.:t:libguestfs-$(VERSION).jar \ + LIBGUESTFS_PATH=$(top_builddir)/appliance + +noinst_DATA = Bindtests.class $(java_tests:.java=.class) t/%.class: t/%.java $(JAVAC) $(JAVAC_FLAGS) -classpath libguestfs-$(VERSION).jar $< -endif \ No newline at end of file +Bindtests.class: Bindtests.java + $(JAVAC) $(JAVAC_FLAGS) -classpath libguestfs-$(VERSION).jar $< + +endif + +# Tell version 3.79 and up of GNU make to not build goals in this +# directory in parallel. +.NOTPARALLEL: