From owner-svn-ports-all@freebsd.org Mon Oct 24 15:16:53 2016 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 266C0C1F1DF; Mon, 24 Oct 2016 15:16:53 +0000 (UTC) (envelope-from feld@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EBD32399; Mon, 24 Oct 2016 15:16:52 +0000 (UTC) (envelope-from feld@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u9OFGqiA078588; Mon, 24 Oct 2016 15:16:52 GMT (envelope-from feld@FreeBSD.org) Received: (from feld@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u9OFGpEo078578; Mon, 24 Oct 2016 15:16:51 GMT (envelope-from feld@FreeBSD.org) Message-Id: <201610241516.u9OFGpEo078578@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: feld set sender to feld@FreeBSD.org using -f From: Mark Felder Date: Mon, 24 Oct 2016 15:16:51 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r424573 - in head/www: . varnish5 varnish5/files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 Oct 2016 15:16:53 -0000 Author: feld Date: Mon Oct 24 15:16:51 2016 New Revision: 424573 URL: https://svnweb.freebsd.org/changeset/ports/424573 Log: This is the Varnish high-performance HTTP accelerator. Documentation and additional information about Varnish is available on http://varnish-cache.org/docs/index.html Technical questions about Varnish and this release should be addressed to Questions about commercial support and services related to Varnish can be directed here: https://www.varnish-software.com/contact-us WWW: http://www.varnish-cache.org/ Added: head/www/varnish5/ head/www/varnish5/Makefile (contents, props changed) head/www/varnish5/distinfo (contents, props changed) head/www/varnish5/files/ head/www/varnish5/files/no-inet6.patch (contents, props changed) head/www/varnish5/files/varnishd.in (contents, props changed) head/www/varnish5/files/varnishlog.in (contents, props changed) head/www/varnish5/files/varnishncsa.in (contents, props changed) head/www/varnish5/pkg-descr (contents, props changed) head/www/varnish5/pkg-message (contents, props changed) head/www/varnish5/pkg-plist (contents, props changed) Modified: head/www/Makefile Modified: head/www/Makefile ============================================================================== --- head/www/Makefile Mon Oct 24 15:06:13 2016 (r424572) +++ head/www/Makefile Mon Oct 24 15:16:51 2016 (r424573) @@ -2273,6 +2273,7 @@ SUBDIR += varnish-modules SUBDIR += varnish-nagios SUBDIR += varnish4 + SUBDIR += varnish5 SUBDIR += vdr-plugin-live SUBDIR += vdradmin-am SUBDIR += vee Added: head/www/varnish5/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/Makefile Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,50 @@ +# $FreeBSD$ + +PORTNAME= varnish +PORTVERSION= 5.0.0 +PORTREVISION= 0 +CATEGORIES= www +MASTER_SITES= http://repo.varnish-cache.org/source/ +PKGNAMESUFFIX= 5 + +MAINTAINER= feld@FreeBSD.org +COMMENT= High-performance HTTP accelerator + +LICENSE= BSD2CLAUSE + +LIB_DEPENDS= libpcre.so:devel/pcre + +CONFLICTS= varnish-2.* varnish-3.* +BROKEN_arm= does not configure + +USES= autoreconf cpe gmake libedit libtool pkgconfig python:2,build \ + readline shebangfix +SHEBANG_FILES= lib/libvcc/vmodtool.py +CPE_VENDOR= varnish-cache +CFLAGS+= -I${LOCALBASE}/include +GNU_CONFIGURE= yes +CONFIGURE_ARGS= --localstatedir=${PREFIX} --enable-tests +CONFIGURE_ENV= RST2MAN=true +USE_LDCONFIG= yes +INSTALL_TARGET= install-strip + +USERS= varnish varnishlog +GROUPS= varnish + +USE_RC_SUBR= varnishd varnishlog varnishncsa +.if defined(NO_INET6) || defined(WITHOUT_INET6) +BAD_TESTS+= r00832 +EXTRA_PATCHES+= ${FILESDIR}/no-inet6.patch +.endif + +post-patch: + @${REINPLACE_CMD} -e 's|\$$(libdir)/pkgconfig|\$$(prefix)/libdata/pkgconfig|' \ + ${WRKSRC}/Makefile.am +.if defined(BAD_TESTS) + ${RM} -f ${BAD_TESTS:C|.+|${WRKSRC}/bin/varnishtest/tests/\0.vtc|} +.endif + +regression-test check test: build + ${MAKE_CMD} TESTS_PARALLELISM=1 -C ${WRKSRC} check + +.include Added: head/www/varnish5/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/distinfo Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,3 @@ +TIMESTAMP = 1477321913 +SHA256 (varnish-5.0.0.tar.gz) = 5101ad72b29d288a07e2e5ded4c2abe850b70ff000c13ceb1764625e83823f4a +SIZE (varnish-5.0.0.tar.gz) = 2472963 Added: head/www/varnish5/files/no-inet6.patch ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/files/no-inet6.patch Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,8 @@ +--- bin/varnishtest/tests/c00005.vtc 2012-08-20 05:20:39.000000000 -0400 ++++ bin/varnishtest/tests/c00005.vtc 2012-09-26 12:09:59.000000000 -0400 +@@ -32,5 +32,4 @@ + ! "localhost"; + "0.0.0.0" / 0; +- "::" / 0; + } + Added: head/www/varnish5/files/varnishd.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/files/varnishd.in Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,128 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: varnishd +# REQUIRE: DAEMON +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable varnishd: +# +# varnishd_enable="YES" +# +# Configuration variables and their default values: +# +# varnishd_pidfile - full path to the PID file. +# default: "/var/run/varnishd.pid" +# +# varnishd_listen - address and port at which varnishd will listen for +# client requests. +# default: ":80" +# +# varnishd_admin - address and port at which varnishd will listen for +# administrative commands. +# default: "localhost:81" +# +# varnishd_backend - address of the backend server. +# default: "localhost:8080" +# +# varnishd_config - name of the varnishd config file. +# default: unset. +# +# varnishd_hash - hash algorithm +# default: "classic,16383" +# +# varnishd_storage - storage method and parameters. +# default: "file,/tmp,100M" +# +# varnishd_jailuser - unprivileged user for the child process. +# default: "varnish" +# +# varnishd_flags - complete command line arguments. +# default if varnishd_config is unset: "-j unix,user=${varnishd_jailuser} -P ${varnishd_pidfile} -a ${varnishd_listen} -T ${varnishd_admin} -b ${varnishd_backend} -s ${varnishd_storage} -h ${varnishd_hash} ${varnishd_extra_flags}" +# default if varnishd_config is set: "-j unix,user=${varnishd_jailuser} -P ${varnishd_pidfile} -a ${varnishd_listen} -T ${varnishd_admin} -f ${varnishd_config} -s ${varnishd_storage} -h ${varnishd_hash} ${varnishd_extra_flags}" +# +# See varnishd(1) for a detailed overview of command-line options. +# + +. /etc/rc.subr + +name=varnishd +rcvar=varnishd_enable + +load_rc_config ${name} + +: ${varnishd_enable:=NO} +: ${varnishd_pidfile=/var/run/${name}.pid} +: ${varnishd_listen=:80} +: ${varnishd_admin=localhost:81} +: ${varnishd_backend=localhost:8080} +: ${varnishd_storage=file,/tmp,100M} +: ${varnishd_hash=classic,16383} +: ${varnishd_jailuser=varnish} + +command="%%PREFIX%%/sbin/${name}" +pidfile="${varnishd_pidfile}" +configtest_cmd="varnishd_checkconfig" +reload_cmd="varnishd_reload" +restart_precmd="varnishd_checkconfig" +start_precmd="varnishd_precmd" +extra_commands="status reload configtest" + +if [ -n "${varnishd_config}" ] ; then + : ${varnishd_flags:="-j unix,user=${varnishd_jailuser} -P ${varnishd_pidfile} -a ${varnishd_listen} -T ${varnishd_admin} -f ${varnishd_config} -s ${varnishd_storage} -h ${varnishd_hash} ${varnishd_extra_flags}"} +else + : ${varnishd_flags:="-j unix,user=${varnishd_jailuser} -P ${varnishd_pidfile} -a ${varnishd_listen} -T ${varnishd_admin} -b ${varnishd_backend} -s ${varnishd_storage} -h ${varnishd_hash} ${varnishd_extra_flags}"} +fi + +varnishd_checkconfig() +{ + if [ -z "${varnishd_config}" ]; then + echo "${name}: nothing to check, no configuration file defined, builtin VCL used" + else + echo "Performing sanity check on ${name} configuration:" + if eval ${command} -C -f "${varnishd_config}" 2> /dev/null ; then + echo "${name}: the configuration file ${varnishd_config} syntax is ok" + else + err 1 "${name}: the configuration file ${varnishd_config} syntax is NOT ok" + fi + fi +} + +# Adapted from work done by Ingvar Hagelund (see redhat/varnish_reload_vcl) +varnishd_reload() +{ + local _current_config_name _new_config_name _varnishadm_cmd + + if [ -z "${varnishd_config}" ]; then + echo "${name}: nothing to reload, no configuration file defined, builtin VCL used" + else + _new_config_name="rc.d_reloaded@$(date +%Y%m%d%H%M%S)" + _varnishadm_cmd="%%PREFIX%%/bin/varnishadm ${varnish_cli_flags}" + if ! eval ${_varnishadm_cmd} vcl.list > /dev/null; then + err 1 "${name}: can't connect to varnishadm" + fi + _current_config_name=$(${_varnishadm_cmd} vcl.list | awk ' /^active/ { print $3 } ') + if ! eval ${_varnishadm_cmd} vcl.load ${_new_config_name} ${varnishd_config} > /dev/null; then + err 1 "${name}: vcl.load failed, you're still using previous rules (${_current_config_name})" + fi + if eval ${_varnishadm_cmd} vcl.use ${_new_config_name} > /dev/null; then + echo "VCL file \"${varnishd_config}\" has been successfully loaded as \"${_new_config_name}\"" + echo "To remove previous loaded configurations, you should run \"${_varnishadm_cmd} vcl.discard \" by yourself" + else + err 1 "${name}: vcl.use failed, you're still using previous rules (${_current_config_name})" + fi + fi + + return 0 +} + +varnishd_precmd() +{ + # Check config before starting + varnishd_checkconfig +} + +run_rc_command "$1" Added: head/www/varnish5/files/varnishlog.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/files/varnishlog.in Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,65 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: varnishlog +# REQUIRE: DAEMON varnishd +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable varnishlog: +# +# varnishlog_enable="YES" +# +# Configuration variables and their default values: +# +# varnishlog_pidfile - full path to the PID file. +# default: "/var/run/varnishlog.pid" +# +# varnishlog_file - full path to the log file. +# default: "/var/log/varnish.log" +# +# varnishlog_flags - command line arguments. +# default: "-t off -P ${varnishlog_pidfile} -D -a -A -w ${varnishlog_file}" +# +# Add the following line to /etc/newsyslog.conf to rotate the log file +# once a day: +# +# /var/log/varnish.log varnishlog:varnish 640 7 * @T00 JB /var/run/varnishlog.pid +# +# See varnishlog(1) for a detailed overview of command-line options. +# + +. /etc/rc.subr + +name=varnishlog +rcvar=varnishlog_enable + +load_rc_config ${name} +: ${varnishlog_enable:=NO} +: ${varnishlog_pidfile=/var/run/${name}.pid} +: ${varnishlog_file=/var/log/varnish.log} +: ${varnishlog_flags="-t off -P ${varnishlog_pidfile} -D -a -A -w ${varnishlog_file}"} + +procname="%%PREFIX%%/bin/${name}" +command="/usr/sbin/daemon" +command_args="-f -u varnishlog ${procname} ${varnishlog_flags}" +pidfile=${varnishlog_pidfile} +start_precmd=precmd + +precmd() +{ + # varnishlog_flags gets applied too early if we don't do this. + rc_flags="" + + if [ ! -e ${pidfile} ]; then + install -o varnishlog -g varnish -m 644 /dev/null ${pidfile}; + fi + + if [ ! -e ${varnishlog_file} ]; then + install -o varnishlog -g varnish -m 640 /dev/null ${varnishlog_file}; + fi +} + +run_rc_command "$1" Added: head/www/varnish5/files/varnishncsa.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/files/varnishncsa.in Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,70 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: varnishncsa +# REQUIRE: DAEMON varnishd +# KEYWORD: shutdown + +# +# Add the following line to /etc/rc.conf to enable varnishncsa: +# +# varnishncsa_enable="YES" +# +# Configuration variables and their default values: +# +# varnishncsa_pidfile - full path to the PID file. +# default: "/var/run/varnishncsa.pid" +# +# varnishncsa_file - full path to the log file. +# default: "/var/log/varnishncsa.log" +# +# varnishncsa_flags - command line arguments. +# default: "-t off -P ${varnishncsa_pidfile} -D -a -w ${varnishncsa_file}${varnishncsa_logformat:+ -F \"$varnishncsa_logformat\"}" +# +# varnishncsa_logformat - log file format. +# default: "" (uses varnishncsa's default format) +# example: "%h %l %u %t %r %s %b %{Referer}i %{User-agent}i" +# +# Add the following line to /etc/newsyslog.conf to rotate the log file +# once a day: +# +# /var/log/varnishncsa.log varnishlog:varnish 640 7 * @T00 JB /var/run/varnishncsa.pid +# +# See varnishncsa(1) for a detailed overview of command-line options. +# + +. /etc/rc.subr + +name=varnishncsa +rcvar=varnishncsa_enable + +load_rc_config ${name} + +: ${varnishncsa_enable:=NO} +: ${varnishncsa_pidfile=/var/run/${name}.pid} +: ${varnishncsa_file=/var/log/${name}.log} +: ${varnishncsa_flags="-t off -P ${varnishncsa_pidfile} -D -a -w ${varnishncsa_file} ${varnishncsa_logformat:+-F \"$varnishncsa_logformat\"}"} + +procname="%%PREFIX%%/bin/${name}" +command="/usr/sbin/daemon" +command_args="-f -u varnishlog ${procname} ${varnishncsa_flags}" +pidfile=${varnishncsa_pidfile} +start_precmd=precmd + +precmd() +{ + # $varnishncsa_flags gets applied too early if we don't do this. + rc_flags="" + + if [ ! -e ${pidfile} ]; then + install -o varnishlog -g varnish -m 644 /dev/null ${pidfile}; + fi + + if [ ! -e ${varnishncsa_file} ]; then + install -o varnishlog -g varnish -m 640 /dev/null ${varnishncsa_file}; + fi +} + +run_rc_command "$1" Added: head/www/varnish5/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/pkg-descr Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,12 @@ +This is the Varnish high-performance HTTP accelerator. + +Documentation and additional information about Varnish is available on +http://varnish-cache.org/docs/index.html + +Technical questions about Varnish and this release should be addressed +to + +Questions about commercial support and services related to Varnish +can be directed here: https://www.varnish-software.com/contact-us + +WWW: http://www.varnish-cache.org/ Added: head/www/varnish5/pkg-message ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/pkg-message Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,12 @@ +QUICK-START GUIDE + +It's two in the morning and someone posted a link to your website on +slashdot. Don't panic, it takes only a minute to set up Varnish in +front of your web server: + +1) Install Varnish +2) Reconfigure your web server to listen on localhost:8080 +3) sysrc varnishd_enable=YES +4) service varnishd start + +Refer to the documentation for more advanced configuration. Added: head/www/varnish5/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/www/varnish5/pkg-plist Mon Oct 24 15:16:51 2016 (r424573) @@ -0,0 +1,117 @@ +bin/varnishadm +bin/varnishhist +bin/varnishlog +bin/varnishncsa +bin/varnishstat +bin/varnishtest +bin/varnishtop +include/varnish/cache/cache.h +include/varnish/cache/cache_backend.h +include/varnish/cache/cache_director.h +include/varnish/cache/cache_filter.h +include/varnish/common/common.h +include/varnish/common/params.h +include/varnish/miniobj.h +include/varnish/tbl/acct_fields_bereq.h +include/varnish/tbl/acct_fields_req.h +include/varnish/tbl/backend_poll.h +include/varnish/tbl/ban_vars.h +include/varnish/tbl/bo_flags.h +include/varnish/tbl/boc_state.h +include/varnish/tbl/body_status.h +include/varnish/tbl/cli_cmds.h +include/varnish/tbl/debug_bits.h +include/varnish/tbl/feature_bits.h +include/varnish/tbl/h2_error.h +include/varnish/tbl/h2_frames.h +include/varnish/tbl/h2_settings.h +include/varnish/tbl/h2_stream.h +include/varnish/tbl/http_headers.h +include/varnish/tbl/http_response.h +include/varnish/tbl/locks.h +include/varnish/tbl/obj_attr.h +include/varnish/tbl/oc_exp_flags.h +include/varnish/tbl/oc_flags.h +include/varnish/tbl/params.h +include/varnish/tbl/req_body.h +include/varnish/tbl/req_flags.h +include/varnish/tbl/sess_attr.h +include/varnish/tbl/sess_close.h +include/varnish/tbl/steps.h +include/varnish/tbl/symbol_kind.h +include/varnish/tbl/vcc_types.h +include/varnish/tbl/vcl_returns.h +include/varnish/tbl/vhd_fsm.h +include/varnish/tbl/vhd_fsm_funcs.h +include/varnish/tbl/vhd_return.h +include/varnish/tbl/vhp_huffman.h +include/varnish/tbl/vhp_static.h +include/varnish/tbl/vrt_stv_var.h +include/varnish/tbl/vsc_all.h +include/varnish/tbl/vsc_f_main.h +include/varnish/tbl/vsc_fields.h +include/varnish/tbl/vsc_levels.h +include/varnish/tbl/vsc_types.h +include/varnish/tbl/vsl_tags.h +include/varnish/tbl/vsl_tags_http.h +include/varnish/vapi/vapi_options.h +include/varnish/vapi/voptget.h +include/varnish/vapi/vsc.h +include/varnish/vapi/vsc_int.h +include/varnish/vapi/vsl.h +include/varnish/vapi/vsl_int.h +include/varnish/vapi/vsm.h +include/varnish/vapi/vsm_int.h +include/varnish/vas.h +include/varnish/vav.h +include/varnish/vbm.h +include/varnish/vcl.h +include/varnish/vcli.h +include/varnish/vcs.h +include/varnish/vdef.h +include/varnish/vmod_abi.h +include/varnish/vqueue.h +include/varnish/vre.h +include/varnish/vrnd.h +include/varnish/vrt.h +include/varnish/vrt_obj.h +include/varnish/vsa.h +include/varnish/vsb.h +include/varnish/vsha256.h +include/varnish/vtcp.h +include/varnish/vtim.h +include/varnish/waiter/waiter.h +lib/libvarnishapi.so +lib/libvarnishapi.so.1 +lib/libvarnishapi.so.1.0.4 +lib/varnish/libvarnish.so +lib/varnish/libvarnishcompat.so +lib/varnish/libvcc.so +lib/varnish/libvgz.so +lib/varnish/vmods/libvmod_directors.so +lib/varnish/vmods/libvmod_std.so +libdata/pkgconfig/varnishapi.pc +man/man1/varnishadm.1.gz +man/man1/varnishd.1.gz +man/man1/varnishhist.1.gz +man/man1/varnishlog.1.gz +man/man1/varnishncsa.1.gz +man/man1/varnishstat.1.gz +man/man1/varnishtest.1.gz +man/man1/varnishtop.1.gz +man/man3/vmod_directors.3.gz +man/man3/vmod_std.3.gz +man/man7/varnish-cli.7.gz +man/man7/varnish-counters.7.gz +man/man7/vcl.7.gz +man/man7/vsl-query.7.gz +man/man7/vsl.7.gz +man/man7/vtc.7.gz +sbin/varnishd +share/aclocal/varnish-legacy.m4 +share/aclocal/varnish.m4 +%%PORTDOCS%%%%DOCSDIR%%/builtin.vcl +%%PORTDOCS%%%%DOCSDIR%%/example.vcl +%%DATADIR%%/vcl/devicedetect.vcl +%%DATADIR%%/vmodtool.py +@dir varnish