net-proxy/haproxy: Version bump to 1.9.0

Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Christian Ruppert <idl0r@gentoo.org>
This commit is contained in:
Christian Ruppert
2018-12-20 11:05:01 +01:00
parent 7d0c21e7aa
commit 52f44cbeac
2 changed files with 172 additions and 0 deletions

View File

@@ -8,3 +8,4 @@ DIST haproxy-1.8.13.tar.gz 2063046 BLAKE2B 9ebccf2520719cdf209bc9a87bf28d015b5b6
DIST haproxy-1.8.15.tar.gz 2076583 BLAKE2B 33ea8bfc42a63da08271d875032073d57ebaa22688cf19b3b83e4a1d00218a439b3275260d618557f879e364fc72917fa940a2d3cca44285da1e531440737c7c SHA512 425e1f3a9ab2c2d09934c5d783ad986bd61a638ba6466dd15c20c5b6e7fc3dfad7c398e10bbd336a856ccad29bab0f23e4b9c3d0f17a54b86c8b917e4b974bcb
DIST haproxy-1.8.8.tar.gz 2054534 BLAKE2B 5eabd37dfb79783dc20425cbb16ca1e1afed23861f66c9e8a738dd56d9ca35b3ceb2604c308543ca99222aa867e11ff613fc09012669882a4bdaaff03cb76450 SHA512 8310f84b364348600273c295a3b315a79cba1f782b86b47d8d47b3ffd1e6fb62fd278c4f2dfa185d0a269f73c1067695a763733736877989a941162b625462a1
DIST haproxy-1.8.9.tar.gz 2057051 BLAKE2B d81d18f68a27ae8a77660c1ecb1dfc28599263ebfd57f25ea574af2b101b35eb7a1a89ba4034b55dfa89673ae6ac4c0dca5428b4b494a02184b1b157850ce96b SHA512 e59c29af3a39d6212f012ae8341b169436e10e42fadaf8f1aa68d2bb7ee181fd1fe3b74640bfcd8c37c17dfc5062b36bd69d90290d7c59cd3e4648ef2ab1c8dd
DIST haproxy-1.9.0.tar.gz 2325893 BLAKE2B bd837f72863c7d428b1c2427a2826ff486af2aa3ffb453be4d93eb0bcc46805de9b3b79df90b6594a0eab4295a1a1380d5c25166632d6268c9e8e2be57b2d55f SHA512 e83c6ccb54f8ce5d45817ffb8fe0bf4ea959988acbc1e45da9d32870bae1eb25f7fd85cb6c0507c2adc5dc0c7aa42de204e711c442b56fbd2dc642788b41bfce

View File

