|
|
researchv10 Norman
# macros crunch procedure
#
# SCCS: @(#)macrunch 1.17
move=n
roff=
pname=
name=
path=/usr
if [ $# -lt 1 ]
then echo usage: macrunch [-m] [-d path] [{-n _o_r -t} "package name"] ".src name"
exit 1
fi
while [ $# -gt 0 ]
do
case $1 in
-m) move=y;;
-n) roff=n; pname=$2; shift;;
-t) roff=t; pname=$2; shift;;
-d) path=$2; shift;;
*) name=$1;;
esac
shift
done
rm -f NOCOMPACT${name}
sed -e "3,\${
/^''*\\\\\"/d
s/ *\\\\\".*//
s/@//g
s/^\(['.]\)[ ]*/\1/
s/^\\([.'][a-z][a-z]\\) */\\1/
s/\\\\{[ ]*/\\\\{/g
s/<<name>>/${name}/g
} " \
${name}.src | ./ntar -h "'''>S>" -t "'''>E>" -g > ${name}
if [ -r NOCOMPACT${name} ]
then
if [ -n "${roff}" ]
then
mv NOCOMPACT${name} ucmp.${roff}.${pname}
${path}/bin/${roff}roff -kTMP ${name} - <<!
.co
!
mv d.TMP cmp.${roff}.d.${pname}
mv t.TMP cmp.${roff}.t.${pname}
cat ucmp.${roff}.${pname} >> ${name}
if [ $move = "y" ]
then
cp cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname} ${path}/lib/macros
( cd ${path}/lib/macros
chmod 644 cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname} )
if [ "${path}" = "/usr" ]
then ( cd ${path}/lib/macros
chown bin cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname}
chgrp bin cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname} )
else true
fi
rm -f cmp.${roff}.[dt].${pname} ucmp.${roff}.${pname}
fi
else
cat NOCOMPACT${name} >> ${name}
rm NOCOMPACT${name}
fi
fi
if [ $move = "y" ]
then
cp ${name} ${path}/lib/macros
chmod 644 ${path}/lib/macros/${name}
if [ "${path}" = "/usr" ]
then chown bin ${path}/lib/macros/${name}
chgrp bin ${path}/lib/macros/${name}
else true
fi
rm -f ${name}
fi
exit 0
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.