summaryrefslogtreecommitdiff
path: root/net-proxy/haproxy
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2019-02-10 15:40:27 +0000
committerV3n3RiX <venerix@redcorelinux.org>2019-02-10 15:40:27 +0000
commit6bc2e4d7c5906e46a8f275a876ead6ec41aca5bb (patch)
treecee0a97398040001220ece3cd48c3d568bcddb4a /net-proxy/haproxy
parent1db00cc6e94b90c08090bb5b8c406622946c4ae5 (diff)
gentoo resync : 10.02.2019
Diffstat (limited to 'net-proxy/haproxy')
-rw-r--r--net-proxy/haproxy/Manifest4
-rw-r--r--net-proxy/haproxy/haproxy-1.8.18.ebuild169
-rw-r--r--net-proxy/haproxy/haproxy-1.9.4.ebuild171
3 files changed, 344 insertions, 0 deletions
diff --git a/net-proxy/haproxy/Manifest b/net-proxy/haproxy/Manifest
index 54ef356a2e48..d7a3c137f7a9 100644
--- a/net-proxy/haproxy/Manifest
+++ b/net-proxy/haproxy/Manifest
@@ -7,19 +7,23 @@ DIST haproxy-1.7.10.tar.gz 1750937 BLAKE2B 26d970862e415b079d4130fd00564677584a7
DIST haproxy-1.7.11.tar.gz 1752129 BLAKE2B 1947ab837f6b81761eec931e97c7349462561abecc78b2b58b285ebb4b0ae498753d236f3a243d3b5c1115a9ff6e5fe9392d428314a6342e2c1907d6886e09e4 SHA512 48ee30a1057e92971c041b088b6aef16d6843da9ecee9b738aaa64bb55d3c3b0be090a37bb5fc63ac42fe34ce994820349cc770756136c823051039fa6d01f74
DIST haproxy-1.8.13.tar.gz 2063046 BLAKE2B 9ebccf2520719cdf209bc9a87bf28d015b5b673e0d017d5387af4025f930ac401f6a2cfa851583ffe6b6645b7b91ad255bb5db737688a1f310958072a11c8a80 SHA512 54d4cb0721a3868267d7e085b3d3bb050384e4279eb49e88abb925bb3ea8cc39ef9069bdc99b7b18a23fd22e0d29e24dfcb8a0507ddca9243a845e4418be9cc5
DIST haproxy-1.8.17.tar.gz 2077525 BLAKE2B b4419d541a82399995df448410a8756301ad561001bfe45cfa1c21f6f01bfadb51bb58aeda2e8e34f0580356c8ca136568fd8f2d86507a88e3cd84924b861d5c SHA512 0887d5d84c2cce9355fae032ba82e4b7b94c89d3053f209046a555101b5750c10b51feb38fd14245f806fb4f50ec1dcdf2b23b4f80578abd4a27693fc29b91b1
+DIST haproxy-1.8.18.tar.gz 2080500 BLAKE2B fcc51fbe6c496dbf99e49add4b582ec9357c94daebaea6396e131b4e6f323fdcc11d40039b9de9b6e2762c46863a1efd5062524df3d42991eef73ae3a42a9787 SHA512 7bcdc8fd110bb77fa3b1f735474218fb766b7701b87e939249697cb780aedf039b3d8f59cbfb5fa271473ad789df4ac60a64cbb6c61330e1125a13676ad25fc0
DIST haproxy-1.8.8.tar.gz 2054534 BLAKE2B 5eabd37dfb79783dc20425cbb16ca1e1afed23861f66c9e8a738dd56d9ca35b3ceb2604c308543ca99222aa867e11ff613fc09012669882a4bdaaff03cb76450 SHA512 8310f84b364348600273c295a3b315a79cba1f782b86b47d8d47b3ffd1e6fb62fd278c4f2dfa185d0a269f73c1067695a763733736877989a941162b625462a1
DIST haproxy-1.8.9.tar.gz 2057051 BLAKE2B d81d18f68a27ae8a77660c1ecb1dfc28599263ebfd57f25ea574af2b101b35eb7a1a89ba4034b55dfa89673ae6ac4c0dca5428b4b494a02184b1b157850ce96b SHA512 e59c29af3a39d6212f012ae8341b169436e10e42fadaf8f1aa68d2bb7ee181fd1fe3b74640bfcd8c37c17dfc5062b36bd69d90290d7c59cd3e4648ef2ab1c8dd
DIST haproxy-1.9.2.tar.gz 2350356 BLAKE2B ba147007999d65d214545e5c20567aaa3db67a292eb0df1e1e4aaaeeb7e1c90f593725b112cd222537346cec45b557a2a99e30ef5d4a91bb4b5804212b765121 SHA512 42ad5048c85ac9fdc7ba1b00917508255ffb66f63df1c24382beba6f77765d786b0ab16ddafe5e290f81ea07bd15c63277b5749c4bafab0721e57f837b1bebf8
DIST haproxy-1.9.3.tar.gz 2353387 BLAKE2B c3b5d7c4dba4a2557dfbee857e8e2a7ab6d142423788c7cabf96c3d0a0dc4a2dde857db47b0036eac7288249d8416eba8252f0c08290739862457214497e3438 SHA512 5ece759d460d6daba8ed82039fb24037c2b8b36f7ce0f9c9a703ca049ac0d03807ba673b61ae2d74a9e7253b6fb1ca82c504734456c7fb0fec322b67e59ba835
+DIST haproxy-1.9.4.tar.gz 2357935 BLAKE2B 761118da39742eff07e3bc2772a9318a6aaddbeb706e684afa619a11e4a6f1e91f35212b22b58474334621daaec160a4f9183a65698343a4fbb64d9cb38ad049 SHA512 804baeb0493bfaedce59f04a5c7eedd703aec11fbfc9744c6d3f642e3200a5fccbfc92d9da9555a2b266534b9cd5bb81308c57c7627512b951e5a83cb1b24cb0
EBUILD haproxy-1.6.11-r2.ebuild 4672 BLAKE2B 74b3adb390a7fa1d596e8e91f4ca5fbb46d7dfd201527956a514a3f0855f575b2fc1115b388126d8e54a1a80f13b5b62acb59f53eb92a5bd9ef3f02ab3867c38 SHA512 843c39796ab641d5036dc2f1d151da41acc5820713dd2c2857c551d684b0a5922abead4e9c2afb031bb75635842e9ead645ced6d9cebfa97ccc2f719caed8c58
EBUILD haproxy-1.6.14.ebuild 4608 BLAKE2B d85f4160498f8af8fcc05ccdbe68d771b9d8b5cc71412be2c7430cf769c091f75030d678bf29f56d3bbb432c04f26fd45686333c8b2e282c25ae2dee7eceeb00 SHA512 32ae8badac30ea423613301815c4ccb07a6b81368dc92dc561f13d7432cde041048735cc4790659b4f1827a77e7009120e7977a54a15d164229a41d54d1b1e1b
EBUILD haproxy-1.7.10.ebuild 4628 BLAKE2B 267e5228e4c1eb2386ab13a6f21d018e8f8643d9adcdb61851d150b281e2241eda97c701b4577fef8feee00c01409f8f2fc715a9681874fc05fc3f89c09da440 SHA512 941f9c3e0982ee44d51339b3feef43d93c7259413f2d77f8919e63056a0d0504468bd0637965141842af6c8dbb223f23155ffc0728f54bc1bbf539eef678c235
EBUILD haproxy-1.7.11.ebuild 4632 BLAKE2B 06dd613111ce7410ce9190b2cbd825f4b9acd16d3c9995ca507fda90a77696e6c931b2f2caeb916ed0f6894110edaa056df5923c204107230af6a4f596c061ab SHA512 bb080ed92cbef8e2851262648519b5e0563749e3bd92396707791775801bf19f029e57fbe4fa029ea240cbc8f55b14e91d5656e85101fb2dc1e8ae219d111d51
EBUILD haproxy-1.8.13.ebuild 4886 BLAKE2B 61bc37ea42b0dd5bc447b68cb45532c184f14ad40461faddb940e041682e88ac81af36ce44d961d1011bc54b788ad9baa4c9447950a97708ea33dcb9d677fc32 SHA512 5dad241368a64aba2b07e429ab82adff67df556fc2b5a447d4863a12d50098545127f30725887b447e6ed583e39177458267777c5b321636211aab5a61b85a65
EBUILD haproxy-1.8.17.ebuild 4886 BLAKE2B 94d1654d71261f4d4e3d4984cf2afae1721c3f5d85f5caec1f7ba7be2a2f3c0889a2de02fd542b18f8a2fe0222debfd35f47c3fdcde0cbb8122dc493fec021a5 SHA512 a006987c4cf8f56bca0347537cf86e9282d5f0b5cb1864665104d1e93da53084711bac338dce99b1f6cdccfa1fec7534dc58cb7139c126fcc3b6131d371b7dce
+EBUILD haproxy-1.8.18.ebuild 4886 BLAKE2B 94d1654d71261f4d4e3d4984cf2afae1721c3f5d85f5caec1f7ba7be2a2f3c0889a2de02fd542b18f8a2fe0222debfd35f47c3fdcde0cbb8122dc493fec021a5 SHA512 a006987c4cf8f56bca0347537cf86e9282d5f0b5cb1864665104d1e93da53084711bac338dce99b1f6cdccfa1fec7534dc58cb7139c126fcc3b6131d371b7dce
EBUILD haproxy-1.8.8.ebuild 4889 BLAKE2B a40d2bf75ece4fcba6f0ac6e8bfcf81763ded4b315781183230a8b514f5931de4c383afbe8d4152f4d2d4d496fd2421f2f10d04e4240b52a7ab15f3c31bc0864 SHA512 2e132cd3018d845450a94857a544c0306a5cf0efe08d5102a7096a424355a4b628bf85c69f02f812577d134ebabef197aa2bb4ff6f5b8f8d3609d072a55af86e
EBUILD haproxy-1.8.9.ebuild 4885 BLAKE2B beb86eb5714d77b8dad4ac0abc55b46a0e4727ceae1a503ff1febe3943f6393f8ce99f97c098e4046c17de04a32c4f9d0a8708fd4c81eeb69e82f900f156285a SHA512 93290df98b67334d2c89ced563d15d25943a5c87c691fdce2ace423ca38acc364f9307f8a28a6654fb390d41c72ec627e005d0179d10138d92396365496ab8b8
EBUILD haproxy-1.9.2.ebuild 4999 BLAKE2B 068dd442f30c7b815164143fbc33a7bd390d0684a68b3096dde76b31e68cccf662a33589180a81006794e1e0a477dbb6ec9c62faa002ec56beda02bc0d3b062e SHA512 56bd202b4c16c9ddd2e2aa13eeb953e5a00b3975e5427ba7d02db2d78ab7f71857a13b3122cae77fc3b7c33cb58c12a48220b408ebca57622f47b7d497395aff
EBUILD haproxy-1.9.3.ebuild 4999 BLAKE2B 068dd442f30c7b815164143fbc33a7bd390d0684a68b3096dde76b31e68cccf662a33589180a81006794e1e0a477dbb6ec9c62faa002ec56beda02bc0d3b062e SHA512 56bd202b4c16c9ddd2e2aa13eeb953e5a00b3975e5427ba7d02db2d78ab7f71857a13b3122cae77fc3b7c33cb58c12a48220b408ebca57622f47b7d497395aff
+EBUILD haproxy-1.9.4.ebuild 4999 BLAKE2B 068dd442f30c7b815164143fbc33a7bd390d0684a68b3096dde76b31e68cccf662a33589180a81006794e1e0a477dbb6ec9c62faa002ec56beda02bc0d3b062e SHA512 56bd202b4c16c9ddd2e2aa13eeb953e5a00b3975e5427ba7d02db2d78ab7f71857a13b3122cae77fc3b7c33cb58c12a48220b408ebca57622f47b7d497395aff
EBUILD haproxy-1.9.9999.ebuild 4889 BLAKE2B a40d2bf75ece4fcba6f0ac6e8bfcf81763ded4b315781183230a8b514f5931de4c383afbe8d4152f4d2d4d496fd2421f2f10d04e4240b52a7ab15f3c31bc0864 SHA512 2e132cd3018d845450a94857a544c0306a5cf0efe08d5102a7096a424355a4b628bf85c69f02f812577d134ebabef197aa2bb4ff6f5b8f8d3609d072a55af86e
MISC metadata.xml 2071 BLAKE2B 303b68ae0788743ec5a8d893e69a87fd2d22188b2166f75c23cd2a47c06e69bfe43745016fafd64b5b298f7b56453fcbfb6b4d9bfede1e08e0c603bce7b0955f SHA512 4ac7fd3dcae2293fa3cdb54fba7dfd9cfbc28f5fca33442dd970861ca26672a0b21d825d36099fbf234831a403fb41eabe02d48eca2a971eaef857516427394b
diff --git a/net-proxy/haproxy/haproxy-1.8.18.ebuild b/net-proxy/haproxy/haproxy-1.8.18.ebuild
new file mode 100644
index 000000000000..be9a23a9cd27
--- /dev/null
+++ b/net-proxy/haproxy/haproxy-1.8.18.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+[[ ${PV} == *9999 ]] && SCM="git-r3"
+inherit user versionator toolchain-funcs flag-o-matic systemd linux-info $SCM
+
+MY_P="${PN}-${PV/_beta/-dev}"
+
+DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
+HOMEPAGE="http://www.haproxy.org"
+if [[ ${PV} != *9999 ]]; then
+ SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~ppc ~x86"
+else
+ EGIT_REPO_URI="http://git.haproxy.org/git/haproxy-$(get_version_component_range 1-2).git/"
+ EGIT_BRANCH=master
+fi
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+IUSE="+crypt doc examples libressl slz net_ns +pcre pcre-jit pcre2 pcre2-jit ssl
+systemd +threads tools vim-syntax +zlib lua device-atlas 51degrees wurfl"
+REQUIRED_USE="pcre-jit? ( pcre )
+ pcre2-jit? ( pcre2 )
+ pcre? ( !pcre2 )
+ device-atlas? ( pcre )
+ ?? ( slz zlib )"
+
+DEPEND="
+ pcre? (
+ dev-libs/libpcre
+ pcre-jit? ( dev-libs/libpcre[jit] )
+ )
+ pcre2? (
+ dev-libs/libpcre
+ pcre2-jit? ( dev-libs/libpcre2[jit] )
+ )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0=[zlib?] )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ slz? ( dev-libs/libslz:= )
+ zlib? ( sys-libs/zlib )
+ lua? ( dev-lang/lua:5.3 )
+ device-atlas? ( dev-libs/device-atlas-api-c )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
+CONTRIBS=( halog iprange )
+# ip6range is present in 1.6, but broken.
+version_is_at_least 1.7.0 $PV && CONTRIBS+=( ip6range spoa_example tcploop )
+# TODO: mod_defender - requires apache / APR, modsecurity - the same
+version_is_at_least 1.8.0 $PV && CONTRIBS+=( hpack )
+
+haproxy_use() {
+ (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
+
+ usex "${1}" "USE_${2}=1" "USE_${2}="
+}
+
+pkg_setup() {
+ enewgroup haproxy
+ enewuser haproxy -1 -1 -1 haproxy
+
+ if use net_ns; then
+ CONFIG_CHECK="~NET_NS"
+ linux-info_pkg_setup
+ fi
+}
+
+src_compile() {
+ local -a args=(
+ TARGET=linux2628
+ USE_GETADDRINFO=1
+ USE_TFO=1
+ )
+
+ # TODO: PCRE2_WIDTH?
+ args+=( $(haproxy_use threads THREAD) )
+ args+=( $(haproxy_use crypt LIBCRYPT) )
+ args+=( $(haproxy_use net_ns NS) )
+ args+=( $(haproxy_use pcre PCRE) )
+ args+=( $(haproxy_use pcre-jit PCRE_JIT) )
+ args+=( $(haproxy_use ssl OPENSSL) )
+ args+=( $(haproxy_use slz SLZ) )
+ args+=( $(haproxy_use zlib ZLIB) )
+ args+=( $(haproxy_use lua LUA) )
+ args+=( $(haproxy_use 51degrees 51DEGREES) )
+ args+=( $(haproxy_use device-atlas DEVICEATLAS) )
+ args+=( $(haproxy_use wurfl WURFL) )
+ args+=( $(haproxy_use systemd SYSTEMD) )
+
+ # For now, until the strict-aliasing breakage will be fixed
+ append-cflags -fno-strict-aliasing
+
+ emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
+ emake -C contrib/systemd SBINDIR=/usr/sbin
+
+ if use tools ; then
+ for contrib in ${CONTRIBS[@]} ; do
+ emake -C contrib/${contrib} \
+ CFLAGS="${CFLAGS}" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
+ done
+ fi
+}
+
+src_install() {
+ dosbin haproxy
+ dosym ../sbin/haproxy /usr/bin/haproxy
+
+ newconfd "${FILESDIR}/${PN}.confd" $PN
+ newinitd "${FILESDIR}/${PN}.initd-r6" $PN
+
+ doman doc/haproxy.1
+
+ systemd_dounit contrib/systemd/haproxy.service
+
+ einstalldocs
+
+ # The errorfiles are used by upstream defaults.
+ insinto /etc/haproxy/errors/
+ doins examples/errorfiles/*
+
+ if use doc; then
+ dodoc ROADMAP doc/*.txt
+ #if use lua; then
+ # TODO: doc/lua-api/
+ #fi
+ fi
+
+ if use tools ; then
+ has halog "${CONTRIBS[@]}" && dobin contrib/halog/halog
+ has "iprange" "${CONTRIBS[@]}" && newbin contrib/iprange/iprange haproxy_iprange
+ has "ip6range" "${CONTRIBS[@]}" && newbin contrib/ip6range/ip6range haproxy_ip6range
+ has "spoa_example" "${CONTRIBS[@]}" && newbin contrib/spoa_example/spoa haproxy_spoa_example
+ has "spoa_example" "${CONTRIBS[@]}" && newdoc contrib/spoa_example/README README.spoa_example
+ has "tcploop" "${CONTRIBS[@]}" && newbin contrib/tcploop/tcploop haproxy_tcploop
+ has "hpack" "${CONTRIBS[@]}" && newbin contrib/hpack/gen-rht haproxy_hpack
+ fi
+
+ if use examples ; then
+ docinto examples
+ dodoc examples/*.cfg
+ dodoc examples/seamless_reload.txt
+ fi
+
+ if use vim-syntax ; then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins examples/haproxy.vim
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then
+ ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service."
+ ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created."
+ ewarn "Make use of them with the \"user\" and \"group\" directives."
+
+ if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then
+ einfo "Please consult the installed documentation for learning the configuration file's syntax."
+ einfo "The documentation and sample configuration files are installed here:"
+ einfo " ${EROOT}usr/share/doc/${PF}"
+ fi
+ fi
+}
diff --git a/net-proxy/haproxy/haproxy-1.9.4.ebuild b/net-proxy/haproxy/haproxy-1.9.4.ebuild
new file mode 100644
index 000000000000..2212a12930ac
--- /dev/null
+++ b/net-proxy/haproxy/haproxy-1.9.4.ebuild
@@ -0,0 +1,171 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+
+[[ ${PV} == *9999 ]] && SCM="git-r3"
+inherit user versionator toolchain-funcs flag-o-matic systemd linux-info $SCM
+
+MY_P="${PN}-${PV/_beta/-dev}"
+
+DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
+HOMEPAGE="http://www.haproxy.org"
+if [[ ${PV} != *9999 ]]; then
+ SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${MY_P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~ppc ~x86"
+else
+ EGIT_REPO_URI="http://git.haproxy.org/git/haproxy-$(get_version_component_range 1-2).git/"
+ EGIT_BRANCH=master
+fi
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+IUSE="+crypt doc examples libressl slz net_ns +pcre pcre-jit pcre2 pcre2-jit ssl
+systemd +threads tools vim-syntax +zlib lua device-atlas 51degrees wurfl"
+REQUIRED_USE="pcre-jit? ( pcre )
+ pcre2-jit? ( pcre2 )
+ pcre? ( !pcre2 )
+ device-atlas? ( pcre )
+ ?? ( slz zlib )"
+
+DEPEND="
+ pcre? (
+ dev-libs/libpcre
+ pcre-jit? ( dev-libs/libpcre[jit] )
+ )
+ pcre2? (
+ dev-libs/libpcre
+ pcre2-jit? ( dev-libs/libpcre2[jit] )
+ )
+ ssl? (
+ !libressl? ( dev-libs/openssl:0=[zlib?] )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ slz? ( dev-libs/libslz:= )
+ zlib? ( sys-libs/zlib )
+ lua? ( dev-lang/lua:5.3 )
+ device-atlas? ( dev-libs/device-atlas-api-c )"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
+CONTRIBS=( halog iprange )
+# ip6range is present in 1.6, but broken.
+version_is_at_least 1.7.0 $PV && CONTRIBS+=( ip6range spoa_example tcploop )
+# TODO: mod_defender - requires apache / APR, modsecurity - the same
+version_is_at_least 1.8.0 $PV && CONTRIBS+=( hpack )
+
+haproxy_use() {
+ (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
+
+ usex "${1}" "USE_${2}=1" "USE_${2}="
+}
+
+pkg_setup() {
+ enewgroup haproxy
+ enewuser haproxy -1 -1 -1 haproxy
+
+ if use net_ns; then
+ CONFIG_CHECK="~NET_NS"
+ linux-info_pkg_setup
+ fi
+}
+
+src_compile() {
+ local -a args=(
+ V=1
+ TARGET=linux2628
+ USE_GETADDRINFO=1
+ USE_TFO=1
+ )
+
+ # TODO: PCRE2_WIDTH?
+ args+=( $(haproxy_use threads THREAD) )
+ args+=( $(haproxy_use crypt LIBCRYPT) )
+ args+=( $(haproxy_use net_ns NS) )
+ args+=( $(haproxy_use pcre PCRE) )
+ args+=( $(haproxy_use pcre-jit PCRE_JIT) )
+ args+=( $(haproxy_use ssl OPENSSL) )
+ args+=( $(haproxy_use slz SLZ) )
+ args+=( $(haproxy_use zlib ZLIB) )
+ args+=( $(haproxy_use lua LUA) )
+ args+=( $(haproxy_use 51degrees 51DEGREES) )
+ args+=( $(haproxy_use device-atlas DEVICEATLAS) )
+ args+=( $(haproxy_use wurfl WURFL) )
+ args+=( $(haproxy_use systemd SYSTEMD) )
+
+ # For now, until the strict-aliasing breakage will be fixed
+ append-cflags -fno-strict-aliasing
+
+ emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
+ emake -C contrib/systemd SBINDIR=/usr/sbin
+
+ if use tools ; then
+ for contrib in ${CONTRIBS[@]} ; do
+ # Those two includes are a workaround for hpack Makefile missing those
+ emake -C contrib/${contrib} \
+ CFLAGS="${CFLAGS} -I../../include/ -I../../ebtree/" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
+ done
+ fi
+}
+
+src_install() {
+ dosbin haproxy
+ dosym ../sbin/haproxy /usr/bin/haproxy
+
+ newconfd "${FILESDIR}/${PN}.confd" $PN
+ newinitd "${FILESDIR}/${PN}.initd-r6" $PN
+
+ doman doc/haproxy.1
+
+ systemd_dounit contrib/systemd/haproxy.service
+
+ einstalldocs
+
+ # The errorfiles are used by upstream defaults.
+ insinto /etc/haproxy/errors/
+ doins examples/errorfiles/*
+
+ if use doc; then
+ dodoc ROADMAP doc/*.txt
+ #if use lua; then
+ # TODO: doc/lua-api/
+ #fi
+ fi
+
+ if use tools ; then
+ has halog "${CONTRIBS[@]}" && dobin contrib/halog/halog
+ has "iprange" "${CONTRIBS[@]}" && newbin contrib/iprange/iprange haproxy_iprange
+ has "ip6range" "${CONTRIBS[@]}" && newbin contrib/ip6range/ip6range haproxy_ip6range
+ has "spoa_example" "${CONTRIBS[@]}" && newbin contrib/spoa_example/spoa haproxy_spoa_example
+ has "spoa_example" "${CONTRIBS[@]}" && newdoc contrib/spoa_example/README README.spoa_example
+ has "tcploop" "${CONTRIBS[@]}" && newbin contrib/tcploop/tcploop haproxy_tcploop
+ has "hpack" "${CONTRIBS[@]}" && newbin contrib/hpack/gen-rht haproxy_hpack
+ fi
+
+ if use examples ; then
+ docinto examples
+ dodoc examples/*.cfg
+ dodoc examples/seamless_reload.txt
+ fi
+
+ if use vim-syntax ; then
+ insinto /usr/share/vim/vimfiles/syntax
+ doins examples/haproxy.vim
+ fi
+}
+
+pkg_postinst() {
+ if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then
+ ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service."
+ ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created."
+ ewarn "Make use of them with the \"user\" and \"group\" directives."
+
+ if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then
+ einfo "Please consult the installed documentation for learning the configuration file's syntax."
+ einfo "The documentation and sample configuration files are installed here:"
+ einfo " ${EROOT}usr/share/doc/${PF}"
+ fi
+ fi
+}