X-Git-Url: https://code.grnet.gr/git/ganeti-local/blobdiff_plain/7617fd6b4e8400eb409594f7a339524fb4c7ca18..d5506465b53089cc3c3d126fc42fc26c971271b7:/Makefile.am diff --git a/Makefile.am b/Makefile.am index 452f5f2..deaebf7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -40,6 +40,11 @@ docdir = $(datadir)/doc/$(PACKAGE) # Delete output file if an error occurred while building it .DELETE_ON_ERROR: +HTOOLS_DIRS = \ + htools \ + htools/Ganeti \ + htools/Ganeti/HTools + DIRS = \ autotools \ daemons \ @@ -48,9 +53,7 @@ DIRS = \ doc/examples \ doc/examples/hooks \ doc/examples/gnt-debug \ - htools \ - htools/Ganeti \ - htools/Ganeti/HTools \ + $(HTOOLS_DIRS) \ lib \ lib/client \ lib/build \ @@ -98,6 +101,8 @@ maintainer-clean-local: CLEANFILES = \ $(addsuffix /*.py[co],$(DIRS)) \ + $(addsuffix /*.hi,$(HTOOLS_DIRS)) \ + $(addsuffix /*.o,$(HTOOLS_DIRS)) \ $(all_dirfiles) \ $(PYTHON_BOOTSTRAP) \ epydoc.conf \ @@ -117,9 +122,7 @@ CLEANFILES = \ tools/kvm-ifup \ stamp-srclinks \ $(nodist_pkgpython_PYTHON) \ - $(HALLPROGS) $(HSRCS2) \ - $(patsubst %.hs,%.hi,$(HSRCS) $(HSRCPROGS) $(HSRCS2)) \ - $(patsubst %.hs,%.o,$(HSRCS) $(HSRCPROGS) $(HSRCS2)) + $(HALLPROGS) $(HSRCS2) # BUILT_SOURCES should only be used as a dependency on phony targets. Otherwise # it'll cause the target to rebuild every time. @@ -279,7 +282,7 @@ HPROGS = \ HALLPROGS = $(HPROGS) htools/test HSRCPROGS = $(patsubst %,%.hs,$(HALLPROGS)) # we don't add -Werror by default -HFLAGS = -O -Wall -fwarn-monomorphism-restriction -fwarn-tabs +HFLAGS = -O -Wall -fwarn-monomorphism-restriction -fwarn-tabs -ihtools HEXTRA = HSRCS = \ @@ -307,7 +310,6 @@ HSRCS = \ HSRCS2 = htools/Ganeti/HTools/Version.hs HSRCS2IN = $(patsubst %,%.in,$(HSRCS2)) - $(RUN_IN_TEMPDIR): | $(all_dirfiles) # Note: we use here an order-only prerequisite, as the contents of @@ -409,9 +411,12 @@ bin_SCRIPTS += $(filter-out htools/hail,$(HPROGS)) iallocators_SCRIPTS += $(filter htools/hail,$(HPROGS)) endif -$(HALLPROGS): %: %.hs $(HSRCS) $(HSRCS2) - cd htools && $(GHC) --make $(HFLAGS) $(HEXTRA) $(HTOOLS_NOCURL) \ - $(patsubst htools/%,%,$@) +$(HALLPROGS): %: %.hs $(HSRCS) $(HSRCS2) Makefile + BINARY=$(@:htools/%=%); \ + $(GHC) --make \ + $(HFLAGS) $(HEXTRA) $(HTOOLS_NOCURL) \ + -osuf $$BINARY.o -hisuf $$BINARY.hi \ + $@ dist_sbin_SCRIPTS = \ tools/ganeti-listrunner