blob: f4d08cb423d06f257405cebbac803271a4579ec7 [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
Igor Sysoev74944902008-07-30 12:18:07 +000021 Darwin:*)
22 . auto/os/darwin
23 ;;
24
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000025 win32)
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000026 . auto/os/win32
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000027 ;;
28
Igor Sysoevaa542632006-09-07 20:17:19 +000029 DragonFly:*)
30 have=NGX_FREEBSD . auto/have_headers
31 CORE_INCS="$UNIX_INCS"
32 CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS"
33 CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS"
34
35 echo " + sendfile() found"
36 have=NGX_HAVE_SENDFILE . auto/have
37 CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS"
38
39 ngx_spacer='
40'
41 ;;
42
Igor Sysoeve31e90b2005-05-19 13:25:22 +000043 HP-UX:*)
44 # HP/UX
45 have=NGX_HPUX . auto/have_headers
46 CORE_INCS="$UNIX_INCS"
47 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
48 CORE_SRCS="$UNIX_SRCS"
49 CC_AUX_FLAGS="$CC_AUX_FLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1"
50 ;;
51
52 OSF1:*)
Igor Sysoev4959ec42005-05-23 12:07:45 +000053 # Tru64 UNIX
Igor Sysoeve31e90b2005-05-19 13:25:22 +000054 have=NGX_TRU64 . auto/have_headers
Igor Sysoev4959ec42005-05-23 12:07:45 +000055 have=NGX_HAVE_STRERROR_R . auto/nohave
Igor Sysoeve31e90b2005-05-19 13:25:22 +000056 CORE_INCS="$UNIX_INCS"
57 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
58 CORE_SRCS="$UNIX_SRCS"
59 ;;
60
Igor Sysoevd09f7a12004-06-15 17:47:16 +000061 *)
62 CORE_INCS="$UNIX_INCS"
63 CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
64 CORE_SRCS="$UNIX_SRCS"
65 ;;
66
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000067esac
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000068
69
Igor Sysoevd039a2e2005-02-22 14:40:13 +000070case "$NGX_MACHINE" in
Igor Sysoev02025fd2005-01-18 13:03:58 +000071
Igor Sysoev24025022005-12-16 15:07:08 +000072 i386 | i686 | i86pc)
Igor Sysoev899b44e2005-05-12 14:58:06 +000073 have=NGX_HAVE_NONALIGNED . auto/have
Igor Sysoev24025022005-12-16 15:07:08 +000074 NGX_MACH_CACHE_LINE=32
Igor Sysoev899b44e2005-05-12 14:58:06 +000075 ;;
Igor Sysoev02025fd2005-01-18 13:03:58 +000076
Igor Sysoev305a9d82005-12-26 17:07:48 +000077 amd64 | x86_64)
Igor Sysoev24025022005-12-16 15:07:08 +000078 have=NGX_HAVE_NONALIGNED . auto/have
79 NGX_MACH_CACHE_LINE=64
80 ;;
81
Igor Sysoev852cde42006-10-06 13:02:23 +000082 sun4u | sun4v | sparc | sparc64)
Igor Sysoevc31a9bb2005-11-26 10:11:11 +000083 have=NGX_ALIGNMENT value=16 . auto/define
Igor Sysoev24025022005-12-16 15:07:08 +000084 # TODO
85 NGX_MACH_CACHE_LINE=64
86 ;;
87
88 ia64 )
89 have=NGX_ALIGNMENT value=16 . auto/define
90 # TODO
91 NGX_MACH_CACHE_LINE=64
92 ;;
93
94 *)
95 NGX_MACH_CACHE_LINE=32
Igor Sysoevc31a9bb2005-11-26 10:11:11 +000096 ;;
97
Igor Sysoev02025fd2005-01-18 13:03:58 +000098esac
Igor Sysoev24025022005-12-16 15:07:08 +000099
100if test -z "$NGX_CPU_CACHE_LINE"; then
101 NGX_CPU_CACHE_LINE=$NGX_MACH_CACHE_LINE
102fi
103
104have=NGX_CPU_CACHE_LINE value=$NGX_CPU_CACHE_LINE . auto/define