1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
#!/bin/sh
# This script generates the standard postrm files by fitting together
# the package name, information from <packagename>.autopostrm and
# scripts/template.postrm
# (C) 2016 Carsten Leonhardt <leo@debian.org>
# License: expat
# Permission is hereby granted, free of charge, to any person
# obtaining a copy of this software and associated documentation files
# (the "Software"), to deal in the Software without restriction,
# including without limitation the rights to use, copy, modify, merge,
# publish, distribute, sublicense, and/or sell copies of the Software,
# and to permit persons to whom the Software is furnished to do so,
# subject to the following conditions:
# The above copyright notice and this permission notice shall be
# included in all copies or substantial portions of the Software.
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
# BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
# ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
if [ ! -f debian/rules ]; then
echo "$0: error: must be run from the top level directory of a debian source!"
exit 1
fi
PACKAGES=$(cd debian; ls *autopostrm | cut -d. -f1)
for pkg in $PACKAGES; do
case $1 in
create)
if [ -f debian/$pkg.postrm ]; then
echo "$0: error: debian/$pkg.postrm already exists!"
exit 1
fi
# first insert the variables from the autopostrm files
# after the marker, then replace the marker with a
# variable containing the package name
sed -e "/^#AUTOPOSTRM#$/r debian/$pkg.autopostrm" debian/scripts/template.postrm > debian/$pkg.postrm
sed -e "s/^#AUTOPOSTRM#$/PACKAGE=$pkg/" -i debian/$pkg.postrm
;;
clean)
rm -f debian/$pkg.postrm
;;
*)
echo '$0: error: argument "create" or "clean" is missing'
exit 1
;;
esac
done
|