SUBDIRS += $(wildcard HUnit)
SUBDIRS += $(wildcard mtl)
SUBDIRS += $(wildcard fgl)
-SUBDIRS += $(wildcard X11)
SUBDIRS += $(wildcard time)
-ifeq "$(Windows)" "NO"
-# HGL is not working on Win32, so omit it for now. Better not to ship it
-# at all than to ship a broken version.
-SUBDIRS += $(wildcard HGL)
-endif
SUBDIRS += $(wildcard OpenGL)
SUBDIRS += $(wildcard GLUT)
SUBDIRS += $(wildcard OpenAL)
SUBDIRS += $(wildcard stm)
SUBDIRS += $(wildcard xhtml)
SUBDIRS += $(wildcard cgi)
-SUBDIRS += $(wildcard arrows)
ifeq "$(GhcLibsWithObjectIO)" "YES"
SUBDIRS += $(wildcard ObjectIO)
endif
# build dies!
# Build the library using 'make'
+# We re-run 'setup makefile' each time, just in case any preprocessing
+# needs to be done. However, we're careful not to overwrite GNUmakefile
+# if it hasn't changed, so that dependency-generation isn't forced
+# every time.
$(foreach SUBDIR,$(SUBDIRS),make.library.$(SUBDIR)):\
make.library.%: stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).% \
- %/GNUmakefile \
%/setup/Setup ifBuildable/ifBuildable
if ifBuildable/ifBuildable $*; then \
cd $* && \
+ cmp -s ../Makefile.local Makefile.local || cp ../Makefile.local .; \
+ mv GNUmakefile GNUmakefile.tmp; \
+ setup/Setup makefile -f GNUmakefile; \
+ cmp -s GNUmakefile GNUmakefile.tmp && mv GNUmakefile.tmp GNUmakefile; \
$(MAKE) $(MFLAGS) && \
setup/Setup register --inplace; \
fi
setup/Setup build $(addprefix --ghc-option=,$(GhcLibHcOpts)); \
fi
-$(foreach SUBDIR,$(SUBDIRS),$(SUBDIR)/GNUmakefile):\
-%/GNUmakefile: stamp/configure.library.build$(CONFIGURE_STAMP_EXTRAS).% \
- %/setup/Setup ifBuildable/ifBuildable
- $(RM) $*/GNUmakefile
- cp Makefile.local $*
- if ifBuildable/ifBuildable $*; then \
- cd $* && setup/Setup makefile -f GNUmakefile; \
- fi
+.PHONY: doc html
-.PHONY: doc
+html: doc
doc: $(foreach SUBDIR,$(SUBDIRS),doc.library.$(SUBDIR))
sh gen_contents_index --inplace
\( \( -name "*.o" -o -name "*.p_o" \) -a ! -name "HS*" \) \
-exec rm {} \; ; \
fi
+
+# Ignore some doc targets that we don't support
+# The root recurses into us when these targets are made
+.PHONY: html-no-chunks chm HxS fo dvi ps pdf
+html-no-chunks chm HxS fo dvi ps pdf:
+ @:
+