[project @ 2000-01-31 15:35:05 by simonmar]
[ghc-hetmet.git] / Makefile
index 9240a11..35ade8b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -28,6 +28,16 @@ SRC_DIST_DIRS += mk docs distrib $(ProjectsToBuild)
 SRC_DIST_FILES += configure.in config.guess config.sub configure aclocal.m4 acconfig.h README INSTALL Makefile install-sh
 
 # -----------------------------------------------------------------------------
+# Make sure configure is up-to-date
+
+all boot :: configure
+configure :: configure.in
+       @echo "WARNING: configure needs to be regenerated.  Type"
+       @echo "      make -f Makefile.config ./configure"
+       @echo "and rerun make."
+       @exit 16
+
+# -----------------------------------------------------------------------------
 # Making a binary distribution
 #
 # To make a particular binary distribution: 
@@ -129,12 +139,19 @@ binary-dist ::
           $(MKDIRHIER) $(BIN_DIST_TMPDIR)/$(BIN_DIST_NAME)/$$way; \
           for dir in $(BINDIST_DOCS); do \
             echo Making $$way documentation in $$dir && \
-            $(MAKE) -C $$dir --no-print-directory $(MFLAGS) $$way && \
-            echo cp -f $$dir/*.$$way $(BIN_DIST_TMPDIR)/$(BIN_DIST_NAME)/$$way && \
-            cp -f $$dir/*.$$way $(BIN_DIST_TMPDIR)/$(BIN_DIST_NAME)/$$way && \
+            $(MAKE) -C $$dir --no-print-directory $(MFLAGS) $$way >.doclog  2>&1 && \
+            if [ "$$way" = "html" ]; then \
+               for subdir in `perl -n -e '/output will be in ([_A-Za-z0-9]*)/ && do { print $$1; };' <.doclog`; do \
+                  echo Copying HTML docs from $$subdir...; \
+                  cp -Rf $$dir/$$subdir $(BIN_DIST_TMPDIR)/$(BIN_DIST_NAME)/$$way; \
+               done \
+            else \
+               cp -f $$dir/*.$$way $(BIN_DIST_TMPDIR)/$(BIN_DIST_NAME)/$$way; \
+            fi && \
             echo "Done."; \
           done; \
        done
+       @rm -f .doclog
 
 # Rename scripts to $i.prl and $i.sh where necessary.
 # ToDo: do this in a cleaner way...