From 63cddb36f1dd2e3e41274f494873a62921d3f787 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Mon, 30 Apr 2007 11:35:19 +0000 Subject: [PATCH] Make boot handle getting the libraries --- Makefile | 2 +- README | 11 +++-------- boot | 13 +++---------- darcs-all | 7 ++++++- 4 files changed, 13 insertions(+), 20 deletions(-) diff --git a/Makefile b/Makefile index e00a844..edc0433 100644 --- a/Makefile +++ b/Makefile @@ -72,7 +72,7 @@ check-packages : @for d in `cat libraries/core-packages`; do \ if test ! -d libraries/$$d; then \ echo "Looks like you're missing libraries/$$d,"; \ - echo "maybe you haven't done './darcs-all get'?"; \ + echo "Did you run 'sh boot' at the top level?"; \ exit 1; \ fi \ done diff --git a/README b/README index 25122a8..3a87322 100644 --- a/README +++ b/README @@ -49,13 +49,13 @@ There are two ways to get a source tree: to get the other repositories: $ cd ghc - $ chmod +x darcs-all - $ ./darcs-all get + $ chmod +x boot + $ ./boot This grabs the "core" packages by default. To get the full set of packages, instead say - $ ./darcs-all --extra get + $ ./boot --extra This also downloads the libraries that are normally bundled in the "extralibs" package (see above). @@ -76,15 +76,10 @@ XML toolchain if you want to build the compiler documentation. Quick start: the following gives you a default build: - $ sh boot $ ./configure $ make $ 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 optimised and built in various ways (eg. profiling libs are built). It can take a long time. To customise the build, see the file diff --git a/boot b/boot index 11e1785..014efff 100644 --- a/boot +++ b/boot @@ -2,17 +2,10 @@ set -e -for d in `cat libraries/core-packages` -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 - chmod +x rts/gmp/configure +chmod +x darcs-all + +./darcs-all ${1+"$@"} get autoreconf diff --git a/darcs-all b/darcs-all index 4e67683..59e29e1 100644 --- a/darcs-all +++ b/darcs-all @@ -32,6 +32,8 @@ my $ignore_failure = 0; # --extra says we grab the extra libs with 'get'. It has no effect on # the other commands. my $extra = 0; +# --complete gets passed onto darcs get +my $complete = 0; # --nofib/--testsuite tell get to also grab the respective repos. # They have no effect on the other commands. my $nofib = 0; @@ -90,7 +92,7 @@ sub darcsgetpackage { sub darcsget { my $r_flags; - if (! grep /(?:--complete|--partial)/, @_) { + if (! $complete && ! grep /(?:--complete|--partial)/, @_) { warning("adding --partial, to override use --complete"); $r_flags = [@_, "--partial"]; } @@ -129,6 +131,9 @@ sub main { if ($arg eq "-q") { $verbose = 0; } + elsif ($arg eq "--complete") { + $complete = 1; + } elsif ($arg eq "--extra") { $extra = 1; } -- 1.7.10.4