summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwill <will@FreeBSD.org>2003-06-03 05:20:23 +0000
committerwill <will@FreeBSD.org>2003-06-03 05:20:23 +0000
commit82d467da2f6cf2ddcd2104559b6fc432a3b9b46e (patch)
tree40f33cda916030bf3c7cc0d39f30ae6043ba3660
parentf84ec03350b7c4c9619d960f89af4983a6c1e4bc (diff)
downloadFreeBSD-ports-82d467da2f6cf2ddcd2104559b6fc432a3b9b46e.zip
FreeBSD-ports-82d467da2f6cf2ddcd2104559b6fc432a3b9b46e.tar.gz
Add haproxy 1.1.20, a high-performance and highly-robust
TCP/HTTP load balancer. PR: 51630 Submitted by: Clement Laforet
-rw-r--r--net/Makefile1
-rw-r--r--net/haproxy-devel/Makefile36
-rw-r--r--net/haproxy-devel/distinfo1
-rw-r--r--net/haproxy-devel/files/haproxy.sh22
-rw-r--r--net/haproxy-devel/files/patch-Makefile61
-rw-r--r--net/haproxy-devel/pkg-descr9
-rw-r--r--net/haproxy-devel/pkg-plist3
-rw-r--r--net/haproxy/Makefile36
-rw-r--r--net/haproxy/distinfo1
-rw-r--r--net/haproxy/files/haproxy.sh22
-rw-r--r--net/haproxy/files/patch-Makefile61
-rw-r--r--net/haproxy/pkg-descr9
-rw-r--r--net/haproxy/pkg-plist3
13 files changed, 265 insertions, 0 deletions
diff --git a/net/Makefile b/net/Makefile
index 2032510..d74503b 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -204,6 +204,7 @@
SUBDIR += gutenfetch
SUBDIR += h2n
SUBDIR += hagelslag
+ SUBDIR += haproxy
SUBDIR += hawk
SUBDIR += hesiod
SUBDIR += hinfo
diff --git a/net/haproxy-devel/Makefile b/net/haproxy-devel/Makefile
new file mode 100644
index 0000000..0a91200
--- /dev/null
+++ b/net/haproxy-devel/Makefile
@@ -0,0 +1,36 @@
+# New ports collection Makefile for: haproxy
+# Date created: Apr 30, 2003
+# Whom: Clement Laforet
+#
+# $FreeBSD$
+#
+
+PORTNAME= haproxy
+PORTVERSION= 1.1.20
+PORTREVISION= 0
+CATEGORIES= net www
+MASTER_SITES= http://w.ods.org/tools/haproxy/ \
+ http://w.ods.org/tools/haproxy/old/
+
+MAINTAINER= sheepkiller@cultdeadsheep.org
+COMMENT= High-performance and highly-robust TCP/HTTP load balancer
+
+STATS_INTERVAL= 0
+REGEX_TYPE?= libc
+
+MAKE_ENV+= REGEX=${REGEX_TYPE} INTERVAL=${STATS_INTERVAL}
+
+.if defined(WITH_PCRE)
+REGEX_TYPE= pcre
+PKGNAMESUFFIX= -pcre
+LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre
+.endif
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/haproxy ${PREFIX}/sbin
+ ${INSTALL_DATA} ${WRKSRC}/examples/haproxy.cfg \
+ ${PREFIX}/etc/haproxy.cfg.sample
+ ${INSTALL_SCRIPT} ${FILESDIR}/haproxy.sh \
+ ${PREFIX}/etc/rc.d/haproxy.sh.sample
+
+.include <bsd.port.mk>
diff --git a/net/haproxy-devel/distinfo b/net/haproxy-devel/distinfo
new file mode 100644
index 0000000..f60fa7f
--- /dev/null
+++ b/net/haproxy-devel/distinfo
@@ -0,0 +1 @@
+MD5 (haproxy-1.1.20.tar.gz) = 0017b1fac1a61c3daccc504000edc4f2
diff --git a/net/haproxy-devel/files/haproxy.sh b/net/haproxy-devel/files/haproxy.sh
new file mode 100644
index 0000000..e51b6a8
--- /dev/null
+++ b/net/haproxy-devel/files/haproxy.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+case "$1" in
+ start)
+ [ -x ${PREFIX}/sbin/haproxy ] && \
+ [ -r ${PREFIX}/etc/haproxy.cfg ] && \
+ ${PREFIX}/sbin/haproxy -f ${PREFIX}/etc/haproxy.cfg && \
+ echo -n ' haproxy'
+
+ ;;
+ stop)
+ killall haproxy && echo -n ' haproxy'
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
diff --git a/net/haproxy-devel/files/patch-Makefile b/net/haproxy-devel/files/patch-Makefile
new file mode 100644
index 0000000..682befb
--- /dev/null
+++ b/net/haproxy-devel/files/patch-Makefile
@@ -0,0 +1,61 @@
+--- Makefile.orig Wed Apr 16 21:43:09 2003
++++ Makefile Wed Apr 30 17:07:18 2003
+@@ -1,22 +1,18 @@
+ # Select target OS. TARGET must match a system for which COPTS and LIBS are
+ # correctly defined below.
+ # You can set it on make's command line. eg: make TARGET=solaris
+-TARGET = linux24
++#TARGET = linux24
+ #TARGET = linux22
+ #TARGET = solaris
+ #TARGET = solarisv9
+-#TARGET = openbsd
+-
+-CC = gcc
+-LD = gcc
++TARGET = openbsd
+
+ # By default, we use libc's regex.
+-REGEX=libc
+ #REGEX=pcre
+
+ # This is the directory hosting include/pcre.h and lib/libpcre.* when REGEX=pcre
+-PCREDIR := $(shell pcre-config --prefix 2>/dev/null)
+-#PCREDIR=/usr/local
++#PCREDIR := $(shell pcre-config --prefix 2>/dev/null)
++PCREDIR=${LOCALBASE}
+
+ # This is for Linux 2.4 with netfilter
+ COPTS.linux24 = -O2 -DNETFILTER
+@@ -44,8 +40,8 @@
+ COPTS.pcre=-DUSE_PCRE -I$(PCREDIR)/include
+ LIBS.pcre=-L$(PCREDIR)/lib -lpcreposix -lpcre
+
+-#DEBUG =
+-DEBUG = -g
++DEBUG =
++#DEBUG = -g
+
+ COPTS=$(COPTS.$(TARGET)) $(COPTS.$(REGEX))
+ LIBS=$(LIBS.$(TARGET)) $(LIBS.$(REGEX))
+@@ -53,16 +49,13 @@
+ # - use -DSTATTIME=0 to disable statistics, else specify an interval in
+ # milliseconds.
+ # - use -DTPROXY to compile with transparent proxy support.
+-CFLAGS = -Wall $(COPTS) $(DEBUG) -DSTATTIME=0 -DTPROXY
+-LDFLAGS = -g
++CFLAGS+= -Wall $(COPTS) $(DEBUG) -DSTATTIME=$(INTERVAL)
++LDFLAGS+=
+
+ all: haproxy
+
+-haproxy: haproxy.o
+- $(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
+-
+-%.o: %.c
+- $(CC) $(CFLAGS) -c -o $@ $<
++haproxy:
++ $(CC) $(CFLAGS) haproxy.c $(LIBS) $(LDFLAGS) -o haproxy
+
+ clean:
+ rm -f *.[oas] *~ core haproxy test nohup.out gmon.out
diff --git a/net/haproxy-devel/pkg-descr b/net/haproxy-devel/pkg-descr
new file mode 100644
index 0000000..fa6780f
--- /dev/null
+++ b/net/haproxy-devel/pkg-descr
@@ -0,0 +1,9 @@
+HAproxy is a high-performance and highly-robust TCP/HTTP load balancer which
+provides cookie-based persistence, automatic failover, header insertion,
+deletion, modification on the fly, advanced logging contents to help trouble-
+shooting buggy applications and/or networks, and a few other features. It uses
+its own state machine to achieve up to ten thousands hits per second on modern
+hardware, even with thousands simultaneous connections. It currently lacks SSL
+and keep-alive, both of which are planned.
+
+WWW: http://w.ods.org/tools/haproxy/
diff --git a/net/haproxy-devel/pkg-plist b/net/haproxy-devel/pkg-plist
new file mode 100644
index 0000000..0688906
--- /dev/null
+++ b/net/haproxy-devel/pkg-plist
@@ -0,0 +1,3 @@
+sbin/haproxy
+etc/haproxy.cfg.sample
+etc/rc.d/haproxy.sh.sample
diff --git a/net/haproxy/Makefile b/net/haproxy/Makefile
new file mode 100644
index 0000000..0a91200
--- /dev/null
+++ b/net/haproxy/Makefile
@@ -0,0 +1,36 @@
+# New ports collection Makefile for: haproxy
+# Date created: Apr 30, 2003
+# Whom: Clement Laforet
+#
+# $FreeBSD$
+#
+
+PORTNAME= haproxy
+PORTVERSION= 1.1.20
+PORTREVISION= 0
+CATEGORIES= net www
+MASTER_SITES= http://w.ods.org/tools/haproxy/ \
+ http://w.ods.org/tools/haproxy/old/
+
+MAINTAINER= sheepkiller@cultdeadsheep.org
+COMMENT= High-performance and highly-robust TCP/HTTP load balancer
+
+STATS_INTERVAL= 0
+REGEX_TYPE?= libc
+
+MAKE_ENV+= REGEX=${REGEX_TYPE} INTERVAL=${STATS_INTERVAL}
+
+.if defined(WITH_PCRE)
+REGEX_TYPE= pcre
+PKGNAMESUFFIX= -pcre
+LIB_DEPENDS+= pcre.0:${PORTSDIR}/devel/pcre
+.endif
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/haproxy ${PREFIX}/sbin
+ ${INSTALL_DATA} ${WRKSRC}/examples/haproxy.cfg \
+ ${PREFIX}/etc/haproxy.cfg.sample
+ ${INSTALL_SCRIPT} ${FILESDIR}/haproxy.sh \
+ ${PREFIX}/etc/rc.d/haproxy.sh.sample
+
+.include <bsd.port.mk>
diff --git a/net/haproxy/distinfo b/net/haproxy/distinfo
new file mode 100644
index 0000000..f60fa7f
--- /dev/null
+++ b/net/haproxy/distinfo
@@ -0,0 +1 @@
+MD5 (haproxy-1.1.20.tar.gz) = 0017b1fac1a61c3daccc504000edc4f2
diff --git a/net/haproxy/files/haproxy.sh b/net/haproxy/files/haproxy.sh
new file mode 100644
index 0000000..e51b6a8
--- /dev/null
+++ b/net/haproxy/files/haproxy.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+if ! PREFIX=$(expr $0 : "\(/.*\)/etc/rc\.d/$(basename $0)\$"); then
+ echo "$0: Cannot determine the PREFIX" >&2
+ exit 1
+fi
+
+case "$1" in
+ start)
+ [ -x ${PREFIX}/sbin/haproxy ] && \
+ [ -r ${PREFIX}/etc/haproxy.cfg ] && \
+ ${PREFIX}/sbin/haproxy -f ${PREFIX}/etc/haproxy.cfg && \
+ echo -n ' haproxy'
+
+ ;;
+ stop)
+ killall haproxy && echo -n ' haproxy'
+ ;;
+ *)
+ echo "Usage: `basename $0` {start|stop}" >&2
+ ;;
+esac
diff --git a/net/haproxy/files/patch-Makefile b/net/haproxy/files/patch-Makefile
new file mode 100644
index 0000000..682befb
--- /dev/null
+++ b/net/haproxy/files/patch-Makefile
@@ -0,0 +1,61 @@
+--- Makefile.orig Wed Apr 16 21:43:09 2003
++++ Makefile Wed Apr 30 17:07:18 2003
+@@ -1,22 +1,18 @@
+ # Select target OS. TARGET must match a system for which COPTS and LIBS are
+ # correctly defined below.
+ # You can set it on make's command line. eg: make TARGET=solaris
+-TARGET = linux24
++#TARGET = linux24
+ #TARGET = linux22
+ #TARGET = solaris
+ #TARGET = solarisv9
+-#TARGET = openbsd
+-
+-CC = gcc
+-LD = gcc
++TARGET = openbsd
+
+ # By default, we use libc's regex.
+-REGEX=libc
+ #REGEX=pcre
+
+ # This is the directory hosting include/pcre.h and lib/libpcre.* when REGEX=pcre
+-PCREDIR := $(shell pcre-config --prefix 2>/dev/null)
+-#PCREDIR=/usr/local
++#PCREDIR := $(shell pcre-config --prefix 2>/dev/null)
++PCREDIR=${LOCALBASE}
+
+ # This is for Linux 2.4 with netfilter
+ COPTS.linux24 = -O2 -DNETFILTER
+@@ -44,8 +40,8 @@
+ COPTS.pcre=-DUSE_PCRE -I$(PCREDIR)/include
+ LIBS.pcre=-L$(PCREDIR)/lib -lpcreposix -lpcre
+
+-#DEBUG =
+-DEBUG = -g
++DEBUG =
++#DEBUG = -g
+
+ COPTS=$(COPTS.$(TARGET)) $(COPTS.$(REGEX))
+ LIBS=$(LIBS.$(TARGET)) $(LIBS.$(REGEX))
+@@ -53,16 +49,13 @@
+ # - use -DSTATTIME=0 to disable statistics, else specify an interval in
+ # milliseconds.
+ # - use -DTPROXY to compile with transparent proxy support.
+-CFLAGS = -Wall $(COPTS) $(DEBUG) -DSTATTIME=0 -DTPROXY
+-LDFLAGS = -g
++CFLAGS+= -Wall $(COPTS) $(DEBUG) -DSTATTIME=$(INTERVAL)
++LDFLAGS+=
+
+ all: haproxy
+
+-haproxy: haproxy.o
+- $(LD) $(LDFLAGS) -o $@ $^ $(LIBS)
+-
+-%.o: %.c
+- $(CC) $(CFLAGS) -c -o $@ $<
++haproxy:
++ $(CC) $(CFLAGS) haproxy.c $(LIBS) $(LDFLAGS) -o haproxy
+
+ clean:
+ rm -f *.[oas] *~ core haproxy test nohup.out gmon.out
diff --git a/net/haproxy/pkg-descr b/net/haproxy/pkg-descr
new file mode 100644
index 0000000..fa6780f
--- /dev/null
+++ b/net/haproxy/pkg-descr
@@ -0,0 +1,9 @@
+HAproxy is a high-performance and highly-robust TCP/HTTP load balancer which
+provides cookie-based persistence, automatic failover, header insertion,
+deletion, modification on the fly, advanced logging contents to help trouble-
+shooting buggy applications and/or networks, and a few other features. It uses
+its own state machine to achieve up to ten thousands hits per second on modern
+hardware, even with thousands simultaneous connections. It currently lacks SSL
+and keep-alive, both of which are planned.
+
+WWW: http://w.ods.org/tools/haproxy/
diff --git a/net/haproxy/pkg-plist b/net/haproxy/pkg-plist
new file mode 100644
index 0000000..0688906
--- /dev/null
+++ b/net/haproxy/pkg-plist
@@ -0,0 +1,3 @@
+sbin/haproxy
+etc/haproxy.cfg.sample
+etc/rc.d/haproxy.sh.sample
OpenPOWER on IntegriCloud