X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=libraries%2FMakefile;h=b58777db51cccd3db0c9d62ca4179a8bedd77f0b;hb=efe7a8d4719fb2e6f53126d834dff2b6831ad662;hp=70aea21cbf08445437fe189296614ab3538e66aa;hpb=990faa74e434b1ab5578b36220a336c24cff834b;p=ghc-hetmet.git diff --git a/libraries/Makefile b/libraries/Makefile index 70aea21..b58777d 100644 --- a/libraries/Makefile +++ b/libraries/Makefile @@ -76,6 +76,7 @@ endif SUBDIRS += $(wildcard parallel) SUBDIRS_BUILD += $(wildcard ndp) SUBDIRS_BUILD += $(wildcard dph/dph-base) +SUBDIRS_BUILD += $(wildcard dph/dph-prim-interface) SUBDIRS_BUILD += $(wildcard dph/dph-prim-seq) SUBDIRS_BUILD += $(wildcard dph/dph-prim-par) SUBDIRS_BUILD += $(wildcard dph/dph) @@ -159,29 +160,29 @@ subdirs: .PHONY: boot -boot: ifBuildable/ifBuildable cabal ghc-prim/Setup +boot: ifBuildable/ifBuildable cabal-bin ghc-prim/Setup HERE_ABS=$(FPTOOLS_TOP_ABS)/libraries IFBUILDABLE=ifBuildable/ifBuildable $(HERE_ABS)/boot-packages -CABAL=$(HERE_ABS)/cabal +CABAL=$(HERE_ABS)/cabal-bin CABAL_GHC_FLAGS = -Wall ifeq "$(ghc_ge_605)" "NO" CABAL_GHC_FLAGS += -cpp endif -BOOTSTRAPPING_FLAGS = $(CABAL_GHC_FLAGS) -DCABAL_VERSION=1,3 -odir $(HERE_ABS)/bootstrapping -hidir bootstrapping -i$(HERE_ABS)/Cabal -i$(HERE_ABS)/filepath +BOOTSTRAPPING_FLAGS = $(CABAL_GHC_FLAGS) -DCABAL_VERSION=1,3 -odir $(HERE_ABS)/bootstrapping -hidir $(HERE_ABS)/bootstrapping -i$(HERE_ABS)/Cabal -i$(HERE_ABS)/filepath # We use -main-is so that GHC doesn't get confused and think # Main.hi/Main.o from cabal belongs to ghc-prim/Setup, or vice-versa. -cabal: cabal.hs - $(GHC) $(BOOTSTRAPPING_FLAGS) --make cabal -o cabal -main-is Cabal +cabal-bin: cabal-bin.hs + $(GHC) $(BOOTSTRAPPING_FLAGS) --make cabal-bin -o cabal-bin -main-is Cabal -# ghc-prim/Setup doesn't really depend on cabal, but pretending that it +# ghc-prim/Setup doesn't really depend on cabal-bin, but pretending that it # does sequentialises building the two of them, which is nice given # they're sharing -odir and -hidir. -ghc-prim/Setup: ghc-prim/Setup.hs cabal +ghc-prim/Setup: ghc-prim/Setup.hs cabal-bin cd ghc-prim && $(GHC) $(BOOTSTRAPPING_FLAGS) --make Setup -o Setup installPackage/installPackage: installPackage.hs @@ -271,7 +272,7 @@ ALL_CONFIGURE_FLAGS = \ $(foreach SUBDIR,$(SUBDIRS), \ stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).$(SUBDIR)): \ -stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).%: cabal +stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).%: cabal-bin -$(RM) -f stamp/configure.library.*.$* $*/unbuildable $(MKDIRHIER) `dirname $@` ( cd $* && $(CABAL) configure $(ALL_CONFIGURE_FLAGS) ) \ @@ -290,7 +291,7 @@ stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).%: cabal # make.*, so filter them out and use an alternate rule below instead. $(foreach SUBDIR,$(filter-out $(SUBDIRS_BUILD),$(SUBDIRS)),make.library.$(SUBDIR)):\ make.library.%: stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).% \ - cabal ifBuildable/ifBuildable + cabal-bin ifBuildable/ifBuildable if $(IFBUILDABLE) $*; then \ cd $* && \ cmp -s $(MAKEFILE_LOCAL) Makefile.local || cp $(MAKEFILE_LOCAL) .; \ @@ -310,7 +311,7 @@ make.library.%: build.library.% # Build the library using 'setup build' (not the default) $(foreach SUBDIR,$(SUBDIRS),build.library.$(SUBDIR)):\ build.library.%: stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).% \ - cabal ifBuildable/ifBuildable + cabal-bin ifBuildable/ifBuildable if $(IFBUILDABLE) $*; then \ cd $* && \ $(CABAL) build $(addprefix --ghc-option=,$(GhcLibHcOpts)); \ @@ -331,7 +332,7 @@ endif $(foreach SUBDIR,$(SUBDIRS),doc.library.$(SUBDIR)):\ doc.library.%: stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).% \ - cabal ifBuildable/ifBuildable + cabal-bin ifBuildable/ifBuildable if $(IFBUILDABLE) $*; then \ cd $* && $(CABAL) haddock --html-location='../$$pkg' \ $(CABAL_HADDOCK_FLAGS); \ @@ -348,7 +349,7 @@ distclean: clean clean: $(foreach SUBDIR,$(SUBDIRS),clean.library.$(SUBDIR)) $(RM) -rf bootstrapping/* - $(RM) -f cabal + $(RM) -f cabal-bin $(RM) -rf ifBuildable $(RM) -rf installPackage $(RM) -f libraries.txt index.html doc-index.html doc-index*.html