mirror of
https://github.com/nginx/nginx.git
synced 2024-11-25 14:28:59 +08:00
226647e397
With this change it's no longer needed to pass -D_GNU_SOURCE manually, and -D_FILE_OFFSET_BITS=64 is set to use 64-bit off_t. Note that nginx currently fails to work properly with master process enabled on GNU Hurd, as fcntl(F_SETOWN) returns EOPNOTSUPP for sockets as of GNU Hurd 0.6. Additionally, our strerror() preloading doesn't work well with GNU Hurd, as it uses large numbers for most errors.
117 lines
2.4 KiB
Plaintext
117 lines
2.4 KiB
Plaintext
|
|
# Copyright (C) Igor Sysoev
|
|
# Copyright (C) Nginx, Inc.
|
|
|
|
|
|
echo "checking for $NGX_SYSTEM specific features"
|
|
|
|
case "$NGX_PLATFORM" in
|
|
|
|
FreeBSD:*)
|
|
. auto/os/freebsd
|
|
;;
|
|
|
|
Linux:*)
|
|
. auto/os/linux
|
|
;;
|
|
|
|
SunOS:*)
|
|
. auto/os/solaris
|
|
;;
|
|
|
|
Darwin:*)
|
|
. auto/os/darwin
|
|
;;
|
|
|
|
win32)
|
|
. auto/os/win32
|
|
;;
|
|
|
|
DragonFly:*)
|
|
have=NGX_FREEBSD . auto/have_headers
|
|
CORE_INCS="$UNIX_INCS"
|
|
CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS"
|
|
CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS"
|
|
|
|
echo " + sendfile() found"
|
|
have=NGX_HAVE_SENDFILE . auto/have
|
|
CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS"
|
|
|
|
ngx_spacer='
|
|
'
|
|
;;
|
|
|
|
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"
|
|
CC_AUX_FLAGS="$CC_AUX_FLAGS -D_HPUX_ALT_XOPEN_SOCKET_API"
|
|
;;
|
|
|
|
OSF1:*)
|
|
# Tru64 UNIX
|
|
have=NGX_TRU64 . auto/have_headers
|
|
have=NGX_HAVE_STRERROR_R . auto/nohave
|
|
CORE_INCS="$UNIX_INCS"
|
|
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
|
|
CORE_SRCS="$UNIX_SRCS"
|
|
;;
|
|
|
|
GNU:*)
|
|
# GNU Hurd
|
|
have=NGX_GNU_HURD . auto/have_headers
|
|
CORE_INCS="$UNIX_INCS"
|
|
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
|
|
CORE_SRCS="$UNIX_SRCS"
|
|
CC_AUX_FLAGS="$CC_AUX_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"
|
|
;;
|
|
|
|
*)
|
|
CORE_INCS="$UNIX_INCS"
|
|
CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
|
|
CORE_SRCS="$UNIX_SRCS"
|
|
;;
|
|
|
|
esac
|
|
|
|
|
|
case "$NGX_MACHINE" in
|
|
|
|
i386 | i686 | i86pc)
|
|
have=NGX_HAVE_NONALIGNED . auto/have
|
|
NGX_MACH_CACHE_LINE=32
|
|
;;
|
|
|
|
amd64 | x86_64)
|
|
have=NGX_HAVE_NONALIGNED . auto/have
|
|
NGX_MACH_CACHE_LINE=64
|
|
;;
|
|
|
|
sun4u | sun4v | sparc | sparc64)
|
|
have=NGX_ALIGNMENT value=16 . auto/define
|
|
# TODO
|
|
NGX_MACH_CACHE_LINE=64
|
|
;;
|
|
|
|
ia64 )
|
|
have=NGX_ALIGNMENT value=16 . auto/define
|
|
# TODO
|
|
NGX_MACH_CACHE_LINE=64
|
|
;;
|
|
|
|
*)
|
|
have=NGX_ALIGNMENT value=16 . auto/define
|
|
NGX_MACH_CACHE_LINE=32
|
|
;;
|
|
|
|
esac
|
|
|
|
if test -z "$NGX_CPU_CACHE_LINE"; then
|
|
NGX_CPU_CACHE_LINE=$NGX_MACH_CACHE_LINE
|
|
fi
|
|
|
|
have=NGX_CPU_CACHE_LINE value=$NGX_CPU_CACHE_LINE . auto/define
|