net-proxy/haproxy: Bump to 3.1.10 and 3.2.8

Signed-off-by: Christian Ruppert <idl0r@gentoo.org>
This commit is contained in:
Christian Ruppert 2025-11-10 09:25:48 +01:00
parent 9293fe9a91
commit a2176007f7
No known key found for this signature in database
GPG Key ID: 24F9CE06428B07BC
3 changed files with 434 additions and 0 deletions

View File

@ -5,6 +5,7 @@ DIST haproxy-2.8.16.tar.gz 4429238 BLAKE2B eb1599260a71114a412e95220bc98c85d495c
DIST haproxy-3.0.11.tar.gz 4738655 BLAKE2B df5f6ee9f29df007ad2be38b91fb6b99d7d0cfb6de4fc4144caaba1ce9b94b8234132df507ea022d124409f1887536ddb428161972bd724988323d324c0bfe68 SHA512 3dc9f2367a3601480b302fad47e8cb8172d7a50443970284f4253f0b605dcd7b0e8d4ce825e9c6f4c66f24a65b6e28cf5891cfb659eeab21f8446dbb3c3bf25b
DIST haproxy-3.0.12.tar.gz 4745984 BLAKE2B 6d7ac9fe32440efbd56eb33b784884995f1a4e70814f97ebfdab4c5bb2116146f68aca40f6e925d309f31f6b05b5decf787a3526158e2e5677d4d29e8c2e5057 SHA512 ed9b0d0635f14c4825ae0bc342f2a3217a2fb71e8624577cc69af3c06536a716f0701247db505d49bcf5dc58f483b55e617341bbea181b78b1f1034ae7c0c0f9
DIST haproxy-3.0.5.tar.gz 4698022 BLAKE2B c64d8799755fddaf5b45a9e2b67c5f03b25af98fbddde68ab1206c288d9a65f91938810b150c4398ee138d9154c90f1af9fb05c3d0bbc80394e71430e1cc4396 SHA512 8c16b026d5e26fc030178ecd354c68e8ea32c2b971f143cb2aa2f1b2d16fbfc0a27e3975f78873a0cefe3f904b5f1999f8d75622a04234b9cf88f90161d9ea91
DIST haproxy-3.1.10.tar.gz 4935619 BLAKE2B f8b46f6fd4b643b6dbabd5b30fe411217e20657120ee61c2b5596f71ecfb77d4cbf8f865023b59babd0d69d05c578f0f021e3d8e0e7f31ce64c50cce3b8ee924 SHA512 b5fe153fa951e0e2cd6e0b6f0ca974d098876315ab69b31d4cd9971be1d6b5e107f35b7cc8bde6b44b1443ba8b60738e699cba426efae8484fccd66649247569
DIST haproxy-3.1.7.tar.gz 4917146 BLAKE2B 07c99ab5dfbafecb46fd6cfb62e6e82e6feab9be2a12b28ddaf72bcd62a47ab8cd4faf8f148ad44f80d4d95c098ceedb8c4eb8c4c4d010e85d734f22ec75a1ab SHA512 4cf13b96fcc0c7748ebf2a9bd512474d8aa5f760dd9e40961ba6c0ce72324450b556657b129114c3ca150826fff2b161d062366419fac7bd9c4d44a68e8b6a73
DIST haproxy-3.1.8.tar.gz 4923696 BLAKE2B a863bf3944a871329b22c65e13a7e4759d1baa8d5d3b5b7ad54f7eb9d286a3fa49022d7f93f044b210fb60a7649927625f1408c190627b65e69e09c7fc6c2136 SHA512 4708d6f1611ad8e87c1ff51350d2c339be1d268b9961e9d55d026aee8e45b4feeb1aa0528e7877770b45471794a0f05c48c5371d420bde8f5c78a6f7290742e2
DIST haproxy-3.1.9.tar.gz 4930057 BLAKE2B 5658db1cba1b29b9ac92cb964d56d14e66eb0faf4e7d69b338fe30bc446d74c8dd7d47205569e615b8ad9791db41ab381177b49c8363a34bdcbf82ad44b45bdc SHA512 8e4ebdef6c84c7e3e1b839783369a5d90fe97102a4cb871c38581ccb1971d242aeba46785515cc9b22df10483ae3b3061d1e5768ff0626e0852e71a0c722908e
@ -12,3 +13,4 @@ DIST haproxy-3.2.3.tar.gz 5089103 BLAKE2B b967ce88cb47105e6db43e06d27471d81cdc27
DIST haproxy-3.2.5.tar.gz 5104627 BLAKE2B 0d078293893f9cbb6faa7c4ecae64f1f11241fe2bee77a38a798297d8c20c3368a70108c794631d80470977fe53629ad6393736551d87b4180a39a094cc3e525 SHA512 4b1f01d1760e1d099967fd50d74bd65d907446f1fa37b90a216eae13fa4d94347909b380883071d777a4d5cf096bf7724141103ba655b9fe7879347716468684
DIST haproxy-3.2.6.tar.gz 5108005 BLAKE2B 7f8d6d2bc5962498da93c0adf70c4c3c41da2dbd0d3cdffd3eeab56f3e4960d96be7878a686682ec88a30ff236e4dbdb4f476b68b7fd0e343796218356d706a5 SHA512 15da214f93b4448ad73c6498fe308d92aad073a45233b3015e1bc71a1efc6ce6e219993e8ea577cf9014feb26154668fccc24f1bf4f7b0005fdeeb55c86de78f
DIST haproxy-3.2.7.tar.gz 5116643 BLAKE2B 3b47b647ddf98df52c5f39d266216bababa18051ede0f7dffadd9e56f15f4f523bbc156540822fec841493eedb72f4b0fbcd7848796a26cb132123bfa4d08ea9 SHA512 5e6635cf6a9b6394569ea8ea8feebc3ccb5cd89cedc924afad59d67d7e34fb1c38f4984d7329dbbfb1f44d5e7f21c08e544d870a50c6648c25fa9dfe4a14705c
DIST haproxy-3.2.8.tar.gz 5119011 BLAKE2B 923379be6c1ef32793deb4587a2c626655b836ec2865cd00f2be184475c6cf0c703ed93991563c1d14962633149fd74f7510f655a3a830f4a0343053f82a1ff4 SHA512 1640c31c942410f0e7c705bc1cd9f077023f73ea611e3222856089521c7e7dcf8533eef31680883798c0b18137894594dcf9e3f4e958abe2842342755ed68fe4

