Mercurial > hg > nginx-vendor-0-8
comparison auto/os/linux @ 4:4b2dafa26fe2 NGINX_0_1_2
nginx 0.1.2
*) Feature: the --user=USER, --group=GROUP, and --with-ld-opt=OPTIONS
options in configure.
*) Feature: the server_name directive supports *.domain.tld.
*) Bugfix: the portability improvements.
*) Bugfix: if configuration file was set in command line, the
reconfiguration was impossible; bug appeared in 0.1.1.
*) Bugfix: proxy module may get caught in an endless loop when sendfile
is not used.
*) Bugfix: with sendfile the response was not recoded according to the
charset module directives; bug appeared in 0.1.1.
*) Bugfix: very seldom bug in the kqueue processing.
*) Bugfix: the gzip module compressed the proxied responses that was
already compressed.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Thu, 21 Oct 2004 00:00:00 +0400 |
parents | f0b350454894 |
children | 46833bd150cb |
comparison
equal
deleted
inserted
replaced
3:8beaf7b3241f | 4:4b2dafa26fe2 |
---|---|
1 | 1 |
2 # Copyright (C) Igor Sysoev | 2 # Copyright (C) Igor Sysoev |
3 | 3 |
4 | |
5 cat << END >> $NGX_AUTO_HEADERS_H | |
6 | |
7 #ifndef NGX_LINUX | |
8 #define NGX_LINUX 1 | |
9 #endif | |
10 | |
11 END | |
4 | 12 |
5 CORE_INCS="$UNIX_INCS" | 13 CORE_INCS="$UNIX_INCS" |
6 CORE_DEPS="$UNIX_DEPS $LINUX_DEPS" | 14 CORE_DEPS="$UNIX_DEPS $LINUX_DEPS" |
7 CORE_SRCS="$UNIX_SRCS $LINUX_SRCS" | 15 CORE_SRCS="$UNIX_SRCS $LINUX_SRCS" |
8 EVENT_MODULES="$EVENT_MODULES" | 16 EVENT_MODULES="$EVENT_MODULES" |
9 | 17 |
10 PIPE="-pipe" | 18 ngx_spacer=' |
19 ' | |
11 | 20 |
12 | 21 CC_AUX_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" |
13 CC_TEST_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" | |
14 | 22 |
15 # Linux kernel version | 23 # Linux kernel version |
16 | 24 |
17 version=`grep "#define LINUX_VERSION_CODE" /usr/include/linux/version.h \ | 25 version=`grep "#define LINUX_VERSION_CODE" /usr/include/linux/version.h \ |
18 | sed -e 's/^.* \(.*\)$/\1/'` | 26 | sed -e 's/^.* \(.*\)$/\1/'` |
29 fi | 37 fi |
30 | 38 |
31 | 39 |
32 # epoll, EPOLLET version | 40 # epoll, EPOLLET version |
33 | 41 |
34 ngx_func="epoll"; | 42 ngx_feature="epoll" |
35 ngx_func_inc="#include <sys/epoll.h>" | 43 ngx_feature_name="epoll" |
36 ngx_func_test="int efd = 0, fd = 1, n; | 44 ngx_feature_run=yes |
37 struct epoll_event ee; | 45 ngx_feature_incs="#include <sys/epoll.h>" |
38 ee.events = EPOLLIN|EPOLLOUT|EPOLLET; | 46 ngx_feature_libs= |
39 ee.data.ptr = NULL; | 47 ngx_feature_test="int efd = 0, fd = 1, n; |
40 n = epoll_ctl(efd, EPOLL_CTL_ADD, fd, &ee)" | 48 struct epoll_event ee; |
41 . auto/func | 49 ee.events = EPOLLIN|EPOLLOUT|EPOLLET; |
50 ee.data.ptr = NULL; | |
51 efd = epoll_create(100); | |
52 if (efd == -1) return 1;" | |
53 . auto/feature | |
42 | 54 |
43 if [ $ngx_found = yes ]; then | 55 if [ $ngx_found = yes ]; then |
44 have=HAVE_EPOLL . auto/have | 56 have=HAVE_EPOLL . auto/have |
45 have=HAVE_CLEAR_EVENT . auto/have | 57 have=HAVE_CLEAR_EVENT . auto/have |
46 CORE_SRCS="$CORE_SRCS $EPOLL_SRCS" | 58 CORE_SRCS="$CORE_SRCS $EPOLL_SRCS" |
49 fi | 61 fi |
50 | 62 |
51 | 63 |
52 # sendfile() | 64 # sendfile() |
53 | 65 |
54 CC_TEST_FLAGS="-D_GNU_SOURCE" | 66 CC_AUX_FLAGS="-D_GNU_SOURCE" |
55 ngx_func="sendfile()"; | 67 ngx_feature="sendfile()" |
56 ngx_func_inc="#include <sys/sendfile.h>" | 68 ngx_feature_name="sendfile" |
57 ngx_func_test="int s = 0, fd = 1; | 69 ngx_feature_run=no |
58 ssize_t n; off_t off = 0; | 70 ngx_feature_incs="#include <sys/sendfile.h>" |
59 n = sendfile(s, fd, &off, 1)" | 71 ngx_feature_libs= |
60 . auto/func | 72 ngx_feature_test="int s = 0, fd = 1; |
73 ssize_t n; off_t off = 0; | |
74 n = sendfile(s, fd, &off, 1)" | |
75 . auto/feature | |
61 | 76 |
62 if [ $ngx_found = yes ]; then | 77 if [ $ngx_found = yes ]; then |
63 CORE_SRCS="$CORE_SRCS $LINUX_SENDFILE_SRCS" | 78 CORE_SRCS="$CORE_SRCS $LINUX_SENDFILE_SRCS" |
64 fi | 79 fi |
65 | 80 |
66 | 81 |
67 # sendfile64() | 82 # sendfile64() |
68 | 83 |
69 CC_TEST_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" | 84 CC_AUX_FLAGS="-D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" |
70 ngx_func="sendfile64()"; . auto/func | 85 ngx_feature="sendfile64()" |
86 ngx_feature_name="HAVE_SENDFILE64" | |
87 ngx_feature_run=no | |
88 ngx_feature_incs="#include <sys/sendfile.h>" | |
89 ngx_feature_libs= | |
90 ngx_feature_test="int s = 0, fd = 1; | |
91 ssize_t n; off_t off = 0; | |
92 n = sendfile(s, fd, &off, 1)" | |
93 . auto/feature | |
71 | 94 |
95 | |
96 ngx_include="sys/prctl.h"; . auto/include | |
72 | 97 |
73 # prctl(PR_SET_DUMPABLE) | 98 # prctl(PR_SET_DUMPABLE) |
74 | 99 |
75 ngx_func="prctl()"; | 100 ngx_feature="prctl(PR_SET_DUMPABLE)" |
76 ngx_func_inc="#include <sys/prctl.h>" | 101 ngx_feature_name="HAVE_PR_SET_DUMPABLE" |
77 ngx_func_test="prctl(PR_SET_DUMPABLE, 1, 0, 0, 0)" | 102 ngx_feature_run=yes |
78 . auto/func | 103 ngx_feature_incs="#include <sys/prctl.h>" |
79 | 104 ngx_feature_libs= |
80 if [ $ngx_found = yes ]; then | 105 ngx_feature_test="if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) == -1) return 1" |
81 have=HAVE_PR_SET_DUMPABLE . auto/have | 106 . auto/feature |
82 fi |