Unbreak building on FreeBSD without file AIO. It appeared that the NGX_HAVE_AIO_SENDFILE macro was defined regardless of the "--with-file-aio" configure option and the NGX_HAVE_FILE_AIO macro. Now they are related. Additionally, fixed one macro.
diff --git a/auto/os/freebsd b/auto/os/freebsd index 6aa823f..22ad403 100644 --- a/auto/os/freebsd +++ b/auto/os/freebsd
@@ -44,10 +44,12 @@ CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS" fi -if [ $osreldate -gt 502103 ]; then - echo " + sendfile()'s SF_NODISKIO found" +if [ $NGX_FILE_AIO = YES ]; then + if [ $osreldate -gt 502103 ]; then + echo " + sendfile()'s SF_NODISKIO found" - have=NGX_HAVE_AIO_SENDFILE . auto/have + have=NGX_HAVE_AIO_SENDFILE . auto/have + fi fi # POSIX semaphores
diff --git a/src/core/ngx_buf.h b/src/core/ngx_buf.h index 219894f..9ee1c58 100644 --- a/src/core/ngx_buf.h +++ b/src/core/ngx_buf.h
@@ -94,7 +94,7 @@ unsigned aio:1; ngx_output_chain_aio_pt aio_handler; -#if (NGX_HAVE_FILE_AIO) +#if (NGX_HAVE_AIO_SENDFILE) ssize_t (*aio_preload)(ngx_buf_t *file); #endif #endif