#!/bin/sh
-# $Id: srclist-update,v 1.3 2002-11-25 00:20:03 karl Exp $
-#
+# $Id: srclist-update,v 1.4 2002-11-25 13:17:17 meyering Exp $
+#
# Check for files in directory $1 being up to date, according to the
# list on stdin. Don't actually make any changes, just show the diffs.
-#
+#
# Source `dirname $0`/srclistvars.sh first, if it exists.
if test -n "$1"; then
# \f
# $1 is input, output to stdout with gpl.
-#
+#
fixlicense() \
{
sed '/The .* is free software/,/USA\. *\*\//c\
# Remove $Id lines, since they'll differ between source locations.
# If $options contains "gpl", change the license to be the standard
# GPL. We use this for libc files.
-#
+#
fixfile() \
{
if echo "$options" | grep -w gpl >/dev/null; then
test -z "$dst" && continue # skip lines without second element
echo "$src $dst" | sed 's/#.*$//' | egrep '^\s*$' >/dev/null \
&& continue # skip whitespace and comment-only lines
-
+
src=`eval echo $src`
if test ! -r $src; then
echo "$0: cannot read $src" >&2
continue
fi
-
+
# Ignore subdirs in src dir. E.g., if input spec is
# src/subdir/foo.c dst
# write destination file dst/foo.c.
dst=`eval echo $dst`
test -d $dst && dst=$dst/`basename $src`
-
+
# Make changes for sake of comparison.
fixfile $src $srctmp
test -r $dst && fixfile $dst $dsttmp
-
+
# don't show license differences.
gplsrc=$TMPDIR/`basename $src`
fixlicense $src >$gplsrc
cmp -s $src $gplsrc && gplsrc=$src
-
+
if test ! -e $dst; then
echo "## $gplsrc $dst # new"
$chicken cp -p $gplsrc $dst