]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
Avoid keyword substitution in cvs archives created by convert-archive.
authorBruno Haible <bruno@clisp.org>
Sun, 16 May 2010 16:01:50 +0000 (18:01 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 16 May 2010 16:01:50 +0000 (18:01 +0200)
gettext-tools/misc/ChangeLog
gettext-tools/misc/convert-archive.in

index 656eb3da7a1f2cb2a78b919e2a94b1205aa46dbd..1208d21dc28c2199a711481b06ce30596ac7b364 100644 (file)
@@ -1,3 +1,9 @@
+2010-05-16  Bruno Haible  <bruno@clisp.org>
+
+       Avoid keyword substitution in cvs archives created by convert-archive.
+       * convert-archive.in: When creating a cvs archive, use "cvs admin -ko"
+       on all files.
+
 2010-05-16  Bruno Haible  <bruno@clisp.org>
 
        Make convert-archive more robust.
index 0e7d9090041cbf68a3b91ab2c70167d0697f82f9..533ad1cd8854e02e44e21d4b753b00a6400090d9 100644 (file)
@@ -262,8 +262,16 @@ case "$to" in
        cvsver=`echo "$version" | sed -e 's/\./_/g'`
        (cd $version
         CVSUSER=$cvsuser LD_PRELOAD=$cvsuser_hack \
-        cvs -d "$CVSROOT" import -m "Import $version" archive release "$cvsver"
+        cvs -d "$CVSROOT" import -m "Import $version" archive release "$cvsver" > /dev/null
        ) || func_fatal_error "cvs import failed"
+       # In order to avoid keyword substitution, we have to use "cvs admin"
+       # in a temporary checkout.
+       mkdir tmpcheckout || func_fatal_error "mkdir failed"
+       (cd tmpcheckout \
+        && cvs -d "$CVSROOT" checkout -r"$cvsver" archive > /dev/null \
+        && cvs -d "$CVSROOT" admin -ko `find . -type f -print | sed -e 's,^\./,,' | grep -v '^CVS/' | grep -v '/CVS/'` > /dev/null
+       ) 2> cvs.err || { cat cvs.err 1>&2; func_fatal_error "cvs checkout or admin failed"; }
+       rm -rf tmpcheckout
      done
     )
     (cd "$cvs_dir" && tar cf - --owner=root --group=root archive) \