Solaris 10 event ports support
diff --git a/auto/modules b/auto/modules index ed19ef8..4c8cca0 100644 --- a/auto/modules +++ b/auto/modules
@@ -31,6 +31,14 @@ CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS" fi + +if [ $NGX_TEST_BUILD_EVENTPORT = YES ]; then + have=NGX_HAVE_EVENTPORT . auto/have + have=NGX_TEST_BUILD_EVENTPORT . auto/have + EVENT_MODULES="$EVENT_MODULES $EVENTPORT_MODULE" + CORE_SRCS="$CORE_SRCS $EVENTPORT_SRCS" +fi + if [ $NGX_TEST_BUILD_EPOLL = YES ]; then have=NGX_HAVE_EPOLL . auto/have have=NGX_TEST_BUILD_EPOLL . auto/have
diff --git a/auto/options b/auto/options index 9c12236..6920d21 100644 --- a/auto/options +++ b/auto/options
@@ -23,6 +23,7 @@ CPU=NO NGX_TEST_BUILD_DEVPOLL=NO +NGX_TEST_BUILD_EVENTPORT=NO NGX_TEST_BUILD_EPOLL=NO NGX_TEST_BUILD_RTSIG=NO NGX_TEST_BUILD_SOLARIS_SENDFILEV=NO @@ -207,6 +208,7 @@ --with-zlib-asm=*) ZLIB_ASM="$value" ;; --test-build-devpoll) NGX_TEST_BUILD_DEVPOLL=YES ;; + --test-build-eventport) NGX_TEST_BUILD_EVENTPORT=YES ;; --test-build-epoll) NGX_TEST_BUILD_EPOLL=YES ;; --test-build-rtsig) NGX_TEST_BUILD_RTSIG=YES ;; --test-build-solaris-sendfilev) NGX_TEST_BUILD_SOLARIS_SENDFILEV=YES ;;
diff --git a/auto/os/solaris b/auto/os/solaris index 73c9372..757013d 100644 --- a/auto/os/solaris +++ b/auto/os/solaris
@@ -39,3 +39,17 @@ CORE_SRCS="$CORE_SRCS $SOLARIS_SENDFILEV_SRCS" CORE_LIBS="$CORE_LIBS -lsendfile" fi + + +ngx_feature="event ports" +ngx_feature_name="NGX_HAVE_EVENTPORT" +ngx_feature_run=no +ngx_feature_incs="#include <port.h>" +ngx_feature_libs= +ngx_feature_test="int n = port_create()" +. auto/feature + +if [ $ngx_found = yes ]; then + CORE_SRCS="$CORE_SRCS $EVENTPORT_SRCS" + EVENT_MODULES="$EVENT_MODULES $EVENTPORT_MODULE" +fi
diff --git a/auto/sources b/auto/sources index beff38b..613c582 100644 --- a/auto/sources +++ b/auto/sources
@@ -95,6 +95,9 @@ DEVPOLL_MODULE=ngx_devpoll_module DEVPOLL_SRCS=src/event/modules/ngx_devpoll_module.c +EVENTPORT_MODULE=ngx_eventport_module +EVENTPORT_SRCS=src/event/modules/ngx_eventport_module.c + EPOLL_MODULE=ngx_epoll_module EPOLL_SRCS=src/event/modules/ngx_epoll_module.c