From bfaccf59b0b916e9f944b68b869146a6e859a208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?IOhannes=20m=20zm=C3=B6lnig?= Date: Wed, 25 Jan 2006 16:16:20 +0000 Subject: better setup-function detection: remove the dependency on "z_"-prefix use "setup_"-prefix for c-files containing 0x (hexloader), else use "_setup" suffix replace trailing "~" by "_tilde" svn path=/trunk/externals/zexy/; revision=4493 --- src/makesource.sh | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'src/makesource.sh') diff --git a/src/makesource.sh b/src/makesource.sh index 24fc90f..3e29540 100755 --- a/src/makesource.sh +++ b/src/makesource.sh @@ -22,6 +22,8 @@ function head_h() { } function foot_h() { + echo "" + echo "void z_zexy_setup(void);" echo "#endif /* Z_ZEXY_H__ */" echo "" } @@ -49,15 +51,18 @@ function foot_c() { head_h > $ZEXY_H head_c > $ZEXY_C -for i in `ls *.c | grep -v zexy.c` +for f in `ls *.c | grep -v zexy.c` do ## each c-file in zexy needs to have a z__setup()-function ## that calls all needed setup-functions ## any non-alpha-numeric-character is replaced by "_" ## e.g. "multiplex~.c" -> "z_multiplex__setup()" - SETUPNAME=z_`echo ${i%.c} | sed -e 's/[^[:alnum:]]/_/g'`_setup - echo "void ${SETUPNAME}(void); /* $i */" >> $ZEXY_H - echo " ${SETUPNAME}(); /* $i */" >> $ZEXY_C + i=${f%.c} + SETUPNAME=$(echo $i | sed -e "s/.*0x.*/setup_&/g" -e "s/~$/_tilde/g" -e "/0x/! s/.*/&_setup/") + if grep -w ${SETUPNAME} $f > /dev/null; then + echo "void ${SETUPNAME}(void); /* $i */" >> $ZEXY_H + echo " ${SETUPNAME}(); /* $i */" >> $ZEXY_C + fi done foot_h >> $ZEXY_H -- cgit v1.2.1