From: Stefano Lattarini Date: Sat, 4 May 2013 08:30:14 +0000 (+0200) Subject: Assume gnulib is checked out from Git, not CVS X-Git-Tag: v0.1~151 X-Git-Url: http://erislabs.net/gitweb/?p=gnulib.git;a=commitdiff_plain;h=435f1d7ad985d95a6000e55e3fc398300b04ba12 Assume gnulib is checked out from Git, not CVS In fact, access to the gnulib repository through CVS has been disabled, or more precisely, got broken and was never restored; see: Note that support for CVS is not removed completely and unthinkingly by this change: only support for CVS checkouts of gnulib itself is removed. For example, the 'bootstrap' script still cater to .cvsingore files and CVS directories, for the benefit of those poor gnulib clients still stuck with CVS. Ditto for the 'gnulib-tool' script itself. * gnulib-tool: Simplify accordingly. * posix-modules: Likewise. * MODULES.html.sh: Likewise. * doc/gnulib.texi: No longer mention the decommissioned CVS gnulib repository. * doc/gnulib-intro.texi: Likewise. * doc/gnulib-readme.texi: Likewise. * doc/gnulib-tool.texi: In the examples and explanations, refer to a sample '.gitignore' file rather than a sample '.cvsignore'. * NEWS: Update. * m4/extensions.m4: While at it, remove a comment mistakenly referring to "CVS Autoconf" rather than "git Autoconf". Signed-off-by: Stefano Lattarini Acked-by: Paul Eggert --- diff --git a/ChangeLog b/ChangeLog index 1071e48bd..4d68359c4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,30 @@ +2012-05-04 Stefano Lattarini + + Assume gnulib is checked out from Git, not CVS + + In fact, access to the gnulib repository through CVS has been + disabled, or more precisely, got broken and was never restored; see: + + + Note that support for CVS is not removed completely and unthinkingly + by this change: only support for CVS checkouts of gnulib itself is + removed. For example, the 'bootstrap' script still cater to .cvsingore + files and CVS directories, for the benefit of those poor gnulib clients + still stuck with CVS. Ditto for the 'gnulib-tool' script itself. + + * gnulib-tool: Simplify accordingly. + * posix-modules: Likewise. + * MODULES.html.sh: Likewise. + * doc/gnulib.texi: No longer mention the decommissioned CVS gnulib + repository. + * doc/gnulib-intro.texi: Likewise. + * doc/gnulib-readme.texi: Likewise. + * doc/gnulib-tool.texi: In the examples and explanations, refer to a + sample '.gitignore' file rather than a sample '.cvsignore'. + * NEWS: Update. + * m4/extensions.m4: While at it, remove a comment mistakenly referring + to "CVS Autoconf" rather than "git Autoconf". + 2013-04-30 Paul Eggert utimensat-tests, etc.: try to fix some races diff --git a/MODULES.html.sh b/MODULES.html.sh index ece97f4aa..5a563d4cb 100755 --- a/MODULES.html.sh +++ b/MODULES.html.sh @@ -3615,7 +3615,7 @@ if test -n "$missed_modules"; then fi -{ find lib -type f -print; find m4 -type f -print; } | LC_ALL=C sort | sed -e '/\/\./d' -e /CVS/d -e /README/d -e /ChangeLog/d -e /Makefile/d -e /TODO/d -e '/tags$/d' -e '/TAGS$/d' -e '/~$/d' > "$tmp/all-files" +{ find lib -type f -print; find m4 -type f -print; } | LC_ALL=C sort | sed -e '/\/\./d' -e /README/d -e /ChangeLog/d -e /Makefile/d -e /TODO/d -e '/tags$/d' -e '/TAGS$/d' -e '/~$/d' > "$tmp/all-files" missed_files=`for file in $seen_files; do echo $file; done \ | LC_ALL=C sort -u \ | LC_ALL=C join -v 2 - "$tmp/all-files"` diff --git a/NEWS b/NEWS index fa3a8c6d3..2e7a51826 100644 --- a/NEWS +++ b/NEWS @@ -32,6 +32,8 @@ User visible incompatible changes Date Modules Changes +2013-05-04 gnulib-tool CVS checkout of gnulib are no longer supported. + 2013-02-08 careadlinkat This module no longer provides the careadlinkatcwd function. diff --git a/doc/gnulib-intro.texi b/doc/gnulib-intro.texi index 69d6e084e..e769c7a4b 100644 --- a/doc/gnulib-intro.texi +++ b/doc/gnulib-intro.texi @@ -431,9 +431,7 @@ failure reports. Gnulib is available in two qualities: @itemize @item -There is the newest version of Gnulib from the Git repository. The -source tree can also be fetched from a read-only CVS that mirrors the Git -repository. +There is the newest version of Gnulib from the Git repository. @item We also make stable releases every two months, at diff --git a/doc/gnulib-readme.texi b/doc/gnulib-readme.texi index 76be567cf..20eacfc1f 100644 --- a/doc/gnulib-readme.texi +++ b/doc/gnulib-readme.texi @@ -11,7 +11,7 @@ @menu * Gnulib Basics:: -* git and CVS:: +* Git Checkout:: * Keeping Up-to-date:: * Contributing to Gnulib:: * High Quality:: @@ -46,8 +46,8 @@ Gnulib checkout. For example: $ ln -s $HOME/gnu/src/gnulib.git/gnulib-tool $HOME/bin/gnulib-tool @end example -@node git and CVS -@section git and CVS +@node Git Checkout +@section Git Checkout Gnulib is available for anonymous checkout. In any Bourne-shell the following should work: @@ -76,18 +76,11 @@ When you use @code{git annotate} or @code{git blame} with Gnulib, it's recommended that you use the @option{-w} option, in order to ignore massive whitespace changes that happened in 2009. -CVS checkouts are also supported: - -@example -$ cvs -d :pserver:anonymous@@pserver.git.sv.gnu.org:/gnulib.git co -d gnulib HEAD -@end example - @node Keeping Up-to-date @section Keeping Up-to-date The best way to work with Gnulib is to check it out of git. -To synchronize, you can use @code{git pull}, -or @code{cvs update -dP} if you are still using CVS. +To synchronize, you can use @code{git pull}. Subscribing to the @email{bug-gnulib@@gnu.org} mailing list will help you to plan when to update your local copy of Gnulib (which you use to diff --git a/doc/gnulib-tool.texi b/doc/gnulib-tool.texi index 061dc3f1f..114ab4cbb 100644 --- a/doc/gnulib-tool.texi +++ b/doc/gnulib-tool.texi @@ -631,14 +631,14 @@ In projects which commit all source files, whether generated or not, into their VCS, the @code{gnulib-tool} generated files should all be committed. In this case, you should pass the option @samp{--no-vc-files} to @code{gnulib-tool}, which avoids alteration of -VCS-related files such as @file{.cvsignore}. +VCS-related files such as @file{.gitignore}. Gnulib also contains files generated by @command{make} (and removed by @code{make clean}), using information determined by @command{configure}. For a Gnulib source file of the form @file{lib/foo.in.h}, the corresponding @file{lib/foo.h} is such a @command{make}-generated file. These should @emph{not} be checked -into the VCS, but instead added to @file{.cvsignore} or equivalent. +into the VCS, but instead added to @file{.gitignore} or equivalent. @item In projects which customarily omit from their VCS all files that are diff --git a/doc/gnulib.texi b/doc/gnulib.texi index 2d13122ae..de39a4464 100644 --- a/doc/gnulib.texi +++ b/doc/gnulib.texi @@ -100,7 +100,7 @@ Resources: @itemize @item Gnulib is hosted at Savannah: @url{http://savannah.gnu.org/projects/gnulib}. Get the sources - through Git or CVS from there. + through Git from there. @item The Gnulib home page: @url{http://www.gnu.org/software/gnulib/}. @end itemize @@ -1073,7 +1073,7 @@ your favorite platform, you may perform these steps: @item Create gnulib directory On a machine with recent automake, autoconf, m4 installed and with a -gnulib git or cvs checkout (typically a Linux machine), use +gnulib git checkout (typically a Linux machine), use @example gnulib-tool --create-megatestdir --with-tests --dir=... diff --git a/gnulib-tool b/gnulib-tool index c5ab13b38..878f27278 100755 --- a/gnulib-tool +++ b/gnulib-tool @@ -322,18 +322,8 @@ q date=`date -d "$date" -u +"%Y-%m-%d %H:%M:%S"` version=' '`cd "$gnulib_dir" && ./build-aux/git-version-gen /dev/null | sed -e 's/-dirty/-modified/'` else - if test -d "$gnulib_dir"/CVS \ - && (cvs --version) >/dev/null 2>/dev/null; then - # gnulib checked out from CVS. - sed_extract_first_date='/^date: /{ -s/^date: \([0-9][0-9][0-9][0-9]\).\([0-9][0-9]\).\([0-9][0-9]\) \([0-9][0-9]:[0-9][0-9]:[0-9][0-9]\).*/\1-\2-\3 \4/p -q -}' - date=`cd "$gnulib_dir" && cvs log -N ChangeLog 2>/dev/null | sed -n -e "$sed_extract_first_date"` - else - # gnulib copy without versioning information. - date=`sed -e 's/ .*//;q' "$gnulib_dir"/ChangeLog` - fi + # gnulib copy without versioning information. + date=`sed -e 's/ .*//;q' "$gnulib_dir"/ChangeLog` version= fi year=`"$gnulib_dir"/build-aux/mdate-sh "$self_abspathname" | sed -e 's,^.* ,,'` @@ -1504,8 +1494,7 @@ func_lookup_file () # the resulting list to standard output, one per line. func_sanitize_modulelist () { - sed -e '/^CVS\//d' -e '/\/CVS\//d' \ - -e '/^ChangeLog$/d' -e '/\/ChangeLog$/d' \ + sed -e '/^ChangeLog$/d' -e '/\/ChangeLog$/d' \ -e '/^COPYING$/d' -e '/\/COPYING$/d' \ -e '/^README$/d' -e '/\/README$/d' \ -e '/^TEMPLATE$/d' \ @@ -1543,7 +1532,6 @@ func_exists_module () { test -f "$gnulib_dir/modules/$1" \ || { test -n "$local_gnulib_dir" && test -d "$local_gnulib_dir/modules" \ && test -f "$local_gnulib_dir/modules/$1"; }; } \ - && test "CVS" != "$1" \ && test "ChangeLog" != "$1" \ && test "COPYING" != "$1" \ && test "README" != "$1" \ @@ -6169,11 +6157,7 @@ func_create_megatestdir () func_append megasubdirs "ALL" # Create autobuild. - cvsdate=`if test -f "$gnulib_dir/CVS/Entries"; then \ - vc_witness="$gnulib_dir/CVS/Entries"; \ - else \ - vc_witness="$gnulib_dir/.git/refs/heads/master"; \ - fi; \ + cvsdate=`vc_witness="$gnulib_dir/.git/refs/heads/master"; \ sh "$gnulib_dir/build-aux/mdate-sh" "$vc_witness" \ | sed -e 's,January,01,' -e 's,Jan,01,' \ -e 's,February,02,' -e 's,Feb,02,' \ diff --git a/m4/extensions.m4 b/m4/extensions.m4 index 07ba376c0..e30f12206 100644 --- a/m4/extensions.m4 +++ b/m4/extensions.m4 @@ -6,7 +6,7 @@ # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from CVS +# This definition of AC_USE_SYSTEM_EXTENSIONS is stolen from git # Autoconf. Perhaps we can remove this once we can assume Autoconf # 2.70 or later everywhere, but since Autoconf mutates rapidly # enough in this area it's likely we'll need to redefine diff --git a/posix-modules b/posix-modules index fcc9a4527..c78295743 100755 --- a/posix-modules +++ b/posix-modules @@ -52,18 +52,8 @@ q date=`date -d "$date" -u +"%Y-%m-%d %H:%M:%S"` version=' '`cd "$gnulib_dir" && ./build-aux/git-version-gen /dev/null | sed -e 's/-dirty/-modified/'` else - if test -d "$gnulib_dir"/CVS \ - && (cvs --version) >/dev/null 2>/dev/null; then - # gnulib checked out from CVS. - sed_extract_first_date='/^date: /{ -s/^date: \([0-9][0-9][0-9][0-9]\).\([0-9][0-9]\).\([0-9][0-9]\) \([0-9][0-9]:[0-9][0-9]:[0-9][0-9]\).*/\1-\2-\3 \4/p -q -}' - date=`cd "$gnulib_dir" && cvs log -N ChangeLog 2>/dev/null | sed -n -e "$sed_extract_first_date"` - else - # gnulib copy without versioning information. - date=`sed -e 's/ .*//;q' "$gnulib_dir"/ChangeLog` - fi + # gnulib copy without versioning information. + date=`sed -e 's/ .*//;q' "$gnulib_dir"/ChangeLog` version= fi year=`"$gnulib_dir"/build-aux/mdate-sh "$self_abspathname" | sed 's,^.* ,,'`