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