net-proxy/haproxy: Get rid of 2.0.x

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Christian Ruppert <idl0r@gentoo.org>
This commit is contained in:
Christian Ruppert
2022-06-01 13:13:55 +02:00
parent d1739a24d8
commit 37dffd21ca
5 changed files with 0 additions and 731 deletions

View File

@@ -1,6 +1,3 @@
DIST haproxy-2.0.25.tar.gz 2707840 BLAKE2B cd85d233623f2791bff8ada00d9ac4ea3743e2c1fbccd45a6fd56b7cc0ae5904619b50849a23576f0a6d21ae2798166acd41692d0311bcf361355dc6ee0da790 SHA512 2c238844a8c82f877d3039b20b76fd22717f95a4e5d94a0bfd501c6e134042ef744d3731fc0ccced0a94e5cb1c1822d3272ed961e07bd9acc4d637eba0529155
DIST haproxy-2.0.27.tar.gz 2716937 BLAKE2B 08ab2905b26b8e33068af77f3a153dc489f509436451d2711f9929100ecebfbec9edd14b449c48739b1d20990431fa6a8b49e4fc98d32ade5c1688f72d310f63 SHA512 339a013cb11778ed444370ff1887b4db121947784bda08f818a39b98261d02a5ebeb681ef7040cbb0e493d89c5b8e2c5a32f0cdccf9e89a6327e9d95cc6d5891
DIST haproxy-2.0.29.tar.gz 2722893 BLAKE2B 1f4763ef87c32cb93fcba58ad428938bf08295236d6cc7b81f2098a2a74d26d41af2bac70d9994c1108815caf58e37bcf6c84518c41514a8c8cce5fae60383c4 SHA512 e635a522d62fea040e996f0a518419c7d4a49e3770b2fc15a5cbf1aa98ccf42b8d698a9bf260ae6658bc4896510a8b056487af8f2cf023a1fc97172cc110f553
DIST haproxy-2.2.17.tar.gz 2933836 BLAKE2B 750d2c5048f994442d13c05ce6624731d296462951ee2e86110467d517a6708b498e98260a3f0770e110dc5c2cb2bdd746fb76f23ba7cebc1642b0b9c8124a67 SHA512 174197e1e0915a6ae6062b9a070f16102ac7f3429f991f36cdb2e2cce587bd26059bd1dc71a368f904bcdecd292ab5926715160400ae96d498d902aac356864f
DIST haproxy-2.2.21.tar.gz 2947789 BLAKE2B 3462f0a67070bd61266cc67d7d419dfb9e209314982f2035bdce6b905f9fe567780669adc09905598a6129152dbb77416790976249076935fcb90e7e03767284 SHA512 2404bf0938b88c3249668bef1f13195973c5b1db8dc056ed9d5b882b8cdabf71076b73de723e8d3d0d953193294edea4acac5edeee8ac472e93ae0bd917bf99b
DIST haproxy-2.2.24.tar.gz 2952103 BLAKE2B 4e795c06ed329619135d553210e70d1abf57e20a27e857ea26f003cd9fcebba2ea964581fa9d1f33067fb3faa7304806f3a598d2e2b0c08d6c1d4593ad01203c SHA512 021d065e53503248de122fdd9431786b9f375a5f87aca76f870e17e44c8c4001a778bfb4e430b28af781a3f175f3643a549e363e964210c717f212c5966e68d8

View File