@@ -0,0 +1,171 @@
# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="6"
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit user versionator toolchain-funcs flag-o-matic systemd linux-info $SCM
MY_P="${PN}-${PV/_beta/-dev}"
DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
HOMEPAGE="http://www.haproxy.org"
if [[ ${PV} != *9999 ]]; then
SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm ~ppc ~x86"
else
EGIT_REPO_URI="http://git.haproxy.org/git/haproxy-$(get_version_component_range 1-2).git/"
EGIT_BRANCH=master
fi
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
IUSE="+crypt doc examples libressl slz net_ns +pcre pcre-jit pcre2 pcre2-jit ssl
systemd +threads tools vim-syntax +zlib lua device-atlas 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
pcre2-jit? ( pcre2 )
pcre? ( !pcre2 )
device-atlas? ( pcre )
?? ( slz zlib )"
DEPEND="
pcre? (
dev-libs/libpcre
pcre-jit? ( dev-libs/libpcre[jit] )
)
pcre2? (
dev-libs/libpcre
pcre2-jit? ( dev-libs/libpcre2[jit] )
)
ssl? (
!libressl? ( dev-libs/openssl:0=[zlib?] )
libressl? ( dev-libs/libressl:0= )
)
slz? ( dev-libs/libslz:= )
zlib? ( sys-libs/zlib )
lua? ( dev-lang/lua:5.3 )
device-atlas? ( dev-libs/device-atlas-api-c )"
RDEPEND="${DEPEND}"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
CONTRIBS=( halog iprange )
# ip6range is present in 1.6, but broken.
version_is_at_least 1.7.0 $PV && CONTRIBS+=( ip6range spoa_example tcploop )
# TODO: mod_defender - requires apache / APR, modsecurity - the same
version_is_at_least 1.8.0 $PV && CONTRIBS+=( hpack )
haproxy_use() {
(( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
usex "${1}" "USE_${2}=1" "USE_${2}="
}
pkg_setup() {
enewgroup haproxy
enewuser haproxy -1 -1 -1 haproxy
if use net_ns; then
CONFIG_CHECK="~NET_NS"
linux-info_pkg_setup
fi
}
src_compile() {
local -a args=(
V=1
TARGET=linux2628
USE_GETADDRINFO=1
USE_TFO=1
)
# TODO: PCRE2_WIDTH?
args+=( $(haproxy_use threads THREAD) )
args+=( $(haproxy_use crypt LIBCRYPT) )
args+=( $(haproxy_use net_ns NS) )
args+=( $(haproxy_use pcre PCRE) )
args+=( $(haproxy_use pcre-jit PCRE_JIT) )
args+=( $(haproxy_use ssl OPENSSL) )
args+=( $(haproxy_use slz SLZ) )
args+=( $(haproxy_use zlib ZLIB) )
args+=( $(haproxy_use lua LUA) )
args+=( $(haproxy_use 51degrees 51DEGREES) )
args+=( $(haproxy_use device-atlas DEVICEATLAS) )
args+=( $(haproxy_use wurfl WURFL) )
args+=( $(haproxy_use systemd SYSTEMD) )
# For now, until the strict-aliasing breakage will be fixed
append-cflags -fno-strict-aliasing
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
emake -C contrib/systemd SBINDIR=/usr/sbin
if use tools ; then
for contrib in ${CONTRIBS[@]} ; do
# Those two includes are a workaround for hpack Makefile missing those
emake -C contrib/${contrib} \
CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
done
fi
}
src_install() {
dosbin haproxy
dosym ../sbin/haproxy /usr/bin/haproxy
newconfd "${FILESDIR}/${PN}.confd" $PN
newinitd "${FILESDIR}/${PN}.initd-r6" $PN
doman doc/haproxy.1
systemd_dounit contrib/systemd/haproxy.service
einstalldocs
# The errorfiles are used by upstream defaults.
insinto /etc/haproxy/errors/
doins examples/errorfiles/*
if use doc; then
dodoc ROADMAP doc/*.txt
#if use lua; then
# TODO: doc/lua-api/
#fi
fi
if use tools ; then
has halog "${CONTRIBS[@]}" && dobin contrib/halog/halog
has "iprange" "${CONTRIBS[@]}" && newbin contrib/iprange/iprange haproxy_iprange
has "ip6range" "${CONTRIBS[@]}" && newbin contrib/ip6range/ip6range haproxy_ip6range
has "spoa_example" "${CONTRIBS[@]}" && newbin contrib/spoa_example/spoa haproxy_spoa_example
has "spoa_example" "${CONTRIBS[@]}" && newdoc contrib/spoa_example/README README.spoa_example
has "tcploop" "${CONTRIBS[@]}" && newbin contrib/tcploop/tcploop haproxy_tcploop
has "hpack" "${CONTRIBS[@]}" && newbin contrib/hpack/gen-rht haproxy_hpack
fi
if use examples ; then
docinto examples
dodoc examples/*.cfg
dodoc examples/seamless_reload.txt
fi
if use vim-syntax ; then
insinto /usr/share/vim/vimfiles/syntax
doins examples/haproxy.vim
fi
}
pkg_postinst() {
if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then
ewarn "You need to create /etc/haproxy/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 "${EROOT}/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 " ${EROOT}usr/share/doc/${PF}"
fi
fi
}