diff options
| author | Igor Sysoev <igor@sysoev.ru> | 2004-02-02 21:19:52 +0000 |
|---|---|---|
| committer | Igor Sysoev <igor@sysoev.ru> | 2004-02-02 21:19:52 +0000 |
| commit | a4b16df728abe1e989a8311e901ba5d9ae30328e (patch) | |
| tree | 35d3d0ba37e1c285421688846c2954aa297a642c /auto/os | |
| parent | 328af6e8cd26f274bf385cfff3c888725746ea4f (diff) | |
| download | nginx-a4b16df728abe1e989a8311e901ba5d9ae30328e.tar.gz nginx-a4b16df728abe1e989a8311e901ba5d9ae30328e.tar.bz2 | |
nginx-0.0.2-2004-02-03-00:19:52 import
Diffstat (limited to 'auto/os')
| -rw-r--r-- | auto/os/conf | 12 | ||||
| -rw-r--r-- | auto/os/freebsd | 24 | ||||
| -rw-r--r-- | auto/os/linux | 42 | ||||
| -rw-r--r-- | auto/os/solaris | 22 |
4 files changed, 71 insertions, 29 deletions
diff --git a/auto/os/conf b/auto/os/conf index 27e0123b4..99de323e1 100644 --- a/auto/os/conf +++ b/auto/os/conf @@ -43,6 +43,18 @@ case $PLATFORM in esac +if [ $EVENT_SELECT = YES -o $EVENT_FOUND = NO ]; then + CORE_SRCS="$CORE_SRCS $SELECT_SRCS" + EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE" +fi + + +if [ $EVENT_POLL = YES -o $EVENT_FOUND = NO ]; then + CORE_SRCS="$CORE_SRCS $POLL_SRCS" + EVENT_MODULES="$EVENT_MODULES $POLL_MODULE" +fi + + if [ $TEST_BUILD_DEVPOLL = YES ]; then CFLAGS="$CFLAGS -D HAVE_DEVPOLL=1 -D TEST_BUILD_DEVPOLL=1" EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" diff --git a/auto/os/freebsd b/auto/os/freebsd index 9684102d5..ee6854347 100644 --- a/auto/os/freebsd +++ b/auto/os/freebsd @@ -7,16 +7,6 @@ CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS" MD5_LIB="-lmd" ZLIB_LIB="-lz" -if [ $SELECT = YES ]; then - CORE_SRCS="$CORE_SRCS $SELECT_SRCS" - EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE" -fi - -if [ $POLL = YES ]; then - CORE_SRCS="$CORE_SRCS $POLL_SRCS" - EVENT_MODULES="$EVENT_MODULES $POLL_MODULE" -fi - version=`grep "#define __FreeBSD_version" /usr/include/osreldate.h \ | sed -e 's/^.* \(.*\)$/\1/'` @@ -24,7 +14,7 @@ version=`grep "#define __FreeBSD_version" /usr/include/osreldate.h \ # sendfile if [ $version -gt 300007 ]; then - CFLAGS="$CFLAGS -D HAVE_SENDFILE=1" + have=HAVE_SENDFILE . auto/have CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS" fi @@ -34,9 +24,11 @@ fi if [ \( $version -lt 500000 -a $version -ge 410000 \) \ -o $version -ge 500011 ] then - CFLAGS="$CFLAGS -D HAVE_KQUEUE=1 -D HAVE_CLEAR_EVENT=1" + have=HAVE_KQUEUE . auto/have + have=HAVE_CLEAR_EVENT . auto/have CORE_SRCS="$CORE_SRCS $KQUEUE_SRCS" EVENT_MODULES="$EVENT_MODULES $KQUEUE_MODULE" + EVENT_FOUND=YES fi @@ -45,5 +37,11 @@ fi if [ \( $version -lt 500000 -a $version -ge 430000 \) \ -o $version -ge 500018 ] then - CFLAGS="$CFLAGS -D HAVE_LOWAT_EVENT=1" + have=HAVE_LOWAT_EVENT . auto/have +fi + + +if [ $EVENT_AIO = YES ]; then + CORE_SRCS="$CORE_SRCS $AIO_SRCS" + EVENT_MODULES="$EVENT_MODULES $AIO_MODULE" fi diff --git a/auto/os/linux b/auto/os/linux index 8990e6d19..effb4723f 100644 --- a/auto/os/linux +++ b/auto/os/linux @@ -6,19 +6,49 @@ EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE $POLL_MODULE" ZLIB_LIB="-lz" +CC_TEST_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" + + +# epoll, EPOLLET version -NGX_INC="sys/epoll.h"; . auto/inc +ngx_func="epoll"; +ngx_func_inc="#include <sys/epoll.h>" +ngx_func_test="int fd = 1; int n; + struct epoll_event ee; + ee.events = EPOLLIN|EPOLLOUT|EPOLLET; + ee.data.ptr = NULL; + n = epoll_ctl(efd, EPOLL_CTL_ADD, fd, &ee)" +. auto/func -if [ $NGX_FOUND=YES ]; then +if [ $ngx_found = yes ]; then CFLAGS="$CFLAGS -D HAVE_EPOLL=1" - EVENT_MODULES="$EVENT_MODULES $EPOLL_MODULE" CORE_SRCS="$CORE_SRCS $EPOLL_SRCS" + EVENT_MODULES="$EVENT_MODULES $EPOLL_MODULE" + EVENT_FOUND=YES fi -# TODO check sendfile64() +# sendfile() + +CC_TEST_FLAGS="-D_GNU_SOURCE" +ngx_func="sendfile()"; +ngx_func_inc="#include <sys/sendfile.h>" +ngx_func_test="int s = 0, fd = 1; + ssize_t n; off_t off = 0; + n = sendfile(s, fd, &off, 1)" +. auto/func + +if [ $ngx_found = yes ]; then + CFLAGS="$CFLAGS -D HAVE_SENDFILE=1" + CORE_SRCS="$CORE_SRCS $LINUX_SENDFILE_SRCS" +fi + + +# sendfile64() CC_TEST_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" +ngx_func="sendfile64()"; . auto/func -# STUB -CORE_SRCS="$CORE_SRCS $LINUX_SENDFILE_SRCS" +if [ $ngx_found = yes ]; then + CFLAGS="$CFLAGS -D HAVE_SENDFILE64=1" +fi diff --git a/auto/os/solaris b/auto/os/solaris index 6bc2a6f82..2fd479f17 100644 --- a/auto/os/solaris +++ b/auto/os/solaris @@ -6,29 +6,31 @@ EVENT_MODULES="$EVENT_MODULES $SELECT_MODULE $POLL_MODULE" MD5_LIB="-lmd5" ZLIB_LIB="-lz" +CORE_LIBS="$CORE_LIBS -lsocket -lnsl" CC_TEST_FLAGS="-D_FILE_OFFSET_BITS=64" -CORE_LIBS="$CORE_LIBS -lsocket -lnsl" - -NGX_INC="sys/devpoll.h"; . auto/inc +ngx_inc="sys/devpoll.h"; . auto/inc -if [ $NGX_FOUND=YES ]; then +if [ $ngx_found = yes ]; then CFLAGS="$CFLAGS -D HAVE_DEVPOLL=1" - EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS" + EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" + EVENT_FOUND=YES fi -NGX_FUNC_INC="#include <sys/sendfile.h>" -NGX_FUNC_LIBS="-lsendfile" -NGX_FUNC_TEST="int fd = 1; sendfilevec_t vec[1]; +ngx_func="sendfilev()"; +ngx_func_inc="#include <sys/sendfile.h>" +ngx_func_libs="-lsendfile" +ngx_func_test="int fd = 1; sendfilevec_t vec[1]; size_t sent = 1; ssize_t n; n = sendfilev(fd, vec, 1, &sent)" -NGX_FUNC="sendfilev()"; . auto/func +. auto/func + -if [ $NGX_FOUND=YES ]; then +if [ $ngx_found = yes ]; then CFLAGS="$CFLAGS -D HAVE_SENDFILE=1" CORE_SRCS="$CORE_SRCS $SOLARIS_SENDFILEV_SRCS" CORE_LIBS="$CORE_LIBS -lsendfile" |
