#!/bin/sh # # Bring up a patched file in diff. We show the diffs # in the topmost patch, unless it was specified # . patchfns >/dev/null || . /usr/lib/patch-scripts/patchfns >/dev/null || { \ echo "Impossible to find my library 'patchfns'." echo "Check your install, or go to the right directory" exit 1 } usage() { echo "Usage: pdiff [patchname] filename" echo " pdiff [patchname] -" exit 1 } if [ $# == 1 ] then PATCH_NAME=$(top_patch) FILENAME=$1 elif [ $# == 2 ] then PATCH_NAME=$(stripit $1) FILENAME=$2 else usage fi if ! is_applied $PATCH_NAME then echo $PATCH_NAME is not applied exit 1 fi doit() { filename=$1 unpatched_file=$filename"~"$PATCH_NAME need_file_there $filename if [ -e $unpatched_file ] then diff -u $unpatched_file $filename else echo pdiff: $filename appears to not be in $PATCH_NAME fi } if [ x"$FILENAME" = "x-" ] then FILENAME=$(cat $P/pc/$PATCH_NAME.pc) fi for i in $FILENAME do doit $i done