# Any libraries listed here should also be in ../packages
-SUBDIRS = ghc-prim $(INTEGER_LIBRARY) base base3-compat array packedstring
-SUBDIRS += containers bytestring old-locale old-time filepath directory
+SUBDIRS = ghc-prim $(INTEGER_LIBRARY) base syb base3-compat array packedstring
+SUBDIRS += containers bytestring old-locale old-time filepath
ifeq "$(GhcLibsWithUnix)" "YES"
SUBDIRS += unix
endif
ifeq "$(Windows)" "YES"
SUBDIRS += $(wildcard Win32)
endif
-SUBDIRS += process pretty hpc template-haskell editline Cabal random haskell98
+SUBDIRS += directory process pretty hpc template-haskell editline Cabal random haskell98
# Set GhcBootLibs=YES from the command line to work with just the libraries
# needed to bootstrap GHC.
GhcLibHcOpts += -fno-warn-deprecated-flags
endif
-ifeq "$(RelocatableBuild)" "YES"
-# On Windows we want to make moveable bindists, but we need to tell
-# ghc-pkg where the haddock docs are. Therefore we completely ignore
-# where the user tells us to put the haddock documentation and put it
-# somewhere whose relative location we know. When installing we need
-# to give Cabal a real path, though.
-iprefix = $$topdir
-ibindir = $$topdir
-ilibdir = $$topdir
-ilibexecdir = $$topdir
-idynlibdir = $$topdir
-idatadir = $$topdir
-idocdir = $$topdir/doc/libraries/$$pkg
-ihaddockdir = $$topdir/doc/libraries/$$pkg
-ihtmldir = $$httptopdir/doc/libraries/$$pkg
-html_installed_root = $(prefix)/doc/libraries
-else
-# On non-Windows we can just give absolute paths all the time, and
-# thus obey the htmldir that we are given.
-iprefix = $(prefix)
-ibindir = $(bindir)
-ilibdir = $(libdir)
-ilibexecdir = $(libexecdir)
-idynlibdir = $(dynlibdir)
-idatadir = $(datadir)
-idocdir = $(docdir)/libraries/$$pkg
-ihaddockdir = $(htmldir)/libraries/$$pkg
-ihtmldir = $(htmldir)/libraries/$$pkg
-html_installed_root = $(htmldir)/libraries
-endif
-
IFBUILDABLE=ifBuildable/ifBuildable $(FPTOOLS_TOP_ABS)/packages
ifneq "$(DOING_BIN_DIST)" "YES"
boot: ifBuildable/ifBuildable cabal-bin bootstrapping.conf
cabal-bin: cabal-bin.hs
- mkdir bootstrapping
+ -mkdir bootstrapping
$(GHC) $(BOOTSTRAPPING_FLAGS) --make cabal-bin -o cabal-bin
bootstrapping.conf: cabal-bin
all: build
-ifeq "$(HADDOCK_DOCS)" "YES"
-all: doc
-endif
-
.PHONY: rebuild.library.%
.PHONY: remake.library.%
$(CONFIGURE_OPTS)
stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).dph/dph-par: \
- create_dph-par
+ dph/dph-par
stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).dph/dph-seq: \
- create_dph-seq
+ dph/dph-seq
-.PHONY: dph-create_par create_dph-seq
-
-create_dph-par create_dph-seq: create_%:
+dph/%:
$(MAKE) -C dph $*
$(foreach SUBDIR,$(SUBDIRS), \
# Making hyperlinked source only works if we have hscolour
ifneq "$(HSCOLOUR)" ""
-CABAL_HADDOCK_FLAGS=--hyperlink-source
+CABAL_HADDOCK_FLAGS += --hyperlink-source
endif
+CABAL_HADDOCK_FLAGS += --with-haddock=$(FPTOOLS_TOP_ABS)/utils/haddock/install-inplace/bin/haddock
$(foreach SUBDIR,$(DOC_SUBDIRS),doc.library.$(SUBDIR)):\
doc.library.%: stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).% \
install.library.%: ifBuildable/ifBuildable
if $(IFBUILDABLE) $*; then \
cd $* && \
- $(INSTALL_PACKAGE) install '$(DESTDIR)$(bindir)/ghc-pkg' '$(DESTDIR)$(datadir)/package.conf' '$(DESTDIR)' '$(prefix)' '$(iprefix)' '$(ibindir)' '$(ilibdir)' '$(ilibexecdir)' '$(idynlibdir)' '$(idatadir)' '$(idocdir)' '$(ihtmldir)' '$(ihaddockdir)' ; \
+ $(INSTALL_PACKAGE) install '$(GHC_PKG_INSTALL_PROG)' '$(DESTDIR)$(datadir)/package.conf' '$(DESTDIR)' '$(prefix)' '$(iprefix)' '$(ibindir)' '$(ilibdir)' '$(ilibexecdir)' '$(idynlibdir)' '$(idatadir)' '$(idocdir)' '$(ihtmldir)' '$(ihaddockdir)' ; \
fi
.PHONY: binary-dist binary-dist.library.%
BINDIST_EXTRAS += ifBuildable/ifBuildable
binary-dist: $(foreach SUBDIR,$(SUBDIRS),binary-dist.library.$(SUBDIR))
+ifeq "$(WHERE_AM_I)" ""
+ echo "I don't know where I am" >&2
+ exit 1
+endif
echo $(WHERE_AM_I)/Makefile >> $(BIN_DIST_LIST)
# XXX This needs to be changed: This ifBuildable is built with the
# bootstrapping compiler, so isn't OS X friendly. It should be made into