X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=haskell%2FMakefile.am;h=2524617a32edbe3326a319a90287862fcf332c2e;hp=dcaf18a5c98e8b08d8d231e593c9d6b4ac837f0d;hb=53c524819323dcea8d5e3d56ff4fc6cf49b6c64f;hpb=349814e9d912c4f372b8fbdfb10b03749911021f diff --git a/haskell/Makefile.am b/haskell/Makefile.am index dcaf18a..2524617 100644 --- a/haskell/Makefile.am +++ b/haskell/Makefile.am @@ -15,9 +15,15 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -EXTRA_DIST = *.hs run-bindtests +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 @@ -32,16 +38,26 @@ check_DATA = Bindtests GHCFLAGS = -I$(top_builddir)/src -L$(top_builddir)/src/.libs -Bindtests: Bindtests.hs Guestfs.hs +all_targets = Bindtests Guestfs005Load Guestfs010Launch Guestfs050LVCreate +$(all_targets): $(top_builddir)/src/libguestfs.la + +all: $(all_targets) + +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.hs +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 +CLEANFILES = $(all_targets) *~ Guestfs.o + endif