summaryrefslogtreecommitdiff
path: root/www
diff options
context:
space:
mode:
authormorr <morr@pkgsrc.org>2011-10-31 10:49:31 +0000
committermorr <morr@pkgsrc.org>2011-10-31 10:49:31 +0000
commit109b452f84ae13a280770715f25a8510c77fb6b4 (patch)
tree9bd06d9cb41c82190320a91b6b8926c6ead3f91e /www
parentf2e31cadc4549c4112e8b250aa71da6c1d61e4db (diff)
downloadpkgsrc-109b452f84ae13a280770715f25a8510c77fb6b4.tar.gz
HAProxy is a free, very fast and reliable solution offering high
availability, load balancing, and proxying for TCP and HTTP-based applications. It is particularly suited for web sites crawling under very high loads while needing persistence or Layer7 processing. Supporting tens of thousands of connections is clearly realistic with todays hardware.
Diffstat (limited to 'www')
-rw-r--r--www/haproxy/DESCR6
-rw-r--r--www/haproxy/Makefile54
-rw-r--r--www/haproxy/PLIST9
-rw-r--r--www/haproxy/distinfo6
-rw-r--r--www/haproxy/files/haproxy.sh19
-rw-r--r--www/haproxy/patches/patch-aa53
6 files changed, 147 insertions, 0 deletions
diff --git a/www/haproxy/DESCR b/www/haproxy/DESCR
new file mode 100644
index 00000000000..f2e3c282e29
--- /dev/null
+++ b/www/haproxy/DESCR
@@ -0,0 +1,6 @@
+HAProxy is a free, very fast and reliable solution offering high
+availability, load balancing, and proxying for TCP and HTTP-based
+applications. It is particularly suited for web sites crawling under
+very high loads while needing persistence or Layer7 processing.
+Supporting tens of thousands of connections is clearly realistic with
+todays hardware.
diff --git a/www/haproxy/Makefile b/www/haproxy/Makefile
new file mode 100644
index 00000000000..d365b281457
--- /dev/null
+++ b/www/haproxy/Makefile
@@ -0,0 +1,54 @@
+# $NetBSD: Makefile,v 1.1.1.1 2011/10/31 10:49:31 morr Exp $
+
+DISTNAME= haproxy-1.4.18
+CATEGORIES= www
+MASTER_SITES= http://haproxy.1wt.eu/download/1.4/src/
+
+MAINTAINER= morr@NetBSD.org
+HOMEPAGE= http://haproxy.1wt.eu/
+COMMENT= Reliable, high performance TCP/HTTP load balancer
+LICENSE= gnu-gpl-v2
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+USE_TOOLS+= gmake
+BUILD_MAKE_FLAGS+= TARGET=${TARGET}
+INSTALL_MAKE_FLAGS+= TARGET=${TARGET}
+INSTALL_MAKE_FLAGS+= PREFIX=${PREFIX}
+INSTALL_MAKE_FLAGS+= DOCDIR=${PREFIX}/share/doc/${PKGBASE}
+INSTALL_MAKE_FLAGS+= MANDIR=${PREFIX}/${PKGMANDIR}
+
+EGDIR= ${PREFIX}/share/examples/${PKGBASE}
+INSTALLATION_DIRS= ${EGDIR} share/examples/rc.d
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${OPSYS} == "NetBSD"
+RCD_SCRIPTS= haproxy
+INSTALLATION_DIRS+= share/examples/rc.d
+.endif
+
+.if ${OPSYS} == "NetBSD"
+TARGET=netbsd
+.elif ${OPSYS} == "FreeBSD"
+TARGET=freebsd
+.elif ${OPSYS} == "OpenBSD"
+TARGET=openbsd
+.elif ${OPSYS} == "Linux"
+. if !empty(OS_VERSION:M2.6.*)
+TARGET=linux26
+. elif !empty(OS_VERSION:M2.4.*)
+. if exists(/usr/include/linux/eventpoll.h)
+TARGET=linux24e
+. else
+TARGET=linux24
+. endif
+. endif
+.else
+TARGET=generic
+.endif
+
+post-install:
+ ${INSTALL_DATA} ${WRKSRC}/examples/haproxy.cfg ${DESTDIR}${EGDIR}/
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/www/haproxy/PLIST b/www/haproxy/PLIST
new file mode 100644
index 00000000000..63f1f78f07b
--- /dev/null
+++ b/www/haproxy/PLIST
@@ -0,0 +1,9 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2011/10/31 10:49:31 morr Exp $
+man/man1/haproxy.1
+sbin/haproxy
+share/doc/haproxy/architecture.txt
+share/doc/haproxy/configuration.txt
+share/doc/haproxy/haproxy-en.txt
+share/doc/haproxy/haproxy-fr.txt
+share/examples/haproxy/haproxy.cfg
+share/examples/rc.d/haproxy
diff --git a/www/haproxy/distinfo b/www/haproxy/distinfo
new file mode 100644
index 00000000000..c72cb675544
--- /dev/null
+++ b/www/haproxy/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2011/10/31 10:49:31 morr Exp $
+
+SHA1 (haproxy-1.4.18.tar.gz) = 191dbcb5880c711580693bd081ca5fdd8dde3012
+RMD160 (haproxy-1.4.18.tar.gz) = 16729f0519a47123d88e849ae95d600c590c8583
+Size (haproxy-1.4.18.tar.gz) = 820427 bytes
+SHA1 (patch-aa) = 6012886156a54054cebf7f184d69a0cd0b1ad17b
diff --git a/www/haproxy/files/haproxy.sh b/www/haproxy/files/haproxy.sh
new file mode 100644
index 00000000000..641e81b09d9
--- /dev/null
+++ b/www/haproxy/files/haproxy.sh
@@ -0,0 +1,19 @@
+#!@RCD_SCRIPTS_SHELL@
+#
+# $NetBSD: haproxy.sh,v 1.1.1.1 2011/10/31 10:49:31 morr Exp $
+#
+
+# PROVIDE: haproxy
+# REQUIRE: network
+
+$_rc_subr_loaded . /etc/rc.subr
+
+name="haproxy"
+rcvar=$name
+command="/usr/pkg/sbin/${name}"
+conf_file="/usr/pkg/etc/${name}.cfg"
+required_files="${conf_file}"
+command_args="-f $conf_file"
+
+load_rc_config $name
+run_rc_command "$1"
diff --git a/www/haproxy/patches/patch-aa b/www/haproxy/patches/patch-aa
new file mode 100644
index 00000000000..c8e037c6aa5
--- /dev/null
+++ b/www/haproxy/patches/patch-aa
@@ -0,0 +1,53 @@
+$NetBSD: patch-aa,v 1.1.1.1 2011/10/31 10:49:31 morr Exp $
+
+Add support for NetBSD.
+
+--- Makefile.orig 2011-03-09 08:00:16.000000000 +0000
++++ Makefile
+@@ -71,7 +71,7 @@ DOCDIR = $(PREFIX)/doc/haproxy
+ # Use TARGET=<target_name> to optimize for a specifc target OS among the
+ # following list (use the default "generic" if uncertain) :
+ # generic, linux22, linux24, linux24e, linux26, solaris,
+-# freebsd, openbsd, cygwin, custom
++# freebsd, netbsd, openbsd, cygwin, custom
+ TARGET =
+
+ #### TARGET CPU
+@@ -89,7 +89,6 @@ ARCH =
+
+ #### Toolchain options.
+ # GCC is normally used both for compiling and linking.
+-CC = gcc
+ LD = $(CC)
+
+ #### Debug flags (typically "-g").
+@@ -228,6 +227,12 @@ ifeq ($(TARGET),freebsd)
+ USE_TPROXY = implicit
+ USE_LIBCRYPT = implicit
+ else
++ifeq ($(TARGET),netbsd)
++ # This is for NetBSD
++ USE_POLL = implicit
++ USE_KQUEUE = implicit
++ USE_TPROXY = implicit
++else
+ ifeq ($(TARGET),openbsd)
+ # This is for OpenBSD >= 3.0
+ USE_POLL = implicit
+@@ -242,6 +247,7 @@ ifeq ($(TARGET),cygwin)
+ TARGET_CFLAGS = $(if $(filter 1.5.%, $(shell uname -r)), -DUSE_IPV6 -DAF_INET6=23 -DINET6_ADDRSTRLEN=46, )
+ endif # cygwin
+ endif # openbsd
++endif # netbsd
+ endif # freebsd
+ endif # solaris
+ endif # linux26
+@@ -473,7 +479,7 @@ all:
+ @echo "Please choose the target among the following supported list :"
+ @echo
+ @echo " linux26, linux24, linux24e, linux22, solaris"
+- @echo " freebsd, openbsd, cygwin, custom, generic"
++ @echo " freebsd, netbsd, openbsd, cygwin, custom, generic"
+ @echo
+ @echo "Use \"generic\" if you don't want any optimization, \"custom\" if you"
+ @echo "want to precisely tweak every option, or choose the target which"