aboutsummaryrefslogtreecommitdiff
path: root/www/nginx
diff options
context:
space:
mode:
authorSergey A. Osokin <osa@FreeBSD.org>2009-05-28 19:48:11 +0000
committerSergey A. Osokin <osa@FreeBSD.org>2009-05-28 19:48:11 +0000
commit6126e38d1c377bec7c7b8c5a940b53abae5380c9 (patch)
tree3cad9831de1b700f969709c9a60d69f5ba6d100f /www/nginx
parentad8d71c0baba734b784d720b12902fb950176f5b (diff)
downloadports-6126e38d1c377bec7c7b8c5a940b53abae5380c9.tar.gz
ports-6126e38d1c377bec7c7b8c5a940b53abae5380c9.zip
Update from 0.6.37 to latest stable version 0.7.59.
Merge all features from -devel port. Also mark -devel port IGNORE before new releases.
Notes
Notes: svn path=/head/; revision=234711
Diffstat (limited to 'www/nginx')
-rw-r--r--www/nginx/Makefile124
-rw-r--r--www/nginx/distinfo30
-rw-r--r--www/nginx/files/extra-patch-ngx_http_fancyindex_module.c37
-rw-r--r--www/nginx/files/nginx.sh.in49
4 files changed, 225 insertions, 15 deletions
diff --git a/www/nginx/Makefile b/www/nginx/Makefile
index b079b3402d82..2df9fc58a048 100644
--- a/www/nginx/Makefile
+++ b/www/nginx/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= nginx
-PORTVERSION= 0.6.37
+PORTVERSION= 0.7.59
CATEGORIES= www
MASTER_SITES= http://sysoev.ru/nginx/
MASTER_SITES+= ${MASTER_SITE_LOCAL}
@@ -17,29 +17,49 @@ MAINTAINER= osa@FreeBSD.org
COMMENT= Robust and small WWW server
OPTIONS= DEBUG "Enable nginx debugging" off \
+ IPV6 "Enable IPv6" off \
GOOGLE_PERFTOOLS "Enable google perftools module" off \
HTTP_MODULE "Enable HTTP module" on \
HTTP_ACCESSKEY_MODULE "Enable http_accesskey module" off \
HTTP_ADDITION_MODULE "Enable http_addition module" off \
HTTP_DAV_MODULE "Enable http_webdav module" off \
+ HTTP_FANCYINDEX_MODULE "Enable http_fancyindex module" off \
HTTP_FLV_MODULE "Enable http_flv module" off \
HTTP_GZIP_STATIC_MODULE "Enable http_gzip_static module" off \
+ HTTP_MOGILEFS_MODULE "Enable mogilefs module" off \
HTTP_PERL_MODULE "Enable http_perl module" off \
+ HTTP_RANDOM_INDEX_MODULE "Enable http_random_index module" off \
HTTP_REALIP_MODULE "Enable http_realip module" off \
+ HTTP_RESPONSE_MODULE "Enable http_response module" off \
HTTP_REWRITE_MODULE "Enable http_rewrite module" on \
+ HTTP_SECURE_LINK_MODULE "Enable http_secure_link module" off \
HTTP_SSL_MODULE "Enable http_ssl module" off \
HTTP_STATUS_MODULE "Enable http_stub_status module" on \
HTTP_SUB_MODULE "Enable http_sub module" off \
+ HTTP_UPLOAD_MODULE "Enable upload module" off \
+ HTTP_UPLOAD_PROGRESS "Enable upload_progress module" off \
HTTP_UPSTREAM_FAIR "Enable upstream fair module" off \
+ HTTP_UPSTREAM_KEEPALIVE "Enable upstream keepalive module" off \
+ HTTP_XSLT_MODULE "Enable http_xslt module" off \
+ HTTP_ZIP_MODULE "Enable http_zip module" off \
MAIL_MODULE "Enable IMAP4/POP3/SMTP proxy module" off \
MAIL_IMAP_MODULE "Enable IMAP4 proxy module" off \
MAIL_POP3_MODULE "Enable POP3 proxy module" off \
MAIL_SMTP_MODULE "Enable SMTP proxy module" off \
MAIL_SSL_MODULE "Enable mail_ssl module" off \
+ PASSENGER_MODULE "Enable passenger module" off \
WWW "Enable html sample files" on
+WANT_GNOME= yes
MAKE_JOBS_SAFE= yes
+.include <bsd.port.options.mk>
+
+.if defined(WITH_PASSENGER_MODULE)
+USE_RUBY= yes
+USE_RAKE= yes
+.endif
+
.include <bsd.port.pre.mk>
NGINX_VARDIR?= /var
@@ -73,6 +93,11 @@ CONFIGURE_ARGS+=--with-debug
STRIP= #do not strip if nginx with debug information
.endif
+.if defined(WITH_IPV6)
+CONFIGURE_ARGS+=--with-ipv6
+CATEGORIES+= ipv6
+.endif
+
.if defined(WITH_GOOGLE_PERFTOOLS)
LIB_DEPENDS+= profiler.0:${PORTSDIR}/devel/google-perftools
CONFIGURE_ARGS+=--with-google_perftools_module
@@ -100,6 +125,15 @@ CONFIGURE_ARGS+=--with-http_addition_module
CONFIGURE_ARGS+=--with-http_dav_module
.endif
+.if defined(WITH_HTTP_FANCYINDEX_MODULE)
+NGINX_FANCYINDEX_MODULE_VERSION= 0.1b5
+MASTER_SITES+= http://furi-ku.org/nginx/fancyindex/:fancyindex
+MASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:fancyindex/}
+MASTER_SITE_SUBDIR+= osa/:fancyindex
+DISTFILES+= nginx-fancyindex-${NGINX_FANCYINDEX_MODULE_VERSION:S/b/_beta/}.tar.bz2:fancyindex
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx-fancyindex-${NGINX_FANCYINDEX_MODULE_VERSION:S/b/_beta/}
+.endif
+
.if defined(WITH_HTTP_FLV_MODULE)
CONFIGURE_ARGS+=--with-http_flv_module
.endif
@@ -108,16 +142,38 @@ CONFIGURE_ARGS+=--with-http_flv_module
CONFIGURE_ARGS+=--with-http_gzip_static_module
.endif
+.if defined(WITH_HTTP_MOGILEFS_MODULE)
+NGINX_MOGILEFS_MODULE_VERSION= 1.0.1
+MASTER_SITES+= http://www.grid.net.ru/nginx/download/:mogilefs
+DISTFILES+= nginx_mogilefs_module-${NGINX_MOGILEFS_MODULE_VERSION}.tar.gz:mogilefs
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_mogilefs_module-${NGINX_MOGILEFS_MODULE_VERSION}
+.endif
+
.if defined(WITH_HTTP_PERL_MODULE)
CATEGORIES+= perl5
CONFIGURE_ARGS+=--with-http_perl_module
USE_PERL5= yes
.endif
+.if defined(WITH_HTTP_RANDOM_INDEX_MODULE)
+CONFIGURE_ARGS+=--with-http_random_index_module
+.endif
+
.if defined(WITH_HTTP_REALIP_MODULE)
CONFIGURE_ARGS+=--with-http_realip_module
.endif
+.if defined(WITH_HTTP_RESPONSE_MODULE)
+NGINX_RESPONSE_MODULE_VERSION= 0.3
+MASTER_SITES+= http://catap.ru/downloads/nginx/:response
+DISTFILES+= ngx_http_response-${NGINX_RESPONSE_MODULE_VERSION}.tar.gz:response
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_response-${NGINX_RESPONSE_MODULE_VERSION}
+.endif
+
+.if defined(WITH_HTTP_SECURE_LINK_MODULE)
+CONFIGURE_ARGS+=--with-http_secure_link_module
+.endif
+
.if defined(WITH_HTTP_SSL_MODULE)
NGINX_OPENSSL= yes
CONFIGURE_ARGS+=--with-http_ssl_module
@@ -131,6 +187,21 @@ CONFIGURE_ARGS+=--with-http_stub_status_module
CONFIGURE_ARGS+=--with-http_sub_module
.endif
+.if defined(WITH_HTTP_UPLOAD_MODULE)
+NGINX_UPLOAD_MODULE_VERSION= 2.0.9
+MASTER_SITES+= http://www.grid.net.ru/nginx/download/:upload
+DISTFILES+= nginx_upload_module-${NGINX_UPLOAD_MODULE_VERSION}.tar.gz:upload
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upload_module-${NGINX_UPLOAD_MODULE_VERSION}
+.endif
+
+.if defined(WITH_HTTP_UPLOAD_PROGRESS)
+NGINX_UPLOAD_PROGRESS_MODULE_VERSION= 0.5
+MASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:uploadprogress/}
+MASTER_SITE_SUBDIR+= osa/:uploadprogress
+DISTFILES+= nginx_uploadprogress_module-${NGINX_UPLOAD_PROGRESS_MODULE_VERSION}.tar.gz:uploadprogress
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_uploadprogress_module
+.endif
+
.if defined(WITH_HTTP_UPSTREAM_FAIR)
NGINX_UPSTREAM_FAIR_VERSION= 20081012
MASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:upstreamfair/}
@@ -139,12 +210,40 @@ DISTFILES+= nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION}.tar.gz:upstreamfa
CONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION}
.endif
+.if defined(WITH_HTTP_UPSTREAM_KEEPALIVE)
+NGINX_UPSTREAM_KEEPALIVE_VERSION= 0.1
+MASTER_SITES+= http://mdounin.ru/files/:upstream
+DISTFILES+= ngx_http_upstream_keepalive-${NGINX_UPSTREAM_KEEPALIVE_VERSION}.tar.gz:upstream
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_upstream_keepalive-${NGINX_UPSTREAM_KEEPALIVE_VERSION}
+.endif
+
+.if defined(WITH_HTTP_XSLT_MODULE)
+USE_GNOME= libxml2 libxslt
+CONFIGURE_ARGS+=--with-http_xslt_module
+.endif
+
+.if defined(WITH_HTTP_ZIP_MODULE)
+NGINX_ZIP_MODULE_VERSION= 1.1.4
+MASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:zip/}
+MASTER_SITE_SUBDIR+= osa/:zip
+DISTFILES+= nginx_mod_zip-${NGINX_ZIP_MODULE_VERSION}.tar.gz:zip
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/mod_zip-${NGINX_ZIP_MODULE_VERSION}
+.endif
+
.if defined(WITHOUT_HTTP_REWRITE_MODULE) || defined(WITHOUT_PCRE)
-PKGNAMESUFFIX+= -nopcre
+PKGNAMESUFFIX:= ${PKGNAMESUFFIX}-nopcre
CONFIGURE_ARGS+=--without-http_rewrite_module \
--without-pcre
.else
LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre
+CONFIGURE_ARGS+=--with-pcre
+.endif
+
+.if defined(WITH_PASSENGER_MODULE)
+PASSENGER_VERSION= 2.2.2
+MASTER_SITES+= RF/passenger/:passenger
+DISTFILES+= passenger-${PASSENGER_VERSION}.tar.gz:passenger
+CONFIGURE_ARGS+=--add-module=${WRKDIR}/passenger-${PASSENGER_VERSION}/ext/nginx
.endif
.if defined(WITH_WWW)
@@ -181,6 +280,16 @@ CONFIGURE_ARGS+=--with-mail_ssl_module
PLIST_SUB+= NGINX_TMPDIR=${NGINX_TMPDIR} WWWOWN=${WWWOWN} WWWGRP=${WWWGRP}
+pre-everything::
+ @${ECHO_MSG}
+.if defined(WITH_HTTP_UPSTREAM_FAIR)
+ @${ECHO_MSG} "Enable http_ssl module to build upstream_fair with SSL support"
+.endif
+.if defined(WITH_PASSENGER_MODULE)
+ @${ECHO_MSG} "This port install Passenger module only"
+.endif
+ @${ECHO_MSG}
+
post-patch:
@${REINPLACE_CMD} 's!%%HTTP_PORT%%!${HTTP_PORT}!; \
s!%%PREFIX%%!${PREFIX}!' \
@@ -190,6 +299,17 @@ post-patch:
's!$$HTTP_ACCESSKEY_MODULE!ngx_http_accesskey_module!' \
${WRKDIR}/nginx-accesskey-${NGINX_ACCESSKEY_MODULE_VERSION}/config
.endif
+.if defined(WITH_HTTP_FANCYINDEX_MODULE)
+ @${PATCH} ${PATCH_ARGS} < \
+ ${PATCHDIR}/extra-patch-ngx_http_fancyindex_module.c
+.endif
+.if defined(WITH_PASSENGER_MODULE)
+ @${REINPLACE_CMD} 's!g++!${CXX}!' \
+ ${WRKDIR}/passenger-${PASSENGER_VERSION}/Rakefile
+ @${REINPLACE_CMD} '377s!-g!${CXXFLAGS}!; \
+ s!-lpthread!${PTHREAD_LIBS}!g' \
+ ${WRKDIR}/passenger-${PASSENGER_VERSION}/lib/phusion_passenger/platform_info.rb
+.endif
do-build:
@cd ${WRKSRC} && ${MAKE}
diff --git a/www/nginx/distinfo b/www/nginx/distinfo
index 772795c5288e..3ec26b94d537 100644
--- a/www/nginx/distinfo
+++ b/www/nginx/distinfo
@@ -1,9 +1,33 @@
-MD5 (nginx-0.6.37.tar.gz) = 6bcb1e469fd1f86c11f187be4bfa7dc9
-SHA256 (nginx-0.6.37.tar.gz) = 6abbb2c0396630771b1b1514cf3c28f95e1cf811b4ff462f754d97818456d405
-SIZE (nginx-0.6.37.tar.gz) = 528754
+MD5 (nginx-0.7.59.tar.gz) = d981b03b4c3ba43de580553355608b63
+SHA256 (nginx-0.7.59.tar.gz) = e12f0ec0f97e635ec1a249719bbe23ca1c9d3809e4019dde404e72ccdf277d75
+SIZE (nginx-0.7.59.tar.gz) = 593586
MD5 (nginx-accesskey-2.0.3.tar.gz) = 9b5304346d5139b1841f5baa01ab0cbe
SHA256 (nginx-accesskey-2.0.3.tar.gz) = d9e94321e78a02de16c57f3e048fd31059fd8116ed03d6de7180f435c52502b1
SIZE (nginx-accesskey-2.0.3.tar.gz) = 2632
+MD5 (nginx-fancyindex-0.1_beta5.tar.bz2) = ac371c8c03e7235f1e8e8c187a5a93cb
+SHA256 (nginx-fancyindex-0.1_beta5.tar.bz2) = 155c0fac05a7f6c013b5cc368926d71d5da73e4e5a9f2506b2e5114eee8680a2
+SIZE (nginx-fancyindex-0.1_beta5.tar.bz2) = 12211
+MD5 (nginx_mogilefs_module-1.0.1.tar.gz) = c45947ec9aebe83398d4c9604e843023
+SHA256 (nginx_mogilefs_module-1.0.1.tar.gz) = f862d48e50683a808bb8e305474d1b9800800bd0ea64ebcc258a4c7f3ecd9bfb
+SIZE (nginx_mogilefs_module-1.0.1.tar.gz) = 6834
+MD5 (ngx_http_response-0.3.tar.gz) = 178a8f13a41388ef50b3726fa9fede50
+SHA256 (ngx_http_response-0.3.tar.gz) = 0835584029f053051c624adbe33a826ab0205c9d85a02af6019e6b57607e9045
+SIZE (ngx_http_response-0.3.tar.gz) = 2244
+MD5 (nginx_upload_module-2.0.9.tar.gz) = bd8ee6011e3e24805c8ead617211a04b
+SHA256 (nginx_upload_module-2.0.9.tar.gz) = 3c43e185f85a5a719de2cd02083ae0802a8fd2645c79a78c7d37c3d1f0361f9f
+SIZE (nginx_upload_module-2.0.9.tar.gz) = 18232
+MD5 (nginx_uploadprogress_module-0.5.tar.gz) = 04cca031be26a0a37a24b8b2d475c77a
+SHA256 (nginx_uploadprogress_module-0.5.tar.gz) = b025bf8ea2e1cf405dd72587d52eb48135cb7b0843a2dbfcf91c8f562701d75c
+SIZE (nginx_uploadprogress_module-0.5.tar.gz) = 11578
MD5 (nginx_upstream_fair-20081012.tar.gz) = 1f7b4f3e47c32f89afac59fa60381dc4
SHA256 (nginx_upstream_fair-20081012.tar.gz) = 4c2bd957168008e5b2397fad49824ca70f3685cf884e8d1be45d56c8e3bbe88c
SIZE (nginx_upstream_fair-20081012.tar.gz) = 10021
+MD5 (ngx_http_upstream_keepalive-0.1.tar.gz) = 89c5887abfdacb87e2d21b2973d69cdd
+SHA256 (ngx_http_upstream_keepalive-0.1.tar.gz) = a0929ddff8dcf451731c95b077374b15e4306db8e83322aab6183cfed7307915
+SIZE (ngx_http_upstream_keepalive-0.1.tar.gz) = 4978
+MD5 (nginx_mod_zip-1.1.4.tar.gz) = be934138446793ca783ebfcc1a74883d
+SHA256 (nginx_mod_zip-1.1.4.tar.gz) = d152861779a7b04634e6e0b87a53707ccad06e00bba65246b9005ddc8d0f654b
+SIZE (nginx_mod_zip-1.1.4.tar.gz) = 17446
+MD5 (passenger-2.2.2.tar.gz) = 046c7597990c1ed9006300a32cd50579
+SHA256 (passenger-2.2.2.tar.gz) = 8eb7e36898787dce4e49c4b6550d42522b79193849b420fa333869318f8fb57e
+SIZE (passenger-2.2.2.tar.gz) = 1693895
diff --git a/www/nginx/files/extra-patch-ngx_http_fancyindex_module.c b/www/nginx/files/extra-patch-ngx_http_fancyindex_module.c
new file mode 100644
index 000000000000..0fce6e00699b
--- /dev/null
+++ b/www/nginx/files/extra-patch-ngx_http_fancyindex_module.c
@@ -0,0 +1,37 @@
+--- ../nginx-fancyindex-0.1_beta5/ngx_http_fancyindex_module.c.orig 2007-09-29 01:02:05.000000000 +0400
++++ ../nginx-fancyindex-0.1_beta5/ngx_http_fancyindex_module.c 2008-08-11 17:33:42.810249087 +0400
+@@ -290,7 +290,7 @@
+ ngx_http_fancyindex_entry_t *entry;
+
+ off_t length;
+- size_t len, root, copy, allocated;
++ size_t len, root, utf_len, allocated;
+ u_char *filename, *last, scale;
+ ngx_tm_t tm;
+ ngx_array_t entries;
+@@ -426,7 +426,7 @@
+ entry->mtime = ngx_de_mtime(&dir);
+ entry->size = ngx_de_size(&dir);
+ entry->utf_len = (r->utf8)
+- ? ngx_utf_length(entry->name.data, entry->name.len)
++ ? ngx_utf8_length(entry->name.data, entry->name.len)
+ : len;
+ }
+
+@@ -563,12 +563,13 @@
+
+ if (entry[i].name.len - len) {
+ if (len > NGX_HTTP_FANCYINDEX_NAME_LEN) {
+- copy = NGX_HTTP_FANCYINDEX_NAME_LEN - 3 + 1;
++ utf_len = NGX_HTTP_FANCYINDEX_NAME_LEN - 3 + 1;
+ } else {
+- copy = NGX_HTTP_FANCYINDEX_NAME_LEN + 1;
++ utf_len = NGX_HTTP_FANCYINDEX_NAME_LEN + 1;
+ }
+
+- b->last = ngx_utf_cpystrn(b->last, entry[i].name.data, copy);
++ b->last = ngx_utf8_cpystrn(b->last, entry[i].name.data,
++ utf_len, entry[i].name.len + 1);
+ last = b->last;
+
+ } else {
diff --git a/www/nginx/files/nginx.sh.in b/www/nginx/files/nginx.sh.in
index bce190f51ba0..b87ef0a8b295 100644
--- a/www/nginx/files/nginx.sh.in
+++ b/www/nginx/files/nginx.sh.in
@@ -9,8 +9,8 @@
# Add the following lines to /etc/rc.conf to enable nginx:
# nginx_enable (bool): Set to "NO" by default.
# Set it to "YES" to enable nginx
-# nginx_profiles (str): Set to "NO" by default.
-# Unsupported feature, reserved for future releases.
+# nginx_profiles (str): Set to "" by default.
+# Define your profiles here.
# nginxlimits_enable (bool): Set to "NO" by default.
# Set it to yes to run `limits $limits_args`
# just before nginx starts.
@@ -35,17 +35,46 @@ _pidprefix="/var/run/nginx"
pidfile="${_pidprefix}.pid"
required_files=%%PREFIX%%/etc/nginx/nginx.conf
-[ -z "$nginx_enable" ] && nginx_enable="NO"
-[ -z "$nginx_profiles" ] && nginx_profiles="NO"
-[ -z "$nginx_flags" ] && nginx_flags=""
-[ -z "$nginxlimits_enable" ] && nginxlimits_enable="NO"
-[ -z "$nginxlimits_args" ] && nginxlimits_args="-e -U %%WWWOWN%%"
+[ -z "$nginx_enable" ] && nginx_enable="NO"
+[ -z "$nginx_profiles" ] && nginx_profiles=""
+[ -z "$nginx_flags" ] && nginx_flags=""
+[ -z "$nginxlimits_enable" ] && nginxlimits_enable="NO"
+[ -z "$nginxlimits_args" ] && nginxlimits_args="-e -U %%WWWOWN%%"
load_rc_config $name
if [ -n "$2" ]; then
- echo "Profiles are unsupported by this version, exit..."
- exit 1
+ profile="$2"
+ if [ "x${nginx_profiles}" != "x" ]; then
+ pidfile="${_pidprefix}.${profile}.pid"
+ eval nginx_configfile="\${nginx_${profile}_configfile:-}"
+ if [ "x${nginx_configfile}" = "x" ]; then
+ echo "You must define a configuration file (nginx_${profile}_configfile)"
+ exit 1
+ fi
+ required_files="${nginx_configfile}"
+ eval nginx_enable="\${nginx_${profile}_enable:-${nginx_enable}}"
+ eval nginx_flags="\${nginx_${profile}_flags:-${nginx_flags}}"
+ eval nginxlimits_enable="\${nginxlimits_${profile}_enable:-${nginxlimits_enable}}"
+ eval nginxlimits_args="\${nginxlimits_${profile}_args:-${nginxlimits_args}}"
+ nginx_flags="-c ${nginx_configfile} -g \"pid ${pidfile};\" ${nginx_flags}"
+ else
+ echo "$0: extra argument ignored"
+ fi
+else
+ if [ "x${nginx_profiles}" != "x" -a "x$1" != "x" ]; then
+ for profile in ${nginx_profiles}; do
+ echo "===> nginx profile: ${profile}"
+ %%PREFIX%%/etc/rc.d/nginx%%RC_SUBR_SUFFIX%% $1 ${profile}
+ retcode="$?"
+ if [ "0${retcode}" -ne 0 ]; then
+ failed="${profile} (${retcode}) ${failed:-}"
+ else
+ success="${profile} ${success:-}"
+ fi
+ done
+ exit 0
+ fi
fi
nginx_checkconfig()
@@ -80,7 +109,7 @@ nginx_precmd()
eval `/usr/bin/limits ${nginxlimits_args}` 2>/dev/null
else
return 0
- fi
+ fi
}
extra_commands="reload configtest upgrade"