X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=haskell%2FMakefile.am;h=2524617a32edbe3326a319a90287862fcf332c2e;hp=06efdfdcd112da04a7dbedd8e65b55c5582b3f2f;hb=bf3b9e2e236b4dd2216200993ba39545ad5160bb;hpb=d43dac69483e8ec62e8356d93f761684ce2f5cc8 diff --git a/haskell/Makefile.am b/haskell/Makefile.am index 06efdfd..2524617 100644 --- a/haskell/Makefile.am +++ b/haskell/Makefile.am @@ -15,28 +15,49 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -EXTRA_DIST = *.hs +include $(top_srcdir)/subdir-rules.mk -CLEANFILES = *~ +generator_built = \ + Guestfs.hs \ + Bindtests.hs + +# $(generator_built) isn't redundant below as the wildcard rule won't match, and +# therefore won't generate, the files if they haven't been created yet +EXTRA_DIST = $(generator_built) *.hs run-bindtests if HAVE_HASKELL TESTS_ENVIRONMENT = \ - LD_LIBRARY_PATH=$(abs_top_builddir)/src/.libs \ - LIBGUESTFS_PATH=$(abs_top_builddir) \ + LD_LIBRARY_PATH=$(top_builddir)/src/.libs \ + LIBGUESTFS_PATH=$(top_builddir)/appliance \ $(VG) -TESTS = Guestfs005Load Guestfs010Launch Guestfs050LVCreate +TESTS = run-bindtests Guestfs005Load Guestfs010Launch Guestfs050LVCreate + +check_DATA = Bindtests + +GHCFLAGS = -I$(top_builddir)/src -L$(top_builddir)/src/.libs + +all_targets = Bindtests Guestfs005Load Guestfs010Launch Guestfs050LVCreate +$(all_targets): $(top_builddir)/src/libguestfs.la -GHCFLAGS = -I$(abs_top_builddir)/src -L$(abs_top_builddir)/src/.libs +all: $(all_targets) -Guestfs005Load: Guestfs005Load.hs Guestfs.hs +Guestfs.o: Guestfs.hs + $(GHC) $(GHCFLAGS) -c $< + +Bindtests: Bindtests.hs Guestfs.o + $(GHC) $(GHCFLAGS) -main-is $(shell basename $@) --make -o $@ $< -lguestfs + +Guestfs005Load: Guestfs005Load.hs Guestfs.o $(GHC) $(GHCFLAGS) -main-is $(shell basename $@) --make -o $@ $< -lguestfs -Guestfs010Launch: Guestfs010Launch.hs Guestfs.hs +Guestfs010Launch: Guestfs010Launch.hs Guestfs.o $(GHC) $(GHCFLAGS) -main-is $(shell basename $@) --make -o $@ $< -lguestfs -Guestfs050LVCreate: Guestfs050LVCreate.hs Guestfs.hs +Guestfs050LVCreate: Guestfs050LVCreate.hs Guestfs.o $(GHC) $(GHCFLAGS) -main-is $(shell basename $@) --make -o $@ $< -lguestfs -endif \ No newline at end of file +CLEANFILES = $(all_targets) *~ Guestfs.o + +endif