Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 1 | |
Igor Sysoev | ff8da91 | 2004-09-29 16:00:49 +0000 | [diff] [blame] | 2 | # Copyright (C) Igor Sysoev |
Maxim Konovalov | f8d59e3 | 2012-01-18 15:07:43 +0000 | [diff] [blame] | 3 | # Copyright (C) Nginx, Inc. |
Igor Sysoev | ff8da91 | 2004-09-29 16:00:49 +0000 | [diff] [blame] | 4 | |
| 5 | |
Igor Sysoev | c2068d0 | 2005-10-19 12:33:58 +0000 | [diff] [blame] | 6 | echo "checking for $NGX_SYSTEM specific features" |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 7 | |
Igor Sysoev | d039a2e | 2005-02-22 14:40:13 +0000 | [diff] [blame] | 8 | case "$NGX_PLATFORM" in |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 9 | |
Igor Sysoev | aa54263 | 2006-09-07 20:17:19 +0000 | [diff] [blame] | 10 | FreeBSD:*) |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 11 | . auto/os/freebsd |
| 12 | ;; |
| 13 | |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 14 | Linux:*) |
| 15 | . auto/os/linux |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 16 | ;; |
| 17 | |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 18 | SunOS:*) |
| 19 | . auto/os/solaris |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 20 | ;; |
| 21 | |
Igor Sysoev | 7494490 | 2008-07-30 12:18:07 +0000 | [diff] [blame] | 22 | Darwin:*) |
| 23 | . auto/os/darwin |
| 24 | ;; |
| 25 | |
Igor Sysoev | ec43d91 | 2009-05-10 19:49:14 +0000 | [diff] [blame] | 26 | win32) |
Igor Sysoev | c0edbcc | 2004-10-21 15:34:38 +0000 | [diff] [blame] | 27 | . auto/os/win32 |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 28 | ;; |
| 29 | |
Igor Sysoev | aa54263 | 2006-09-07 20:17:19 +0000 | [diff] [blame] | 30 | DragonFly:*) |
| 31 | have=NGX_FREEBSD . auto/have_headers |
| 32 | CORE_INCS="$UNIX_INCS" |
| 33 | CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS" |
| 34 | CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS" |
| 35 | |
| 36 | echo " + sendfile() found" |
| 37 | have=NGX_HAVE_SENDFILE . auto/have |
| 38 | CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS" |
| 39 | |
| 40 | ngx_spacer=' |
| 41 | ' |
| 42 | ;; |
| 43 | |
Igor Sysoev | e31e90b | 2005-05-19 13:25:22 +0000 | [diff] [blame] | 44 | HP-UX:*) |
| 45 | # HP/UX |
| 46 | have=NGX_HPUX . auto/have_headers |
| 47 | CORE_INCS="$UNIX_INCS" |
| 48 | CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" |
| 49 | CORE_SRCS="$UNIX_SRCS" |
| 50 | CC_AUX_FLAGS="$CC_AUX_FLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1" |
Maxim Dounin | 97f7bf2 | 2012-06-18 14:11:29 +0000 | [diff] [blame] | 51 | CC_AUX_FLAGS="$CC_AUX_FLAGS -D_HPUX_ALT_XOPEN_SOCKET_API" |
Igor Sysoev | e31e90b | 2005-05-19 13:25:22 +0000 | [diff] [blame] | 52 | ;; |
| 53 | |
| 54 | OSF1:*) |
Igor Sysoev | 4959ec4 | 2005-05-23 12:07:45 +0000 | [diff] [blame] | 55 | # Tru64 UNIX |
Igor Sysoev | e31e90b | 2005-05-19 13:25:22 +0000 | [diff] [blame] | 56 | have=NGX_TRU64 . auto/have_headers |
Igor Sysoev | 4959ec4 | 2005-05-23 12:07:45 +0000 | [diff] [blame] | 57 | have=NGX_HAVE_STRERROR_R . auto/nohave |
Igor Sysoev | e31e90b | 2005-05-19 13:25:22 +0000 | [diff] [blame] | 58 | CORE_INCS="$UNIX_INCS" |
| 59 | CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" |
| 60 | CORE_SRCS="$UNIX_SRCS" |
| 61 | ;; |
| 62 | |
Igor Sysoev | d09f7a1 | 2004-06-15 17:47:16 +0000 | [diff] [blame] | 63 | *) |
| 64 | CORE_INCS="$UNIX_INCS" |
| 65 | CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" |
| 66 | CORE_SRCS="$UNIX_SRCS" |
| 67 | ;; |
| 68 | |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 69 | esac |
Igor Sysoev | c0edbcc | 2004-10-21 15:34:38 +0000 | [diff] [blame] | 70 | |
| 71 | |
Igor Sysoev | d039a2e | 2005-02-22 14:40:13 +0000 | [diff] [blame] | 72 | case "$NGX_MACHINE" in |
Igor Sysoev | 02025fd | 2005-01-18 13:03:58 +0000 | [diff] [blame] | 73 | |
Igor Sysoev | 2402502 | 2005-12-16 15:07:08 +0000 | [diff] [blame] | 74 | i386 | i686 | i86pc) |
Igor Sysoev | 899b44e | 2005-05-12 14:58:06 +0000 | [diff] [blame] | 75 | have=NGX_HAVE_NONALIGNED . auto/have |
Igor Sysoev | 2402502 | 2005-12-16 15:07:08 +0000 | [diff] [blame] | 76 | NGX_MACH_CACHE_LINE=32 |
Igor Sysoev | 899b44e | 2005-05-12 14:58:06 +0000 | [diff] [blame] | 77 | ;; |
Igor Sysoev | 02025fd | 2005-01-18 13:03:58 +0000 | [diff] [blame] | 78 | |
Igor Sysoev | 305a9d8 | 2005-12-26 17:07:48 +0000 | [diff] [blame] | 79 | amd64 | x86_64) |
Igor Sysoev | 2402502 | 2005-12-16 15:07:08 +0000 | [diff] [blame] | 80 | have=NGX_HAVE_NONALIGNED . auto/have |
| 81 | NGX_MACH_CACHE_LINE=64 |
| 82 | ;; |
| 83 | |
Igor Sysoev | 852cde4 | 2006-10-06 13:02:23 +0000 | [diff] [blame] | 84 | sun4u | sun4v | sparc | sparc64) |
Igor Sysoev | c31a9bb | 2005-11-26 10:11:11 +0000 | [diff] [blame] | 85 | have=NGX_ALIGNMENT value=16 . auto/define |
Igor Sysoev | 2402502 | 2005-12-16 15:07:08 +0000 | [diff] [blame] | 86 | # TODO |
| 87 | NGX_MACH_CACHE_LINE=64 |
| 88 | ;; |
| 89 | |
| 90 | ia64 ) |
| 91 | have=NGX_ALIGNMENT value=16 . auto/define |
| 92 | # TODO |
| 93 | NGX_MACH_CACHE_LINE=64 |
| 94 | ;; |
| 95 | |
| 96 | *) |
Maxim Dounin | c45bd10 | 2012-06-18 14:09:54 +0000 | [diff] [blame] | 97 | have=NGX_ALIGNMENT value=16 . auto/define |
Igor Sysoev | 2402502 | 2005-12-16 15:07:08 +0000 | [diff] [blame] | 98 | NGX_MACH_CACHE_LINE=32 |
Igor Sysoev | c31a9bb | 2005-11-26 10:11:11 +0000 | [diff] [blame] | 99 | ;; |
| 100 | |
Igor Sysoev | 02025fd | 2005-01-18 13:03:58 +0000 | [diff] [blame] | 101 | esac |
Igor Sysoev | 2402502 | 2005-12-16 15:07:08 +0000 | [diff] [blame] | 102 | |
| 103 | if test -z "$NGX_CPU_CACHE_LINE"; then |
| 104 | NGX_CPU_CACHE_LINE=$NGX_MACH_CACHE_LINE |
| 105 | fi |
| 106 | |
| 107 | have=NGX_CPU_CACHE_LINE value=$NGX_CPU_CACHE_LINE . auto/define |