25 lines
529 B
Bash
25 lines
529 B
Bash
#!/bin/sh
|
|
|
|
if [ -z "$1" -o -z "$2" ]; then
|
|
echo "usage: ${0##*/} <directory> <diff-extension>" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -n "$3" ]; then
|
|
: ${SOURCEDIR:=`rpm --eval %_sourcedir`}
|
|
>"$SOURCEDIR/$1-$3.patch"
|
|
fi
|
|
|
|
find "$1" -mindepth 1 \( -name "*$2" -o -name ".*$2" \) -print |
|
|
while read fin; do
|
|
fou=`echo "$fin" |sed -e "s/$2\$//"`
|
|
[ -r "$fin" ] || fin="/dev/null"
|
|
[ -r "$fou" ] || fou="/dev/null"
|
|
if [ -n "$3" ]; then
|
|
diff -u "$fin" "$fou" |
|
|
tee -a "$SOURCEDIR/$1-$3.patch"
|
|
else
|
|
diff -u "$fin" "$fou"
|
|
fi
|
|
done
|