[project @ 1997-03-14 07:52:06 by simonpj]
[ghc-hetmet.git] / mk / boilerplate.mk
diff --git a/mk/boilerplate.mk b/mk/boilerplate.mk
new file mode 100644 (file)
index 0000000..c8cd897
--- /dev/null
@@ -0,0 +1,58 @@
+#################################################################################
+#
+#                          mk/boilerplate.mk
+#
+#              The Glorious fptools Boilerplate Makefile
+#
+# This one file should be included (directly or indirectly) by all Makefiles 
+# in the fptools hierarchy.
+#
+#################################################################################
+
+# We want to disable all the built-in rules that make uses; having them
+# just slows things down, and we write all the rules ourselves.
+# Setting .SUFFIXES to empty disables them all.
+MAKEFLAGS += --no-builtin-rules
+
+# FPTOOLS_TOP is the *relative* path to the fptools toplevel directory from the
+# location where a project Makefile was invoked. It is set by looking at the
+# current value of TOP.
+#
+FPTOOLS_TOP := $(TOP)
+
+
+# This rule makes sure that "all" is the default target, regardless of where it appears
+#              THIS RULE MUST REMAIN FIRST!
+default: all
+
+
+
+#              Now follow the pieces of boilerplate
+#              The "-" signs tell make not to complain if they don't exist
+
+include $(TOP)/mk/config.mk
+# All configuration information
+#      (generated by "configure" from config.mk.in)
+#
+
+
+include $(TOP)/mk/paths.mk
+# Variables that say where things belong (e.g install directories)
+# and where we are right now
+# Also defines variables for standard files (SRCS, LIBS etc)
+
+
+include $(TOP)/mk/opts.mk
+# Variables that control the option flags for all the
+# language processors
+
+include $(TOP)/mk/suffix.mk
+# Suffix rules for Haskell, C and literate 
+
+-include $(TOP)/mk/build.mk
+# (Optional) build-specific configuration
+#
+
+-include .depend
+# The dependencies file from the current directory
+