X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=ghc%2Fdocs%2Fcomm%2Fgenesis%2Fmakefiles.html;fp=ghc%2Fdocs%2Fcomm%2Fgenesis%2Fmakefiles.html;h=0000000000000000000000000000000000000000;hb=0065d5ab628975892cea1ec7303f968c3338cbe1;hp=957a82eb85f9a833abbd309682471f7565b3b501;hpb=28a464a75e14cece5db40f2765a29348273ff2d2;p=ghc-hetmet.git diff --git a/ghc/docs/comm/genesis/makefiles.html b/ghc/docs/comm/genesis/makefiles.html deleted file mode 100644 index 957a82e..0000000 --- a/ghc/docs/comm/genesis/makefiles.html +++ /dev/null @@ -1,51 +0,0 @@ - - -
- -- The size and structure of GHC's makefiles makes it quite easy to scream - out loud - in pain - during the process of tracking down problems in the - make system or when attempting to alter it. GHC's Building - Guide has valuable information on the - makefile architecture. - -
- The fptools/
toplevel and the various project directories
- contain not only a Makefile
each, but there are
- subdirectories of name mk/
at various levels that contain
- rules, targets, and so on specific to a project - or, in the case of the
- toplevel, the default rules for the whole system. Each mk/
- directory contains a file boilerplate.mk
that ties the
- various other makefiles together. Files called target.mk
,
- paths.mk
, and suffix.mk
contain make targets,
- definitions of variables containing paths, and suffix rules,
- respectively.
-
- One particularly nasty trick used in this hierarchy of makefiles is the
- way in which the variable $(TOP)
is used. AFAIK,
- $(TOP)
always points to a directory containing an
- mk/
subdirectory; however, it not necessarily points to the
- toplevel fptools/
directory. For example, within the GHC
- subtree, $(TOP)
points to fptools/ghc/
.
- However, some of the makefiles in fptools/ghc/mk/
will then
- temporarily redefine $(TOP)
to point a level
- higher (i.e., to fptools/
) while they are including the
- toplevel boilerplate. After that $(TOP)
is redefined to
- whatever value it had before including makefiles from higher up in the
- hierarchy.
-
-
- -Last modified: Wed Aug 22 16:46:33 GMT Daylight Time 2001 - - - -