[project @ 2001-01-16 17:47:10 by simonmar]
authorsimonmar <unknown>
Tue, 16 Jan 2001 17:47:10 +0000 (17:47 +0000)
committersimonmar <unknown>
Tue, 16 Jan 2001 17:47:10 +0000 (17:47 +0000)
commit93bb2e250d17c2ae5666c83b7f3e3b6a0938f112
tree15b23c965aa159b00258671aead14a3f931fff79
parent805924ab8715c429c48fedc7fc0b3a498d4d3933
[project @ 2001-01-16 17:47:10 by simonmar]
Change the way the top-level Makefile works, now that we have a
dependency between ghc and hslibs which means that you can't `make
boot' in hslibs until you've done `make all' in ghc.

  - now you just type `make all' at the top-level, and the makefile
    arranges to do `make boot all' in each of the subdirectories.
    Typing `make boot' at the top-level now yields a message explaining
    what's going on.

  - Now it's no longer necessary to set $(ProjectsToBuild).  If you don't
    set it, the build system attempts to build all the projects in
    the source tree, in the order determined by $(AllProjects) in
    config.mk.  I've been meaning to fix this for ages, since it meant
    that one had to hand-edit config.mk.in when making a distribution
    for anything other than GHC - this is no longer the case.

    You still *can* set ProjectsToBuild if you want to, however.

  - ProjectsToInstall has been replaced by ProjectsDontInstall, and
    has the obvious, reverse, meaning.  It also has a reasonable default,
    so the need to set it should be rare.

All this has the obvious benefit that to build GHC you need one fewer
commands (no more `make boot'), and anyone that has "./configure &&
make && make install" hardwired into their brains will feel right at
home.
Makefile
README
mk/config.mk.in
mk/target.mk