#
-# Copyright (C) 2009-2010 OpenWrt.org
+# Copyright (C) 2009-2011 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
include $(TOPDIR)/rules.mk
PKG_NAME:=nginx
-PKG_VERSION:=0.7.67
-PKG_RELEASE:=3
+PKG_VERSION:=1.0.10
+PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=http://sysoev.ru/nginx/
-PKG_MD5SUM:=b6e175f969d03a4d3c5643aaabc6a5ff
+PKG_SOURCE_URL:=http://nginx.org/download/
+PKG_MD5SUM:=930b297b00fa1018fb0a1dd3e6b7e17e
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
CATEGORY:=Network
SUBMENU:=Web Servers/Proxies
TITLE:=Nginx web server
- URL:=http://nginx.net/
+ URL:=http://nginx.org/
DEPENDS:=+libpcre +NGINX_SSL:libopenssl +zlib
MENU:=1
endef
define Package/nginx/description
- Nginx is a free, open-source, high-performance HTTP server
- and reverse proxy, as well as an IMAP/POP3 proxy server,
- written by Igor Sysoev.
+ Nginx is a free, open-source, high-performance HTTP server
+ and reverse proxy, as well as an IMAP/POP3 proxy server,
+ written by Igor Sysoev.
endef
define Package/nginx/config
- source "$(SOURCE)/Config.in"
+ source "$(SOURCE)/Config.in"
endef
config_files=nginx.conf mime.types fastcgi_params koi-utf koi-win win-utf
$(ADDITIONAL_MODULES) )
endef
-define Build/Compile
- $(call Build/Compile/Default,build)
-endef
-
define Package/nginx/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/nginx $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/etc/nginx
- $(INSTALL_DATA) $(addprefix $(PKG_INSTALL_DIR)/etc/nginx/,$(config_files)) $(1)/etc/nginx
+ $(INSTALL_DATA) $(addprefix $(PKG_INSTALL_DIR)/etc/nginx/,$(config_files)) $(1)/etc/nginx/
# make nginx bind on both IPv4 and IPv6 by default, when available
ifeq ($(CONFIG_IPV6),y)
$(SED) 's/listen\( \+\)80;/listen\1[::]:80;/' $(1)/etc/nginx/nginx.conf
+++ /dev/null
---- a/auto/cc/conf
-+++ b/auto/cc/conf
-@@ -135,7 +135,8 @@ if [ "$NGX_PLATFORM" != win32 ]; then
- ngx_feature_test="char buf[30]; buf[0] = '0';
- var(0, buf, \"%d\", 1);
- if (buf[0] != '1') return 1"
-- . auto/feature
-+ #. auto/feature
-+ have=$ngx_feature_name . auto/have
-
-
- if [ "$NGX_CC_NAME" = "ccc" ]; then
-@@ -151,7 +152,8 @@ if [ "$NGX_PLATFORM" != win32 ]; then
- ngx_feature_test="char buf[30]; buf[0] = '0';
- var(0, buf, \"%d\", 1);
- if (buf[0] != '1') return 1"
-- . auto/feature
-+ #. auto/feature
-+ have=$ngx_feature_name . auto/have
- fi
-
-
---- a/auto/cc/name
-+++ b/auto/cc/name
-@@ -13,12 +13,12 @@ if [ "$NGX_PLATFORM" != win32 ]; then
- ngx_feature_test=
- . auto/feature
-
-- if [ $ngx_found = no ]; then
-- echo
-- echo $0: error: C compiler $CC is not found
-- echo
-- exit 1
-- fi
-+ #if [ $ngx_found = no ]; then
-+ # echo
-+ # echo $0: error: C compiler $CC is not found
-+ # echo
-+ # exit 1
-+ #fi
-
- fi
-
---- a/auto/os/linux
-+++ b/auto/os/linux
-@@ -49,7 +49,8 @@ ngx_feature_test="int efd = 0, fd = 1, n
- ee.data.ptr = NULL;
- efd = epoll_create(100);
- if (efd == -1) return 1;"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
- if [ $ngx_found = yes ]; then
- have=NGX_HAVE_CLEAR_EVENT . auto/have
-@@ -73,7 +74,8 @@ ngx_feature_test="int s = 0, fd = 1;
- ssize_t n; off_t off = 0;
- n = sendfile(s, fd, &off, 1);
- if (n == -1 && errno == ENOSYS) return 1"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
- if [ $ngx_found = yes ]; then
- CORE_SRCS="$CORE_SRCS $LINUX_SENDFILE_SRCS"
-@@ -94,7 +96,8 @@ ngx_feature_test="int s = 0, fd = 1;
- ssize_t n; off_t off = 0;
- n = sendfile(s, fd, &off, 1);
- if (n == -1 && errno == ENOSYS) return 1"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
-
- ngx_include="sys/prctl.h"; . auto/include
-@@ -108,7 +111,8 @@ ngx_feature_incs="#include <sys/prctl.h>
- ngx_feature_path=
- ngx_feature_libs=
- ngx_feature_test="if (prctl(PR_SET_DUMPABLE, 1, 0, 0, 0) == -1) return 1"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
-
- # sched_setaffinity()
---- a/auto/unix
-+++ b/auto/unix
-@@ -117,7 +117,7 @@ ngx_feature_path=
- ngx_feature_libs=
- ngx_feature_test="char buf[1024]; long n; n = strerror_r(1, buf, 1024);
- if (n < 0 || n > 1024) return 1;"
--. auto/feature
-+#. auto/feature
-
-
- # GNU style strerror_r() returns not length, but pointer
-@@ -130,7 +130,8 @@ ngx_feature_path=
- ngx_feature_libs=
- ngx_feature_test="char buf[1024]; long n; n = strerror_r(1, buf, 1024);
- if (n >= 0 && n < 1024) return 1;"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
-
- ngx_feature="localtime_r()"
-@@ -173,7 +174,8 @@ ngx_feature_test="void *p;
- p = mmap(NULL, 4096, PROT_READ|PROT_WRITE,
- MAP_ANON|MAP_SHARED, -1, 0);
- if (p == MAP_FAILED) return 1;"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
-
- ngx_feature='mmap("/dev/zero", MAP_SHARED)'
-@@ -188,7 +190,8 @@ ngx_feature_test='void *p; int fd;
- fd = open("/dev/zero", O_RDWR);
- p = mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
- if (p == MAP_FAILED) return 1;'
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
-
- ngx_feature="System V shared memory"
-@@ -202,7 +205,8 @@ ngx_feature_test="int id;
- id = shmget(IPC_PRIVATE, 4096, (SHM_R|SHM_W|IPC_CREAT));
- if (id == -1) return 1;
- shmctl(id, IPC_RMID, NULL);"
--. auto/feature
-+#. auto/feature
-+have=$ngx_feature_name . auto/have
-
-
- ngx_feature="struct msghdr.msg_control"
+++ /dev/null
---- a/auto/types/sizeof
-+++ b/auto/types/sizeof
-@@ -23,8 +23,13 @@ $NGX_INCLUDE_UNISTD_H
- $NGX_INCLUDE_INTTYPES_H
- $NGX_INCLUDE_AUTO_CONFIG_H
-
-+char object_code_block[] = {
-+ '\n', 'e', '4', 'V', 'A',
-+ '0', 'x', ('0' + sizeof($ngx_type)),
-+ 'Y', '3', 'p', 'M', '\n'
-+};
-+
- int main() {
-- printf("%d", sizeof($ngx_type));
- return 0;
- }
-
-@@ -38,7 +43,7 @@ eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&
-
-
- if [ -x $NGX_AUTOTEST ]; then
-- ngx_size=`$NGX_AUTOTEST`
-+ ngx_size=`sed -ne 's/^e4VA0x\(.\)Y3pM$/\1/p' < $NGX_AUTOTEST`
- echo " $ngx_size bytes"
- fi
-
--- /dev/null
+--- a/auto/cc/name
++++ b/auto/cc/name
+@@ -6,7 +6,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
+
+ ngx_feature="C compiler"
+ ngx_feature_name=
+- ngx_feature_run=yes
++ ngx_feature_run=
+ ngx_feature_incs=
+ ngx_feature_path=
+ ngx_feature_libs=
+--- a/auto/cc/conf
++++ b/auto/cc/conf
+@@ -148,7 +148,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
+ else
+ ngx_feature="C99 variadic macros"
+ ngx_feature_name="NGX_HAVE_C99_VARIADIC_MACROS"
+- ngx_feature_run=yes
++ ngx_feature_run=no
+ ngx_feature_incs="#include <stdio.h>
+ #define var(dummy, ...) sprintf(__VA_ARGS__)"
+ ngx_feature_path=
+@@ -162,7 +162,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then
+
+ ngx_feature="gcc variadic macros"
+ ngx_feature_name="NGX_HAVE_GCC_VARIADIC_MACROS"
+- ngx_feature_run=yes
++ ngx_feature_run=no
+ ngx_feature_incs="#include <stdio.h>
+ #define var(dummy, args...) sprintf(args)"
+ ngx_feature_path=
+--- a/auto/os/linux
++++ b/auto/os/linux
+@@ -47,7 +47,7 @@ fi
+
+ ngx_feature="epoll"
+ ngx_feature_name="NGX_HAVE_EPOLL"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/epoll.h>"
+ ngx_feature_path=
+ ngx_feature_libs=
+@@ -72,7 +72,7 @@ fi
+ CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE"
+ ngx_feature="sendfile()"
+ ngx_feature_name="NGX_HAVE_SENDFILE"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/sendfile.h>
+ #include <errno.h>"
+ ngx_feature_path=
+@@ -93,7 +93,7 @@ fi
+ CC_AUX_FLAGS="$cc_aux_flags -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64"
+ ngx_feature="sendfile64()"
+ ngx_feature_name="NGX_HAVE_SENDFILE64"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/sendfile.h>
+ #include <errno.h>"
+ ngx_feature_path=
+@@ -111,7 +111,7 @@ ngx_include="sys/prctl.h"; . auto/includ
+
+ ngx_feature="prctl(PR_SET_DUMPABLE)"
+ ngx_feature_name="NGX_HAVE_PR_SET_DUMPABLE"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/prctl.h>"
+ ngx_feature_path=
+ ngx_feature_libs=
+--- a/auto/unix
++++ b/auto/unix
+@@ -555,7 +555,7 @@ ngx_feature_test="void *p; p = memalign(
+
+ ngx_feature="mmap(MAP_ANON|MAP_SHARED)"
+ ngx_feature_name="NGX_HAVE_MAP_ANON"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/mman.h>"
+ ngx_feature_path=
+ ngx_feature_libs=
+@@ -568,7 +568,7 @@ ngx_feature_test="void *p;
+
+ ngx_feature='mmap("/dev/zero", MAP_SHARED)'
+ ngx_feature_name="NGX_HAVE_MAP_DEVZERO"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/mman.h>
+ #include <sys/stat.h>
+ #include <fcntl.h>"
+@@ -583,7 +583,7 @@ ngx_feature_test='void *p; int fd;
+
+ ngx_feature="System V shared memory"
+ ngx_feature_name="NGX_HAVE_SYSVSHM"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <sys/ipc.h>
+ #include <sys/shm.h>"
+ ngx_feature_path=
+@@ -597,7 +597,7 @@ ngx_feature_test="int id;
+
+ ngx_feature="POSIX semaphores"
+ ngx_feature_name="NGX_HAVE_POSIX_SEM"
+-ngx_feature_run=yes
++ngx_feature_run=no
+ ngx_feature_incs="#include <semaphore.h>"
+ ngx_feature_path=
+ ngx_feature_libs=
--- /dev/null
+--- a/auto/types/sizeof
++++ b/auto/types/sizeof
+@@ -23,8 +23,13 @@ $NGX_INCLUDE_UNISTD_H
+ $NGX_INCLUDE_INTTYPES_H
+ $NGX_INCLUDE_AUTO_CONFIG_H
+
++char object_code_block[] = {
++ '\n', 'e', '4', 'V', 'A',
++ '0', 'x', ('0' + sizeof($ngx_type)),
++ 'Y', '3', 'p', 'M', '\n'
++};
++
+ int main() {
+- printf("%d", sizeof($ngx_type));
+ return 0;
+ }
+
+@@ -38,7 +43,7 @@ eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&
+
+
+ if [ -x $NGX_AUTOTEST ]; then
+- ngx_size=`$NGX_AUTOTEST`
++ ngx_size=`sed -ne 's/^e4VA0x\(.\)Y3pM$/\1/p' < $NGX_AUTOTEST`
+ echo " $ngx_size bytes"
+ fi
+
--- /dev/null
+--- a/src/os/unix/ngx_errno.c
++++ b/src/os/unix/ngx_errno.c
+@@ -7,6 +7,10 @@
+ #include <ngx_config.h>
+ #include <ngx_core.h>
+
++#ifndef NGX_SYS_NERR
++#define NGX_SYS_NERR 128
++#endif
++
+
+ /*
+ * The strerror() messages are copied because: