This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
Binutils repository freeze is (finally!) over
- To: binutils at sourceware dot cygnus dot com
- Subject: Binutils repository freeze is (finally!) over
- From: Jason Molenda <jsm at cygnus dot com>
- Date: Sun, 6 Feb 2000 21:04:54 -0800
- Cc: Andrew Cagney <cagney at cygnus dot com>
The good news: I'm all done!
The less good news: You all need to modify your checked out trees!
The old CVSROOT of anoncvs.cygnus.com:/cvs/binutils is now obsolete --
do not check in anything to that repository (I'll make it read-only
later this week), do not expect to see any changes over there.
You have three ways of fixing your checked out tree: (1) Run a script
over it which will fix all the pathnames, (2) grab a tarred up copy of
a checked out tree, or (3) check it out from scratch from CVS.
To do (1), I've attached a script that Roland McGrath wrote a while ago
for the glibc CVS repo move; it was used again for the EGCS repo move,
and now it will serve us a third time. If your checked out copy of
binutils is in a subdirectory called "binutils-src", you would run
the script like this:
newcvsroot :pserver:anoncvs@anoncvs.cygnus.com:/cvs/src binutils binutils-src
I don't think it is a particularly portable script--you probably won't
be able to to use this with most vendor's Bourne shells. It works under
bash.
For (2), download
ftp://sourceware.cygnus.com/pub/binutils/snapshots/binutils-pserver-2000-02-06.tar.bz2
and uncompress it. Do a 'cvs update' in there and you'll be up to date.
This tree was checked out with the pserver CVS method, so it is only
suitable for people who do anonymous read-only access.
If you have write access, you'll need to run Roland's script on your
directory after you've downloaded this tar file. People using SSH
authentication for write access have their username encoded in the
Root file, so I can't provide a generic tar file for them.
For (3), check out a new tree like this:
cvs -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/src login
(type "anoncvs" for the password)
cvs -z9 -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/src co binutils
NOTES:
There were no changes to the binutils repository in this move -- I
treated it as the master set of sources so you should see no difference
except that the location of the repository has changed.
The point of this whole exercise was to create a single repository
with GDB and binutils in it (and later more things). If you're doing
work on both GDB and binutils, this change should make you very happy.
Avoid doing a "cvs update -d" to pick up new directories. Your checked
out tree will about quadruple in size. If you want to pick up new
directories in the binutils project, go to the directory _above_
your tree and run
cvs -z9 -d :pserver:anoncvs@anoncvs.cygnus.com:/cvs/src co binutils
Only new files and files that have changed will be transferred; it
isn't as bad as doing a full checkout.
The top-level shared files and directories are now logged to a separate
mailing list, "src-cvs". The "include" directory is still logged to
binutils-cvs, but e.g. libiberty is logged to src-cvs. There is a web
archive in the usual place for src-cvs.
Contact me with any questions!
Jason
Free the Software!
#! /bin/sh
# Written by Roland McGrath <roland@frob.com>
# For people that want to move an existing tree, Roland McGrath just
# posted a script to the libc-alpha list. Without permission, I repost
# it here. It is used as
#
# newcvsroot :pserver:anoncvs@anoncvs.cygnus.com:/cvs/src src binutils
#
# where the first parameter is the CVSROOT, the second is the module,
# and the third is the directory containing the tree. It writes all
# CVS/Root and CVS/Repository files.
#
# Please note that the script requires an advanced shell, like bash (or
# probably ksh).
root=$1; shift
module=$1; shift
topdir=$1; shift
rep=`echo $root|sed -e's/.*://'`
case "$topdir" in
/*|./*|../*) echo >&2 "$0 wants relative path from top of checkout"; exit 1;;
esac
find $topdir \( -name Repository -o -name Root \) -print | while read f; do
case "$f" in
*/CVS/Root) echo $root > $f ;;
*/CVS/Repository)
r=${module}${f#${topdir}}
echo > $f $rep/${r%/CVS/Repository}
;;
esac
done