blob: 5598f69a785c598222efdd0686d13142b6e35343 [file] [log] [blame]
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00001
Igor Sysoevff8da912004-09-29 16:00:49 +00002# Copyright (C) Igor Sysoev
3
4
Igor Sysoevc2068d02005-10-19 12:33:58 +00005echo "checking for $NGX_SYSTEM specific features"
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00006
Igor Sysoevd039a2e2005-02-22 14:40:13 +00007case "$NGX_PLATFORM" in
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00008
Igor Sysoevaa542632006-09-07 20:17:19 +00009 FreeBSD:*)
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000010 . auto/os/freebsd
11 ;;
12
Igor Sysoevc0f8d912003-11-26 15:42:18 +000013 Linux:*)
14 . auto/os/linux
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000015 ;;
16
Igor Sysoevc0f8d912003-11-26 15:42:18 +000017 SunOS:*)
18 . auto/os/solaris
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000019 ;;
20
21 win32)
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000022 . auto/os/win32
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000023 ;;
24
Igor Sysoevaa542632006-09-07 20:17:19 +000025 DragonFly:*)
26 have=NGX_FREEBSD . auto/have_headers
27 CORE_INCS="$UNIX_INCS"
28 CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS"
29 CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS"
30
31 echo " + sendfile() found"
32 have=NGX_HAVE_SENDFILE . auto/have
33 CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS"
34
35 ngx_spacer='
36'
37 ;;
38
Igor Sysoeve31e90b2005-05-19 13:25:22 +000039 Darwin:*)
40 have=NGX_DARWIN . auto/have_headers
41 have=NGX_HAVE_INHERITED_NONBLOCK . auto/have
42 CORE_INCS="$UNIX_INCS"
43 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
44 CORE_SRCS="$UNIX_SRCS"
45 ;;
46
47 HP-UX:*)
48 # HP/UX
49 have=NGX_HPUX . auto/have_headers
50 CORE_INCS="$UNIX_INCS"
51 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
52 CORE_SRCS="$UNIX_SRCS"
53 CC_AUX_FLAGS="$CC_AUX_FLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"
54 ;;
55
56 OSF1:*)
Igor Sysoev4959ec42005-05-23 12:07:45 +000057 # Tru64 UNIX
Igor Sysoeve31e90b2005-05-19 13:25:22 +000058 have=NGX_TRU64 . auto/have_headers
Igor Sysoev4959ec42005-05-23 12:07:45 +000059 have=NGX_HAVE_STRERROR_R . auto/nohave
Igor Sysoeve31e90b2005-05-19 13:25:22 +000060 CORE_INCS="$UNIX_INCS"
61 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
62 CORE_SRCS="$UNIX_SRCS"
63 ;;
64
Igor Sysoevd09f7a12004-06-15 17:47:16 +000065 *)
66 CORE_INCS="$UNIX_INCS"
67 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
68 CORE_SRCS="$UNIX_SRCS"
69 ;;
70
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000071esac
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000072
73
Igor Sysoevd039a2e2005-02-22 14:40:13 +000074case "$NGX_MACHINE" in
Igor Sysoev02025fd2005-01-18 13:03:58 +000075
Igor Sysoev24025022005-12-16 15:07:08 +000076 i386 | i686 | i86pc)
Igor Sysoev899b44e2005-05-12 14:58:06 +000077 have=NGX_HAVE_NONALIGNED . auto/have
Igor Sysoev24025022005-12-16 15:07:08 +000078 NGX_MACH_CACHE_LINE=32
Igor Sysoev899b44e2005-05-12 14:58:06 +000079 ;;
Igor Sysoev02025fd2005-01-18 13:03:58 +000080
Igor Sysoev305a9d82005-12-26 17:07:48 +000081 amd64 | x86_64)
Igor Sysoev24025022005-12-16 15:07:08 +000082 have=NGX_HAVE_NONALIGNED . auto/have
83 NGX_MACH_CACHE_LINE=64
84 ;;
85
86 sun4u | sparc | sparc64)
Igor Sysoevc31a9bb2005-11-26 10:11:11 +000087 have=NGX_ALIGNMENT value=16 . auto/define
Igor Sysoev24025022005-12-16 15:07:08 +000088 # TODO
89 NGX_MACH_CACHE_LINE=64
90 ;;
91
92 ia64 )
93 have=NGX_ALIGNMENT value=16 . auto/define
94 # TODO
95 NGX_MACH_CACHE_LINE=64
96 ;;
97
98 *)
99 NGX_MACH_CACHE_LINE=32
Igor Sysoevc31a9bb2005-11-26 10:11:11 +0000100 ;;
101
Igor Sysoev02025fd2005-01-18 13:03:58 +0000102esac
Igor Sysoev24025022005-12-16 15:07:08 +0000103
104if test -z "$NGX_CPU_CACHE_LINE"; then
105 NGX_CPU_CACHE_LINE=$NGX_MACH_CACHE_LINE
106fi
107
108have=NGX_CPU_CACHE_LINE value=$NGX_CPU_CACHE_LINE . auto/define