#!/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 . # 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