GHC new build system megapatch
[ghc-hetmet.git] / ghc / Makefile
index c62f588..664df24 100644 (file)
@@ -1,43 +1,16 @@
-#-----------------------------------------------------------------------------
-# $Id: Makefile,v 1.15 2001/03/23 16:36:20 simonmar Exp $
-#
+dir = ghc
+TOP = ..
+SPEC_TARGETS = 1 2 3
+include $(TOP)/mk/sub-makefile.mk
 
-TOP=.
-include $(TOP)/mk/boilerplate.mk
+.PHONY: 1 2 3
 
-#
-# subdir dependencies:
-#      everything needs utils
-#      includes/ needs driver (to easily c.pile mkNativeGen.c)
-#      make depend except in {utils,driver} needs includes     
-#      RTS and compiler need includes
-#
+1:
+       +$(TOPMAKE) stage=1 all_ghc_stage1 compiler_stage1_NO_BUILD_DEPS=YES
 
-#
-# Order is important! It's e.g. necessary to descend into include/
-# before the rest to have a config.h, etc.
-#
-# If we're booting from .hc files, swap the order
-# we descend into compiler/ and lib/
-#
-ifeq "$(BootingFromHc)" "YES"
-SUBDIRS = includes driver rts docs lib compiler
-else
-SUBDIRS = includes utils driver docs compiler rts lib
-endif
+2:
+       +$(TOPMAKE) stage=2 all_ghc_stage2 compiler_stage2_NO_BUILD_DEPS=YES
 
-# Easier to copy
-ifeq "$(BIN_DIST)" "1"
-SUBDIRS := $(filter-out docs,$(SUBDIRS))
-endif
+3:
+       +$(TOPMAKE) stage=3 all_ghc_stage3 compiler_stage3_NO_BUILD_DEPS=YES
 
-ifeq ($(IncludeTestDirsInBuild),YES)
-SUBDIRS += tests
-endif
-
-SRC_DIST_FILES += configure
-
-DIST_CLEAN_FILES += ghc.spec config.status
-MAINTAINER_CLEAN_FILES += configure
-
-include $(TOP)/mk/target.mk