Mercurial > hg > octave-max
diff src/mkbuiltins @ 2907:8bb31a2b480b
[project @ 1997-04-30 05:01:46 by jwe]
author | jwe |
---|---|
date | Wed, 30 Apr 1997 05:06:03 +0000 |
parents | 42901f9a9266 |
children | 057273789b87 |
line wrap: on
line diff
--- a/src/mkbuiltins +++ b/src/mkbuiltins @@ -1,5 +1,23 @@ #!/bin/sh +if test $# -ne 2; then + echo "usage: mkbuiltins f1 f2" 1>&2 + exit 1 +fi + +DEF_FILES=`cat $1` +VAR_FILES=`cat $2` + +if test -z "$DEF_FILES"; then + echo "mkbuiltins: DEF_FILES is empty!" 1>&2 + exit 1 +fi + +if test -z "$VAR_FILES"; then + echo "mkbuiltins: VAR_FILES is empty!" 1>&2 + exit 1 +fi + cat << \EOF // DO NOT EDIT! Generated automatically by mkbuiltins. @@ -15,23 +33,43 @@ EOF -for file in "$@"; do - fcn=`echo $file | sed -e 's/\.df//' -e 's/-/_/g'` +for file in $DEF_FILES; do + fcn=`echo $file | sed 's/\.df//; s/-/_/g'` echo "static void" echo "install_${fcn}_fcns (void)" echo "{" cat $file echo "}" + echo "" +done + +for file in $VAR_FILES; do + file=`echo $file | sed 's/-/_/g'` + echo "extern void symbols_of_${file} (void);" done cat << \EOF + +static void +install_builtin_variables (void) +{ +EOF + +for file in $VAR_FILES; do + file=`echo $file | sed 's/-/_/g'` + echo " symbols_of_${file} ();" +done + +cat << \EOF +} + static void install_builtin_functions (void) { EOF -for file in "$@"; do - fcn=`echo $file | sed -e 's/\.df//' -e 's/-/_/g'` +for file in $DEF_FILES; do + fcn=`echo $file | sed 's/\.df//; s/-/_/g'` echo " install_${fcn}_fcns ();" done