Date: Wed, 08 Dec 2010 13:55:15 +0300 From: Anes Muhametov <anes@anes.su> To: FreeBSD-gnats-submit@FreeBSD.org Cc: osa@FreeBSD.org Subject: ports/152920: Port update: www/nginx Message-ID: <E1PQHg3-000LoJ-66@n4.cm.hc.ru> Resent-Message-ID: <201012081120.oB8BKCYe037898@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 152920 >Category: ports >Synopsis: Port update: www/nginx >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Wed Dec 08 11:20:11 UTC 2010 >Closed-Date: >Last-Modified: >Originator: Anes Muhametov <anes@anes.su> >Release: FreeBSD 7.2-RELEASE-p1 amd64 >Organization: >Environment: System: FreeBSD n4.cm.hc.ru 7.2-RELEASE-p1 FreeBSD 7.2-RELEASE-p1 #0: Tue Jul 14 03:45:36 MSD 2009 root@n1.cm.hc.ru:/usr/obj/usr/src/sys/HCSMP64-72-NOINET6 amd64 >Description: Updated www/nginx port. Added syslog support patch based on http://dl.dropbox.com/u/5836407/Patches/Nginx_0.8.49-syslog-support.txt (found in http://wiki.nginx.org/3rdPa rtyModules). Also there are ability to change syslog facility in the port. >How-To-Repeat: >Fix: --- nginx.port.diff begins here --- diff -ruN nginx.orig/Makefile nginx/Makefile --- nginx.orig/Makefile 2010-12-01 23:18:56.000000000 +0300 +++ nginx/Makefile 2010-12-08 13:37:55.000000000 +0300 @@ -73,7 +73,8 @@ PASSENGER_MODULE "3rd party passenger module" off \ SLOWFS_CACHE_MODULE "3rd party slowfs_cache module" off \ SUPERVISORD_MODULE "3rd party supervisord module" off \ - UDPLOG_MODULE "3rd party udplog (syslog) module" off + UDPLOG_MODULE "3rd party udplog (syslog) module" off \ + SYSLOG_SUPPORT "3rd party syslog support" off WANT_GNOME= yes MAKE_JOBS_SAFE= yes @@ -426,6 +427,12 @@ EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_udplog_module.c .endif +.if defined(WITH_SYSLOG_SUPPORT) +NGINX_SYSLOG_SUPPORT_FACILITY?= LOG_DAEMON +CONFIGURE_ARGS+=--with-syslog --with-syslog-facility=${NGINX_SYSLOG_SUPPORT_FACILITY} +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-syslog_support +.endif + .if defined(WITH_WWW) PLIST_SUB+= WWWDATA="" .else diff -ruN nginx.orig/files/extra-patch-syslog_support nginx/files/extra-patch-syslog_support --- nginx.orig/files/extra-patch-syslog_support 1970-01-01 03:00:00.000000000 +0300 +++ nginx/files/extra-patch-syslog_support 2010-12-08 13:12:18.000000000 +0300 @@ -0,0 +1,251 @@ +diff -u a/src/core/nginx.c b/src/core/nginx.c +index 80a5d18..fdad5d5 100644 +--- src/core/nginx.c.orig ++++ src/core/nginx.c +@@ -8,6 +8,9 @@ + #include <ngx_core.h> + #include <nginx.h> + ++#ifdef USE_SYSLOG ++#include <syslog.h> ++#endif + + static ngx_int_t ngx_add_inherited_sockets(ngx_cycle_t *cycle); + static ngx_int_t ngx_get_options(int argc, char *const *argv); +@@ -278,6 +281,11 @@ main(int argc, char *const *argv) + ngx_ssl_init(log); + #endif + ++ /* SYSLOG SUPPORT */ ++#ifdef USE_SYSLOG ++ openlog("nginx", LOG_NDELAY, SYSLOG_FACILITY); ++#endif ++ + /* + * init_cycle->log is required for signal handlers and + * ngx_process_options() +@@ -396,6 +404,10 @@ main(int argc, char *const *argv) + ngx_master_process_cycle(cycle); + } + ++#ifdef USE_SYSLOG ++ closelog(); ++#endif ++ + return 0; + } + +diff -u a/src/core/ngx_conf_file.c b/src/core/ngx_conf_file.c +index 83c1073..1817627 100644 +--- src/core/ngx_conf_file.c.orig ++++ src/core/ngx_conf_file.c +@@ -907,6 +907,12 @@ ngx_conf_open_file(ngx_cycle_t *cycle, ngx_str_t *name) + ngx_str_null(&full); + #endif + ++#ifdef USE_SYSLOG ++ if (name->len) { ++ name->len = 0; ++ } ++#endif ++ + if (name->len) { + full = *name; + +diff -u a/src/core/ngx_log.c b/src/core/ngx_log.c +index c0485c6..b4ae00a 100644 +--- src/core/ngx_log.c.orig ++++ src/core/ngx_log.c +@@ -7,6 +7,9 @@ + #include <ngx_config.h> + #include <ngx_core.h> + ++#ifdef USE_SYSLOG ++#include <syslog.h> ++#endif + + static char *ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); + +@@ -90,9 +93,11 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, + u_char *p, *last, *msg; + u_char errstr[NGX_MAX_ERROR_STR]; + ++#ifndef USE_SYSLOG + if (log->file->fd == NGX_INVALID_FILE) { + return; + } ++#endif + + last = errstr + NGX_MAX_ERROR_STR; + +@@ -139,7 +144,21 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, + + ngx_linefeed(p); + ++#ifdef USE_SYSLOG ++ /* allocate a string which can hold the error message */ ++ char *syslogstr; ++ ++ if ((syslogstr = calloc((p - errstr + 1), sizeof(char))) != NULL) { ++ strncpy(syslogstr, errstr, p - errstr); ++ ++ /* write to syslog */ ++ syslog(LOG_CRIT, "%s", syslogstr); ++ ++ free(syslogstr); ++ } ++#else + (void) ngx_write_fd(log->file->fd, errstr, p - errstr); ++#endif + + if (!ngx_use_stderr + || level > NGX_LOG_WARN +@@ -428,6 +447,10 @@ ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) + + value = cf->args->elts; + ++#ifdef USE_SYSLOG ++ value[1].data = "stderr"; ++#endif ++ + if (ngx_strcmp(value[1].data, "stderr") == 0) { + ngx_str_null(&name); + +diff -u a/src/http/modules/ngx_http_log_module.c b/src/http/modules/ngx_http_log_module.c +index 5f356c3..5232ad6 100644 +--- src/http/modules/ngx_http_log_module.c.orig ++++ src/http/modules/ngx_http_log_module.c +@@ -8,6 +8,9 @@ + #include <ngx_core.h> + #include <ngx_http.h> + ++#ifdef USE_SYSLOG ++#include <syslog.h> ++#endif + + typedef struct ngx_http_log_op_s ngx_http_log_op_t; + +@@ -310,6 +313,19 @@ static void + ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, u_char *buf, + size_t len) + { ++#ifdef USE_SYSLOG ++ /* allocate a string which can hold the error message */ ++ char *syslogstr; ++ ++ if ((syslogstr = calloc((len + 1), sizeof(char))) != NULL) { ++ strncpy(syslogstr, buf, len); ++ ++ /* write to syslog */ ++ syslog(LOG_NOTICE, "%s", syslogstr); ++ ++ free(syslogstr); ++ } ++#else + u_char *name; + time_t now; + ssize_t n; +@@ -354,6 +370,7 @@ ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, u_char *buf, + + log->error_log_time = now; + } ++#endif + } + + +@@ -818,7 +835,11 @@ ngx_http_log_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) + return NGX_CONF_ERROR; + } + ++#ifdef USE_SYSLOG ++ ngx_http_access_log.data = ""; ++#endif + log->file = ngx_conf_open_file(cf->cycle, &ngx_http_access_log); ++ + if (log->file == NULL) { + return NGX_CONF_ERROR; + } +@@ -883,7 +904,11 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) + n = ngx_http_script_variables_count(&value[1]); + + if (n == 0) { ++#ifdef USE_SYSLOG ++ value[1].data = ""; ++#endif + log->file = ngx_conf_open_file(cf->cycle, &value[1]); ++ + if (log->file == NULL) { + return NGX_CONF_ERROR; + } +-- +1.6.3.3 + +--- auto/summary.orig 2010-07-08 19:57:36.000000000 +0400 ++++ auto/summary 2010-12-08 12:25:16.000000000 +0300 +@@ -73,6 +73,11 @@ + *) echo " + using libatomic_ops library: $NGX_LIBATOMIC" ;; + esac + ++case $USE_SYSLOG in ++ YES) echo " + using syslog with $SYSLOG_FACILITY facility" ;; ++ *) echo " + syslog is not used" ;; ++esac ++ + echo + + +--- auto/make.orig 2009-05-12 17:15:43.000000000 +0400 ++++ auto/make 2010-12-08 12:32:25.000000000 +0300 +@@ -15,6 +15,13 @@ + ngx_objs_dir=$NGX_OBJS$ngx_regex_dirsep + ngx_use_pch=`echo $NGX_USE_PCH | sed -e "s/\//$ngx_regex_dirsep/g"` + ++#SYSLOG ++if test -z "${SYSLOG_FACILITY}"; then ++ SYSLOG_FACILITY="LOG_DAEMON" ++fi ++if test "${USE_SYSLOG}" = "YES"; then ++ CFLAGS="$CFLAGS -DUSE_SYSLOG -DSYSLOG_FACILITY=${SYSLOG_FACILITY}" ++fi + + cat << END > $NGX_MAKEFILE + +--- auto/options.orig 2010-06-18 19:51:14.000000000 +0400 ++++ auto/options 2010-12-08 13:00:42.000000000 +0300 +@@ -118,6 +118,8 @@ + MD5_OPT= + MD5_ASM=NO + ++USE_SYSLOG=NO ++ + USE_SHA1=NO + SHA1=NONE + SHA1_OPT= +@@ -270,6 +272,9 @@ + --with-md5-opt=*) MD5_OPT="$value" ;; + --with-md5-asm) MD5_ASM=YES ;; + ++ --with-syslog) USE_SYSLOG=YES ;; ++ --with-syslog-facility=*) SYSLOG_FACILITY="$value" ;; ++ + --with-sha1=*) SHA1="$value" ;; + --with-sha1-opt=*) SHA1_OPT="$value" ;; + --with-sha1-asm) SHA1_ASM=YES ;; +@@ -410,6 +415,9 @@ + --with-md5-opt=OPTIONS set additional options for md5 building + --with-md5-asm use md5 assembler sources + ++ --with-syslog use syslog instead of files to log messages ++ --with-syslog-facility=FACILITY set syslog facility ++ + --with-sha1=DIR set path to sha1 library sources + --with-sha1-opt=OPTIONS set additional options for sha1 building + --with-sha1-asm use sha1 assembler sources +@@ -427,6 +435,7 @@ + --with-openssl-opt=OPTIONS set additional options for OpenSSL building + + --with-debug enable the debugging logging ++ + + END + --- nginx.port.diff ends here --- --- nginx.shar begins here --- # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # nginx # nginx/files # nginx/files/extra-patch-ngx_http_notice_module.c # nginx/files/extra-patch-ngx_http_streaming_module.c # nginx/files/extra-patch-ngx_http_udplog_module.c # nginx/files/extra-patch-ngx_http_upstream.h # nginx/files/extra-patch-passenger::build::nginx.rb # nginx/files/nginx.8.in # nginx/files/nginx.sh.in # nginx/files/patch-conf-nginx.conf # nginx/files/extra-patch-syslog_support # nginx/Makefile # nginx/distinfo # nginx/pkg-descr # nginx/pkg-plist # echo c - nginx mkdir -p nginx > /dev/null 2>&1 echo c - nginx/files mkdir -p nginx/files > /dev/null 2>&1 echo x - nginx/files/extra-patch-ngx_http_notice_module.c sed 's/^X//' >nginx/files/extra-patch-ngx_http_notice_module.c << '411c296d5c765bf814234327488c64c8' X--- ../nginx-notice-2/ngx_http_notice_module.c.orig 2009-07-16 18:37:57.000000000 +0200 X+++ ../nginx-notice-2/ngx_http_notice_module.c 2009-07-16 08:09:38.000000000 +0200 X@@ -153,7 +153,7 @@ X return NGX_HTTP_NOT_ALLOWED; X } X X- rc = ngx_http_discard_body(r); X+ rc = ngx_http_discard_request_body(r); X X if (rc != NGX_OK && rc != NGX_AGAIN) { X return rc; 411c296d5c765bf814234327488c64c8 echo x - nginx/files/extra-patch-ngx_http_streaming_module.c sed 's/^X//' >nginx/files/extra-patch-ngx_http_streaming_module.c << 'dc6b985e6b3f532db80d50ab1b6d0945' X--- ../nginx_mod_h264_streaming-2.2.7/src/ngx_http_streaming_module.c.orig 2010-05-24 18:04:43.000000000 +0400 X+++ ../nginx_mod_h264_streaming-2.2.7/src/ngx_http_streaming_module.c 2010-05-24 18:05:02.000000000 +0400 X@@ -155,10 +155,6 @@ X } X X /* TODO: Win32 */ X- if (r->zero_in_uri) X- { X- return NGX_DECLINED; X- } X X rc = ngx_http_discard_request_body(r); X dc6b985e6b3f532db80d50ab1b6d0945 echo x - nginx/files/extra-patch-ngx_http_udplog_module.c sed 's/^X//' >nginx/files/extra-patch-ngx_http_udplog_module.c << 'cdacce6aef08c9ec5263985ab6f3c71a' X--- ../nginx_udplog_module-1.0.0/ngx_http_udplog_module.c.orig 2010-01-11 19:16:46.000000000 +0300 X+++ ../nginx_udplog_module-1.0.0/ngx_http_udplog_module.c 2010-01-11 19:20:17.000000000 +0300 X@@ -280,7 +280,7 @@ X uc->sockaddr = endpoint->peer_addr.sockaddr; X uc->socklen = endpoint->peer_addr.socklen; X uc->server = endpoint->peer_addr.name; X-#if defined nginx_version && nginx_version >= 7054 X+#if defined nginx_version && ( nginx_version >= 7054 && nginx_version < 8032 ) X uc->log = &cf->cycle->new_log; X #else X uc->log = cf->cycle->new_log; X@@ -335,7 +335,11 @@ X } X X if ((size_t) n != (size_t) len) { X+#if defined nginx_version && nginx_version >= 8032 X+ ngx_log_error(NGX_LOG_CRIT, &uc->log, 0, "send() incomplete"); X+#else X ngx_log_error(NGX_LOG_CRIT, uc->log, 0, "send() incomplete"); X+#endif X return NGX_ERROR; X } X cdacce6aef08c9ec5263985ab6f3c71a echo x - nginx/files/extra-patch-ngx_http_upstream.h sed 's/^X//' >nginx/files/extra-patch-ngx_http_upstream.h << '3046c02e445dd1fb95396ac8dd99b628' X--- src/http/ngx_http_upstream.h.orig 2010-01-14 04:20:57.000000000 +0300 X+++ src/http/ngx_http_upstream.h 2010-01-14 04:22:00.000000000 +0300 X@@ -105,6 +105,10 @@ X X ngx_array_t *servers; /* ngx_http_upstream_server_t */ X X+ ngx_array_t *values; X+ ngx_array_t *lengths; X+ ngx_uint_t retries; X+ X ngx_uint_t flags; X ngx_str_t host; X u_char *file_name; 3046c02e445dd1fb95396ac8dd99b628 echo x - nginx/files/extra-patch-passenger::build::nginx.rb sed 's/^X//' >nginx/files/extra-patch-passenger::build::nginx.rb << '1b3e22589e2a7bbd48d4b80740020502' X--- ../passenger-3.0.0/build/nginx.rb.orig 2010-10-01 14:22:34.000000000 +0400 X+++ ../passenger-3.0.0/build/nginx.rb 2010-12-04 15:27:45.000000000 +0300 X@@ -16,10 +16,7 @@ X X desc "Build Nginx helper agent" X task :nginx => [ X- 'agents/nginx/PassengerHelperAgent', X- 'agents/PassengerWatchdog', X- 'agents/PassengerLoggingAgent', X- :native_support X+ 'agents/nginx/PassengerHelperAgent' X ] X X dependencies = [ X@@ -44,17 +41,7 @@ X LIBCOMMON, X ] X file 'agents/nginx/PassengerHelperAgent' => dependencies do X- sh "mkdir -p agents/nginx" if !File.directory?("agents/nginx") X- create_executable "agents/nginx/PassengerHelperAgent", X- 'ext/nginx/HelperAgent.cpp', X- "-Iext -Iext/common " << X- "#{PlatformInfo.portability_cflags} " << X- "#{EXTRA_CXXFLAGS} " << X- "#{LIBCOMMON} " << X- "#{LIBBOOST_OXT} " << X- "#{PlatformInfo.portability_ldflags} " << X- "#{AGENT_LDFLAGS} " << X- "#{EXTRA_LDFLAGS}" X+ true X end X X task :clean => 'nginx:clean' 1b3e22589e2a7bbd48d4b80740020502 echo x - nginx/files/nginx.8.in sed 's/^X//' >nginx/files/nginx.8.in << '820244ab4524485ed61280fccfc54fc1' X.\" X.\" Copyright (c) 2010 Sergey A. Osokin X.\" All rights reserved. X.\" X.\" Redistribution and use in source and binary forms, with or without X.\" modification, are permitted provided that the following conditions X.\" are met: X.\" 1. Redistributions of source code must retain the above copyright X.\" notice, this list of conditions and the following disclaimer. X.\" 2. Redistributions in binary form must reproduce the above copyright X.\" notice, this list of conditions and the following disclaimer in the X.\" documentation and/or other materials provided with the distribution. X.\" X.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND X.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE X.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE X.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE X.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL X.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS X.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) X.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT X.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY X.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF X.\" SUCH DAMAGE. X.\" X.\" X.Dd November 14, 2010 X.Dt NGINX 8 X.Os X.Sh NAME X.Nm nginx X.Nd "HTTP and reverse proxy server, mail proxy server" X.Sh SYNOPSIS X.Nm X.Op Fl hqtvV? X.Op Fl c Ar file X.Op Fl g Ar directives X.Op Fl p Ar prefix X.Op Fl s Ar signal X.Sh DESCRIPTION XThe X.Nm X(spelled X.Dq engine x ) Xis an HTTP and reverse proxy server, as well as a mail proxy server. XThe X.Nm Xis known for its high performance, stability, rich feature set, simple Xconfiguration, and low resource consumption. X.Pp XThe options are as follows: X.Bl -tag -width ".Fl d Ar directives" X.It Fl ?\& | h XPrint help. X.It Fl c Ar file XUse an alternative configuration X.Ar file . X.It Fl g Ar directives XSet global configuration directives. XSee X.Sx EXAMPLES Xfor details. X.It Fl p Ar prefix XSet prefix path. XDefault value is X.Pa %%PREFIX%%/etc/nginx . X.It Fl q XSuppress non-error messages during configuration testing. X.It Fl s Ar signal XSend signal to the master process. XThe argument X.Ar signal Xcan be one of: X.Cm stop , quit , reopen , reload . XThe following table shows the corresponding system signals. X.Pp X.Bl -tag -width ".It Cm reopen" -compact X.It Cm stop X.Dv SIGTERM X.It Cm quit X.Dv SIGQUIT X.It Cm reopen X.Dv SIGUSR1 X.It Cm reload X.Dv SIGHUP X.El X.It Fl t XDon't run, just test the configuration file. XThe X.Nm Xchecks configuration for correct syntax and then tries to open files Xreferred in configuration. X.It Fl v XPrint X.Nm Xversion. X.It Fl V XPrint X.Nm Xversion, compiler version and X.Pa configure Xscript parameters. X.El X.Sh SIGNALS XThe master process of X.Nm Xcan handle the following signals. X.Pp X.Bl -tag -width ".It Dv SIGINT , SIGTERM" -compact X.It Dv SIGINT , SIGTERM XShut down quickly. X.It Dv SIGHUP XReload configuration, start the new worker process with a new Xconfiguration, gracefully shut down old worker processes. X.It Dv SIGQUIT XShut down gracefully. X.It Dv SIGUSR1 XReopen log files. X.It Dv SIGUSR2 XUpgrade X.Nm Xexecutable on the fly. X.It Dv SIGWINCH XShut down gracefully worker processes. X.El X.Pp XWhile there's no need to explicitly control worker processes normally, Xthey support some signals, too: X.Pp X.Bl -tag -width ".It Dv SIGINT , SIGTERM" -compact X.It Dv SIGTERM XShut down quickly. X.It Dv SIGQUIT XShut down gracefully. X.It Dv SIGUSR1 XReopen log files. X.El X.Sh DEBUGGING LOG XTo enable a debugging log, reconfigure X.Nm Xto build with debugging: X.Pp X.Dl "./configure --with-debug ..." X.Pp Xand then set the X.Cm debug Xlevel of the X.Va error_log : X.Pp X.Dl "error_log /path/to/log debug;" X.Pp XIt is also possible to enable the debugging for some IP address: X.Bd -literal -offset indent Xevents { X debug_connection 127.0.0.1; X} X.Ed X.Sh FILES X.Bl -tag -width indent -compact X.It Pa %%NGINX_RUNDIR%%/nginx/nginx.pid XContains the process ID of the X.Nm Xlistening for connections. XThe content of this file is not sensitive; it can be world-readable. X.It Pa %%PREFIX%%/etc/nginx/nginx.conf XMain configuration file. X.It Pa %%NGINX_ERRORLOG%% XError log file. X.El X.Sh EXIT STATUS XExit status is 0 on success, or 1 if the command fails. X.Sh EXAMPLES X.Bd -literal Xnginx -t -c ~/mynginx.conf -g "pid %%NGINX_RUNDIR%%/mynginx.pid; worker_processes 2;" X.Ed XTest configuration file X.Pa ~/mynginx.conf Xwith global directives for PID and quantity of worker processes. X.Sh SEE ALSO X.Xr nginx.conf 5 X.Sh HISTORY XDevelopment of X.Nm Xstarted in 2002, with the first public release in 2004. X.Sh AUTHORS X.An Igor Sysoev Aq igor@sysoev.ru X.Pp XDocumentation available on X.Pa http://nginx.org/ Xand X.Pa http://sysoev.ru/nginx/ . X.Pp XThis manual page was written by X.An Sergey A. Osokin Aq osa@FreeBSD.org.ru Xas a result of compilation of many X.Nm Xdocuments all over the world. X.Sh BUGS XReport to mailing list X.Aq Li nginx@nginx.org Xif you found one. 820244ab4524485ed61280fccfc54fc1 echo x - nginx/files/nginx.sh.in sed 's/^X//' >nginx/files/nginx.sh.in << 'ca857c765719d090275e9da5430d498f' X#!/bin/sh X# $FreeBSD: ports/www/nginx/files/nginx.sh.in,v 1.9 2010/03/28 04:44:54 dougb Exp $ X X# PROVIDE: nginx X# REQUIRE: LOGIN cleanvar X# KEYWORD: shutdown X X# X# Add the following lines to /etc/rc.conf to enable nginx: X# nginx_enable (bool): Set to "NO" by default. X# Set it to "YES" to enable nginx X# nginx_profiles (str): Set to "" by default. X# Define your profiles here. X# nginxlimits_enable (bool): Set to "NO" by default. X# Set it to yes to run `limits $limits_args` X# just before nginx starts. X# nginx_flags (str): Set to "" by default. X# Extra flags passed to start command. X# nginxlimits_args (str): Default to "-e -U %%WWWOWN%%" X# Arguments of pre-start limits run. X X. /etc/rc.subr X Xname="nginx" Xrcvar=`set_rcvar` X Xstart_precmd="nginx_precmd" Xrestart_precmd="nginx_checkconfig" Xreload_precmd="nginx_checkconfig" Xconfigtest_cmd="nginx_checkconfig" Xgracefulstop_cmd="nginx_gracefulstop" Xupgrade_precmd="nginx_checkconfig" Xupgrade_cmd="nginx_upgrade" Xcommand="%%PREFIX%%/sbin/nginx" X_pidprefix="/var/run/nginx" Xpidfile="${_pidprefix}.pid" Xrequired_files=%%PREFIX%%/etc/nginx/nginx.conf X X[ -z "$nginx_enable" ] && nginx_enable="NO" X[ -z "$nginxlimits_enable" ] && nginxlimits_enable="NO" X[ -z "$nginxlimits_args" ] && nginxlimits_args="-e -U %%WWWOWN%%" X Xload_rc_config $name X Xif [ -n "$2" ]; then X profile="$2" X if [ "x${nginx_profiles}" != "x" ]; then X pidfile="${_pidprefix}.${profile}.pid" X eval nginx_configfile="\${nginx_${profile}_configfile:-}" X if [ "x${nginx_configfile}" = "x" ]; then X echo "You must define a configuration file (nginx_${profile}_configfile)" X exit 1 X fi X required_files="${nginx_configfile}" X eval nginx_enable="\${nginx_${profile}_enable:-${nginx_enable}}" X eval nginx_flags="\${nginx_${profile}_flags:-${nginx_flags}}" X eval nginxlimits_enable="\${nginxlimits_${profile}_enable:-${nginxlimits_enable}}" X eval nginxlimits_args="\${nginxlimits_${profile}_args:-${nginxlimits_args}}" X nginx_flags="-c ${nginx_configfile} -g \"pid ${pidfile};\" ${nginx_flags}" X else X echo "$0: extra argument ignored" X fi Xelse X if [ "x${nginx_profiles}" != "x" -a "x$1" != "x" ]; then X for profile in ${nginx_profiles}; do X echo "===> nginx profile: ${profile}" X %%PREFIX%%/etc/rc.d/nginx $1 ${profile} X retcode="$?" X if [ "0${retcode}" -ne 0 ]; then X failed="${profile} (${retcode}) ${failed:-}" X else X success="${profile} ${success:-}" X fi X done X exit 0 X fi Xfi X Xnginx_checkconfig() X{ X echo "Performing sanity check on nginx configuration:" X eval ${command} ${nginx_flags} -t X} X Xnginx_gracefulstop() X{ X echo "Performing a graceful stop:" X sig_stop="QUIT" X run_rc_command ${rc_prefix}stop $rc_extra_args || return 1 X} X Xnginx_upgrade() X{ X echo "Upgrading nginx binary:" X X reload_precmd="" X sig_reload="USR2" X run_rc_command ${rc_prefix}reload $rc_extra_args || return 1 X X sleep 1 X X echo "Stopping old binary:" X X sig_reload="QUIT" X pidfile="$pidfile.oldbin" X run_rc_command ${rc_prefix}reload $rc_extra_args || return 1 X} X Xnginx_precmd() X{ X nginx_checkconfig X X if checkyesno nginxlimits_enable X then X eval `/usr/bin/limits ${nginxlimits_args}` 2>/dev/null X else X return 0 X fi X} X Xextra_commands="reload configtest upgrade gracefulstop" Xrun_rc_command "$1" ca857c765719d090275e9da5430d498f echo x - nginx/files/patch-conf-nginx.conf sed 's/^X//' >nginx/files/patch-conf-nginx.conf << '8ae50bb58305e670a6c68b37d391b707' X X$FreeBSD: ports/www/nginx/files/patch-conf-nginx.conf,v 1.4 2008/05/19 12:01:14 osa Exp $ X X--- conf/nginx.conf.orig Thu Jan 18 10:08:18 2007 X+++ conf/nginx.conf Thu Jun 14 12:57:52 2007 X@@ -33,7 +33,7 @@ X #gzip on; X X server { X- listen 80; X+ listen %%HTTP_PORT%%; X server_name localhost; X X #charset koi8-r; X@@ -41,7 +41,7 @@ X #access_log logs/host.access.log main; X X location / { X- root html; X+ root %%PREFIX%%/www/nginx; X index index.html index.htm; X } X X@@ -51,7 +51,7 @@ X # X error_page 500 502 503 504 /50x.html; X location = /50x.html { X- root html; X+ root %%PREFIX%%/www/nginx-dist; X } X X # proxy the PHP scripts to Apache listening on 127.0.0.1:80 8ae50bb58305e670a6c68b37d391b707 echo x - nginx/files/extra-patch-syslog_support sed 's/^X//' >nginx/files/extra-patch-syslog_support << '239671c156bf471422047eb66226460b' Xdiff -u a/src/core/nginx.c b/src/core/nginx.c Xindex 80a5d18..fdad5d5 100644 X--- src/core/nginx.c.orig X+++ src/core/nginx.c X@@ -8,6 +8,9 @@ X #include <ngx_core.h> X #include <nginx.h> X X+#ifdef USE_SYSLOG X+#include <syslog.h> X+#endif X X static ngx_int_t ngx_add_inherited_sockets(ngx_cycle_t *cycle); X static ngx_int_t ngx_get_options(int argc, char *const *argv); X@@ -278,6 +281,11 @@ main(int argc, char *const *argv) X ngx_ssl_init(log); X #endif X X+ /* SYSLOG SUPPORT */ X+#ifdef USE_SYSLOG X+ openlog("nginx", LOG_NDELAY, SYSLOG_FACILITY); X+#endif X+ X /* X * init_cycle->log is required for signal handlers and X * ngx_process_options() X@@ -396,6 +404,10 @@ main(int argc, char *const *argv) X ngx_master_process_cycle(cycle); X } X X+#ifdef USE_SYSLOG X+ closelog(); X+#endif X+ X return 0; X } X Xdiff -u a/src/core/ngx_conf_file.c b/src/core/ngx_conf_file.c Xindex 83c1073..1817627 100644 X--- src/core/ngx_conf_file.c.orig X+++ src/core/ngx_conf_file.c X@@ -907,6 +907,12 @@ ngx_conf_open_file(ngx_cycle_t *cycle, ngx_str_t *name) X ngx_str_null(&full); X #endif X X+#ifdef USE_SYSLOG X+ if (name->len) { X+ name->len = 0; X+ } X+#endif X+ X if (name->len) { X full = *name; X Xdiff -u a/src/core/ngx_log.c b/src/core/ngx_log.c Xindex c0485c6..b4ae00a 100644 X--- src/core/ngx_log.c.orig X+++ src/core/ngx_log.c X@@ -7,6 +7,9 @@ X #include <ngx_config.h> X #include <ngx_core.h> X X+#ifdef USE_SYSLOG X+#include <syslog.h> X+#endif X X static char *ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf); X X@@ -90,9 +93,11 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, X u_char *p, *last, *msg; X u_char errstr[NGX_MAX_ERROR_STR]; X X+#ifndef USE_SYSLOG X if (log->file->fd == NGX_INVALID_FILE) { X return; X } X+#endif X X last = errstr + NGX_MAX_ERROR_STR; X X@@ -139,7 +144,21 @@ ngx_log_error_core(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, X X ngx_linefeed(p); X X+#ifdef USE_SYSLOG X+ /* allocate a string which can hold the error message */ X+ char *syslogstr; X+ X+ if ((syslogstr = calloc((p - errstr + 1), sizeof(char))) != NULL) { X+ strncpy(syslogstr, errstr, p - errstr); X+ X+ /* write to syslog */ X+ syslog(LOG_CRIT, "%s", syslogstr); X+ X+ free(syslogstr); X+ } X+#else X (void) ngx_write_fd(log->file->fd, errstr, p - errstr); X+#endif X X if (!ngx_use_stderr X || level > NGX_LOG_WARN X@@ -428,6 +447,10 @@ ngx_error_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) X X value = cf->args->elts; X X+#ifdef USE_SYSLOG X+ value[1].data = "stderr"; X+#endif X+ X if (ngx_strcmp(value[1].data, "stderr") == 0) { X ngx_str_null(&name); X Xdiff -u a/src/http/modules/ngx_http_log_module.c b/src/http/modules/ngx_http_log_module.c Xindex 5f356c3..5232ad6 100644 X--- src/http/modules/ngx_http_log_module.c.orig X+++ src/http/modules/ngx_http_log_module.c X@@ -8,6 +8,9 @@ X #include <ngx_core.h> X #include <ngx_http.h> X X+#ifdef USE_SYSLOG X+#include <syslog.h> X+#endif X X typedef struct ngx_http_log_op_s ngx_http_log_op_t; X X@@ -310,6 +313,19 @@ static void X ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, u_char *buf, X size_t len) X { X+#ifdef USE_SYSLOG X+ /* allocate a string which can hold the error message */ X+ char *syslogstr; X+ X+ if ((syslogstr = calloc((len + 1), sizeof(char))) != NULL) { X+ strncpy(syslogstr, buf, len); X+ X+ /* write to syslog */ X+ syslog(LOG_NOTICE, "%s", syslogstr); X+ X+ free(syslogstr); X+ } X+#else X u_char *name; X time_t now; X ssize_t n; X@@ -354,6 +370,7 @@ ngx_http_log_write(ngx_http_request_t *r, ngx_http_log_t *log, u_char *buf, X X log->error_log_time = now; X } X+#endif X } X X X@@ -818,7 +835,11 @@ ngx_http_log_merge_loc_conf(ngx_conf_t *cf, void *parent, void *child) X return NGX_CONF_ERROR; X } X X+#ifdef USE_SYSLOG X+ ngx_http_access_log.data = ""; X+#endif X log->file = ngx_conf_open_file(cf->cycle, &ngx_http_access_log); X+ X if (log->file == NULL) { X return NGX_CONF_ERROR; X } X@@ -883,7 +904,11 @@ ngx_http_log_set_log(ngx_conf_t *cf, ngx_command_t *cmd, void *conf) X n = ngx_http_script_variables_count(&value[1]); X X if (n == 0) { X+#ifdef USE_SYSLOG X+ value[1].data = ""; X+#endif X log->file = ngx_conf_open_file(cf->cycle, &value[1]); X+ X if (log->file == NULL) { X return NGX_CONF_ERROR; X } X-- X1.6.3.3 X X--- auto/summary.orig 2010-07-08 19:57:36.000000000 +0400 X+++ auto/summary 2010-12-08 12:25:16.000000000 +0300 X@@ -73,6 +73,11 @@ X *) echo " + using libatomic_ops library: $NGX_LIBATOMIC" ;; X esac X X+case $USE_SYSLOG in X+ YES) echo " + using syslog with $SYSLOG_FACILITY facility" ;; X+ *) echo " + syslog is not used" ;; X+esac X+ X echo X X X--- auto/make.orig 2009-05-12 17:15:43.000000000 +0400 X+++ auto/make 2010-12-08 12:32:25.000000000 +0300 X@@ -15,6 +15,13 @@ X ngx_objs_dir=$NGX_OBJS$ngx_regex_dirsep X ngx_use_pch=`echo $NGX_USE_PCH | sed -e "s/\//$ngx_regex_dirsep/g"` X X+#SYSLOG X+if test -z "${SYSLOG_FACILITY}"; then X+ SYSLOG_FACILITY="LOG_DAEMON" X+fi X+if test "${USE_SYSLOG}" = "YES"; then X+ CFLAGS="$CFLAGS -DUSE_SYSLOG -DSYSLOG_FACILITY=${SYSLOG_FACILITY}" X+fi X X cat << END > $NGX_MAKEFILE X X--- auto/options.orig 2010-06-18 19:51:14.000000000 +0400 X+++ auto/options 2010-12-08 13:00:42.000000000 +0300 X@@ -118,6 +118,8 @@ X MD5_OPT= X MD5_ASM=NO X X+USE_SYSLOG=NO X+ X USE_SHA1=NO X SHA1=NONE X SHA1_OPT= X@@ -270,6 +272,9 @@ X --with-md5-opt=*) MD5_OPT="$value" ;; X --with-md5-asm) MD5_ASM=YES ;; X X+ --with-syslog) USE_SYSLOG=YES ;; X+ --with-syslog-facility=*) SYSLOG_FACILITY="$value" ;; X+ X --with-sha1=*) SHA1="$value" ;; X --with-sha1-opt=*) SHA1_OPT="$value" ;; X --with-sha1-asm) SHA1_ASM=YES ;; X@@ -410,6 +415,9 @@ X --with-md5-opt=OPTIONS set additional options for md5 building X --with-md5-asm use md5 assembler sources X X+ --with-syslog use syslog instead of files to log messages X+ --with-syslog-facility=FACILITY set syslog facility X+ X --with-sha1=DIR set path to sha1 library sources X --with-sha1-opt=OPTIONS set additional options for sha1 building X --with-sha1-asm use sha1 assembler sources X@@ -427,6 +435,7 @@ X --with-openssl-opt=OPTIONS set additional options for OpenSSL building X X --with-debug enable the debugging logging X+ X X END X 239671c156bf471422047eb66226460b echo x - nginx/Makefile sed 's/^X//' >nginx/Makefile << '37f2e31004f98fc09f07aa16832ed19c' X# New ports collection makefile for: nginx X# Date created: 11 Oct 2004 X# Whom: osa X# X# $FreeBSD: ports/www/nginx/Makefile,v 1.240 2010/12/01 20:18:56 osa Exp $ X# X XPORTNAME= nginx XPORTVERSION= 0.8.53 XPORTREVISION= 1 XCATEGORIES= www XMASTER_SITES= http://sysoev.ru/nginx/ XMASTER_SITES+= ${MASTER_SITE_LOCAL} XMASTER_SITE_SUBDIR= osa XDISTFILES= ${DISTNAME}${EXTRACT_SUFX} X XMAINTAINER= osa@FreeBSD.org XCOMMENT= Robust and small WWW server X XLICENSE= BSD X XOPTIONS= DEBUG "Enable nginx debugging" off \ X DEBUGLOG "Enable debug log (--with-debug)" off \ X FILE_AIO "Enable file aio" off \ X IPV6 "Enable IPv6" off \ X GOOGLE_PERFTOOLS "Enable google perftools module" off \ X HTTP_MODULE "Enable HTTP module" on \ X HTTP_ADDITION_MODULE "Enable http_addition module" off \ X HTTP_CACHE_MODULE "Enable http_cache module" on \ X HTTP_DAV_MODULE "Enable http_webdav module" off \ X HTTP_FLV_MODULE "Enable http_flv module" off \ X HTTP_GEOIP_MODULE "Enable http_geoip module" off \ X HTTP_GZIP_STATIC_MODULE "Enable http_gzip_static module" off \ X HTTP_IMAGE_FILTER_MODULE "Enable http_image_filter module" off \ X HTTP_PERL_MODULE "Enable http_perl module" off \ X HTTP_RANDOM_INDEX_MODULE "Enable http_random_index module" off \ X HTTP_REALIP_MODULE "Enable http_realip module" off \ X HTTP_REWRITE_MODULE "Enable http_rewrite module" on \ X HTTP_SECURE_LINK_MODULE "Enable http_secure_link module" off \ X HTTP_SSL_MODULE "Enable http_ssl module" off \ X HTTP_STATUS_MODULE "Enable http_stub_status module" on \ X HTTP_SUB_MODULE "Enable http_sub module" off \ X HTTP_XSLT_MODULE "Enable http_xslt module" off \ X MAIL_MODULE "Enable IMAP4/POP3/SMTP proxy module" off \ X MAIL_IMAP_MODULE "Enable IMAP4 proxy module" off \ X MAIL_POP3_MODULE "Enable POP3 proxy module" off \ X MAIL_SMTP_MODULE "Enable SMTP proxy module" off \ X MAIL_SSL_MODULE "Enable mail_ssl module" off \ X WWW "Enable html sample files" on \ X CACHE_PURGE_MODULE "3rd party cache_purge module" off \ X ECHO_MODULE "3rd party echo module" off \ X HEADERS_MORE_MODULE "3rd party headers_more module" off \ X HTTP_ACCEPT_LANGUAGE "3rd party accept_language module" off \ X HTTP_ACCESSKEY_MODULE "3rd party http_accesskey module" off \ X HTTP_AUTH_PAM_MODULE "3rd party http_auth_pam module" off \ X HTTP_AUTH_REQ_MODULE "3rd party http_auth_request module" off \ X HTTP_EVAL_MODULE "3rd party eval module" off \ X HTTP_FANCYINDEX_MODULE "3rd party http_fancyindex module" off \ X HTTP_GUNZIP_FILTER "3rd party http_gunzip_filter module" off \ X HTTP_MOGILEFS_MODULE "3rd party mogilefs module" off \ X HTTP_MP4_H264_MODULE "3rd party mp4/h264 module" off \ X HTTP_NOTICE_MODULE "3rd party notice module" off \ X HTTP_PUSH_MODULE "3rd party push module" off \ X HTTP_REDIS_MODULE "3rd party http_redis module" off \ X HTTP_RESPONSE_MODULE "3rd party http_response module" off \ X HTTP_UPLOAD_MODULE "3rd party upload module" off \ X HTTP_UPLOAD_PROGRESS "3rd party uploadprogress module" off \ X HTTP_UPSTREAM_FAIR "3rd party upstream fair module" off \ X HTTP_UPSTREAM_HASH "3rd party upstream hash module" off \ X HTTP_UPSTREAM_KEEPALIVE "3rd party upstream keepalive module" off \ X HTTP_ZIP_MODULE "3rd party http_zip module" off \ X MEMC_MODULE "3rd party memc (memcached) module" off \ X PASSENGER_MODULE "3rd party passenger module" off \ X SLOWFS_CACHE_MODULE "3rd party slowfs_cache module" off \ X SUPERVISORD_MODULE "3rd party supervisord module" off \ X UDPLOG_MODULE "3rd party udplog (syslog) module" off \ X SYSLOG_SUPPORT "3rd party syslog support" off X XWANT_GNOME= yes XMAKE_JOBS_SAFE= yes X X.include <bsd.port.options.mk> X X.if defined(WITH_PASSENGER_MODULE) XCATEGORIES+= ruby XUSE_RUBY= yes XUSE_RAKE= yes X.endif X XNGINX_VARDIR?= /var XNGINX_LOGDIR?= ${NGINX_VARDIR}/log XNGINX_RUNDIR?= ${NGINX_VARDIR}/run XNGINX_TMPDIR?= ${NGINX_VARDIR}/tmp/nginx XHTTP_PORT?= 80 X XNGINX_ACCESSLOG?= ${NGINX_LOGDIR}/nginx-access.log XNGINX_ERRORLOG?= ${NGINX_LOGDIR}/nginx-error.log X XCONFLICTS?= nginx-devel-0.* XUSE_RC_SUBR= nginx.sh XSUB_LIST+= WWWOWN=${WWWOWN} X.if !defined(NO_INSTALL_MANPAGES) XMAN8= nginx.8 XSUB_FILES+= nginx.8 XSUB_LIST+= NGINX_ERRORLOG=${NGINX_ERRORLOG} NGINX_RUNDIR=${NGINX_RUNDIR} X.endif X XHAS_CONFIGURE= yes XCONFIGURE_ARGS+=--prefix=${ETCDIR} \ X --with-cc-opt="-I ${LOCALBASE}/include" \ X --with-ld-opt="-L ${LOCALBASE}/lib" \ X --conf-path=${ETCDIR}/nginx.conf \ X --sbin-path=${PREFIX}/sbin/nginx \ X --pid-path=${NGINX_RUNDIR}/nginx.pid \ X --error-log-path=${NGINX_ERRORLOG} \ X --user=${WWWOWN} --group=${WWWGRP} X X.if defined(WITHOUT_HTTP_MODULE) && defined(WITHOUT_MAIL_MODULE) XIGNORE= requires at least HTTP_MODULE or MAIL_MODULE to \ X be defined. Please 'make config' again X.endif X X.if defined(WITH_DEBUG) XCFLAGS+= -g -DNGX_DEBUG_MALLOC XSTRIP= #do not strip if nginx with debug information X.endif X X.if defined(WITH_DEBUGLOG) XCONFIGURE_ARGS+=--with-debug X.endif X X.if defined(WITH_FILE_AIO) XCONFIGURE_ARGS+=--with-file-aio X.endif X X.if defined(WITH_IPV6) XCONFIGURE_ARGS+=--with-ipv6 XCATEGORIES+= ipv6 X.endif X X.if defined(WITH_GOOGLE_PERFTOOLS) XLIB_DEPENDS+= profiler.0:${PORTSDIR}/devel/google-perftools XCONFIGURE_ARGS+=--with-google_perftools_module X.endif X X.if defined(WITH_HTTP_MODULE) XCONFIGURE_ARGS+=--http-client-body-temp-path=${NGINX_TMPDIR}/client_body_temp \ X --http-fastcgi-temp-path=${NGINX_TMPDIR}/fastcgi_temp \ X --http-proxy-temp-path=${NGINX_TMPDIR}/proxy_temp \ X --http-scgi-temp-path=${NGINX_TMPDIR}/scgi_temp \ X --http-uwsgi-temp-path=${NGINX_TMPDIR}/uwsgi_temp \ X --http-log-path=${NGINX_ACCESSLOG} X X.if defined(WITH_HTTP_ACCEPT_LANGUAGE) XMASTER_SITES+= ftp://inside01.p8.ru/nginx/:accept_language XDISTFILES+= nginx_accept_language_module.tar.gz:accept_language XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_accept_language_module X.endif X X.if defined(WITH_HTTP_ACCESSKEY_MODULE) XNGINX_ACCESSKEY_MODULE_VERSION= 2.0.3 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:accesskey/} XMASTER_SITE_SUBDIR+= osa/:accesskey XDISTFILES+= nginx-accesskey-${NGINX_ACCESSKEY_MODULE_VERSION}.tar.gz:accesskey XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx-accesskey-${NGINX_ACCESSKEY_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_ADDITION_MODULE) XCONFIGURE_ARGS+=--with-http_addition_module X.endif X X.if defined(WITH_HTTP_AUTH_PAM_MODULE) XNGINX_AUTH_PAM_MODULE_VERSION= 1.2 XMASTER_SITES+= http://web.iti.upv.es/~sto/nginx/:auth_pam XDISTFILES+= ngx_http_auth_pam_module-${NGINX_AUTH_PAM_MODULE_VERSION}.tar.gz:auth_pam XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_auth_pam_module-${NGINX_AUTH_PAM_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_AUTH_REQ_MODULE) XNGINX_AUTH_REQ_MODULE_VERSION= 0.2 XMASTER_SITES+= http://mdounin.ru/files/:auth_request XDISTFILES+= ngx_http_auth_request_module-${NGINX_AUTH_REQ_MODULE_VERSION}.tar.gz:auth_request XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_auth_request_module-${NGINX_AUTH_REQ_MODULE_VERSION} X.endif X X.if defined(WITHOUT_HTTP_CACHE_MODULE) XCONFIGURE_ARGS+=--without-http-cache X.endif X X.if defined(WITH_CACHE_PURGE_MODULE) XNGINX_CACHE_PURGE_MODULE_VERSION= 1.2 XMASTER_SITES+= http://labs.frickle.com/files/:cache_purge XDISTFILES+= ngx_cache_purge-${NGINX_CACHE_PURGE_MODULE_VERSION}.tar.gz:cache_purge XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_cache_purge-${NGINX_CACHE_PURGE_MODULE_VERSION} X.endif X X.if defined(WITH_ECHO_MODULE) XNGINX_ECHO_MODULE_VERSION= 0.30 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:echo/} XMASTER_SITE_SUBDIR+= osa/:echo XDISTFILES+= ngx_echo_module-${NGINX_ECHO_MODULE_VERSION}.tar.gz:echo XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_echo_module-${NGINX_ECHO_MODULE_VERSION} X.endif X X.if defined(WITH_HEADERS_MORE_MODULE) XNGINX_HEADERS_MORE_MODULE_VERSION= 0.10 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:headers_more/} XMASTER_SITE_SUBDIR+= osa/:headers_more XDISTFILES+= ngx_headers_more_module-${NGINX_HEADERS_MORE_MODULE_VERSION}.tar.gz:headers_more XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_headers_more_module-${NGINX_HEADERS_MORE_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_DAV_MODULE) XCONFIGURE_ARGS+=--with-http_dav_module X.endif X X.if defined(WITH_HTTP_EVAL_MODULE) XNGINX_EVAL_MODULE_VERSION= 1.0.1 XMASTER_SITES+= http://www.grid.net.ru/nginx/download/:eval XDISTFILES+= nginx_eval_module-${NGINX_EVAL_MODULE_VERSION}.tar.gz:eval XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_eval_module-${NGINX_EVAL_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_FANCYINDEX_MODULE) XNGINX_FANCYINDEX_MODULE_VERSION= 0.3 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:fancyindex/} XMASTER_SITE_SUBDIR+= osa/:fancyindex XDISTFILES+= ngx-fancyindex-${NGINX_FANCYINDEX_MODULE_VERSION}.tar.gz:fancyindex XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx-fancyindex-${NGINX_FANCYINDEX_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_GUNZIP_FILTER) XNGINX_GUNZIP_FILTER_MODULE_VERSION= 0.3 XMASTER_SITES+= http://mdounin.ru/files/:gunzipfilter XDISTFILES+= ngx_http_gunzip_filter_module-${NGINX_GUNZIP_FILTER_MODULE_VERSION}.tar.gz:gunzipfilter XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_gunzip_filter_module-${NGINX_GUNZIP_FILTER_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_FLV_MODULE) XCONFIGURE_ARGS+=--with-http_flv_module X.endif X X.if defined(WITH_HTTP_GEOIP_MODULE) XCONFIGURE_ARGS+=--with-http_geoip_module XLIB_DEPENDS+= GeoIP.5:${PORTSDIR}/net/GeoIP X.endif X X.if defined(WITH_HTTP_GZIP_STATIC_MODULE) XCONFIGURE_ARGS+=--with-http_gzip_static_module X.endif X X.if defined(WITH_HTTP_IMAGE_FILTER_MODULE) XLIB_DEPENDS+= gd.4:${PORTSDIR}/graphics/gd XCONFIGURE_ARGS+=--with-http_image_filter_module X.endif X X.if defined(WITH_HTTP_MOGILEFS_MODULE) XNGINX_MOGILEFS_MODULE_VERSION= 1.0.4 XMASTER_SITES+= http://www.grid.net.ru/nginx/download/:mogilefs XDISTFILES+= nginx_mogilefs_module-${NGINX_MOGILEFS_MODULE_VERSION}.tar.gz:mogilefs XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_mogilefs_module-${NGINX_MOGILEFS_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_MP4_H264_MODULE) XNGINX_H264_MODULE_VERSION= 2.2.7 XMASTER_SITES+= http://h264.code-shop.com/download/:mp4streaming XDISTFILES+= nginx_mod_h264_streaming-${NGINX_H264_MODULE_VERSION}.tar.gz:mp4streaming XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_mod_h264_streaming-${NGINX_H264_MODULE_VERSION} XEXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_streaming_module.c X.endif X X.if defined(WITH_HTTP_NOTICE_MODULE) XMASTER_SITES+= http://xph.us/dist/nginx-notice/:notice2 XDISTFILES+= nginx-notice-2.tar.gz:notice2 XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx-notice-2 XEXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_notice_module.c X.endif X X.if defined(WITH_HTTP_PERL_MODULE) XCATEGORIES+= perl5 XCONFIGURE_ARGS+=--with-http_perl_module XUSE_PERL5= yes X.endif X X.if defined(WITH_HTTP_PUSH_MODULE) XNGINX_PUSH_MODULE_VERSION= 0.692 XMASTER_SITES+= http://pushmodule.slact.net/downloads/:push XDISTFILES+= nginx_http_push_module-${NGINX_PUSH_MODULE_VERSION}.tar.gz:push XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_http_push_module-${NGINX_PUSH_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_RANDOM_INDEX_MODULE) XCONFIGURE_ARGS+=--with-http_random_index_module X.endif X X.if defined(WITH_HTTP_REALIP_MODULE) XCONFIGURE_ARGS+=--with-http_realip_module X.endif X X.if defined(WITH_HTTP_REDIS_MODULE) XNGINX_REDIS_MODULE_VERSION= 0.3.2 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:redis/} XMASTER_SITE_SUBDIR+= osa/:redis XDISTFILES+= ngx_http_redis-${NGINX_REDIS_MODULE_VERSION}.tar.gz:redis XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_redis-${NGINX_REDIS_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_RESPONSE_MODULE) XNGINX_RESPONSE_MODULE_VERSION= 0.3 XMASTER_SITES+= http://catap.ru/downloads/nginx/:response XDISTFILES+= ngx_http_response-${NGINX_RESPONSE_MODULE_VERSION}.tar.gz:response XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_response-${NGINX_RESPONSE_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_SECURE_LINK_MODULE) XCONFIGURE_ARGS+=--with-http_secure_link_module X.endif X X.if defined(WITH_HTTP_SSL_MODULE) XNGINX_OPENSSL= yes XCONFIGURE_ARGS+=--with-http_ssl_module X.endif X X.if defined(WITH_HTTP_STATUS_MODULE) XCONFIGURE_ARGS+=--with-http_stub_status_module X.endif X X.if defined(WITH_HTTP_SUB_MODULE) XCONFIGURE_ARGS+=--with-http_sub_module X.endif X X.if defined(WITH_HTTP_UPLOAD_MODULE) XNGINX_UPLOAD_MODULE_VERSION= 2.2.0 XMASTER_SITES+= http://www.grid.net.ru/nginx/download/:upload XDISTFILES+= nginx_upload_module-${NGINX_UPLOAD_MODULE_VERSION}.tar.gz:upload XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upload_module-${NGINX_UPLOAD_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_UPLOAD_PROGRESS) XNGINX_UPLOADPROGRESS_MODULE_VERSION= 0.8 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:uploadprogress/} XMASTER_SITE_SUBDIR+= osa/:uploadprogress XDISTFILES+= nginx_uploadprogress_module-${NGINX_UPLOADPROGRESS_MODULE_VERSION}.tar.gz:uploadprogress XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_uploadprogress_module-${NGINX_UPLOADPROGRESS_MODULE_VERSION} X.endif X X.if defined(WITH_HTTP_UPSTREAM_FAIR) || defined(WITH_SUPERVISORD_MODULE) XNGINX_UPSTREAM_FAIR_VERSION= 20090923 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:upstreamfair/} XMASTER_SITE_SUBDIR+= osa/:upstreamfair XDISTFILES+= nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION}.tar.gz:upstreamfair XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION} X.endif X X.if defined(WITH_HTTP_UPSTREAM_HASH) XNGINX_UPSTREAM_HASH_VERSION= 0.3.1 XMASTER_SITES+= http://wiki.nginx.org/images/1/11/:upstreamhash XDISTFILES+= Nginx_upstream_hash-${NGINX_UPSTREAM_HASH_VERSION}.tar.gz:upstreamhash XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_upstream_hash-${NGINX_UPSTREAM_HASH_VERSION} XEXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_upstream.h X.endif X X.if defined(WITH_HTTP_UPSTREAM_KEEPALIVE) XNGINX_UPSTREAM_KEEPALIVE_VERSION= 0.3 XMASTER_SITES+= http://mdounin.ru/files/:upstream XDISTFILES+= ngx_http_upstream_keepalive-${NGINX_UPSTREAM_KEEPALIVE_VERSION}.tar.gz:upstream XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_upstream_keepalive-${NGINX_UPSTREAM_KEEPALIVE_VERSION} X.endif X X.if defined(WITH_HTTP_XSLT_MODULE) XUSE_GNOME= libxml2 libxslt XCONFIGURE_ARGS+=--with-http_xslt_module X.endif X X.if defined(WITH_HTTP_ZIP_MODULE) XNGINX_ZIP_MODULE_VERSION= 1.1.6 XMASTER_SITES+= ${MASTER_SITE_GOOGLE_CODE}:zip XPROJECTHOST= mod-zip XDISTFILES+= mod_zip-${NGINX_ZIP_MODULE_VERSION}.tar.gz:zip XCONFIGURE_ARGS+=--add-module=${WRKDIR}/mod_zip-${NGINX_ZIP_MODULE_VERSION} X.endif X X.if defined(WITH_MEMC_MODULE) XNGINX_MEMC_MODULE_VERSION= 0.11 XMASTER_SITES+= ${MASTER_SITE_LOCAL:S/$/:memc/} XMASTER_SITE_SUBDIR+= osa/:memc XDISTFILES+= ngx_http_memc_module-${NGINX_MEMC_MODULE_VERSION}.tar.gz:memc XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_http_memc_module-${NGINX_MEMC_MODULE_VERSION} X.endif X X.if defined(WITHOUT_HTTP_REWRITE_MODULE) || defined(WITHOUT_PCRE) XPKGNAMESUFFIX:= ${PKGNAMESUFFIX}-nopcre XCONFIGURE_ARGS+=--without-http_rewrite_module \ X --without-pcre X.else XLIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre XCONFIGURE_ARGS+=--with-pcre X.endif X X.if defined(WITH_PASSENGER_MODULE) XPASSENGER_VERSION= 3.0.0 XMASTER_SITES+= RF/passenger/:passenger XDISTFILES+= passenger-${PASSENGER_VERSION}.tar.gz:passenger XCONFIGURE_ARGS+=--add-module=${WRKDIR}/passenger-${PASSENGER_VERSION}/ext/nginx XEXTRA_PATCHES+= ${PATCHDIR}/extra-patch-passenger::build::nginx.rb X.endif X X.if defined(WITH_SLOWFS_CACHE_MODULE) XNGINX_SLOWFS_CACHE_MODULE_VERSION= 1.5 XMASTER_SITES+= http://labs.frickle.com/files/:slowfs_cache XDISTFILES+= ngx_slowfs_cache-${NGINX_SLOWFS_CACHE_MODULE_VERSION}.tar.gz:slowfs_cache XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_slowfs_cache-${NGINX_SLOWFS_CACHE_MODULE_VERSION} X.endif X X.if defined(WITH_SUPERVISORD_MODULE) XNGINX_SUPERVISORD_MODULE_VERSION= 1.4 XMASTER_SITES+= http://labs.frickle.com/files/:supervisord XDISTFILES+= ngx_supervisord-${NGINX_SUPERVISORD_MODULE_VERSION}.tar.gz:supervisord XCONFIGURE_ARGS+=--add-module=${WRKDIR}/ngx_supervisord-${NGINX_SUPERVISORD_MODULE_VERSION} X.endif X X.if defined(WITH_UDPLOG_MODULE) XNGINX_UDPLOG_MODULE_VERSION= 1.0.0 XMASTER_SITES+= http://www.grid.net.ru/nginx/download/:udplog XDISTFILES+= nginx_udplog_module-${NGINX_UDPLOG_MODULE_VERSION}.tar.gz:udplog XCONFIGURE_ARGS+=--add-module=${WRKDIR}/nginx_udplog_module-${NGINX_UDPLOG_MODULE_VERSION} XEXTRA_PATCHES+= ${PATCHDIR}/extra-patch-ngx_http_udplog_module.c X.endif X X.if defined(WITH_SYSLOG_SUPPORT) XNGINX_SYSLOG_SUPPORT_FACILITY?= LOG_DAEMON XCONFIGURE_ARGS+=--with-syslog --with-syslog-facility=${NGINX_SYSLOG_SUPPORT_FACILITY} XEXTRA_PATCHES+= ${PATCHDIR}/extra-patch-syslog_support X.endif X X.if defined(WITH_WWW) XPLIST_SUB+= WWWDATA="" X.else XPLIST_SUB+= WWWDATA="@comment " X.endif X X.else XCONFIGURE_ARGS+=--without-http XPLIST_SUB+= WWWDATA="@comment " X.endif # WITH_HTTP_MODULE X X.if defined(WITH_MAIL_MODULE) XCONFIGURE_ARGS+=--with-mail X.if defined(WITHOUT_MAIL_IMAP_MODULE) XCONFIGURE_ARGS+=--without-mail_imap_module X.endif X.if defined(WITHOUT_MAIL_POP3_MODULE) XCONFIGURE_ARGS+=--without-mail_pop3_module X.endif X.if defined(WITHOUT_MAIL_SMTP_MODULE) XCONFIGURE_ARGS+=--without-mail_smtp_module X.endif X.if defined(WITH_MAIL_SSL_MODULE) XNGINX_OPENSSL= yes XCONFIGURE_ARGS+=--with-mail_ssl_module X.endif X.endif # WITH_MAIL_MODULE X X.if defined(NGINX_OPENSSL) XUSE_OPENSSL= yes X.endif X XPLIST_SUB+= NGINX_TMPDIR=${NGINX_TMPDIR} WWWOWN=${WWWOWN} WWWGRP=${WWWGRP} X X.include <bsd.port.pre.mk> X Xpre-everything:: X @${ECHO_MSG} X.if defined(WITH_HTTP_UPSTREAM_FAIR) X @${ECHO_MSG} "Enable http_ssl module to build upstream_fair with SSL support" X.endif X.if defined(WITH_PASSENGER_MODULE) X @${ECHO_MSG} "This port install Passenger module only" X.endif X @${ECHO_MSG} X Xpost-patch: X @${REINPLACE_CMD} 's!%%HTTP_PORT%%!${HTTP_PORT}!; \ X s!%%PREFIX%%!${PREFIX}!' \ X ${WRKSRC}/conf/nginx.conf X.if defined(WITH_HTTP_ACCESSKEY_MODULE) X @${REINPLACE_CMD} \ X 's!$$HTTP_ACCESSKEY_MODULE!ngx_http_accesskey_module!' \ X ${WRKDIR}/nginx-accesskey-${NGINX_ACCESSKEY_MODULE_VERSION}/config X.endif X.if defined(WITH_PASSENGER_MODULE) X @${REINPLACE_CMD} 's!-lpthread!${PTHREAD_LIBS}!g' \ X ${WRKDIR}/passenger-${PASSENGER_VERSION}/ext/nginx/config X @${REINPLACE_CMD} 's!-Wall!!g; \ X s!#{PlatformInfo.debugging_cflags}!${CFLAGS}!g; \ X s!-O2!!g; \ X 35s!true!false!' \ X ${WRKDIR}/passenger-${PASSENGER_VERSION}/build/config.rb X @${REINPLACE_CMD} 's!-lpthread!${PTHREAD_LIBS}!g' \ X ${WRKDIR}/passenger-${PASSENGER_VERSION}/lib/phusion_passenger/platform_info/compiler.rb X.endif X.if defined(WITH_SUPERVISORD_MODULE) X ( cd ${WRKDIR}/nginx_upstream_fair-${NGINX_UPSTREAM_FAIR_VERSION} && \ X ${PATCH} -p0 < \ X ${WRKDIR}/ngx_supervisord-${NGINX_SUPERVISORD_MODULE_VERSION}/patches/ngx_http_upstream_fair_module.patch ) X ( cd ${WRKSRC} && \ X ${PATCH} -p0 < \ X ${WRKDIR}/ngx_supervisord-${NGINX_SUPERVISORD_MODULE_VERSION}/patches/ngx_http_upstream_init_busy-0.8.17.patch ) X.endif X Xdo-build: X @cd ${WRKSRC} && ${MAKE} X Xdo-install: X ${MKDIR} ${ETCDIR} ${NGINX_TMPDIR} X ${CHOWN} ${WWWOWN}:${WWWGRP} ${NGINX_TMPDIR} X ${INSTALL_PROGRAM} ${WRKSRC}/objs/nginx ${PREFIX}/sbin X.for i in koi-utf koi-win win-utf X ${INSTALL_DATA} ${WRKSRC}/conf/${i} ${ETCDIR} X.endfor X.for i in fastcgi_params mime.types nginx.conf scgi_params uwsgi_params X [ -f ${ETCDIR}/${i} ] || \ X ${INSTALL_DATA} ${WRKSRC}/conf/${i} ${ETCDIR} X ${INSTALL_DATA} ${WRKSRC}/conf/${i} ${ETCDIR}/${i}-dist X.endfor X.if defined(WITH_HTTP_MODULE) && defined(WITH_WWW) X ${MKDIR} ${PREFIX}/www/nginx-dist X.for i in index.html 50x.html X ${INSTALL_DATA} ${WRKSRC}/html/${i} ${PREFIX}/www/nginx-dist X.endfor X ${ECHO_CMD} "" >>${PREFIX}/www/nginx-dist/EXAMPLE_DIRECTORY-DONT_ADD_OR_TOUCH_ANYTHING X [ -e ${PREFIX}/www/nginx ] || \ X ${LN} -sf ${PREFIX}/www/nginx-dist ${PREFIX}/www/nginx X.endif X X.if defined(WITH_HTTP_MODULE) && defined(WITH_HTTP_PERL_MODULE) X ${MKDIR} ${SITE_PERL}/${PERL_ARCH}/auto/nginx X ${INSTALL_PROGRAM} ${WRKSRC}/objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.so \ X ${SITE_PERL}/${PERL_ARCH}/auto/nginx X ${INSTALL_DATA} ${WRKSRC}/objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.bs \ X ${SITE_PERL}/${PERL_ARCH}/auto/nginx X ${INSTALL_DATA} ${WRKSRC}/objs/src/http/modules/perl/blib/lib/nginx.pm \ X ${SITE_PERL}/${PERL_ARCH}/ X.endif X Xpost-install: X.if defined(WITH_HTTP_MODULE) && defined(WITH_HTTP_PERL_MODULE) X ${ECHO_CMD} ${SITE_PERL_REL}/${PERL_ARCH}/auto/nginx/nginx.so >> ${TMPPLIST} X ${ECHO_CMD} ${SITE_PERL_REL}/${PERL_ARCH}/auto/nginx/nginx.bs >> ${TMPPLIST} X ${ECHO_CMD} ${SITE_PERL_REL}/${PERL_ARCH}/nginx.pm >> ${TMPPLIST} X ${ECHO_CMD} @dirrm ${SITE_PERL_REL}/${PERL_ARCH}/auto/nginx >> ${TMPPLIST} X.endif X.if !defined(NO_INSTALL_MANPAGES) X @${INSTALL_MAN} ${WRKDIR}/nginx.8 ${MAN8PREFIX}/man/man8 X.endif X X.include <bsd.port.post.mk> 37f2e31004f98fc09f07aa16832ed19c echo x - nginx/distinfo sed 's/^X//' >nginx/distinfo << 'd163432960bd00d4a4ee325434c8ae21' XSHA256 (nginx-0.8.53.tar.gz) = 8ab8a87beb555d9ea09fe61d0de86a71ea4e90ef7970df0d38f7acfb9bed6dcf XSIZE (nginx-0.8.53.tar.gz) = 649835 XSHA256 (nginx_accept_language_module.tar.gz) = 7a4c2d42a83c5b6efd2b7b13ad232850b6ab0ca4261df6b46fb7d2d2738b1c0a XSIZE (nginx_accept_language_module.tar.gz) = 3299 XSHA256 (nginx-accesskey-2.0.3.tar.gz) = d9e94321e78a02de16c57f3e048fd31059fd8116ed03d6de7180f435c52502b1 XSIZE (nginx-accesskey-2.0.3.tar.gz) = 2632 XSHA256 (ngx_http_auth_pam_module-1.2.tar.gz) = 5a85970ba61a99f55a26d2536a11d512b39bbd622f5737d25a9a8c10db81efa9 XSIZE (ngx_http_auth_pam_module-1.2.tar.gz) = 5424 XSHA256 (ngx_http_auth_request_module-0.2.tar.gz) = eea5d0ec02bba93d0b204a034230cc61462b60497cbac6f581d7e008a9262ba4 XSIZE (ngx_http_auth_request_module-0.2.tar.gz) = 6736 XSHA256 (ngx_cache_purge-1.2.tar.gz) = cb350bcd3649872ffd836048679f34e242f67f851fcec26bb4bf5127b97d89a8 XSIZE (ngx_cache_purge-1.2.tar.gz) = 5807 XSHA256 (ngx_echo_module-0.30.tar.gz) = 6ea23635377098318806ba1bb6d6a245c17ee4ccd4828da813e505eebb41c42c XSIZE (ngx_echo_module-0.30.tar.gz) = 115008 XSHA256 (ngx_headers_more_module-0.10.tar.gz) = 7428316ea779a53acf581ca45b3e2bcd7cc0cb4a9100dc47d4a8456cb64a399c XSIZE (ngx_headers_more_module-0.10.tar.gz) = 78165 XSHA256 (nginx_eval_module-1.0.1.tar.gz) = f11ba0bf445f0eafd999d52817e298b1f1b09817f74b6120ed491e611d53c798 XSIZE (nginx_eval_module-1.0.1.tar.gz) = 4974 XSHA256 (ngx-fancyindex-0.3.tar.gz) = b7e6635acf06aa90e9c5e6fe0d3f8f7c0047af2035ad50bbf240b3544a952b81 XSIZE (ngx-fancyindex-0.3.tar.gz) = 12426 XSHA256 (ngx_http_gunzip_filter_module-0.3.tar.gz) = c1860befc868970dce4085631e7717c749329883d8b05a2a64bd2850f346cd39 XSIZE (ngx_http_gunzip_filter_module-0.3.tar.gz) = 7361 XSHA256 (nginx_mogilefs_module-1.0.4.tar.gz) = 7ac230d30907f013dff8d435a118619ea6168aa3714dba62c6962d350c6295ae XSIZE (nginx_mogilefs_module-1.0.4.tar.gz) = 11208 XSHA256 (nginx_mod_h264_streaming-2.2.7.tar.gz) = 6d974ba630cef59de1f60996c66b401264a345d25988a76037c2856cec756c19 XSIZE (nginx_mod_h264_streaming-2.2.7.tar.gz) = 44012 XSHA256 (nginx-notice-2.tar.gz) = 682824a9f5187831ee49e5828bafebde5c25706e681d361804f96308f24e58c2 XSIZE (nginx-notice-2.tar.gz) = 3253 XSHA256 (nginx_http_push_module-0.692.tar.gz) = 64868708071aa21dbc4c7a07d149dd6ec9108fb7eaf2aad5ad069406151f17fe XSIZE (nginx_http_push_module-0.692.tar.gz) = 29119 XSHA256 (ngx_http_redis-0.3.2.tar.gz) = eb7bcbcb0382b82050f06d80aa6c05c17b576d572bc8ee132c8e7f1e34a13837 XSIZE (ngx_http_redis-0.3.2.tar.gz) = 6346 XSHA256 (ngx_http_response-0.3.tar.gz) = 0835584029f053051c624adbe33a826ab0205c9d85a02af6019e6b57607e9045 XSIZE (ngx_http_response-0.3.tar.gz) = 2244 XSHA256 (nginx_upload_module-2.2.0.tar.gz) = b1c26abe0427180602e257627b4ed21848c93cc20cefc33af084983767d65805 XSIZE (nginx_upload_module-2.2.0.tar.gz) = 25796 XSHA256 (nginx_uploadprogress_module-0.8.tar.gz) = 7828410e79603de86a135084d60e74393df18894194b30af92ff144e6afeae13 XSIZE (nginx_uploadprogress_module-0.8.tar.gz) = 16364 XSHA256 (nginx_upstream_fair-20090923.tar.gz) = ec9ed7f856263e17faadee3dc7209932364ded4e546b829841c2454aa432450b XSIZE (nginx_upstream_fair-20090923.tar.gz) = 10024 XSHA256 (Nginx_upstream_hash-0.3.1.tar.gz) = 51929c5352d4c2608b3f852987830be08b6946baf20da346fe520d9b12e39968 XSIZE (Nginx_upstream_hash-0.3.1.tar.gz) = 5049 XSHA256 (ngx_http_upstream_keepalive-0.3.tar.gz) = 44ebda7c854293db7852ca5121491622dfdfcc8aa47c42477529d19243a9d519 XSIZE (ngx_http_upstream_keepalive-0.3.tar.gz) = 8049 XSHA256 (mod_zip-1.1.6.tar.gz) = d30546b4be8308c721df0240ebc38c474c6b577381a110321eded6dbed5104b1 XSIZE (mod_zip-1.1.6.tar.gz) = 21991 XSHA256 (ngx_http_memc_module-0.11.tar.gz) = 9ece68bdae2c170fb845c1082da6502401763ffd3e4b443226ff9303df65951f XSIZE (ngx_http_memc_module-0.11.tar.gz) = 98042 XSHA256 (passenger-3.0.0.tar.gz) = 6e769fb3c294ad437057438e38982b14aff023c1f914ab281bfd23fcd8681a59 XSIZE (passenger-3.0.0.tar.gz) = 3048705 XSHA256 (ngx_slowfs_cache-1.5.tar.gz) = 8f3d1afd6bcaaeba89bc4f9d5e5ba3e2b334bf8e7e5b56bd37f25b5cbac8d828 XSIZE (ngx_slowfs_cache-1.5.tar.gz) = 9785 XSHA256 (ngx_supervisord-1.4.tar.gz) = 0954a4efb1b955692acf523e169221146d6aa93ad1643c9f2482f75a1fbf9e3b XSIZE (ngx_supervisord-1.4.tar.gz) = 19351 XSHA256 (nginx_udplog_module-1.0.0.tar.gz) = e0c0bfa524c3a675ad6c08b916d08e57ef45f9818cb8a0d848c2c83785c6e659 XSIZE (nginx_udplog_module-1.0.0.tar.gz) = 6284 d163432960bd00d4a4ee325434c8ae21 echo x - nginx/pkg-descr sed 's/^X//' >nginx/pkg-descr << '2897b2d09b3641973eec32212b6e83fe' XAnother one small and robust www server, supports Xkqueue (EV_CLEAR, EV_DISABLE, NOTE_LOWAT, EV_EOF, etc.), Xselect, poll, sendfile. X XWWW: http://sysoev.ru/nginx/ 2897b2d09b3641973eec32212b6e83fe echo x - nginx/pkg-plist sed 's/^X//' >nginx/pkg-plist << 'abd2877b1e482a34802fce2b5572e1f6' X@comment $FreeBSD: ports/www/nginx/pkg-plist,v 1.14 2010/09/28 06:32:16 osa Exp $ X@unexec if cmp -s %D/%%ETCDIR%%/fastcgi_params-dist %D/%%ETCDIR%%/fastcgi_params; then rm -f %D/%%ETCDIR%%/fastcgi_params; fi X%%ETCDIR%%/fastcgi_params-dist X@exec if [ ! -f %D/%%ETCDIR%%/fastcgi_params ] ; then cp -p %D/%F %B/fastcgi_params; fi X%%ETCDIR%%/koi-utf X%%ETCDIR%%/koi-win X@unexec if cmp -s %D/%%ETCDIR%%/scgi_params-dist %D/%%ETCDIR%%/scgi_params; then rm -f %D/%%ETCDIR%%/scgi_params; fi X%%ETCDIR%%/scgi_params-dist X@exec if [ ! -f %D/%%ETCDIR%%/scgi_params ] ; then cp -p %D/%F %B/scgi_params; fi X@unexec if cmp -s %D/%%ETCDIR%%/uwsgi_params-dist %D/%%ETCDIR%%/uwsgi_params; then rm -f %D/%%ETCDIR%%/uwsgi_params; fi X%%ETCDIR%%/uwsgi_params-dist X@exec if [ ! -f %D/%%ETCDIR%%/uwsgi_params ] ; then cp -p %D/%F %B/uwsgi_params; fi X%%ETCDIR%%/win-utf X@unexec if cmp -s %D/%%ETCDIR%%/mime.types-dist %D/%%ETCDIR%%/mime.types; then rm -f %D/%%ETCDIR%%/mime.types; fi X%%ETCDIR%%/mime.types-dist X@exec if [ ! -f %D/%%ETCDIR%%/mime.types ] ; then cp -p %D/%F %B/mime.types; fi X@unexec if cmp -s %D/%%ETCDIR%%/nginx.conf-dist %D/%%ETCDIR%%/nginx.conf; then rm -f %D/%%ETCDIR%%/nginx.conf; fi X%%ETCDIR%%/nginx.conf-dist X@exec if [ ! -f %D/%%ETCDIR%%/nginx.conf ] ; then cp -p %D/%F %B/nginx.conf; fi X@dirrmtry %%ETCDIR%% X%%WWWDATA%%@exec mkdir -p -m 755 www/nginx-dist X%%WWWDATA%%@exec if [ ! -d %D/www/nginx/ ] ; then ln -fs %D/www/nginx-dist %D/www/nginx; fi X%%WWWDATA%%www/nginx-dist/EXAMPLE_DIRECTORY-DONT_ADD_OR_TOUCH_ANYTHING X%%WWWDATA%%www/nginx-dist/index.html X%%WWWDATA%%www/nginx-dist/50x.html X%%WWWDATA%%@exec chmod a-w www/nginx-dist X%%WWWDATA%%@unexec if [ -L %D/www/nginx ]; then rm -f %D/www/nginx; fi X%%WWWDATA%%@dirrmtry www/nginx-dist Xsbin/nginx X@exec [ -d %%NGINX_TMPDIR%% ] || mkdir -p %%NGINX_TMPDIR%% X@exec chown %%WWWOWN%%:%%WWWGRP%% %%NGINX_TMPDIR%% X@unexec if [ -z ${UPGRADE_PORT} ] ; then rm -fr %%NGINX_TMPDIR%%; fi abd2877b1e482a34802fce2b5572e1f6 exit --- nginx.shar ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1PQHg3-000LoJ-66>