View File

@ -0,0 +1,216 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
LUA_COMPAT=( lua5-4 lua5-3 )
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit toolchain-funcs lua-single systemd linux-info ${SCM} multiprocessing
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
# This is arbitrary; upstream uses master. Try to update when possible
VTEST_COMMIT="af198470d7ce482d3d26eb9ca3f246a438739366"
VTEST_DIR="${WORKDIR}/VTest-${VTEST_COMMIT}"
SRC_URI="http://haproxy.1wt.eu/download/$(ver_cut 1-2)/src/${MY_P}.tar.gz
test? ( https://github.com/vtest/VTest/archive/${VTEST_COMMIT}.tar.gz -> VTest-${VTEST_COMMIT}.tar.gz )"
KEYWORDS="~amd64 ~arm64 ~ppc ~x86"
elif [[ ${PV} == 9999 ]]; then
VTEST_DIR="${WORKDIR}/VTest"
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/"
EGIT_BRANCH=master
else
VTEST_DIR="${WORKDIR}/VTest"
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 test +threads tools zlib lua 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
lua? ( ${LUA_REQUIRED_USE} )
?? ( slz zlib )"
RESTRICT="!test? ( test )"
BDEPEND="virtual/pkgconfig"
DEPEND="
crypt? ( virtual/libcrypt:= )
pcre? (
dev-libs/libpcre2:=
pcre-jit? ( dev-libs/libpcre2:=[jit] )
)
ssl? (
dev-libs/openssl:0=
)
systemd? ( sys-apps/systemd )
zlib? ( virtual/zlib:= )
lua? ( ${LUA_DEPS} )
test? (
dev-libs/libpcre2
virtual/zlib:=
)"
RDEPEND="${DEPEND}
acct-group/haproxy
acct-user/haproxy"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS )
EXTRAS=( admin/halog admin/iprange dev/tcploop dev/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_unpack() {
if [[ ${PV} != *9999 ]]; then
default
else
git-r3_src_unpack
EGIT_REPO_URI="https://github.com/vtest/VTest" EGIT_CHECKOUT_DIR="${VTEST_DIR}" git-r3_src_unpack
fi
}
src_compile() {
local -a args=(
V=1
# Switching to PCRE2 by default, bug 838013
PCRE=
PCRE_JIT=
)
if use elibc_musl; then
args+=( TARGET=linux-musl )
else
args+=( TARGET=linux-glibc )
fi
# 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 prometheus-exporter PROMEX) )
# Bug #668002
if use ppc || use arm || use hppa; then
TARGET_LDFLAGS=-latomic
fi
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" \
TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]}
emake -C admin/systemd CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \
EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) \
SBINDIR=/usr/sbin
if use tools ; then
for extra in ${EXTRAS[@]} ; do
if [ "${extra}" = "admin/halog" ]; then
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \
EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \
PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} admin/halog/halog
elif [ "${extra}" = "dev/hpack" ]; then
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \
EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \
PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} dev/hpack/{decode,gen-enc,gen-rht}
else
# Those two includes are a workaround for hpack Makefile missing those
emake -C ${extra} \
CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" \
CC="$(tc-getCC)" ${args[@]}
fi
done
fi
}
src_test() {
# https://github.com/vtest/VTest/issues/12
emake -C "${VTEST_DIR}" CC="$(tc-getCC)" FLAGS="${CFLAGS} -Wno-error=unused-result"
ulimit -n 65536 || die "${PN} requires ulimit -n set to at least 65536 for tests"
env -u A -u D TMPDIR="/tmp" emake reg-tests -- --v --j "$(makeopts_jobs)" \
HAPROXY_PROGRAM="${S}/haproxy" VTEST_PROGRAM="${VTEST_DIR}/vtest" REGTESTS_TYPE="default,bug,devel"
}
src_install() {
dosbin haproxy
newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
newinitd "${FILESDIR}/${PN}.initd-r9" ${PN}
doman doc/haproxy.1
systemd_dounit admin/systemd/haproxy.service
einstalldocs
# The errorfiles are used by upstream defaults.
insinto /etc/haproxy/errors/
doins examples/errorfiles/*
if use doc; then
dodoc doc/*.txt
#if use lua; then
# TODO: doc/lua-api/
#fi
fi
if use tools ; then
has admin/halog "${EXTRAS[@]}" && dobin admin/halog/halog
has admin/iprange "${EXTRAS[@]}" && {
newbin admin/iprange/iprange haproxy_iprange
newbin admin/iprange/ip6range haproxy_ip6range
}
has dev/tcploop "${EXTRAS[@]}" && newbin dev/tcploop/tcploop haproxy_tcploop
has dev/hpack "${EXTRAS[@]}" && {
newbin dev/hpack/gen-rht haproxy_gen-rht
newbin dev/hpack/gen-enc haproxy_gen-enc
newbin dev/hpack/decode haproxy_decode
}
fi
if use examples ; then
docinto examples
dodoc examples/*.cfg
dodoc doc/seamless_reload.txt
fi
insinto /usr/share/vim/vimfiles/syntax
doins admin/syntax-highlight/haproxy.vim
}
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

@ -0,0 +1,216 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
LUA_COMPAT=( lua5-4 lua5-3 )
[[ ${PV} == *9999 ]] && SCM="git-r3"
inherit toolchain-funcs lua-single systemd linux-info ${SCM} multiprocessing
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
# This is arbitrary; upstream uses master. Try to update when possible
VTEST_COMMIT="af198470d7ce482d3d26eb9ca3f246a438739366"
VTEST_DIR="${WORKDIR}/VTest-${VTEST_COMMIT}"
SRC_URI="http://haproxy.1wt.eu/download/$(ver_cut 1-2)/src/${MY_P}.tar.gz
test? ( https://github.com/vtest/VTest/archive/${VTEST_COMMIT}.tar.gz -> VTest-${VTEST_COMMIT}.tar.gz )"
KEYWORDS="~amd64 ~arm64 ~ppc ~x86"
elif [[ ${PV} == 9999 ]]; then
VTEST_DIR="${WORKDIR}/VTest"
EGIT_REPO_URI="https://git.haproxy.org/git/haproxy.git/"
EGIT_BRANCH=master
else
VTEST_DIR="${WORKDIR}/VTest"
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 test +threads tools zlib lua 51degrees wurfl"
REQUIRED_USE="pcre-jit? ( pcre )
lua? ( ${LUA_REQUIRED_USE} )
?? ( slz zlib )"
RESTRICT="!test? ( test )"
BDEPEND="virtual/pkgconfig"
DEPEND="
crypt? ( virtual/libcrypt:= )
pcre? (
dev-libs/libpcre2:=
pcre-jit? ( dev-libs/libpcre2:=[jit] )
)
ssl? (
dev-libs/openssl:0=
)
systemd? ( sys-apps/systemd )
zlib? ( virtual/zlib:= )
lua? ( ${LUA_DEPS} )
test? (
dev-libs/libpcre2
virtual/zlib:=
)"
RDEPEND="${DEPEND}
acct-group/haproxy
acct-user/haproxy"
S="${WORKDIR}/${MY_P}"
DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS )
EXTRAS=( admin/halog admin/iprange dev/tcploop dev/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_unpack() {
if [[ ${PV} != *9999 ]]; then
default
else
git-r3_src_unpack
EGIT_REPO_URI="https://github.com/vtest/VTest" EGIT_CHECKOUT_DIR="${VTEST_DIR}" git-r3_src_unpack
fi
}
src_compile() {
local -a args=(
V=1
# Switching to PCRE2 by default, bug 838013
PCRE=
PCRE_JIT=
)
if use elibc_musl; then
args+=( TARGET=linux-musl )
else
args+=( TARGET=linux-glibc )
fi
# 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 prometheus-exporter PROMEX) )
# Bug #668002
if use ppc || use arm || use hppa; then
TARGET_LDFLAGS=-latomic
fi
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" EXTRA_OBJS="${EXTRA_OBJS}" \
TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]}
emake -C admin/systemd CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \
EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) \
SBINDIR=/usr/sbin
if use tools ; then
for extra in ${EXTRAS[@]} ; do
if [ "${extra}" = "admin/halog" ]; then
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \
EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \
PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} admin/halog/halog
elif [ "${extra}" = "dev/hpack" ]; then
emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC="$(tc-getCC)" \
EXTRA_OBJS="${EXTRA_OBJS}" TARGET_LDFLAGS="${TARGET_LDFLAGS}" \
PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} dev/hpack/{decode,gen-enc,gen-rht}
else
# Those two includes are a workaround for hpack Makefile missing those
emake -C ${extra} \
CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" \
CC="$(tc-getCC)" ${args[@]}
fi
done
fi
}
src_test() {
# https://github.com/vtest/VTest/issues/12
emake -C "${VTEST_DIR}" CC="$(tc-getCC)" FLAGS="${CFLAGS} -Wno-error=unused-result"
ulimit -n 65536 || die "${PN} requires ulimit -n set to at least 65536 for tests"
env -u A -u D TMPDIR="/tmp" emake reg-tests -- --v --j "$(makeopts_jobs)" \
HAPROXY_PROGRAM="${S}/haproxy" VTEST_PROGRAM="${VTEST_DIR}/vtest" REGTESTS_TYPE="default,bug,devel"
}
src_install() {
dosbin haproxy
newconfd "${FILESDIR}/${PN}.confd-r1" ${PN}
newinitd "${FILESDIR}/${PN}.initd-r9" ${PN}
doman doc/haproxy.1
systemd_dounit admin/systemd/haproxy.service
einstalldocs
# The errorfiles are used by upstream defaults.
insinto /etc/haproxy/errors/
doins examples/errorfiles/*
if use doc; then
dodoc doc/*.txt
#if use lua; then
# TODO: doc/lua-api/
#fi
fi
if use tools ; then
has admin/halog "${EXTRAS[@]}" && dobin admin/halog/halog
has admin/iprange "${EXTRAS[@]}" && {
newbin admin/iprange/iprange haproxy_iprange
newbin admin/iprange/ip6range haproxy_ip6range
}
has dev/tcploop "${EXTRAS[@]}" && newbin dev/tcploop/tcploop haproxy_tcploop
has dev/hpack "${EXTRAS[@]}" && {
newbin dev/hpack/gen-rht haproxy_gen-rht
newbin dev/hpack/gen-enc haproxy_gen-enc
newbin dev/hpack/decode haproxy_decode
}
fi
if use examples ; then
docinto examples
dodoc examples/*.cfg
dodoc doc/seamless_reload.txt
fi
insinto /usr/share/vim/vimfiles/syntax
doins admin/syntax-highlight/haproxy.vim
}
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
}