bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] bootstrap: obey --no-git.


From: Bruno Haible
Subject: Re: [PATCH] bootstrap: obey --no-git.
Date: Sun, 14 Aug 2011 00:17:58 +0200
User-agent: KMail/1.13.6 (Linux/2.6.37.6-0.5-desktop; KDE/4.6.0; x86_64; ; )

Hi James, Jim, Eric, Paul,

James Youngman answered my questions about his patch in
<http://lists.gnu.org/archive/html/bug-gnulib/2011-06/msg00146.html>:
> > Are all five use-cases from
> >  <http://lists.gnu.org/archive/html/bug-gnulib/2010-03/msg00135.html>
> > covered now?
> 
> I'm going to quote those here in the hope of greater clarity.
> 
> """
>   * There are five use cases of the 'bootstrap' script:
>       1) A normal user who wants to check out coreutils with the version
>          of gnulib with which it was tested. Does not want to be bothered
>          with versions, what gnulib is in the first place, etc.
>       2) Like 1), but the user knows what gnulib is and has a copy of it
>          on his disk.
>       3) An expert user who wants to check out the latest gnulib,
>          regardless what it contains. He is prepared to report errors.
>       4) Like 2), and he has a copy of gnulib on his disk.
>       5) An expert user who wants to use his modified version of gnulib.
> """
> 
> To enumerate what the user would need to do for each:
> 
> 1. unset GNULIB_SRCDIR; ./bootstrap
> 
> 2. Depending on how the user wants to use their local copy of gnulib:
> [a]  ./bootstrap  --gnulib-srcdir=/src/gnulib  # uses /src/gnulib as
> reference, as before this patch, but use the as-tested version of
> gnulib.
> [b]  unset GNULIB_SRCDIR; ./bootstrap  # ignores the local copy of gnulib
> 
> 3.
> # Clearly, updating gnulib in the submodule will do this.
> # Other than that, you will need the patch I mailed to do this:
> cd /src/
> git checkout ${gnulib_url}
> git checkout ${coreutils_url} # for example
> cd /src/coreutils
> ./bootstrap --gnulib-srcdir=/src/gnulib --no-git
> 
> 4. As far as I can tell, this is
> """Like 2), and he has a copy of gnulib on his disk."""
> which means,,

Oops, here I meant:
   4) Like 3), and he has a copy of gnulib on his disk.

> 5. There are multiple strategies.   Here are a couple of useful ones:
> [a] Use a separate tree:
> cd /src/
> git checkout ${gnulib_url} ; cd gnulib
> git checkout -b my_local_changes master
> emacs
> # commit or not, it doesn't matter.
> cd /src
> git checkout ${coreutils_url} # for example
> cd coreutils
> ./bootstrap --gnulib-srcdir=/src/gnulib --no-git
> 
> [b] I think it also works to use the submodule:
> cd /src
> git checkout ${coreutils_url} # for example
> cd coreutils
> unset GNULIB_SRCDIR
> ./bootstrap # sets up the submodule
> cd gnulib
> git checkout -b my_local_changes master
> emacs
> dit add ...; git commit  # both optional I think
> cd ..
> # bootstrap again if appropriate (e.g. when adding/deleting a module)
> ./configure && make
> 
> 
> So to answer your question, if I understood use case (4) correctly,
> all five use cases are now covered.

Excellent. Is it possible to put these explanations how to use
'bootstrap' into comments or into the usage message inside the
bootstrap script? Users will not immediately know about a particular
message on the mailing list.

Jim, Eric, Paul, you are the maintainers of 'bootstrap'. Any objection
against James' patch [1]?

Bruno

[1] http://lists.gnu.org/archive/html/bug-gnulib/2011-06/msg00144.html
-- 
In memoriam Paul Richter <http://de.wikipedia.org/wiki/Paul_Richter_(Pfarrer)>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]