libheimdal/heimdal-patch-source.sh

47 lines
794 B
Bash

#!/bin/bash
REMOVE_DIRS=(
admin
appl
etc
kadmin
kcm
kpasswd
kuser
packages
po
tests
tools
windows
)
set -o errexit
CMDNAME=${0##*/}
SOURCEDIR=${0%$CMDNAME}
BASENAME=${1%.tar.gz}
trap "rm -rf \"$BASENAME-patched.tar\" \"$BASENAME-patched.tar.bz2\"" ERR
for (( N=0; N<${#REMOVE_DIRS[@]}; N++ )) ; do
REMOVE_DIRS[N]="*/${REMOVE_DIRS[N]}"
done
cd "$SOURCEDIR" > /dev/null
if [ ! -f "$BASENAME.tar.gz" ]; then
exit 0
fi
if [ -f "$BASENAME-patched.tar.bz2" ] && [ "$BASENAME.tar.gz" -ot "$BASENAME-patched.tar.bz2" ]; then
if [ $CMDNAME -ot "$BASENAME-patched.tar.bz2" ]; then
exit 0
fi
fi
gzip -d "$BASENAME.tar.gz"
mv -f "$BASENAME.tar" "$BASENAME-patched.tar"
tar --wildcards --delete -f "$BASENAME-patched.tar" "${REMOVE_DIRS[@]}"
bzip2 "$BASENAME-patched.tar"