Commit 9bf51684 authored by Ian Lynagh's avatar Ian Lynagh

Make boot handle getting the libraries

parent 3c506a6c
...@@ -72,7 +72,7 @@ check-packages : ...@@ -72,7 +72,7 @@ check-packages :
@for d in `cat libraries/core-packages`; do \ @for d in `cat libraries/core-packages`; do \
if test ! -d libraries/$$d; then \ if test ! -d libraries/$$d; then \
echo "Looks like you're missing libraries/$$d,"; \ echo "Looks like you're missing libraries/$$d,"; \
echo "Did you run 'sh boot' at the top level?"; \ echo "maybe you haven't done './darcs-all get'?"; \
exit 1; \ exit 1; \
fi \ fi \
done done
......
...@@ -49,13 +49,13 @@ There are two ways to get a source tree: ...@@ -49,13 +49,13 @@ There are two ways to get a source tree:
to get the other repositories: to get the other repositories:
$ cd ghc $ cd ghc
$ chmod +x boot $ chmod +x darcs-all
$ ./boot $ ./darcs-all get
This grabs the "core" packages by default. To get the full set of This grabs the "core" packages by default. To get the full set of
packages, instead say packages, instead say
$ ./boot --extra $ ./darcs-all --extra get
This also downloads the libraries that are normally bundled in the This also downloads the libraries that are normally bundled in the
"extralibs" package (see above). "extralibs" package (see above).
...@@ -76,10 +76,15 @@ XML toolchain if you want to build the compiler documentation. ...@@ -76,10 +76,15 @@ XML toolchain if you want to build the compiler documentation.
Quick start: the following gives you a default build: Quick start: the following gives you a default build:
$ sh boot
$ ./configure $ ./configure
$ make $ make
$ make install $ make install
The "sh boot" step is only necessary if this is a tree checked out
from darcs. For source distributions downloaded from GHC's web site,
this step has already been performed.
These steps give you the default build, which includes everything These steps give you the default build, which includes everything
optimised and built in various ways (eg. profiling libs are built). optimised and built in various ways (eg. profiling libs are built).
It can take a long time. To customise the build, see the file It can take a long time. To customise the build, see the file
......
...@@ -2,10 +2,17 @@ ...@@ -2,10 +2,17 @@
set -e set -e
chmod +x rts/gmp/configure for d in `cat libraries/core-packages`
chmod +x darcs-all do
if test ! -d libraries/$d
then
echo "Looks like you're missing libraries/$d,"
echo "maybe you haven't done './darcs-all get'?"
exit 1
fi
done
./darcs-all ${1+"$@"} get chmod +x rts/gmp/configure
autoreconf autoreconf
......
...@@ -32,8 +32,6 @@ my $ignore_failure = 0; ...@@ -32,8 +32,6 @@ my $ignore_failure = 0;
# --extra says we grab the extra libs with 'get'. It has no effect on # --extra says we grab the extra libs with 'get'. It has no effect on
# the other commands. # the other commands.
my $extra = 0; my $extra = 0;
# --complete gets passed onto darcs get
my $complete = 0;
# --nofib/--testsuite tell get to also grab the respective repos. # --nofib/--testsuite tell get to also grab the respective repos.
# They have no effect on the other commands. # They have no effect on the other commands.
my $nofib = 0; my $nofib = 0;
...@@ -92,7 +90,7 @@ sub darcsgetpackage { ...@@ -92,7 +90,7 @@ sub darcsgetpackage {
sub darcsget { sub darcsget {
my $r_flags; my $r_flags;
if (! $complete && ! grep /(?:--complete|--partial)/, @_) { if (! grep /(?:--complete|--partial)/, @_) {
warning("adding --partial, to override use --complete"); warning("adding --partial, to override use --complete");
$r_flags = [@_, "--partial"]; $r_flags = [@_, "--partial"];
} }
...@@ -131,9 +129,6 @@ sub main { ...@@ -131,9 +129,6 @@ sub main {
if ($arg eq "-q") { if ($arg eq "-q") {
$verbose = 0; $verbose = 0;
} }
elsif ($arg eq "--complete") {
$complete = 1;
}
elsif ($arg eq "--extra") { elsif ($arg eq "--extra") {
$extra = 1; $extra = 1;
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment