mk_cmds.sh.in revision b6b65c3de480c8e17c2bf9ab12196c7dde325380
1#!/bin/sh
2#
3#
4
5datarootdir=@datarootdir@
6DIR="${DIR-@datadir@/ss}"
7SS_DIR="@SS_DIR@"
8AWK=@AWK@
9SED=@SED@
10
11if test "x$1" = x ; then
12    echo "Usage: mk_cmds file"
13    exit 1
14fi
15
16if test -n "$_SS_DIR_OVERRIDE" ; then
17    DIR="$_SS_DIR_OVERRIDE";
18fi
19
20if test ! -f $DIR/ct_c.sed || test ! -f $DIR/ct_c.awk ; then
21    DIR="$SS_DIR"
22#    echo "Falling back to $DIR..."
23    if test ! -f "$DIR/ct_c.sed" || test ! -f "$DIR/ct_c.awk" ; then
24	echo "mk_cmds: Couldn't find mk_cmds's template files."
25	exit 1
26    fi
27fi
28
29FILE="$1"
30ROOT=`echo $1 | sed -e s/.ct$//`
31BASE=`basename "$ROOT"`
32TMP="ct$$.c"
33
34if test ! -f "$FILE" ; then
35    echo "$FILE: File not found"
36    exit 1;
37fi
38
39${SED} -f "${DIR}/ct_c.sed"  "${FILE}" \
40	| ${AWK} -f "${DIR}/ct_c.awk" "rootname=${ROOT}" "outfile=${TMP}" -
41
42if grep "^#__ERROR_IN_FILE" "${TMP}" > /dev/null; then
43	rm "${TMP}"
44	exit 1
45else
46	rm -f "${BASE}.c"
47	mv -f "${TMP}" "${BASE}.c"
48	chmod -w "${BASE}.c"
49	exit 0
50fi
51