bug-gnulib
[Top][All Lists]
Advanced

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

[PATCH] vc-list-files: restore lost functionality with subdir argument


From: Jim Meyering
Subject: [PATCH] vc-list-files: restore lost functionality with subdir argument
Date: Sat, 25 Apr 2009 10:27:55 +0200

The latest vc-list-files change made coreutils' "make sc_root_tests"
fail, due to lack of the tests/ prefix on the listed file names.
This fixes it, but adds the implicit constraint that the dirname
argument to vc-list-files must not contain "!".

>From c335e0ec67853b066fae56f6c61b0dbde4c71d74 Mon Sep 17 00:00:00 2001
From: Jim Meyering <address@hidden>
Date: Sat, 25 Apr 2009 10:23:53 +0200
Subject: [PATCH] vc-list-files: restore lost functionality with subdir argument

* build-aux/vc-list-files: When given a non-"." sub-directory
argument, substitute the $dir/ prefix back onto each resulting name.
Otherwise, coreutils' root_tests check would fail.
---
 ChangeLog               |    7 +++++++
 build-aux/vc-list-files |   12 ++++--------
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index fb16e2e..cd81725 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-04-25  Jim Meyering  <address@hidden>
+
+       vc-list-files: restore lost functionality with subdir argument
+       * build-aux/vc-list-files: When given a non-"." sub-directory
+       argument, substitute the $dir/ prefix back onto each resulting name.
+       Otherwise, coreutils' root_tests check would fail.
+
 2009-04-24  Eric Blake  <address@hidden>

        vc-list-files: ignore git symlinks
diff --git a/build-aux/vc-list-files b/build-aux/vc-list-files
index 4b465a4..88d513f 100755
--- a/build-aux/vc-list-files
+++ b/build-aux/vc-list-files
@@ -2,7 +2,7 @@
 # List version-controlled file names.

 # Print a version string.
-scriptversion=2009-04-24.14
+scriptversion=2009-04-25.10

 # Copyright (C) 2006-2009 Free Software Foundation, Inc.

@@ -72,17 +72,13 @@ esac
 test "x$dir" = x && dir=.

 if test -d .git; then
-  if test "x$dir" = x. ; then
-    dir=HEAD
-  else
-    dir=HEAD:$dir
-  fi
+  test "x$dir" = x. && dir= || dir="$dir/"
   # Ignore git symlinks - either they point into the tree, in which case
   # we don't need to visit the target twice, or they point somewhere
   # else (often into a submodule), in which case the content does not
   # belong to this package.
-  eval exec git ls-tree -r '"$dir"' \| sed -n '"s/^100[^       ]*.//p"' \
-    $postprocess
+  eval exec git ls-tree -r 'HEAD:"$dir"' \
+    \| sed -n '"s!^100[^       ]*.!'"$dir"'!p"' $postprocess
 elif test -d .hg; then
   eval exec hg locate '"$dir/*"' $postprocess
 elif test -d .bzr; then
--
1.6.3.rc1.223.g2f326




reply via email to

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