diff options
author | Sascha Schumann <sas@php.net> | 2000-12-20 16:29:07 +0000 |
---|---|---|
committer | Sascha Schumann <sas@php.net> | 2000-12-20 16:29:07 +0000 |
commit | 060e647e5e420dbb9654314d4d1e3f503acce28a (patch) | |
tree | 29421664d4a28d84cacee82a902913b6d23076e0 | |
parent | 73c0f4b4c2dc1f47932890c4e4a574d68c1f1c24 (diff) | |
download | php-git-060e647e5e420dbb9654314d4d1e3f503acce28a.tar.gz |
Speed up the genif.sh script a little bit. Whereas it took three seconds
previously, it takes now about 100ms on a P233.
-rw-r--r-- | build/print_include.awk | 6 | ||||
-rw-r--r-- | configure.in | 2 | ||||
-rw-r--r-- | genif.sh | 15 |
3 files changed, 14 insertions, 9 deletions
diff --git a/build/print_include.awk b/build/print_include.awk new file mode 100644 index 0000000000..508ed4c6ad --- /dev/null +++ b/build/print_include.awk @@ -0,0 +1,6 @@ +/phpext_/ { + if (old_filename != FILENAME) { + printf "#include \"" FILENAME "\"\\\\n" + old_filename = FILENAME + } +} diff --git a/configure.in b/configure.in index ab578bc3b2..aefa87c7f9 100644 --- a/configure.in +++ b/configure.in @@ -865,7 +865,7 @@ if test -n "\$REDO_ALL"; then echo "creating main/internal_functions.c" extensions=\`grep '^s.@EXT_STATIC@' \$0|sed -e 's/^.*@% *//' -e 's/%.*$//'\` dnl mv -f main/internal_functions.c main/internal_functions.c.old 2>/dev/null - sh $srcdir/genif.sh $srcdir/main/internal_functions.c.in $srcdir "$EXTRA_MODULE_PTRS" \$extensions > main/internal_functions.c + sh $srcdir/genif.sh $srcdir/main/internal_functions.c.in $srcdir "$EXTRA_MODULE_PTRS" $AWK \$extensions > main/internal_functions.c dnl if cmp main/internal_functions.c.old main/internal_functions.c > /dev/null 2>&1; then dnl echo "main/internal_functions.c is unchanged" dnl mv main/internal_functions.c.old main/internal_functions.c @@ -1,6 +1,6 @@ #! /bin/sh -# $Id: genif.sh,v 1.9 2000-06-27 16:22:26 sas Exp $ +# $Id: genif.sh,v 1.10 2000-12-20 16:29:07 sas Exp $ # replacement for genif.pl infile="$1" @@ -9,6 +9,8 @@ srcdir="$1" shift extra_module_ptrs="$1" shift +awk="$1" +shift if test "$infile" = "" -o "$srcdir" = ""; then echo "please supply infile and srcdir" @@ -16,20 +18,17 @@ if test "$infile" = "" -o "$srcdir" = ""; then fi module_ptrs="$extra_module_ptrs" -includes="" - +header_list="" olddir=`pwd` cd $srcdir for ext in ${1+"$@"} ; do module_ptrs=" phpext_${ext}_ptr,\\\n$module_ptrs" - for header in ext/$ext/*.h ; do - if grep phpext_ $header >/dev/null 2>&1 ; then - includes="#include \"$header\"\\\n$includes" - fi - done + header_list="$header_list ext/$ext/*.h" done +includes=`$awk -f $srcdir/build/print_include.awk $header_list` + cd $olddir cat $infile | \ |