X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;ds=sidebyside;f=java%2FMakefile.am;h=a96d3047ec52cfd1c64e61b9fc17bb2854a5c27c;hb=c655415dc051b84d6178399e5f7cb76ff7af06c0;hp=cc9891b6126d2deb8114aebc68a58fc6fceb3df8;hpb=a1e8cdf2a254c5eddaf525cd7c34e4c937690204;p=libguestfs.git diff --git a/java/Makefile.am b/java/Makefile.am index cc9891b..a96d304 100644 --- a/java/Makefile.am +++ b/java/Makefile.am @@ -13,31 +13,44 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 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 = \ + Bindtests.java \ t/GuestFS005Load.java \ - t/GuestFS010Launch.java \ - t/GuestFS050LVCreate.java + t/GuestFS010Basic.java \ + t/GuestFS080OptArgs.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 @@ -47,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,13 +73,16 @@ libguestfs_jni_la_SOURCES = \ com_redhat_et_libguestfs_GuestFS.c 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_LDFLAGS = -version-info $(JNI_VERSION_INFO) -shared +libguestfs_jni_la_CFLAGS = \ + $(WARN_CFLAGS) $(WERROR_CFLAGS) \ + -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. @@ -86,15 +102,21 @@ install-data-hook: # Tests (not comprehensive). -TESTS = $(java_tests:.java=.class) +TESTS = run-bindtests run-java-tests TESTS_ENVIRONMENT = \ JAVA=$(JAVA) \ - CLASSPATH=t:libguestfs-$(VERSION).jar \ + CLASSPATH=.:t:libguestfs-$(VERSION).jar \ LIBGUESTFS_PATH=$(top_builddir)/appliance \ - ./run-java-test + TMPDIR=$(top_builddir) + +noinst_DATA = Bindtests.class $(java_tests:.java=.class) t/%.class: t/%.java - $(JAVAC) $(JAVAC_FLAGS) -classpath libguestfs-$(VERSION).jar $< + mkdir -p t + $(JAVAC) $(JAVAC_FLAGS) -classpath libguestfs-$(VERSION).jar -d $(builddir)/t $< + +Bindtests.class: Bindtests.java + $(JAVAC) $(JAVAC_FLAGS) -classpath libguestfs-$(VERSION).jar -d $(builddir) $< endif