From 8eceece0888e0788c3829c998d3ce7f1e2c72e83 Mon Sep 17 00:00:00 2001 From: Christian Ruppert Date: Tue, 14 Feb 2023 17:05:33 +0100 Subject: net-proxy/haproxy: Bumps to fix CVE-2023-25725 Signed-off-by: Christian Ruppert --- net-proxy/haproxy/Manifest | 8 +- net-proxy/haproxy/files/haproxy-2.7.2-hpack.patch | 49 ------ net-proxy/haproxy/haproxy-2.2.28.ebuild | 182 --------------------- net-proxy/haproxy/haproxy-2.2.29.ebuild | 182 +++++++++++++++++++++ net-proxy/haproxy/haproxy-2.4.21.ebuild | 188 ---------------------- net-proxy/haproxy/haproxy-2.4.22.ebuild | 187 +++++++++++++++++++++ net-proxy/haproxy/haproxy-2.6.8.ebuild | 188 ---------------------- net-proxy/haproxy/haproxy-2.6.9.ebuild | 187 +++++++++++++++++++++ net-proxy/haproxy/haproxy-2.7.2.ebuild | 188 ---------------------- net-proxy/haproxy/haproxy-2.7.3.ebuild | 187 +++++++++++++++++++++ 10 files changed, 747 insertions(+), 799 deletions(-) delete mode 100644 net-proxy/haproxy/files/haproxy-2.7.2-hpack.patch delete mode 100644 net-proxy/haproxy/haproxy-2.2.28.ebuild create mode 100644 net-proxy/haproxy/haproxy-2.2.29.ebuild delete mode 100644 net-proxy/haproxy/haproxy-2.4.21.ebuild create mode 100644 net-proxy/haproxy/haproxy-2.4.22.ebuild delete mode 100644 net-proxy/haproxy/haproxy-2.6.8.ebuild create mode 100644 net-proxy/haproxy/haproxy-2.6.9.ebuild delete mode 100644 net-proxy/haproxy/haproxy-2.7.2.ebuild create mode 100644 net-proxy/haproxy/haproxy-2.7.3.ebuild (limited to 'net-proxy/haproxy') diff --git a/net-proxy/haproxy/Manifest b/net-proxy/haproxy/Manifest index 5e780660c0bb..334f154ec05d 100644 --- a/net-proxy/haproxy/Manifest +++ b/net-proxy/haproxy/Manifest @@ -1,6 +1,6 @@ DIST haproxy-2.2.25.tar.gz 2957420 BLAKE2B 58f85c063bada9c943415ff8a8e51232dec0f4c5b09d43c6a5437ff83bd2cb753bb81f67ad2c4b808cd1995ea6d4b2b2b70017a3f940007637fa398c5bb6884c SHA512 652a0d2eef0706ec506a949c560d7b99d111a75519daaa9a31ab53d99d7fdfc584c52d8401f257bb8f8ac58fc51f1403467749438fde684f064d616a2b4485a2 -DIST haproxy-2.2.28.tar.gz 2969396 BLAKE2B 65e3ee6bf3afbbb64cd989fd693a1bf1c471a90da8e44a531d7beebd38b0fcc748abdd0bbc7d89cc42c28b87fe56a63c5924e153e19f4d951537652aab6ea17d SHA512 4f815e2628d6401ca6469418f85aef540f904f6788a801b2bdfe028a29534e1bee542527ad4ecde95409429f84b95d0db4208512c916aa27590495de6e64e385 +DIST haproxy-2.2.29.tar.gz 2969963 BLAKE2B c921c5d06ec5d6c19e1b0d62bca27cfc80df76ec2f25e1c96c4703dc8e55baf2cd112d0ae0ccec298809fe7e4258a5f682768849757b8754b73f83e0b1a4a4fe SHA512 066affb96d46de9c323e53cb3766f5eafa4f34f2403107d5d056588462c59b8340fb0e33acebd560e016d695b4423f61b9c42ea2b08d1754448e9919a4c6865f DIST haproxy-2.4.18.tar.gz 3626923 BLAKE2B 1ec312a5607634f7906cfcf5d4e22d829bdca9ee436d2364ff30552375b3acaf748a79dd8a67e215007786aa57ae305e9270d62a07397bfc34f72799e4870220 SHA512 4362ebf5eef6560adf558a4db596c2a0349dca05ee51e69c60f5e995d364e4f68d3422391fc5286dd8e2e65ce41a459dbbcba01e6f7b5918870b214683922488 -DIST haproxy-2.4.21.tar.gz 3648019 BLAKE2B bdccbcb546f889f02fccf1f56befa644d2b82f5d63820069e7966457142f35519390ce6f64e4ba9f3ba507bcbcc0ec1a3300d01c58a788d97a1f81ae79adf2d4 SHA512 e50a8d5e7ee2ed389c1b53c0f6363f4a68a941122d8fcbe185f65bf0a1610c0f2243b7a534fd2a11687e59de37591d200aa54d7cc9dcc260fa0687429db865bc -DIST haproxy-2.6.8.tar.gz 4041517 BLAKE2B 1f3fe78e04565440f6a578ec15a436df4857ecbf0256333df8c195f2ce7fc4c7d522be8a7bdbaadc882c0f02ee2b4af543b4bf236d63994a8699c829cc9c6b28 SHA512 b5c126c6e0249ebd461bd1a98c63f821392a665f0ae2c6cb1527becb5e1be6326121680f17b6f96785e9a7bd6b5bc6789091eb21cb70000c2fc7b88cd6a87b12 -DIST haproxy-2.7.2.tar.gz 4130348 BLAKE2B 97cd3a28c64b1fe0b14976f29a7b2f07e10dfb6a2abfe0c8baaced58a706f54e0c8bcbd8da1a8f3741e72bc2f59fea37ea16297f996906cac039662d19b062e8 SHA512 0746f715b9f0acce3c5eb6ade6f201f21806ee51cdd3da453cf32c7e36fab772a74b4a476ed80f1176fe29a0c706479017cfeb8850d53fc6ad2ee40da66ba1e1 +DIST haproxy-2.4.22.tar.gz 1507328 BLAKE2B 4eec8b2f5a323390306eaea05807120859141817feb982b50758e2ecdf23b36f0992bd23d30eb2d86c1460609e84f6ec352f576d2d4261c498fd1b312c8368ec SHA512 27220adc865b372935c05dddeb54a39b453c18ec63b953cf7d03a529a9fc895fce9ce0b6dc3b5bbe4b27b57b3e8a0f22e80c564e4c737359085e9b12e30bc82c +DIST haproxy-2.6.9.tar.gz 4045208 BLAKE2B 2222e2265b57a252c596c066b2fed0de89669ac6b86e0c76b31ef2b73e2d8d090a51c46d34553aec6d70a2b61717df0d2ac2eb1053cae0364e3e84334ba35f77 SHA512 24d000a38d30502f09c3cd44425bf515382c0a7b1bc5a117a078a198f9c05d618a25148ddee0463458884fc566085d9847e5f89e3c7bda1758ccf5fddef7ebf5 +DIST haproxy-2.7.3.tar.gz 4141275 BLAKE2B a72c3ee578c2a1fb1648779c4a7c692d136455f24c2e2afc2e3ce1dba651043b2e897a938bf1da9a790cb6f8c731c331301d085a953674f341fbedc1d8c0847a SHA512 f9eeee2d232fd2f4da1959e9265dd6abe6c6182109a0455d4f868a516e78cc6ea67e8456d5bc26e439385d17f52e4b179d7c615bacf15aeae901ab8e172dc758 diff --git a/net-proxy/haproxy/files/haproxy-2.7.2-hpack.patch b/net-proxy/haproxy/files/haproxy-2.7.2-hpack.patch deleted file mode 100644 index f744eccfaba9..000000000000 --- a/net-proxy/haproxy/files/haproxy-2.7.2-hpack.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 494ae0c35c883632faf1d22b54083d3e97a7c129 Mon Sep 17 00:00:00 2001 -From: Aurelien DARRAGON -Date: Wed, 25 Jan 2023 16:35:00 +0100 -Subject: [PATCH] DEV: hpack: fix `trash` build regression - -Since 7d84439 ("BUILD: hpack: include global.h for the trash that is needed -in debug mode"), hpack decode tool fails to compile on targets that enable -USE_THREAD. (ie: linux-glibc target as reported by Christian Ruppert) - -When building hpack devtool, we are including src/hpack-dec.c as a dependency. -src/hpack-dec.c relies on the global trash whe debug mode is enabled. -But as we're building hpack tool with a limited scope of haproxy -sources, global trash (which is declared in src/chunk.c) is not available. -Thus, src/hpack-dec.c relies on a local 'trash' variable declared within -dev/hpack/decode.c - -This used to work fine until 7d84439. -But now that global.h is explicitely included in src/hpack-dec.c, -trash variable definition from decode.c conflicts with the one from global.h: - - In file included from include/../src/hpack-dec.c:35, - from dev/hpack/decode.c:87: - include/haproxy/global.h:52:35: error: thread-local declaration of 'trash' follows non-thread-local declaration - 52 | extern THREAD_LOCAL struct buffer trash; - -Adding THREAD_LOCAL attribute to 'decode.c' local trash variable definition -makes the compiler happy again. - -This should fix GH issue #2009 ---- - dev/hpack/decode.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dev/hpack/decode.c b/dev/hpack/decode.c -index ae825120f..13c95c77a 100644 ---- a/dev/hpack/decode.c -+++ b/dev/hpack/decode.c -@@ -30,7 +30,7 @@ uint8_t buf[MAX_RQ_SIZE]; - char trash_buf[MAX_RQ_SIZE]; - char tmp_buf[MAX_RQ_SIZE]; - --struct buffer trash = { .area = trash_buf, .data = 0, .size = sizeof(trash_buf) }; -+THREAD_LOCAL struct buffer trash = { .area = trash_buf, .data = 0, .size = sizeof(trash_buf) }; - struct buffer tmp = { .area = tmp_buf, .data = 0, .size = sizeof(tmp_buf) }; - - /* displays a long memory block at , assuming first byte of --- -2.34.1 - diff --git a/net-proxy/haproxy/haproxy-2.2.28.ebuild b/net-proxy/haproxy/haproxy-2.2.28.ebuild deleted file mode 100644 index 5a6ecbd9677d..000000000000 --- a/net-proxy/haproxy/haproxy-2.2.28.ebuild +++ /dev/null @@ -1,182 +0,0 @@ -# Copyright 1999-2023 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} " - - 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 - - newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} - newinitd "${FILESDIR}/${PN}.initd-r8" ${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 -} diff --git a/net-proxy/haproxy/haproxy-2.2.29.ebuild b/net-proxy/haproxy/haproxy-2.2.29.ebuild new file mode 100644 index 000000000000..5a6ecbd9677d --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.2.29.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2023 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} " + + 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 + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${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 +} diff --git a/net-proxy/haproxy/haproxy-2.4.21.ebuild b/net-proxy/haproxy/haproxy-2.4.21.ebuild deleted file mode 100644 index 66852a7eb802..000000000000 --- a/net-proxy/haproxy/haproxy-2.4.21.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -LUA_COMPAT=( lua5-4 lua5-3 ) - -[[ ${PV} == *9999 ]] && SCM="git-r3" -inherit toolchain-funcs 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= - ) - 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 ) -EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) -PATCHES=( "${FILESDIR}/${PN}-2.7.2-hpack.patch" ) - -haproxy_use() { - (( $# != 2 )) && die "${FUNCNAME} " - - 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) ) - args+=( $(haproxy_use prometheus-exporter PROMEX) ) - - # Bug #668002 - if use ppc || use arm || use hppa; then - TARGET_LDFLAGS=-latomic - 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}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} - emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_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} \$(SPEC_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} \$(SPEC_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_install() { - dosbin haproxy - - newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} - newinitd "${FILESDIR}/${PN}.initd-r8" ${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 ROADMAP 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 - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/syntax - doins admin/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 -} diff --git a/net-proxy/haproxy/haproxy-2.4.22.ebuild b/net-proxy/haproxy/haproxy-2.4.22.ebuild new file mode 100644 index 000000000000..41eaaee5bb19 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.4.22.ebuild @@ -0,0 +1,187 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs 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= + ) + 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 ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} " + + 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) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + 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}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_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} \$(SPEC_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} \$(SPEC_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_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${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 ROADMAP 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 + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/syntax + doins admin/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 +} diff --git a/net-proxy/haproxy/haproxy-2.6.8.ebuild b/net-proxy/haproxy/haproxy-2.6.8.ebuild deleted file mode 100644 index 484348984cb9..000000000000 --- a/net-proxy/haproxy/haproxy-2.6.8.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -LUA_COMPAT=( lua5-4 lua5-3 ) - -[[ ${PV} == *9999 ]] && SCM="git-r3" -inherit toolchain-funcs 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= - ) - 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 ) -EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) -PATCHES=( "${FILESDIR}/${PN}-2.7.2-hpack.patch" ) - -haproxy_use() { - (( $# != 2 )) && die "${FUNCNAME} " - - 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) ) - args+=( $(haproxy_use prometheus-exporter PROMEX) ) - - # Bug #668002 - if use ppc || use arm || use hppa; then - TARGET_LDFLAGS=-latomic - 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}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} - emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_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} \$(SPEC_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} \$(SPEC_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_install() { - dosbin haproxy - - newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} - newinitd "${FILESDIR}/${PN}.initd-r8" ${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 - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/syntax - doins admin/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 -} diff --git a/net-proxy/haproxy/haproxy-2.6.9.ebuild b/net-proxy/haproxy/haproxy-2.6.9.ebuild new file mode 100644 index 000000000000..83227697a6a5 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.6.9.ebuild @@ -0,0 +1,187 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs 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= + ) + 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 ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} " + + 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) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + 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}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_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} \$(SPEC_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} \$(SPEC_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_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${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 + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/syntax + doins admin/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 +} diff --git a/net-proxy/haproxy/haproxy-2.7.2.ebuild b/net-proxy/haproxy/haproxy-2.7.2.ebuild deleted file mode 100644 index 62b7196b5198..000000000000 --- a/net-proxy/haproxy/haproxy-2.7.2.ebuild +++ /dev/null @@ -1,188 +0,0 @@ -# Copyright 1999-2023 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI="7" - -LUA_COMPAT=( lua5-4 lua5-3 ) - -[[ ${PV} == *9999 ]] && SCM="git-r3" -inherit toolchain-funcs 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= - ) - 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 ) -EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) -PATCHES=( "${FILESDIR}/${P}-hpack.patch" ) - -haproxy_use() { - (( $# != 2 )) && die "${FUNCNAME} " - - 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) ) - args+=( $(haproxy_use prometheus-exporter PROMEX) ) - - # Bug #668002 - if use ppc || use arm || use hppa; then - TARGET_LDFLAGS=-latomic - 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}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} - emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_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} \$(SPEC_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} \$(SPEC_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_install() { - dosbin haproxy - - newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} - newinitd "${FILESDIR}/${PN}.initd-r8" ${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 - - if use vim-syntax ; then - insinto /usr/share/vim/vimfiles/syntax - doins admin/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 -} diff --git a/net-proxy/haproxy/haproxy-2.7.3.ebuild b/net-proxy/haproxy/haproxy-2.7.3.ebuild new file mode 100644 index 000000000000..83227697a6a5 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.7.3.ebuild @@ -0,0 +1,187 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" + +LUA_COMPAT=( lua5-4 lua5-3 ) + +[[ ${PV} == *9999 ]] && SCM="git-r3" +inherit toolchain-funcs 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= + ) + 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 ) +EXTRAS=( admin/halog admin/iprange dev/tcploop dev/hpack ) + +haproxy_use() { + (( $# != 2 )) && die "${FUNCNAME} " + + 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) ) + args+=( $(haproxy_use prometheus-exporter PROMEX) ) + + # Bug #668002 + if use ppc || use arm || use hppa; then + TARGET_LDFLAGS=-latomic + 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}" PCRE_LIB="${ESYSROOT}"/usr/$(get_libdir) ${args[@]} + emake -C admin/systemd CFLAGS="${CFLAGS} \$(SPEC_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} \$(SPEC_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} \$(SPEC_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_install() { + dosbin haproxy + + newconfd "${FILESDIR}/${PN}.confd-r1" ${PN} + newinitd "${FILESDIR}/${PN}.initd-r8" ${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 + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/syntax + doins admin/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 +} -- cgit v1.2.3-65-gdbad