X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2FMakefile;h=9da1ed1b9e07ec1bcdfece5b94fb1b972ccf6e19;hb=027587234cb35e5c9d9ace090c2fe8d1d8df93f4;hp=42b121c61694fc6be3e67dab57c4f2242d5e2356;hpb=2494407a750053daa61718fac371487d04818e57;p=ghc-hetmet.git diff --git a/ghc/Makefile b/ghc/Makefile index 42b121c..9da1ed1 100644 --- a/ghc/Makefile +++ b/ghc/Makefile @@ -1,71 +1,55 @@ #----------------------------------------------------------------------------- -# $Id: Makefile,v 1.4 1997/03/17 20:34:29 simonpj Exp $ +# $Id: Makefile,v 1.28 2005/03/02 10:00:36 simonmar Exp $ # TOP=. include $(TOP)/mk/boilerplate.mk -line = @echo "------------------------------------------------------------------------------" - # # subdir dependencies: # everything needs utils +# utils needs lib # includes/ needs driver (to easily c.pile mkNativeGen.c) # make depend except in {utils,driver} needs includes # RTS and compiler need includes # -boot :: - $(line) - @echo "Booting Utils" - $(line) - @$(MAKE) -C utils boot depend - - $(line) - @echo "Booting Driver" - $(line) - @$(MAKE) -C driver boot depend - - $(line) - @echo "Booting Includes" - $(line) - @$(MAKE) -C includes boot depend - - $(line) - @echo "Booting Runtime System" - $(line) - @$(MAKE) -C runtime boot depend - - $(line) - @echo "Booting Docs" - $(line) - @$(MAKE) -C docs boot - - $(line) - @echo "Booting Compiler" - $(line) - @$(MAKE) -C compiler boot - - $(line) - @echo "Booting Prelude libraries" - $(line) - @$(MAKE) -C lib boot - - -# "CONTRIB" is also a SUBDIR, but there is nothing to build there. -# -# leave out docs for the moment -- SOF # -# Order is important! driver/ has to come before includes/ which -# again has to come before the rest. +# 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/ +# we descend into subdirs - to boot utils must be before driver. # -ifeq "$(GhcWithHscBuiltViaC)" "NO" -SUBDIRS = utils driver includes runtime compiler lib +ifeq "$(BootingFromHc)" "YES" +SUBDIRS = includes rts docs compiler lib utils driver else -SUBDIRS = utils driver includes runtime lib compiler +ifneq "$(ILXized)" "YES" +SUBDIRS = includes lib utils driver docs compiler rts +else +# No RTS for ILX +SUBDIRS = includes lib utils driver docs compiler +endif +endif + +ifeq ($(IncludeTestDirsInBuild),YES) +SUBDIRS += tests +endif + +SRC_DIST_FILES += configure + +# Clean everything created by configure: +DIST_CLEAN_FILES += VERSION config.cache config.status ghc.spec \ + mk/version.mk mk/config.mk docs/users_guide/ug-book.xml + +extraclean:: + $(RM) -rf autom4te.cache + +ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32" +# These files need to be in the InstallShield +# INSTALL_DATAS rather than INSTALL_DOCS is used so these files go +# in the top-level directory of the distribution +INSTALL_DATAS += ANNOUNCE LICENSE README VERSION endif include $(TOP)/mk/target.mk