Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 May 2007 14:51:26 +0000 (UTC)
From:      valerio.daelli@gmail.com
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/112657: New port: haproxy 1.3.11 
Message-ID:  <20070514145127.0DE9413C45B@mx1.freebsd.org>
Resent-Message-ID: <200705141500.l4EF09qQ063875@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         112657
>Category:       ports
>Synopsis:       New port: haproxy 1.3.11
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Mon May 14 15:00:09 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Valerio Daelli
>Release:        FreeBSD 6.1-RELEASE-p15 i386
>Organization:
IFOM
>Environment:
System: FreeBSD spare.ifom-ieo-campus.it 6.1-RELEASE-p15 FreeBSD 6.1-RELEASE-p15 #5: Wed Apr 18 12:34:56 CEST 2007 root@spare.ifom-ieo-campus.it:/usr/obj/usr/src/sys/SPARE i386


	
>Description:
        Haproxy is a tool already in the ports tree. We built this update to the ports
        because we need some new features and we feel that the jump from haproxy 1.2
        and haproxy 1.3 is too big to happen in the same ports.
        Since it is so critical to some web farm we do not want to break nothing
        in this port.
	
>How-To-Repeat:
	
>Fix:

	

--- SHAR-HAPROXY 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:
#
#	haproxy/
#	haproxy/files
#	haproxy/files/haproxy.sh.in
#	haproxy/files/patch-Makefile.bsd
#	haproxy/Makefile
#	haproxy/distinfo
#	haproxy/pkg-descr
#	haproxy/pkg-message
#	haproxy/pkg-plist
#
echo c - haproxy/
mkdir -p haproxy/ > /dev/null 2>&1
echo c - haproxy/files
mkdir -p haproxy/files > /dev/null 2>&1
echo x - haproxy/files/haproxy.sh.in
sed 's/^X//' >haproxy/files/haproxy.sh.in << 'END-of-haproxy/files/haproxy.sh.in'
X#!/bin/sh
X#
X# $FreeBSD: ports/net/haproxy/files/haproxy.sh.in,v 1.1 2006/11/01 14:42:14 clement Exp $
X#
X
X# PROVIDE: haproxy
X# REQUIRE: NETWORKING SERVERS
X# BEFORE: DAEMON
X# KEYWORD: shutdown
X
X#
X# Add the following lines to /etc/rc.conf to enable haproxy:
X# haproxy_enable (bool):      Set to "NO" by default.
X#                             Set it to "YES" to enable haproxy
X# haproxylimits_enable (bool):Set to "NO" by default.
X#                             Set it to yes to run `limits $limits_args`
X#                             just before haproxy starts.
X# haproxy_flags (str):        Set to "" by default.
X#                             Extra flags passed to start command
X# haproxylimits_args (str):   Default to "-e -C daemon"
X#                             Arguments of pre-start limits run.
X#
X. %%RC_SUBR%%
X
Xname="haproxy"
Xrcvar=`set_rcvar`
X
Xcommand="%%PREFIX%%/sbin/haproxy"
Xpidfile="/var/run/haproxy.pid"
Xrequired_files=%%PREFIX%%/etc/haproxy.conf
X
X[ -z "$haproxy_enable" ]       && haproxy_enable="NO"
X[ -z "$haproxy_flags" ]        && haproxy_flags="-p ${pidfile} -f /usr/local/etc/haproxy.conf"
X[ -z "$haproxylimits_enable" ] && haproxylimits_enable="NO"
X[ -z "$haproxylimits_args" ]   && haproxylimits_args="-e -C daemon"
X
Xload_rc_config $name
X
Xcheckyesno haproxylimits_enable && \
X			start_precmd="eval `/usr/bin/limits ${haproxylimits_args}` 2>/dev/null"
X
Xsig_gracefulstop=SIGUSR1
X
Xhaproxy_gracefulstop() {
X	echo "Gracefully shutdown haproxy ($rc_pid)"
X	kill -${sig_gracefulstop} ${rc_pid}
X	}
X
Xextra_commands="gracefulstop"
Xrun_rc_command "$1"
END-of-haproxy/files/haproxy.sh.in
echo x - haproxy/files/patch-Makefile.bsd
sed 's/^X//' >haproxy/files/patch-Makefile.bsd << 'END-of-haproxy/files/patch-Makefile.bsd'
X--- Makefile.bsd.orig	Mon May 14 14:45:41 2007
X+++ Makefile.bsd	Mon May 14 14:50:28 2007
X@@ -16,16 +16,16 @@
X 
X # By default, we use libc's regex. WARNING! On Solaris 8/Sparc, group
X # references seem broken using libc ! Use pcre instead.
X-REGEX=libc
X+REGEX?=libc
X #REGEX=pcre
X #REGEX=static-pcre
X 
X # tools options
X-CC = gcc
X-LD = gcc
X+CC?= gcc
X+LD?= gcc
X 
X # This is the directory hosting include/pcre.h and lib/libpcre.* when REGEX=pcre
X-PCREDIR!= pcre-config --prefix 2>/dev/null || :
X+PCREDIR=${LOCALBASE}
X #PCREDIR=/usr/local
X 
X # This is for OpenBSD 3.0 and above
X@@ -52,7 +52,7 @@
X 
X # you can enable debug arguments with "DEBUG=-g" or disable them with "DEBUG="
X #DEBUG = -g -DDEBUG_MEMORY -DDEBUG_FULL
X-DEBUG = -g
X+#DEBUG = -g
X 
X # if small memory footprint is required, you can reduce the buffer size. There
X # are 2 buffers per concurrent session, so 16 kB buffers will eat 32 MB memory
X@@ -60,7 +60,7 @@
X # will avoid the additionnal paramters to overflow a page. 8030 bytes is
X # exactly 5.5 TCP segments of 1460 bytes.
X #SMALL_OPTS =
X-SMALL_OPTS = -DBUFSIZE=8030 -DMAXREWRITE=1030 -DSYSTEM_MAXCONN=1024
X+#SMALL_OPTS = -DBUFSIZE=8030 -DMAXREWRITE=1030 -DSYSTEM_MAXCONN=1024
X 
X # redefine this if you want to add some special PATH to include/libs
X ADDINC =
X@@ -69,7 +69,7 @@
X # set some defines when needed.
X # Known ones are -DENABLE_POLL
X # - use -DTPROXY to compile with transparent proxy support.
X-DEFINE = -DTPROXY
X+#DEFINE = -DTPROXY
X 
X # global options
X TARGET_OPTS=$(COPTS.$(TARGET))
X@@ -79,8 +79,8 @@
X COPTS=-Iinclude $(ADDINC) $(CPU_OPTS) $(TARGET_OPTS) $(REGEX_OPTS) $(SMALL_OPTS) $(DEFINE)
X LIBS=$(LIBS.$(TARGET)) $(LIBS.$(REGEX)) $(ADDLIB)
X 
X-CFLAGS = -Wall $(COPTS) $(DEBUG)
X-LDFLAGS = -g
X+CFLAGS+= -Wall $(COPTS) $(DEBUG)
X+LDFLAGS+= #-g /lib/crt0.o  -lc
X 
X OBJS = src/haproxy.o src/list.o src/chtbl.o src/hashpjw.o src/base64.o \
X        src/uri_auth.o src/standard.o src/buffers.o src/log.o src/task.o \
X@@ -93,7 +93,7 @@
X all: haproxy
X 
X haproxy: $(OBJS)
X-	$(LD) $(LDFLAGS) -o $@ $> $(LIBS)
X+	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $> $(LIBS)
X 
X .SUFFIXES: .c.o
X 
END-of-haproxy/files/patch-Makefile.bsd
echo x - haproxy/Makefile
sed 's/^X//' >haproxy/Makefile << 'END-of-haproxy/Makefile'
X# New ports collection Makefile for:	haproxy
X# Date created:				Apr 30, 2003
X# Whom:					Clement Laforet
X#
X# $FreeBSD: ports/net/haproxy/Makefile,v 1.18 2006/11/03 08:27:13 clement Exp $
X#
X
XPORTNAME=	haproxy
XPORTVERSION=	1.3.11
XPORTREVISION=	1
XCATEGORIES=	net www
XMASTER_SITES=	http://haproxy.1wt.eu/download/1.3/src/
X
XMAINTAINER=	clement@FreeBSD.org
XCOMMENT=	High-performance and highly-robust TCP/HTTP load balancer
X
XUSE_RC_SUBR=	haproxy.sh
X
XSTATS_INTERVAL?=	0
XCFLAGS+=	-DSTATTIME=${STATS_INTERVAL}
X
X.if defined(WITH_TPROXY)
XCFLAGS+=	-DTPROXY
X.endif
X
X.if defined(WITH_PCRE)
XPKGNAMESUFFIX=	-pcre
XLIB_DEPENDS+=	pcre.0:${PORTSDIR}/devel/pcre
XMAKE_ENV+=	"REGEX=pcre"
XCFLAGS+=	-DUSE_PCRE -I${LOCALBASE}/include
XLDFLAGS+=	-L${LOCALBASE}/lib -lpcreposix -lpcre
X.endif
X
X.if defined(WITH_SMALLOPTS)
XCFLAGS+=	-DBUFSIZE=8030 -DMAXREWRITE=1030 -DSYSTEM_MAXCONN=1024
X.endif
X
XMAKEFILE=	Makefile.bsd
X
Xpre-everything::
X	@${ECHO_MSG} ""
X	@${ECHO_MSG} "Available options:"
X	@${ECHO_MSG} "WITH_PCRE:            Use pcre regex engine"
X	@${ECHO_MSG} "WITH_TPROXY:         Enable Transparent proxy support"
X	@${ECHO_MSG} "WITH_SMALLOPTS:         Enable low memory footprint support"
X	@${ECHO_MSG} "STATS_INTERVAL=###:   Statistics interval in milliseconds,"
X	@${ECHO_MSG} "                         (default to 0, disabled)"
X	@${ECHO_MSG} ""
X
Xdo-install:
X	@${INSTALL_PROGRAM} ${WRKSRC}/haproxy ${PREFIX}/sbin
X.if !defined(NOPORTDOCS)
X	@${MKDIR} ${DOCSDIR}
X	@${MKDIR} ${EXAMPLESDIR}
X	@${INSTALL_DATA} ${WRKSRC}/doc/*.txt ${DOCSDIR}
X	@${INSTALL_DATA} ${WRKSRC}/doc/design-thoughts/* ${DOCSDIR}
X	@${INSTALL_DATA} ${WRKSRC}/doc/internals/* ${DOCSDIR}
X	@${INSTALL_DATA} ${WRKSRC}/examples/haproxy.cfg \
X			${EXAMPLESDIR}/haproxy.cfg
X.endif
X
Xpost-install:
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.mk>
END-of-haproxy/Makefile
echo x - haproxy/distinfo
sed 's/^X//' >haproxy/distinfo << 'END-of-haproxy/distinfo'
XMD5 (haproxy-1.3.11.tar.gz) = 5a298001830030c2fcdf829e8d3d2098
XSHA256 (haproxy-1.3.11.tar.gz) = c6f49063781a95811e004fe45680a64f5006205e551e55445375be31a6294d5d
XSIZE (haproxy-1.3.11.tar.gz) = 343212
END-of-haproxy/distinfo
echo x - haproxy/pkg-descr
sed 's/^X//' >haproxy/pkg-descr << 'END-of-haproxy/pkg-descr'
XHAproxy is a high-performance and highly-robust TCP/HTTP load balancer which 
Xprovides cookie-based persistence, automatic failover, header insertion, 
Xdeletion, modification on the fly, advanced logging contents to help trouble- 
Xshooting buggy applications and/or networks, and a few other features. It uses 
Xits own state machine to achieve up to ten thousands hits per second on modern 
Xhardware, even with thousands simultaneous connections.
X
XWWW: http://haproxy.1wt.eu/
END-of-haproxy/pkg-descr
echo x - haproxy/pkg-message
sed 's/^X//' >haproxy/pkg-message << 'END-of-haproxy/pkg-message'
X===>  BE CAREFULL HOW TO BOOT on 1.1.28 or after:
X	To run haproxy from startup, add haproxy_enable="YES" in your
X	/etc/rc.conf.
END-of-haproxy/pkg-message
echo x - haproxy/pkg-plist
sed 's/^X//' >haproxy/pkg-plist << 'END-of-haproxy/pkg-plist'
Xsbin/haproxy
X%%PORTDOCS%%%%DOCSDIR%%/architecture.txt
X%%PORTDOCS%%%%DOCSDIR%%/haproxy-en.txt
X%%PORTDOCS%%%%DOCSDIR%%/haproxy-fr.txt
X%%PORTDOCS%%%%EXAMPLESDIR%%/haproxy.cfg
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
X%%PORTDOCS%%@dirrm %%EXAMPLESDIR%%
END-of-haproxy/pkg-plist
exit
--- SHAR-HAPROXY ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070514145127.0DE9413C45B>