diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-08-22 14:43:09 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-08-22 14:43:09 +0100 |
commit | c0a9f2400f704c438b0cef4f4105e7bb6c3cbbff (patch) | |
tree | f03dacf9fcbf88186d23a1c68620015cca2a06b2 /net-proxy/haproxy | |
parent | 4c4bbf21230bd972cf759b2a40b782aa4149fc1f (diff) |
gentoo auto-resync : 22:08:2022 - 14:43:09
Diffstat (limited to 'net-proxy/haproxy')
-rw-r--r-- | net-proxy/haproxy/Manifest | 2 | ||||
-rw-r--r-- | net-proxy/haproxy/haproxy-2.6.3.ebuild | 177 |
2 files changed, 179 insertions, 0 deletions
diff --git a/net-proxy/haproxy/Manifest b/net-proxy/haproxy/Manifest index ba980dd672ca..09e0785eb9a7 100644 --- a/net-proxy/haproxy/Manifest +++ b/net-proxy/haproxy/Manifest @@ -15,6 +15,7 @@ DIST haproxy-2.5.4.tar.gz 3819082 BLAKE2B fabc62ebaa968a11a49a6dd131198af31a49ad DIST haproxy-2.5.7.tar.gz 3832801 BLAKE2B 6d54135b56f84129dea497ddc935fecf593abccfb21fc647c7d166f9c1aa4abc670c66bf13e0923e353627d83d47345f632ae8212672c3b3da7a757fd5d24d7c SHA512 cf6994508d559401a84e1304c2b6829952a9b3a14365d03436da42ec7e4553c201ffde9e524044dfa48813e8e614d24095a87b0fae7d9145ce5e66b953666ee9 DIST haproxy-2.5.8.tar.gz 3838130 BLAKE2B fd02c285682815fd1837190b80184e110bb6a37b99dfa30e6cece628e62af6a5a145d97f5849e64364a286593d0ea206506c0b474485b22018a816b899744710 SHA512 99a49556864b178c024e73e5bd45051a7a6e512bbb52906ba6f3888e22a83e2b91198ed1c6a3bcbbc44c474a9ba6a6373fae4216fac8ecdb5d724f281b00fd68 DIST haproxy-2.6.2.tar.gz 3978933 BLAKE2B 8d080b175f574718fac6c58b9681a50d40d8ea4a562a05466668ee9ebe95c065aaa3eab33115c69cca356207f91927c2b949c0ec7d354fdad413ae91a41e60cd SHA512 8eef882145ce8da409d2fbd6fa5b7d383b9d52f8147ef697d61c512c07a8aa8029ae742b5682af5fe736c34398a5265ce9dc189e938f47395cf9e775471b5f55 +DIST haproxy-2.6.3.tar.gz 3986611 BLAKE2B 812046689ea032e2dffac39e48b9ed642f2758e4b9b70f1d57abdd1b6e685bc9d96d282bb208f125f8153b9d8bc3e771b7d0318952aa301c7ce456753ee61997 SHA512 4698d1119026e6f4c628422a87fb2db438d426399ea7743830a14518e75f3e3252830f67bea64903c560912b459605d569142fcac68aa08f12745d4d6cbc26af EBUILD haproxy-2.2.17.ebuild 5356 BLAKE2B 3e66fd23b24ac10f251ca4c0b20b9fc7f51c55a7235ea362b22f71f9e581c36c93dcb4046cc14dcf687669eb64a71e221f7affd9e811cf94361e4e86754fb3bd SHA512 316ba774a164527afb0c56da9fe3433cc3c96becef081388b5756d819e0962d15a61d67388e9776ee194582a1e7dd97105ee58e194c94689047aad38b20509c1 EBUILD haproxy-2.2.21.ebuild 5358 BLAKE2B 74e840c6a726c6c00e26de01e8ed0e9923a7a7623a9984a67a5d2322fe7be38eb26559cce3fc1bcfadeb00246e42c0ed076a2b2662776f596e14a8f9ab1f5d12 SHA512 2049483a3f1eb1907573fcb134d9cfff2b27dc50a45df9025c3e734a1bde76d4cc7f5c0affdf52877889d267b32bb1fcc402dd1f8d9338004e9aac2aac879dd7 EBUILD haproxy-2.2.24.ebuild 5333 BLAKE2B 8814d4213f00ee1a095d88361e4ec82530f29e6b2c616cd5953dbfb2a1a5e286f83c5995e6344e0f49cd1a9b057cc31ab9b68034587ff716e09d97227f1eb4f2 SHA512 359a68d2054f4260d0b375d46e19ba391aee72e6cbe5e51e8c098916b42e229372830668bccf44935eea81f01848d76751df85a00f10de74df0a86785b624490 @@ -29,6 +30,7 @@ EBUILD haproxy-2.5.7.ebuild 5571 BLAKE2B 4a356c40d93c8f3aa2c88cb37bbe541fa897ab0 EBUILD haproxy-2.5.8.ebuild 5574 BLAKE2B 0745336c121fa432739cc6de7fb16c0ce610adc5b9fe24e4e1e197fefba04bba9a4f53939caf7482335690159beef8e53d1c063e968f7562801e3c4a1d20031c SHA512 5d1fd311ea9bc6c542e525146bcc4fcad608f4602ed5e813e2021da13490c9e05cd9ee7b863ca627bf04c9c7ed1f00da7f00dd5d7e6e463abd54cd226d1a5f8a EBUILD haproxy-2.5.9999.ebuild 5574 BLAKE2B 0745336c121fa432739cc6de7fb16c0ce610adc5b9fe24e4e1e197fefba04bba9a4f53939caf7482335690159beef8e53d1c063e968f7562801e3c4a1d20031c SHA512 5d1fd311ea9bc6c542e525146bcc4fcad608f4602ed5e813e2021da13490c9e05cd9ee7b863ca627bf04c9c7ed1f00da7f00dd5d7e6e463abd54cd226d1a5f8a EBUILD haproxy-2.6.2-r1.ebuild 5573 BLAKE2B fce77648e3fde52958f5153b5ce74f57e33a3872b0e72efe9b4ad1eaf04a91467bc634a9e89d5d099d99bea23ef4b99afe3e8830e94726c0864986c6e189205e SHA512 5c14c725a4327f44996ac3d51ac9009602283717ad713f9cca4a4a9ef110af782b6da4f24db52c711d97a3cdfe71c65504e7d76490fc4706034e66743ef722ce +EBUILD haproxy-2.6.3.ebuild 5573 BLAKE2B fce77648e3fde52958f5153b5ce74f57e33a3872b0e72efe9b4ad1eaf04a91467bc634a9e89d5d099d99bea23ef4b99afe3e8830e94726c0864986c6e189205e SHA512 5c14c725a4327f44996ac3d51ac9009602283717ad713f9cca4a4a9ef110af782b6da4f24db52c711d97a3cdfe71c65504e7d76490fc4706034e66743ef722ce EBUILD haproxy-2.6.9999.ebuild 5573 BLAKE2B fce77648e3fde52958f5153b5ce74f57e33a3872b0e72efe9b4ad1eaf04a91467bc634a9e89d5d099d99bea23ef4b99afe3e8830e94726c0864986c6e189205e SHA512 5c14c725a4327f44996ac3d51ac9009602283717ad713f9cca4a4a9ef110af782b6da4f24db52c711d97a3cdfe71c65504e7d76490fc4706034e66743ef722ce EBUILD haproxy-9999.ebuild 5573 BLAKE2B fce77648e3fde52958f5153b5ce74f57e33a3872b0e72efe9b4ad1eaf04a91467bc634a9e89d5d099d99bea23ef4b99afe3e8830e94726c0864986c6e189205e SHA512 5c14c725a4327f44996ac3d51ac9009602283717ad713f9cca4a4a9ef110af782b6da4f24db52c711d97a3cdfe71c65504e7d76490fc4706034e66743ef722ce MISC metadata.xml 2063 BLAKE2B ddd51cff72847b617a457ac2baee4dd18a90a6a23e0982bc932ab8d3d101312dc2265884d38fcdc1a1cbb3d982b078e5b03a3c13fce07568d9d477688d210b09 SHA512 2198d3735f32f9c22787b1b43fd59bd6a0018ae25e104ee34ce0f27682ad8d6405a37c1c890b5eb41deabe5a5011d07d379e5df780bd8ab2877bd435bb875a1e diff --git a/net-proxy/haproxy/haproxy-2.6.3.ebuild b/net-proxy/haproxy/haproxy-2.6.3.ebuild new file mode 100644 index 000000000000..6e17e38ddf96 --- /dev/null +++ b/net-proxy/haproxy/haproxy-2.6.3.ebuild @@ -0,0 +1,177 @@ +# Copyright 1999-2022 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 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= + ) + 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} <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) ) + 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 + dosym ../sbin/haproxy /usr/bin/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 +} |