[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: I fixed this once already [Was Re: [PATCH] bootstrap: obey --no-git.
Gary V. Vaughan
Re: I fixed this once already [Was Re: [PATCH] bootstrap: obey --no-git.]
Mon, 15 Aug 2011 09:29:58 +0700
On 15 Aug 2011, at 04:19, Paul Eggert wrote:
> On 08/14/2011 01:38 PM, Gary V. Vaughan wrote:
>> Please tell me to stop bugging the list if you're tired of my
>> mentioning this from time to time. On the other hand, if you just
>> need more proof that this one is working as well as I say, I'll add
>> it on a topic branch to the gnulib using projects I have commit
>> rights to, and update the bootstrap.confs I wrote for them last
>> year provided someone will take a look afterwards, with the intention
>> of agreeing to supercede the existing bootstrap if everything works
>> as advertised.
> I haven't had time to look at the complete rewrite, but I think
> this is a good way to proceed. I don't recall which projects
> you were doing.
Great! Thank you :)
Here's what I have so far:
* address@hidden:gvvaughan/GNU-bison.git in gary/bootstrap
The bison bootstrap is very straight-forward, so I just redid
it with my new bootstrap script in the gary/bootstrap branch. I
don't have a commit bit for bison, so I've put a mirror with
my branch in it up on github, per the header to this bullet.
* address@hidden:gvvaughan/GNU-coreutils.git in gary/bootstrap
I can't get the currently checked in bootstrap to finish running
on current master, which makes porting it's contents into the
new bootstrap.conf futile for me. Instead I've updated to the new
bootstrap script on the original branch I made when I was writing
it, and pushed a mirror to github here too. (Note that I was having
problems compiling sort just after threads had been added around
that time, but a `make -k' completes on my Mac OS 10.7 machine.)
This one is interesting because it uses gettext and also has a
fairly torturous bootstrap process. I wasn't able to eliminate
slurp entirely, but there is only something much much smaller and
possible to understand remaining in bootstrap.conf.
* address@hidden:gvvaughan/GNU-libtool.git in topic/use-gnulib
I'm not ready to push my working branches up to savannah yet, since
I might want to rebase them locally first. So I've put a mirror up
in my github account for you to try out.
This one is interesting, because Libtool uses a complicated bootstrap
process, with several subprojects to autoconfiscate, and additional
options to bootstrap itself added using the extension mechanisms alone.
You'll notice in configure.ac that there's a good deal of mucking
about with M4 macros around the values that bootstrap is still
extracting quite successfully.
* address@hidden:gvvaughan/GNU-m4.git in gary/bootstrap
Again, I've mirrored some private branches that are subject to
rebasing before merging and committing back to the savannah repo
so that you can see what is going on here. But, I have rebased this
on onto the HEAD of branch-1.4, with the latest gnulib in a submodule.
I haven't updated the other branches yet (branch-1.6 and master), but
that will happen automatically once gnulib is presenting the new
M4 is interesting because it uses "the other" methodology of treating
gnulib-cache.m4 as truth and checking it in, with bootstrap managing
it rather than creating it. And it uses git-version-gen to generate
its version number on the fly, which bootstrap copes with quite easily.
You can also try out the --skip-git and skip-po options here. The new
bootstrap script started life because the current one has (had?) a
few incongruencies that prevented it working in sympathy with how Eric
and I manage M4 development.
* git://git.savannah.gnu.org/zile.git in topic/sane-bootstrap
This branch (with my bootstrap script in it) has already been merged
to master and lua branches, both of which demonstrate very different
bootstraps (especially lua, which has no compiled code in it at all!).
* It seems I also made a start at converting GNU tar to my new bootstrap,
but I came unstuck when porting the copy_files function out of the
existing bootstrap into a new bootstrap.conf. I don't really have time
to finish it now, but I hope the other projects above give you enough
confidence to adopt the new script directly into gnulib for propagation
into other projects, without me needing to finish the GNU tar conversion
on my own first?
> I could also try it out with a smaller project
> that isn't near a release (diffutils comes to mind ...).
Please do, that would be awesome. The documentation is in the tarball
attached earlier in the thread, I didn't bother to add another copy to
every repo above... although the script is well commented and easy to
understand even without the documentation.
Thanks again for taking the time to follow through on this.
Gary V. Vaughan (gary AT gnu DOT org)