summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--net-proxy/haproxy/ChangeLog10
-rw-r--r--net-proxy/haproxy/files/haproxy.initd-r150
-rw-r--r--net-proxy/haproxy/haproxy-1.3.26-r1.ebuild73
-rw-r--r--net-proxy/haproxy/haproxy-1.4.18-r1.ebuild75
4 files changed, 207 insertions, 1 deletions
diff --git a/net-proxy/haproxy/ChangeLog b/net-proxy/haproxy/ChangeLog
index 5177e9ab5d70..9c065f8b7593 100644
--- a/net-proxy/haproxy/ChangeLog
+++ b/net-proxy/haproxy/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-proxy/haproxy
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/ChangeLog,v 1.55 2011/09/21 13:44:51 idl0r Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/ChangeLog,v 1.56 2011/09/28 15:23:02 idl0r Exp $
+
+*haproxy-1.4.18-r1 (28 Sep 2011)
+*haproxy-1.3.26-r1 (28 Sep 2011)
+
+ 28 Sep 2011; Christian Ruppert <idl0r@gentoo.org> +haproxy-1.3.26-r1.ebuild,
+ +haproxy-1.4.18-r1.ebuild, +files/haproxy.initd-r1:
+ Improve haproxy init script, bug 384753. Also fix use of deprecated opts
+ variable.
21 Sep 2011; Christian Ruppert <idl0r@gentoo.org> haproxy-1.3.25.ebuild,
haproxy-1.3.26.ebuild, -haproxy-1.4.8.ebuild, haproxy-1.4.15.ebuild,
diff --git a/net-proxy/haproxy/files/haproxy.initd-r1 b/net-proxy/haproxy/files/haproxy.initd-r1
new file mode 100644
index 000000000000..7edf5e6bc27e
--- /dev/null
+++ b/net-proxy/haproxy/files/haproxy.initd-r1
@@ -0,0 +1,50 @@
+#!/sbin/runscript
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/files/haproxy.initd-r1,v 1.1 2011/09/28 15:23:01 idl0r Exp $
+
+extra_commands="checkconfig reload"
+
+CONFFILE=/etc/${SVCNAME}.cfg
+PIDFILE=/var/run/${SVCNAME}.pid
+
+depend() {
+ need net
+ use dns logger
+}
+
+checkconfig() {
+ if [ ! -f "${CONFFILE}" ]; then
+ eerror "${CONFFILE} does not exist!"
+ return 1
+ fi
+
+ ebegin "Checking ${CONFFILE}"
+ /usr/bin/haproxy -q -c -f "${CONFFILE}"
+ eend $?
+}
+
+start() {
+ ebegin "Starting ${SVCNAME}"
+ start-stop-daemon --pidfile "${PIDFILE}" --exec /usr/bin/haproxy \
+ --start -- -D -p "${PIDFILE}" -f "${CONFFILE}"
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping ${SVCNAME}"
+
+ if [ "${RC_CMD}" = "restart" ]; then
+ checkconfig || return 1
+ fi
+
+ start-stop-daemon --stop --pidfile "${PIDFILE}"
+ eend $?
+}
+
+reload() {
+ ebegin "Reloading ${SVCNAME}"
+ checkconfig || { eerror "Reloading failed, please fix your ${CONFFILE} first"; return 1; }
+ /usr/bin/haproxy -D -p "${PIDFILE}" -f "${CONFFILE}" -sf $(cat "${PIDFILE}")
+ eend $?
+}
diff --git a/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild b/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild
new file mode 100644
index 000000000000..cd6d6a604def
--- /dev/null
+++ b/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/haproxy-1.3.26-r1.ebuild,v 1.1 2011/09/28 15:23:02 idl0r Exp $
+
+inherit eutils versionator toolchain-funcs flag-o-matic
+
+DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
+HOMEPAGE="http://haproxy.1wt.eu"
+SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="examples pcre vim-syntax"
+
+DEPEND="pcre? ( dev-libs/libpcre )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ enewgroup haproxy
+ enewuser haproxy -1 -1 -1 haproxy
+}
+
+src_compile() {
+ local args="TARGET=linux26"
+
+ use pcre && args="${args} USE_PCRE=1"
+
+ use kernel_linux && args="${args} USE_LINUX_SPLICE=1"
+ use kernel_linux && args="${args} USE_LINUX_TPROXY=1"
+
+ # For now, until the strict-aliasing breakage will be fixed
+ append-cflags -fno-strict-aliasing
+
+ emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args} || die
+}
+
+src_install() {
+ dobin haproxy || die
+ newinitd "${FILESDIR}/haproxy.initd-r1" haproxy || die
+
+ # Don't install useless files
+ rm examples/build.cfg doc/*gpl.txt
+
+ dodoc CHANGELOG ROADMAP TODO doc/{configuration,haproxy-en}.txt
+ doman doc/haproxy.1
+
+ if use examples;
+ then
+ docinto examples
+ dodoc examples/*.cfg || die
+ fi
+
+ if use vim-syntax;
+ then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins examples/haproxy.vim || die
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -f "${ROOT}/etc/haproxy.cfg" ]] ; then
+ ewarn "You need to create /etc/haproxy.cfg before you start the haproxy service."
+ ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created."
+ ewarn "Make use of them with the \"user\" and \"group\" directives."
+
+ if [[ -d "${ROOT}/usr/share/doc/${PF}" ]]; then
+ einfo "Please consult the installed documentation for learning the configuration file's syntax."
+ einfo "The documentation and sample configuration files are installed here:"
+ einfo " ${ROOT}usr/share/doc/${PF}"
+ fi
+ fi
+}
diff --git a/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild b/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild
new file mode 100644
index 000000000000..8363d6118a4b
--- /dev/null
+++ b/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild
@@ -0,0 +1,75 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-proxy/haproxy/haproxy-1.4.18-r1.ebuild,v 1.1 2011/09/28 15:23:02 idl0r Exp $
+
+EAPI="3"
+
+inherit eutils versionator toolchain-funcs flag-o-matic
+
+DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
+HOMEPAGE="http://haproxy.1wt.eu"
+SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${P}.tar.gz"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="examples pcre vim-syntax"
+
+DEPEND="pcre? ( dev-libs/libpcre )"
+RDEPEND="${DEPEND}"
+
+pkg_setup() {
+ enewgroup haproxy
+ enewuser haproxy -1 -1 -1 haproxy
+}
+
+src_compile() {
+ local args="TARGET=linux26"
+
+ use pcre && args="${args} USE_PCRE=1"
+
+ use kernel_linux && args="${args} USE_LINUX_SPLICE=1"
+ use kernel_linux && args="${args} USE_LINUX_TPROXY=1"
+
+ # For now, until the strict-aliasing breakage will be fixed
+ append-cflags -fno-strict-aliasing
+
+ emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args} || die
+}
+
+src_install() {
+ dobin haproxy || die
+ newinitd "${FILESDIR}/haproxy.initd-r1" haproxy || die
+
+ # Don't install useless files
+ rm examples/build.cfg doc/*gpl.txt
+
+ dodoc CHANGELOG ROADMAP TODO doc/{configuration,haproxy-en}.txt
+ doman doc/haproxy.1
+
+ if use examples;
+ then
+ docinto examples
+ dodoc examples/*.cfg || die
+ fi
+
+ if use vim-syntax;
+ then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins examples/haproxy.vim || die
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -f "${ROOT}/etc/haproxy.cfg" ]] ; then
+ ewarn "You need to create /etc/haproxy.cfg before you start the haproxy service."
+ ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created."
+ ewarn "Make use of them with the \"user\" and \"group\" directives."
+
+ if [[ -d "${ROOT}/usr/share/doc/${PF}" ]]; then
+ einfo "Please consult the installed documentation for learning the configuration file's syntax."
+ einfo "The documentation and sample configuration files are installed here:"
+ einfo " ${ROOT}usr/share/doc/${PF}"
+ fi
+ fi
+}