95 lines
2.3 KiB
Bash
Executable file
95 lines
2.3 KiB
Bash
Executable file
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
if [ -n "$EX4DEBUG" ]; then
|
|
echo "now debugging $0 $@"
|
|
set -x
|
|
fi
|
|
|
|
dh_testdir
|
|
if [ -z "$(command -v grep-dctrl)" ] || ! [ -x "$(command -v grep-dctrl)" ]; then
|
|
echo >&2 "ERR: no grep-dctrl binary"
|
|
exit 1
|
|
fi
|
|
|
|
fakeroot debian/rules clean
|
|
|
|
if [ -n "$1" ]; then
|
|
PACKAGESUFFIX="$1"
|
|
fi
|
|
|
|
#DEBUG=1
|
|
|
|
dh_testdir
|
|
|
|
cd debian
|
|
|
|
replacepkgname() {
|
|
sed -e "s/exim4-daemon-custom/exim4-daemon-$PACKAGESUFFIX/g;\
|
|
s/exim4-custom/exim4-$PACKAGESUFFIX/g"
|
|
}
|
|
|
|
copytextreplace() {
|
|
FILE="$1"
|
|
DSTFILE="$2"
|
|
if [ -z "$DSTFILE" ]; then
|
|
echo >&2 "no destination file given to copytextreplace $FILE"
|
|
exit 1
|
|
fi
|
|
[ $DEBUG ] && echo >&2 "DBG: source $FILE"
|
|
[ $DEBUG ] && echo >&2 "DBG: dst $DSTFILE"
|
|
if ! [ -e "$DSTFILE" ]; then
|
|
< $FILE replacepkgname > $DSTFILE
|
|
chmod --reference=$FILE $DSTFILE
|
|
else
|
|
echo >&2 "ERR: can't write to $DSTFILE, file exists"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
NEEDEDFILES="exim4-daemon-custom.* rules control"
|
|
for file in $NEEDEDFILES; do
|
|
if ! [ -e $file ]; then
|
|
echo >&2 "ERR: $file does not exist, not starting"
|
|
exit 1
|
|
fi
|
|
done
|
|
|
|
# the grep-dctrl|grep construct is necessary on woody,
|
|
# since woody grep-dctrl does not give sensible return values.
|
|
if grep-dctrl --field=Package exim4-daemon-$PACKAGESUFFIX control | \
|
|
grep -q '^Package:'; then
|
|
echo >&2 "ERR: there is already a debian/control entry for exim4-daemon-$PACKAGESUFFIX, not starting"
|
|
exit 1
|
|
fi
|
|
|
|
if grep -q exim4-daemon-$PACKAGESUFFIX rules; then
|
|
echo >&2 "ERR: exim4-daemon-$PACKAGESUFFIX already mentioned in debian/rules, not starting"
|
|
exit 1
|
|
fi
|
|
|
|
for file in exim4-daemon-custom.* ; do
|
|
copytextreplace $file ${file/exim4-daemon-custom/exim4-daemon-$PACKAGESUFFIX}
|
|
done
|
|
|
|
echo >> control
|
|
grep-dctrl --field=Package exim4-daemon-custom control | \
|
|
replacepkgname >> control
|
|
|
|
< rules sed "/^builddaemonpackages/ \
|
|
{s/^builddaemonpackages=/builddaemonpackages=exim4-daemon-$PACKAGESUFFIX /; \
|
|
}" > rules.new
|
|
echo >> rules.new
|
|
< rules sed -n "\
|
|
/^build-exim4-daemon-custom/,/^[^[:space:]]/ \
|
|
{ \
|
|
s/exim4-daemon-custom/exim4-daemon-$PACKAGESUFFIX/; \
|
|
s/exim4-custom/exim4-$PACKAGESUFFIX/; \
|
|
/^build-exim4-daemon-$PACKAGESUFFIX/p;
|
|
/^[^[:space:]]/d; \
|
|
p; \
|
|
}" \
|
|
>> rules.new
|
|
chmod --reference=rules rules.new
|
|
mv rules.new rules
|