diff options
author | Jim Meyering <meyering@redhat.com> | 2008-01-31 11:13:04 +0100 |
---|---|---|
committer | Jim Meyering <meyering@redhat.com> | 2008-01-31 12:08:32 +0100 |
commit | 575ad1bd0e1b5263116caea5913f424abdde1675 (patch) | |
tree | babd8cd1671e5683e2ed47922c3a1e64c04f8822 /build-aux/vc-list-files | |
parent | ec5ea46453f1b8d51a352c41b948e2b1b69a88b6 (diff) | |
download | gnulib-575ad1bd0e1b5263116caea5913f424abdde1675.tar.gz |
vc-list-files: new module
* modules/vc-list-files: New module.
* build-aux/vc-list-files: New file.
* MODULES.html.sh (maint/rel Support): Add vc-list-files.
Diffstat (limited to 'build-aux/vc-list-files')
-rwxr-xr-x | build-aux/vc-list-files | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/build-aux/vc-list-files b/build-aux/vc-list-files new file mode 100755 index 0000000000..1e158bb521 --- /dev/null +++ b/build-aux/vc-list-files @@ -0,0 +1,57 @@ +#!/bin/sh +# List version-controlled file names. + +# Copyright (C) 2006-2008 Free Software Foundation, Inc. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + + +# List the specified version-controlled files. +# With no argument, list them all. With a single DIRECTORY argument, +# list the version-controlled files in that directory. +# This script must be run solely from the top of a $srcdir build directory. + +# If there's an argument, it must be a single, "."-relative directory name. +# cvsu is part of the cvsutils package: http://www.red-bean.com/cvsutils/ + +dir= +case $# in + 0) ;; + 1) dir=$1 ;; + *) echo "$0: too many arguments" 1>&2 + echo "Usage: $0 [DIR]" 1>&2; exit 1;; +esac + +test "x$dir" = x && dir=. + +if test -d .git; then + exec git ls-files "$dir" +elif test -d .hg; then + exec hg locate "$dir/*" +elif test -d CVS; then + if test -x build-aux/cvsu; then + build-aux/cvsu --find --types=AFGM "$dir" + else + awk -F/ '{ \ + if (!$1 && $3 !~ /^-/) { \ + f=FILENAME; \ + sub(/CVS\/Entries/, "", f); \ + print f $2; \ + }}' \ + $(find ${*-*} -name Entries -print) /dev/null; + fi +else + echo "$0: Failed to determine type of version control used in "`pwd` 1>&2 + exit 1 +fi |