/usr/lib/shape/gen_rel_id is in shapetools 1.4pl6-11.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
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 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 | #!/bin/sh
#
## Copyright (C) 1993,1994 by the author(s).
#
# This software is published in the hope that it will be useful, but
# WITHOUT ANY WARRANTY for any part of this software to work correctly
# or as described in the manuals. See the ShapeTools Public License
# for details.
#
# Permission is granted to use, copy, modify, or distribute any part of
# this software but only under the conditions described in the ShapeTools
# Public License. A copy of this license is supposed to have been given
# to you along with ShapeTools in a file named LICENSE. Among other
# things, this copyright notice and the Public License must be
# preserved on all copies.
#
# Authors: Andreas Lampen (Andreas.Lampen@cs.tu-berlin.de)
# Axel Mahler (Axel.Mahler@cs.tu-berlin.de)
#
# $Header: gen_rel_id[6.2] Thu Jan 20 12:41:16 1994 andy@cs.tu-berlin.de frozen $
#
# $__xpoff$
#
if [ "$1" = "-p" ]
then
patch=1
shift
fi
ty=$1
sn=$2
vf=$3
pf=$4
pl=$5
pls="pl"
if [ $# -ne 5 ];
then
echo usage: gen_rel_id [-p] type systemname versionfile prerelfile patchlevelfile 1>&2;
exit 1;
fi
if [ $patch ]
then
if [ ! -r $pl ]
then
# echo "Warning: can't read $pl. Assuming patchlevel 0." 1>&2
plev=0
else
plev=`cat $pl 2> /dev/null`
fi
fi
pseq=`cat $pf 2> /dev/null`
if [ -n "$pseq" ]
then :
else
pseq=0
fi
vnum=`vl -format '$__version$' -lastsaved $vf 2> /dev/null`
if [ -n "$vnum" ]
then :
else
vnum="1.-1"
fi
case $ty in
release)
if [ $patch ]
then
rid=$sn-${vnum}${pls}$plev
else
rid=$sn-$vnum
fi;;
prerelease)
if vl -attr norelease -lastsaved $vf > /dev/null 2>&1
then nvnum=1.0;
else nvnum=`echo $vnum | awk -F. '{ print $1 "." $2+1; }'`
fi
if [ $patch ]
then
nplnum=`expr $plev + 1`
rid=$sn-${vnum}${pls}${nplnum}pre$pseq
else
rid=$sn-${nvnum}pre$pseq
fi;;
lastrelease)
ovnum=`echo $vnum | awk -F. '{ print $1 "." $2-1; }'`
rid=$sn-$ovnum ;;
lastprerelease)
if [ $patch ]
then
rid=$sn-${vnum}${pls}${plev}pre$pseq
else
rid=$sn-${vnum}pre$pseq
fi ;;
*)
echo invalid release type \"$ty\" >&2
exit 1 ;;
esac
echo $rid
exit 0
|