GHC new build system megapatch
[ghc-hetmet.git] / rules / haddock.mk
1
2 define haddock  # args: $1 = dir,  $2 = distdir, $3 = way
3
4 ifneq "$$($1_$2_DO_HADDOCK)" "NO"
5
6 ifeq "$$($$($1_PACKAGE)_HADDOCK_FILE)" ""
7 $$($1_PACKAGE)_HADDOCK_FILE = $1/$2/doc/html/$$($1_PACKAGE)/$$($1_PACKAGE).haddock
8 else
9 $$(error Already got a haddock file for $$($1_PACKAGE))
10 endif
11
12 $(call all-target,$1_$2_haddock,$$($$($1_PACKAGE)_HADDOCK_FILE))
13
14 $$($1_PACKAGE)_HADDOCK_DEPS = $$(foreach n,$$($1_$2_DEP_NAMES),$$($$n_HADDOCK_FILE))
15
16 ifeq "$$(HSCOLOUR_SRCS)" "YES"
17 $1_$2_HADDOCK_FLAGS += --hyperlink-source
18 endif
19
20 $$($$($1_PACKAGE)_HADDOCK_FILE) : $$(MKDIRHIER) $(INPLACE_BIN)/haddock$(exeext) $$(GHC_CABAL_INPLACE) $$($1_$2_HS_SRCS) $$($$($1_PACKAGE)_HADDOCK_DEPS)
21         $$(MKDIRHIER) $$(dir $$@)
22         $$(GHC_CABAL_INPLACE) haddock $2 $1 --with-haddock=$$(TOP)/$(INPLACE_BIN)/haddock --with-ghc=$$(TOP)/$(INPLACE_BIN)/ghc-stage2 $$($1_$2_HADDOCK_FLAGS) $$($1_$2_HADDOCK_OPTS)
23
24 endif
25
26 endef
27