summaryrefslogtreecommitdiffhomepage
path: root/auto/os
diff options
context:
space:
mode:
Diffstat (limited to 'auto/os')
-rw-r--r--auto/os/conf148
-rw-r--r--auto/os/features131
-rw-r--r--auto/os/freebsd1
-rw-r--r--auto/os/linux1
4 files changed, 157 insertions, 124 deletions
diff --git a/auto/os/conf b/auto/os/conf
index f2a49cee5..226f8ddc4 100644
--- a/auto/os/conf
+++ b/auto/os/conf
@@ -23,15 +23,6 @@ case "$NGX_PLATFORM" in
. auto/os/freebsd
;;
- Darwin:*)
- have=NGX_DARWIN . auto/have_headers
- have=NGX_HAVE_INHERITED_NONBLOCK . auto/have
- CORE_INCS="$UNIX_INCS"
- CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
- CORE_SRCS="$UNIX_SRCS"
- CRYPT_LIB=
- ;;
-
Linux:*)
. auto/os/linux
;;
@@ -44,11 +35,35 @@ case "$NGX_PLATFORM" in
. auto/os/win32
;;
+ Darwin:*)
+ have=NGX_DARWIN . auto/have_headers
+ have=NGX_HAVE_INHERITED_NONBLOCK . auto/have
+ CORE_INCS="$UNIX_INCS"
+ CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
+ CORE_SRCS="$UNIX_SRCS"
+ ;;
+
+ HP-UX:*)
+ # HP/UX
+ have=NGX_HPUX . auto/have_headers
+ CORE_INCS="$UNIX_INCS"
+ CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
+ CORE_SRCS="$UNIX_SRCS"
+ CC_AUX_FLAGS="$CC_AUX_FLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"
+ ;;
+
+ OSF1:*)
+ # HP Tru64
+ have=NGX_TRU64 . auto/have_headers
+ CORE_INCS="$UNIX_INCS"
+ CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
+ CORE_SRCS="$UNIX_SRCS"
+ ;;
+
*)
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
CORE_SRCS="$UNIX_SRCS"
- CRYPT_LIB="-lcrypt"
;;
esac
@@ -56,119 +71,8 @@ esac
case "$NGX_MACHINE" in
- i386|i686|i86pc|amd64)
+ i386 | i686 | i86pc | amd64)
have=NGX_HAVE_NONALIGNED . auto/have
;;
esac
-
-
-if [ "$NGX_PLATFORM" != win32 ]; then
-
- NGX_USER=${NGX_USER:-nobody}
-
- if [ -z "$NGX_GROUP" -a $NGX_USER = nobody ] ; then
- if grep nobody /etc/group 2>&1 >/dev/null; then
- echo "checking for nobody group ... found"
- NGX_GROUP=nobody
- else
- echo "checking for nobody group ... not found"
-
- if grep nogroup /etc/group 2>&1 >/dev/null; then
- echo "checking for nogroup group ... found"
- NGX_GROUP=nogroup
- else
- echo "checking for nogroup group ... not found"
- NGX_GROUP=nobody
- fi
- fi
-
- else
- NGX_GROUP=$NGX_USER
- fi
-
-
- ngx_feature="poll()"
- ngx_feature_name=
- ngx_feature_run=no
- ngx_feature_incs="#include <poll.h>"
- ngx_feature_libs=
- ngx_feature_test="int n, dp; struct pollfd pl;
- dp = 0;
- pl.fd = 0;
- pl.events = 0;
- pl.revents = 0;
- n = poll(&pl, 1, 0)"
- . auto/feature
-
- if [ $ngx_found = no ]; then
- EVENT_POLL=NONE
- fi
-
-
- ngx_feature="/dev/poll"
- ngx_feature_name="NGX_HAVE_DEVPOLL"
- ngx_feature_run=no
- ngx_feature_incs="#include <sys/devpoll.h>"
- ngx_feature_libs=
- ngx_feature_test="int n, dp; struct dvpoll dvp;
- dp = 0;
- dvp.dp_fds = NULL;
- dvp.dp_nfds = 0;
- dvp.dp_timeout = 0;
- n = ioctl(dp, DP_POLL, &dvp)"
- . auto/feature
-
- if [ $ngx_found = yes ]; then
- CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS"
- EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE"
- EVENT_FOUND=YES
- fi
-
-
- if test -z "$NGX_KQUEUE_CHECKED"; then
- ngx_feature="kqueue"
- ngx_feature_name="NGX_HAVE_KQUEUE"
- ngx_feature_run=no
- ngx_feature_incs="#include <sys/event.h>"
- ngx_feature_libs=
- ngx_feature_test="int kq; kq = kqueue()"
- . auto/feature
-
- if [ $ngx_found = yes ]; then
-
- have=NGX_HAVE_CLEAR_EVENT . auto/have
- EVENT_MODULES="$EVENT_MODULES $KQUEUE_MODULE"
- CORE_SRCS="$CORE_SRCS $KQUEUE_SRCS"
- EVENT_FOUND=YES
-
- ngx_feature="kqueue's NOTE_LOWAT"
- ngx_feature_name="NGX_HAVE_LOWAT_EVENT"
- ngx_feature_run=no
- ngx_feature_incs="#include <sys/event.h>"
- ngx_feature_libs=
- ngx_feature_test="struct kevent kev;
- kev.fflags = NOTE_LOWAT;"
- . auto/feature
- fi
- fi
-
- if [ "$NGX_SYSTEM" = "NetBSD" ]; then
-
- # NetBSD 2.0 incompatibly defines kevent.udata as "intptr_t"
-
- cat << END >> $NGX_AUTO_CONFIG_H
-
-#define NGX_KQUEUE_UDATA_T
-
-END
-
- else
- cat << END >> $NGX_AUTO_CONFIG_H
-
-#define NGX_KQUEUE_UDATA_T (void *)
-
-END
-
- fi
-fi
diff --git a/auto/os/features b/auto/os/features
new file mode 100644
index 000000000..44c33cd31
--- /dev/null
+++ b/auto/os/features
@@ -0,0 +1,131 @@
+
+# Copyright (C) Igor Sysoev
+
+
+NGX_USER=${NGX_USER:-nobody}
+
+if [ -z "$NGX_GROUP" -a $NGX_USER = nobody ] ; then
+ if grep nobody /etc/group 2>&1 >/dev/null; then
+ echo "checking for nobody group ... found"
+ NGX_GROUP=nobody
+ else
+ echo "checking for nobody group ... not found"
+
+ if grep nogroup /etc/group 2>&1 >/dev/null; then
+ echo "checking for nogroup group ... found"
+ NGX_GROUP=nogroup
+ else
+ echo "checking for nogroup group ... not found"
+ NGX_GROUP=nobody
+ fi
+ fi
+
+else
+ NGX_GROUP=$NGX_USER
+fi
+
+
+ngx_feature="poll()"
+ngx_feature_name=
+ngx_feature_run=no
+ngx_feature_incs="#include <poll.h>"
+ngx_feature_libs=
+ngx_feature_test="int n, dp; struct pollfd pl;
+ dp = 0;
+ pl.fd = 0;
+ pl.events = 0;
+ pl.revents = 0;
+ n = poll(&pl, 1, 0)"
+. auto/feature
+
+if [ $ngx_found = no ]; then
+ EVENT_POLL=NONE
+fi
+
+
+ngx_feature="/dev/poll"
+ngx_feature_name="NGX_HAVE_DEVPOLL"
+ngx_feature_run=no
+ngx_feature_incs="#include <sys/devpoll.h>"
+ngx_feature_libs=
+ngx_feature_test="int n, dp; struct dvpoll dvp;
+ dp = 0;
+ dvp.dp_fds = NULL;
+ dvp.dp_nfds = 0;
+ dvp.dp_timeout = 0;
+ n = ioctl(dp, DP_POLL, &dvp)"
+. auto/feature
+
+if [ $ngx_found = yes ]; then
+ CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS"
+ EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE"
+ EVENT_FOUND=YES
+fi
+
+
+if test -z "$NGX_KQUEUE_CHECKED"; then
+ ngx_feature="kqueue"
+ ngx_feature_name="NGX_HAVE_KQUEUE"
+ ngx_feature_run=no
+ ngx_feature_incs="#include <sys/event.h>"
+ ngx_feature_libs=
+ ngx_feature_test="int kq; kq = kqueue()"
+ . auto/feature
+
+ if [ $ngx_found = yes ]; then
+
+ have=NGX_HAVE_CLEAR_EVENT . auto/have
+ EVENT_MODULES="$EVENT_MODULES $KQUEUE_MODULE"
+ CORE_SRCS="$CORE_SRCS $KQUEUE_SRCS"
+ EVENT_FOUND=YES
+
+ ngx_feature="kqueue's NOTE_LOWAT"
+ ngx_feature_name="NGX_HAVE_LOWAT_EVENT"
+ ngx_feature_run=no
+ ngx_feature_incs="#include <sys/event.h>"
+ ngx_feature_libs=
+ ngx_feature_test="struct kevent kev;
+ kev.fflags = NOTE_LOWAT;"
+ . auto/feature
+ fi
+fi
+
+if [ "$NGX_SYSTEM" = "NetBSD" ]; then
+
+ # NetBSD 2.0 incompatibly defines kevent.udata as "intptr_t"
+
+ cat << END >> $NGX_AUTO_CONFIG_H
+
+#define NGX_KQUEUE_UDATA_T
+
+END
+
+else
+ cat << END >> $NGX_AUTO_CONFIG_H
+
+#define NGX_KQUEUE_UDATA_T (void *)
+
+END
+
+fi
+
+
+ngx_feature="crypt()"
+ngx_feature_name=
+ngx_feature_run=no
+ngx_feature_incs=
+ngx_feature_libs=
+ngx_feature_test="crypt(\"test\", \"salt\");"
+. auto/feature
+
+
+if [ $ngx_found = no ]; then
+
+ ngx_feature="crypt() in libcrypt"
+ ngx_feature_libs=-lcrypt
+ . auto/feature
+
+ if [ $ngx_found = yes ]; then
+ CRYPT_LIB="-lcrypt"
+ fi
+fi
diff --git a/auto/os/freebsd b/auto/os/freebsd
index f916860d9..e5451224a 100644
--- a/auto/os/freebsd
+++ b/auto/os/freebsd
@@ -7,7 +7,6 @@ have=NGX_FREEBSD . auto/have_headers
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS"
CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS"
-CRYPT_LIB="-lcrypt"
ngx_spacer='
'
diff --git a/auto/os/linux b/auto/os/linux
index 5926211a4..32ef4cb8f 100644
--- a/auto/os/linux
+++ b/auto/os/linux
@@ -7,7 +7,6 @@ have=NGX_LINUX . auto/have_headers
CORE_INCS="$UNIX_INCS"
CORE_DEPS="$UNIX_DEPS $LINUX_DEPS"
CORE_SRCS="$UNIX_SRCS $LINUX_SRCS"
-CRYPT_LIB="-lcrypt"
ngx_spacer='
'