Mercurial > hg > nginx
changeset 3113:e1e290965ed1
fail if no file aio was found
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 10 Sep 2009 12:08:30 +0000 |
parents | 5ddc9458e4bb |
children | 1c4fcfe57af1 |
files | auto/os/features |
diffstat | 1 files changed, 31 insertions(+), 22 deletions(-) [+] |
line wrap: on
line diff
--- a/auto/os/features Tue Sep 08 11:37:50 2009 +0000 +++ b/auto/os/features Thu Sep 10 12:08:30 2009 +0000 @@ -277,6 +277,7 @@ if [ $NGX_FILE_AIO = YES ]; then + ngx_feature="kqueue AIO support" ngx_feature_name="NGX_HAVE_FILE_AIO" ngx_feature_run=no @@ -290,27 +291,35 @@ if [ $ngx_found = yes ]; then CORE_SRCS="$CORE_SRCS $FILE_AIO_SRCS" + + elif [ $ngx_found = no ]; then + + ngx_feature="Linux AIO support" + ngx_feature_name="NGX_HAVE_FILE_AIO" + ngx_feature_run=no + ngx_feature_incs="#include <linux/aio_abi.h> + #include <sys/syscall.h>" + ngx_feature_path= + ngx_feature_libs= + ngx_feature_test="int n = SYS_eventfd; + struct iocb iocb; + iocb.aio_lio_opcode = IOCB_CMD_PREAD; + iocb.aio_flags = IOCB_FLAG_RESFD; + iocb.aio_resfd = -1;" + . auto/feature + + if [ $ngx_found = yes ]; then + have=NGX_HAVE_EVENTFD . auto/have + CORE_SRCS="$CORE_SRCS $LINUX_AIO_SRCS" + + else + cat << END + +$0: no supported file AIO was found +Currently file AIO is supported on FreeBSD 4.3+ and Linux 2.6.22+ only + +END + exit 1 + fi fi fi - - -if [ $NGX_FILE_AIO = YES ]; then - ngx_feature="Linux AIO support" - ngx_feature_name="NGX_HAVE_FILE_AIO" - ngx_feature_run=no - ngx_feature_incs="#include <linux/aio_abi.h> - #include <sys/syscall.h>" - ngx_feature_path= - ngx_feature_libs= - ngx_feature_test="int n = SYS_eventfd; - struct iocb iocb; - iocb.aio_lio_opcode = IOCB_CMD_PREAD; - iocb.aio_flags = IOCB_FLAG_RESFD; - iocb.aio_resfd = -1;" - . auto/feature - - if [ $ngx_found = yes ]; then - have=NGX_HAVE_EVENTFD . auto/have - CORE_SRCS="$CORE_SRCS $LINUX_AIO_SRCS" - fi -fi