@@ -1,183 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
LUA_COMPAT=( lua5-3 )
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit toolchain-funcs flag-o-matic lua-single 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/$(ver_cut 1-2)/src/${MY_P}.tar.gz"
KEYWORDS="amd64 arm ppc x86"
else
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/"
EGIT_BRANCH=master
fi
LICENSE="GPL-2 LGPL-2.1"
SLOT="0/$(ver_cut 1-2)"
IUSE="+crypt doc examples slz +net_ns +pcre pcre-jit pcre2 pcre2-jit prometheus-exporter
ssl systemd +threads tools vim-syntax +zlib lua 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
pcre2-jit? ( pcre2 )
pcre? ( !pcre2 )
lua? ( ${LUA_REQUIRED_USE} )
?? ( slz zlib )"
BDEPEND="virtual/pkgconfig"
DEPEND="
crypt? ( virtual/libcrypt:= )
pcre? (
dev-libs/libpcre
pcre-jit? ( dev-libs/libpcre[jit] )
)
pcre2? (
dev-libs/libpcre2:=
pcre2-jit? ( dev-libs/libpcre2:=[jit] )
)
ssl? (
dev-libs/openssl:0=
)
slz? ( dev-libs/libslz:= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
lua? ( ${LUA_DEPS} )"
RDEPEND="${DEPEND}
acct-group/haproxy
acct-user/haproxy"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
CONTRIBS=( halog iprange )
# ip6range is present in 1.6, but broken.
ver_test ${PV} -ge 1.7.0 && CONTRIBS+=( ip6range spoa_example tcploop )
# TODO: mod_defender - requires apache / APR, modsecurity - the same
ver_test ${PV} -ge 1.8.0 && CONTRIBS+=( hpack )
haproxy_use() {
(( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
usex "${1}" "USE_${2}=1" "USE_${2}="
}
pkg_setup() {
use lua && lua-single_pkg_setup
if use net_ns; then
CONFIG_CHECK="~NET_NS"
linux-info_pkg_setup
fi
}
src_compile() {
local -a args=(
V=1
TARGET=linux-glibc
)
# 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 pcre2 PCRE2) )
args+=( $(haproxy_use pcre2-jit PCRE2_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 wurfl WURFL) )
args+=( $(haproxy_use systemd SYSTEMD) )
# For now, until the strict-aliasing breakage will be fixed
append-cflags -fno-strict-aliasing
# Bug #668002
if use ppc || use arm || use hppa; then
TARGET_LDFLAGS=-latomic
fi
if use prometheus-exporter; then
EXTRA_OBJS="contrib/prometheus-exporter/service-prometheus.o"
fi
# HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing
emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" ${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 doc/seamless_reload.txt
fi
if use vim-syntax ; then
insinto /usr/share/vim/vimfiles/syntax
doins contrib/syntax-highlight/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
}

View File

@@ -1,183 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
LUA_COMPAT=( lua5-3 )
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit toolchain-funcs flag-o-matic lua-single 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/$(ver_cut 1-2)/src/${MY_P}.tar.gz"
KEYWORDS="amd64 ~arm ~ppc x86"
else
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/"
EGIT_BRANCH=master
fi
LICENSE="GPL-2 LGPL-2.1"
SLOT="0/$(ver_cut 1-2)"
IUSE="+crypt doc examples slz +net_ns +pcre pcre-jit pcre2 pcre2-jit prometheus-exporter
ssl systemd +threads tools vim-syntax +zlib lua 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
pcre2-jit? ( pcre2 )
pcre? ( !pcre2 )
lua? ( ${LUA_REQUIRED_USE} )
?? ( slz zlib )"
BDEPEND="virtual/pkgconfig"
DEPEND="
crypt? ( virtual/libcrypt:= )
pcre? (
dev-libs/libpcre
pcre-jit? ( dev-libs/libpcre[jit] )
)
pcre2? (
dev-libs/libpcre2:=
pcre2-jit? ( dev-libs/libpcre2:=[jit] )
)
ssl? (
dev-libs/openssl:0=
)
slz? ( dev-libs/libslz:= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
lua? ( ${LUA_DEPS} )"
RDEPEND="${DEPEND}
acct-group/haproxy
acct-user/haproxy"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
CONTRIBS=( halog iprange )
# ip6range is present in 1.6, but broken.
ver_test ${PV} -ge 1.7.0 && CONTRIBS+=( ip6range spoa_example tcploop )
# TODO: mod_defender - requires apache / APR, modsecurity - the same
ver_test ${PV} -ge 1.8.0 && CONTRIBS+=( hpack )
haproxy_use() {
(( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
usex "${1}" "USE_${2}=1" "USE_${2}="
}
pkg_setup() {
use lua && lua-single_pkg_setup
if use net_ns; then
CONFIG_CHECK="~NET_NS"
linux-info_pkg_setup
fi
}
src_compile() {
local -a args=(
V=1
TARGET=linux-glibc
)
# 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 pcre2 PCRE2) )
args+=( $(haproxy_use pcre2-jit PCRE2_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 wurfl WURFL) )
args+=( $(haproxy_use systemd SYSTEMD) )
# For now, until the strict-aliasing breakage will be fixed
append-cflags -fno-strict-aliasing
# Bug #668002
if use ppc || use arm || use hppa; then
TARGET_LDFLAGS=-latomic
fi
if use prometheus-exporter; then
EXTRA_OBJS="contrib/prometheus-exporter/service-prometheus.o"
fi
# HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing
emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" ${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 doc/seamless_reload.txt
fi
if use vim-syntax ; then
insinto /usr/share/vim/vimfiles/syntax
doins contrib/syntax-highlight/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
}

View File

@@ -1,181 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
LUA_COMPAT=( lua5-3 )
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit toolchain-funcs flag-o-matic lua-single 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/$(ver_cut 1-2)/src/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
elif [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/"
EGIT_BRANCH=master
else
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/"
EGIT_BRANCH=master
fi
LICENSE="GPL-2 LGPL-2.1"
SLOT="0/$(ver_cut 1-2)"
IUSE="+crypt doc examples slz +net_ns +pcre pcre-jit prometheus-exporter
ssl systemd +threads tools vim-syntax +zlib lua 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
lua? ( ${LUA_REQUIRED_USE} )
?? ( slz zlib )"
BDEPEND="virtual/pkgconfig"
DEPEND="
crypt? ( virtual/libcrypt:= )
pcre? (
dev-libs/libpcre2:=
pcre-jit? ( dev-libs/libpcre2:=[jit] )
)
ssl? (
dev-libs/openssl:0=
)
slz? ( dev-libs/libslz:= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
lua? ( ${LUA_DEPS} )"
RDEPEND="${DEPEND}
acct-group/haproxy
acct-user/haproxy"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
CONTRIBS=( halog iprange )
# ip6range is present in 1.6, but broken.
ver_test ${PV} -ge 1.7.0 && CONTRIBS+=( ip6range spoa_example tcploop )
# TODO: mod_defender - requires apache / APR, modsecurity - the same
ver_test ${PV} -ge 1.8.0 && CONTRIBS+=( hpack )
haproxy_use() {
(( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
usex "${1}" "USE_${2}=1" "USE_${2}="
}
pkg_setup() {
use lua && lua-single_pkg_setup
if use net_ns; then
CONFIG_CHECK="~NET_NS"
linux-info_pkg_setup
fi
}
src_compile() {
local -a args=(
V=1
TARGET=linux-glibc
# Switching to PCRE2 by default, bug 838013
PCRE=
PCRE_JIT=
)
# TODO: PCRE2_WIDTH?
args+=( $(haproxy_use threads THREAD) )
args+=( $(haproxy_use crypt LIBCRYPT) )
args+=( $(haproxy_use net_ns NS) )
args+=( $(haproxy_use pcre PCRE2) )
args+=( $(haproxy_use pcre-jit PCRE2_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 wurfl WURFL) )
args+=( $(haproxy_use systemd SYSTEMD) )
# For now, until the strict-aliasing breakage will be fixed
append-cflags -fno-strict-aliasing
# Bug #668002
if use ppc || use arm || use hppa; then
TARGET_LDFLAGS=-latomic
fi
if use prometheus-exporter; then
EXTRA_OBJS="contrib/prometheus-exporter/service-prometheus.o"
fi
# HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing
emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" ${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-r7" ${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 doc/seamless_reload.txt
fi
if use vim-syntax ; then
insinto /usr/share/vim/vimfiles/syntax
doins contrib/syntax-highlight/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
}

View File

@@ -1,181 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
LUA_COMPAT=( lua5-3 )
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit toolchain-funcs flag-o-matic lua-single 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/$(ver_cut 1-2)/src/${MY_P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~x86"
elif [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/"
EGIT_BRANCH=master
else
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy-$(ver_cut 1-2).git/"
EGIT_BRANCH=master
fi
LICENSE="GPL-2 LGPL-2.1"
SLOT="0/$(ver_cut 1-2)"
IUSE="+crypt doc examples slz +net_ns +pcre pcre-jit prometheus-exporter
ssl systemd +threads tools vim-syntax +zlib lua 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
lua? ( ${LUA_REQUIRED_USE} )
?? ( slz zlib )"
BDEPEND="virtual/pkgconfig"
DEPEND="
crypt? ( virtual/libcrypt:= )
pcre? (
dev-libs/libpcre2:=
pcre-jit? ( dev-libs/libpcre2:=[jit] )
)
ssl? (
dev-libs/openssl:0=
)
slz? ( dev-libs/libslz:= )
systemd? ( sys-apps/systemd )
zlib? ( sys-libs/zlib )
lua? ( ${LUA_DEPS} )"
RDEPEND="${DEPEND}
acct-group/haproxy
acct-user/haproxy"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
CONTRIBS=( halog iprange )
# ip6range is present in 1.6, but broken.
ver_test ${PV} -ge 1.7.0 && CONTRIBS+=( ip6range spoa_example tcploop )
# TODO: mod_defender - requires apache / APR, modsecurity - the same
ver_test ${PV} -ge 1.8.0 && CONTRIBS+=( hpack )
haproxy_use() {
(( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
usex "${1}" "USE_${2}=1" "USE_${2}="
}
pkg_setup() {
use lua && lua-single_pkg_setup
if use net_ns; then
CONFIG_CHECK="~NET_NS"
linux-info_pkg_setup
fi
}
src_compile() {
local -a args=(
V=1
TARGET=linux-glibc
# Switching to PCRE2 by default, bug 838013
PCRE=
PCRE_JIT=
)
# TODO: PCRE2_WIDTH?
args+=( $(haproxy_use threads THREAD) )
args+=( $(haproxy_use crypt LIBCRYPT) )
args+=( $(haproxy_use net_ns NS) )
args+=( $(haproxy_use pcre PCRE2) )
args+=( $(haproxy_use pcre-jit PCRE2_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 wurfl WURFL) )
args+=( $(haproxy_use systemd SYSTEMD) )
# For now, until the strict-aliasing breakage will be fixed
append-cflags -fno-strict-aliasing
# Bug #668002
if use ppc || use arm || use hppa; then
TARGET_LDFLAGS=-latomic
fi
if use prometheus-exporter; then
EXTRA_OBJS="contrib/prometheus-exporter/service-prometheus.o"
fi
# HAProxy really needs some of those "SPEC_CFLAGS", like -fno-strict-aliasing
emake CFLAGS="${CFLAGS} \$(SPEC_CFLAGS)" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" ${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-r7" ${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 doc/seamless_reload.txt
fi
if use vim-syntax ; then
insinto /usr/share/vim/vimfiles/syntax
doins contrib/syntax-highlight/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
}