nginx-0.0.2-2004-03-10-20:55:19 import
diff --git a/auto/cc b/auto/cc
index 4365ce6..2079311 100644
--- a/auto/cc
+++ b/auto/cc
@@ -6,10 +6,20 @@
# optimization
#CFLAGS="$CFLAGS -O2 -fomit-frame-pointer"
- # optimize for Pentium Pro, Pentium II and Pentium III
- #CFLAGS="$CFLAGS -march=pentiumpro"
- # optimize for Pentium 4, gcc 3.x
- #CFLAGS="$CFLAGS -march=pentium4"
+
+ case $CPU_OPT in
+ pentiumpro)
+ # optimize for Pentium Pro, Pentium II and Pentium III
+ LIB_OPT="-march=pentiumpro"
+ ;;
+ pentium4)
+ # optimize for Pentium 4, gcc 3.x
+ LIB_OPT="-march=pentium4"
+ ;;
+ esac
+
+ CFLAGS="$CFLAGS $LIB_OPT"
+ ZLIB_OPT="-O2 -fomit-frame-pointer $LIB_OPT"
# warnings
CFLAGS="$CFLAGS -O -W"
@@ -47,10 +57,19 @@
# optimization
CFLAGS="$CFLAGS -O"
- # optimize for Pentium Pro, Pentium II and Pentium III
- CFLAGS="$CFLAGS -mcpu=pentiumpro -march=pentiumpro"
- # optimize for Pentium 4, default
- #CFLAGS="$CFLAGS -march=pentium4"
+
+ case $CPU_OPT in
+ pentiumpro)
+ # optimize for Pentium Pro, Pentium II and Pentium III
+ LIB_OUT="-mcpu=pentiumpro -march=pentiumpro"
+ ;;
+ pentium4)
+ # optimize for Pentium 4, default
+ LIB_OPT="-march=pentium4"
+ ;;
+ esac
+
+ CFLAGS="$CFLAGS $LIB_OUT"
# warnings
CFLAGS="$CFLAGS -w1"
@@ -88,8 +107,19 @@
CFLAGS="$CFLAGS -Oy"
# disable stack checking calls
CFLAGS="$CFLAGS -Gs"
- # optimize for Pentium Pro
- CFLAGS="$CFLAGS -G6"
+
+ case $CPU_OPT in
+ pentiumpro)
+ # optimize for Pentium Pro, Pentium II and Pentium III
+ LIB_OUT="-G6"
+ ;;
+ pentium4)
+ # optimize for Pentium 4
+ #LIB_OUT="-G7"
+ ;;
+ esac
+
+ CFLAGS="$CFLAGS $LIB_OUT"
# warnings
CFLAGS="$CFLAGS -W3"
@@ -153,11 +183,18 @@
CFLAGS="$CFLAGS -oe"
# disable stack checking calls
CFLAGS="$CFLAGS -s"
- # optimize for Pentium Pro, register-based arguments
- OWC_OPT="-6r"
- # optimize for Pentium Pro, stack-based arguments
- #OWC_OPT="-6s"
- CFLAGS="$CFLAGS $OWC_OPT"
+
+ case $CPU_OPT in
+ pentiumpro)
+ # optimize for Pentium Pro, Pentium II and Pentium III
+ # register-based arguments passing conventions
+ LIB_OUT="-6r"
+ # stack-based arguments passing conventions
+ #LIB_OUT="-6s"
+ ;;
+ esac
+
+ CFLAGS="$CFLAGS $LIB_OUT"
# warnings
#CFLAGS="$CFLAGS -w3"
diff --git a/auto/lib/md5/make b/auto/lib/md5/make
index 43d35bf..d75a301 100644
--- a/auto/lib/md5/make
+++ b/auto/lib/md5/make
@@ -31,11 +31,11 @@
cp auto/lib/md5/$makefile $MD5
echo " cd $MD5" >> $MAKEFILE
- echo " \$(MAKE) -f $makefile OWC_OPT=$OWC_OPT" >> $MAKEFILE
+ echo " \$(MAKE) -f $makefile LIB_OPT=$LIB_OPT" >> $MAKEFILE
echo " cd ..\\..\\.." >> $MAKEFILE
;;
- SunOS:*:i386)
+ SunOS:*:i86pc)
echo " cd $MD5 && \$(MAKE) x86-solaris" >> $MAKEFILE
;;
diff --git a/auto/lib/md5/makefile.msvc b/auto/lib/md5/makefile.msvc
index 3dbda09..ad719c0 100644
--- a/auto/lib/md5/makefile.msvc
+++ b/auto/lib/md5/makefile.msvc
@@ -1,5 +1,5 @@
-CFLAGS = -nologo -c -MT -O2 -Ob1 -Oi -Gs -D MD5_ASM -D L_ENDIAN
+CFLAGS = -nologo -c -MT -O2 -Ob1 -Oi -Gs $(LIB_OPT) -D MD5_ASM -D L_ENDIAN
md5.lib:
cl $(CFLAGS) md5_dgst.c
diff --git a/auto/lib/md5/makefile.owc b/auto/lib/md5/makefile.owc
index f320940..f02a742 100644
--- a/auto/lib/md5/makefile.owc
+++ b/auto/lib/md5/makefile.owc
@@ -1,12 +1,6 @@
-CFLAGS = -c -zq -bt=nt -ot -op -oi -oe -s $(OWC_OPT)
+CFLAGS = -c -zq -bt=nt -bm -ot -op -oi -oe -s $(LIB_OPT)
md5.lib:
- wcl386 $(CFLAGS) -bm -dL_ENDIAN md5_dgst.c
+ wcl386 $(CFLAGS) -dL_ENDIAN md5_dgst.c
wlib -n md5.lib md5_dgst.obj
-
-#md5.lib:
-asm:
- wcl386 $(CFLAGS) -bm -dMD5_ASM -dL_ENDIAN md5_dgst.c
- wcl386 $(CFLAGS) asm\m-win32.asm
- wlib -n md5.lib md5_dgst.obj m-win32.obj
diff --git a/auto/lib/pcre/make b/auto/lib/pcre/make
index 6ea086d..8bfd943 100644
--- a/auto/lib/pcre/make
+++ b/auto/lib/pcre/make
@@ -32,13 +32,14 @@
cp auto/lib/pcre/patch.config $PCRE
cp auto/lib/pcre/$makefile $PCRE
echo " cd $PCRE" >> $MAKEFILE
- echo " \$(MAKE) -f $makefile OWC_OPT=$OWC_OPT" >> $MAKEFILE
+ echo " \$(MAKE) -f $makefile LIB_OPT=$LIB_OPT" >> $MAKEFILE
echo " cd ..\\..\\.." >> $MAKEFILE
;;
*)
echo " cd $PCRE \\" >> $MAKEFILE
- echo " && ./configure --disable-shared \\" >> $MAKEFILE
+ echo $ngx_n " && CFLAGS=\"-O2 $LIB_OPT\"" $ngx_c >> $MAKEFILE
+ echo " ./configure --disable-shared \\" >> $MAKEFILE
echo " && \$(MAKE)" >> $MAKEFILE
;;
diff --git a/auto/lib/pcre/makefile.msvc b/auto/lib/pcre/makefile.msvc
index 0eeb310..f651968 100644
--- a/auto/lib/pcre/makefile.msvc
+++ b/auto/lib/pcre/makefile.msvc
@@ -1,5 +1,5 @@
-CFLAGS = -O2 -Ob1 -Oi -Gs -MT
+CFLAGS = -O2 -Ob1 -Oi -Gs -MT $(LIB_OPT)
PCREFLAGS = -DPCRE_STATIC -DPOSIX_MALLOC_THRESHOLD=10
diff --git a/auto/lib/pcre/makefile.owc b/auto/lib/pcre/makefile.owc
index f4244a6..5c15e87 100644
--- a/auto/lib/pcre/makefile.owc
+++ b/auto/lib/pcre/makefile.owc
@@ -1,5 +1,5 @@
-CFLAGS = -c -zq -bt=nt -ot -op -oi -oe -s -bm $(OWC_OPT)
+CFLAGS = -c -zq -bt=nt -ot -op -oi -oe -s -bm $(LIB_OPT)
PCREFLAGS = -DPCRE_STATIC -DPOSIX_MALLOC_THRESHOLD=10
diff --git a/auto/lib/zlib/make b/auto/lib/zlib/make
index 05b2e86..ff9ada0 100644
--- a/auto/lib/zlib/make
+++ b/auto/lib/zlib/make
@@ -31,12 +31,12 @@
cp auto/lib/zlib/$makefile $ZLIB
echo " cd $ZLIB" >> $MAKEFILE
- echo " \$(MAKE) -f $makefile OWC_OPT=$OWC_OPT" >> $MAKEFILE
+ echo " \$(MAKE) -f $makefile LIB_OPT=$LIB_OPT" >> $MAKEFILE
echo " cd ..\\..\\.." >> $MAKEFILE
;;
- *:i386)
+ *:i386 | *:i686)
echo " cd $ZLIB \\" >> $MAKEFILE
echo " && cp contrib/asm686/match.S . \\" >> $MAKEFILE
echo " && CFLAGS=\"-O3 -DASMV\" ./configure \\" >> $MAKEFILE
diff --git a/auto/lib/zlib/makefile.msvc b/auto/lib/zlib/makefile.msvc
index 69f0c18..1d38c5b 100644
--- a/auto/lib/zlib/makefile.msvc
+++ b/auto/lib/zlib/makefile.msvc
@@ -1,5 +1,5 @@
-CFLAGS = -nologo -c -MT -O2 -Ob1 -Oi -Gs
+CFLAGS = -nologo -c -MT -O2 -Ob1 -Oi -Gs $(LIB_OPT)
zlib.lib:
cl $(CFLAGS) adler32.c crc32.c deflate.c trees.c zutil.c
diff --git a/auto/lib/zlib/makefile.owc b/auto/lib/zlib/makefile.owc
index 3fa0260..1a2823b 100644
--- a/auto/lib/zlib/makefile.owc
+++ b/auto/lib/zlib/makefile.owc
@@ -1,5 +1,5 @@
-CFLAGS = -c -zq -bt=nt -ot -op -oi -oe -s -bm $(OWC_OPT)
+CFLAGS = -c -zq -bt=nt -ot -op -oi -oe -s -bm $(LIB_OPT)
zlib.lib:
wcl386 $(CFLAGS) adler32.c crc32.c deflate.c trees.c zutil.c
diff --git a/auto/options b/auto/options
index f153e94..303292d 100644
--- a/auto/options
+++ b/auto/options
@@ -4,6 +4,8 @@
CC=gcc
OBJS=objs
+CPU_OPT=NO
+
TEST_BUILD_DEVPOLL=NO
TEST_BUILD_EPOLL=NO
TEST_BUILD_RTSIG=NO
@@ -62,11 +64,13 @@
--without-http_proxy_module) HTTP_PROXY=NO ;;
--with-cc=*) CC="$value" ;;
+ --with-cpu=*) CPU_OPT="$value" ;;
--without-pcre) USE_PCRE=DISABLED ;;
--with-pcre=*) PCRE="$value" ;;
--with-md5=*) MD5="$value" ;;
--with-zlib=*) ZLIB="$value" ;;
+ --with-zlib-opt=*) ZLIB_OPT="$value" ;;
--test-build-devpoll) TEST_BUILD_DEVPOLL=YES ;;
--test-build-epoll) TEST_BUILD_EPOLL=YES ;;
diff --git a/auto/os/freebsd b/auto/os/freebsd
index 8178ab1..3a73a6e 100644
--- a/auto/os/freebsd
+++ b/auto/os/freebsd
@@ -3,6 +3,8 @@
CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS"
CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS"
+CFLAGS="$CFLAGS -pipe"
+
# __FreeBSD_version is the best way to determine whether
# some capability exists and is safe to use
diff --git a/auto/os/linux b/auto/os/linux
index 4ff57f3..abf2936 100644
--- a/auto/os/linux
+++ b/auto/os/linux
@@ -4,6 +4,8 @@
CORE_SRCS="$UNIX_SRCS $LINUX_SRCS"
EVENT_MODULES="$EVENT_MODULES"
+CFLAGS="$CFLAGS -pipe"
+
CC_TEST_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE"
diff --git a/auto/os/solaris b/auto/os/solaris
index 818886b..7c2caf4 100644
--- a/auto/os/solaris
+++ b/auto/os/solaris
@@ -12,6 +12,19 @@
CC_TEST_FLAGS="-D_FILE_OFFSET_BITS=64"
+case $PLATFORM in
+
+ SunOS:5.[89]:* | SunOS:5.10:*)
+ CFLAGS="$CFLAGS -pipe"
+ ;;
+
+ *)
+ # Solaris 7's gcc does not support "-pipe"
+ ;;
+
+esac
+
+
ngx_inc="sys/devpoll.h"; . auto/inc