Speed up the genif.sh script a little bit. Whereas it took three seconds

previously, it takes now about 100ms on a P233.
This commit is contained in:
Sascha Schumann 2000-12-20 16:29:07 +00:00
parent 73c0f4b4c2
commit 060e647e5e
3 changed files with 14 additions and 9 deletions

6
build/print_include.awk Normal file
View file

@ -0,0 +1,6 @@
/phpext_/ {
if (old_filename != FILENAME) {
printf "#include \"" FILENAME "\"\\\\n"
old_filename = FILENAME
}
}

View file

@ -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

View file

@ -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 | \