Gentoo Archives: gentoo-commits

From: Christian Ruppert <idl0r@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: net-proxy/haproxy/
Date: Tue, 05 Jun 2018 07:19:38
Message-Id: 1528183162.481ad7abcfc6e0448bea5d8e2cf8bc060788af94.idl0r@gentoo
1 commit: 481ad7abcfc6e0448bea5d8e2cf8bc060788af94
2 Author: Christian Ruppert <idl0r <AT> gentoo <DOT> org>
3 AuthorDate: Tue Jun 5 07:19:10 2018 +0000
4 Commit: Christian Ruppert <idl0r <AT> gentoo <DOT> org>
5 CommitDate: Tue Jun 5 07:19:22 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=481ad7ab
7
8 net-proxy/haproxy: Version bumps
9
10 Package-Manager: Portage-2.3.40, Repoman-2.3.9
11
12 net-proxy/haproxy/Manifest | 2 +
13 net-proxy/haproxy/haproxy-1.7.11.ebuild | 159 ++++++++++++++++++++++++++++++
14 net-proxy/haproxy/haproxy-1.8.9.ebuild | 169 ++++++++++++++++++++++++++++++++
15 3 files changed, 330 insertions(+)
16
17 diff --git a/net-proxy/haproxy/Manifest b/net-proxy/haproxy/Manifest
18 index 82728333915..4805d7b6997 100644
19 --- a/net-proxy/haproxy/Manifest
20 +++ b/net-proxy/haproxy/Manifest
21 @@ -3,4 +3,6 @@ DIST haproxy-1.5.19.tar.gz 1362834 BLAKE2B 72543acf3e78b804e778746ae0dbd1a386e31
22 DIST haproxy-1.6.11.tar.gz 1574029 BLAKE2B 553f74c2c24a1b07cef2acc6fbc4def1bbe81e41a7b01ba44937c6ff2e14c1f1a4f1472dde229ecef1ed3170f4e89d356324cb2ce1e7d7064837f37fbd4c3b46 SHA512 73ff1c7301197b3bd75a3b1355787419676854d132ce2dcdacb2a296e297dcdfc52b0c571a4fb715e369f1126e1a58196fabb21f828c880f15904032da78e434
23 DIST haproxy-1.6.14.tar.gz 1583859 BLAKE2B 91695f0b3d901ba70b6bce6572c2f549479c28010ed391b20faae7cd1fd84cdb181e560353337eb9230e38ac2570673725884c131501820c3ef4559ef12f95f2 SHA512 389be3935d901af1fb3a748b5bf73a454578a3ca3e4cc0b881980c2f1e875c47feb2681b42f8d9244d70777261a965c8e47cf5175b7790ff995bff8333902a11
24 DIST haproxy-1.7.10.tar.gz 1750937 BLAKE2B 26d970862e415b079d4130fd00564677584a7aad74d6812cabed36de9a629321330434b7d4fdf7c2e8b2945b7f394ca33e444158e7fa9b49937db501ea33e78a SHA512 ca6c50848c559ee2ffb9af2d281c3931473dd90d1686d95d962cf604cd92d2feb2b63e006e217cf9078cf08fdd73dc523318c97e13400bc0ef325de47111394e
25 +DIST haproxy-1.7.11.tar.gz 1752129 BLAKE2B 1947ab837f6b81761eec931e97c7349462561abecc78b2b58b285ebb4b0ae498753d236f3a243d3b5c1115a9ff6e5fe9392d428314a6342e2c1907d6886e09e4 SHA512 48ee30a1057e92971c041b088b6aef16d6843da9ecee9b738aaa64bb55d3c3b0be090a37bb5fc63ac42fe34ce994820349cc770756136c823051039fa6d01f74
26 DIST haproxy-1.8.8.tar.gz 2054534 BLAKE2B 5eabd37dfb79783dc20425cbb16ca1e1afed23861f66c9e8a738dd56d9ca35b3ceb2604c308543ca99222aa867e11ff613fc09012669882a4bdaaff03cb76450 SHA512 8310f84b364348600273c295a3b315a79cba1f782b86b47d8d47b3ffd1e6fb62fd278c4f2dfa185d0a269f73c1067695a763733736877989a941162b625462a1
27 +DIST haproxy-1.8.9.tar.gz 2057051 BLAKE2B d81d18f68a27ae8a77660c1ecb1dfc28599263ebfd57f25ea574af2b101b35eb7a1a89ba4034b55dfa89673ae6ac4c0dca5428b4b494a02184b1b157850ce96b SHA512 e59c29af3a39d6212f012ae8341b169436e10e42fadaf8f1aa68d2bb7ee181fd1fe3b74640bfcd8c37c17dfc5062b36bd69d90290d7c59cd3e4648ef2ab1c8dd
28
29 diff --git a/net-proxy/haproxy/haproxy-1.7.11.ebuild b/net-proxy/haproxy/haproxy-1.7.11.ebuild
30 new file mode 100644
31 index 00000000000..38e5fbe7304
32 --- /dev/null
33 +++ b/net-proxy/haproxy/haproxy-1.7.11.ebuild
34 @@ -0,0 +1,159 @@
35 +# Copyright 1999-2018 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI="6"
39 +
40 +[[ ${PV} == *9999 ]] && SCM="git-r3"
41 +inherit user versionator toolchain-funcs flag-o-matic systemd linux-info $SCM
42 +
43 +MY_P="${PN}-${PV/_beta/-dev}"
44 +
45 +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
46 +HOMEPAGE="http://haproxy.1wt.eu"
47 +if [[ ${PV} != *9999 ]]; then
48 + SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${MY_P}.tar.gz"
49 + KEYWORDS="~amd64 ~arm ~ppc ~x86"
50 +else
51 + EGIT_REPO_URI="http://git.haproxy.org/git/haproxy-$(get_version_component_range 1-2).git/"
52 + EGIT_BRANCH=master
53 +fi
54 +
55 +LICENSE="GPL-2 LGPL-2.1"
56 +SLOT="0"
57 +IUSE="+crypt doc examples libressl slz net_ns +pcre pcre-jit ssl tools vim-syntax +zlib lua device-atlas 51degrees wurfl"
58 +REQUIRED_USE="pcre-jit? ( pcre )
59 + device-atlas? ( pcre )
60 + ?? ( slz zlib )"
61 +
62 +DEPEND="
63 + pcre? (
64 + dev-libs/libpcre
65 + pcre-jit? ( dev-libs/libpcre[jit] )
66 + )
67 + ssl? (
68 + !libressl? ( dev-libs/openssl:0=[zlib?] )
69 + libressl? ( dev-libs/libressl:0= )
70 + )
71 + slz? ( dev-libs/libslz:= )
72 + zlib? ( sys-libs/zlib )
73 + lua? ( dev-lang/lua:5.3 )
74 + device-atlas? ( dev-libs/device-atlas-api-c )"
75 +RDEPEND="${DEPEND}"
76 +
77 +S="${WORKDIR}/${MY_P}"
78 +
79 +DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
80 +version_is_at_least 1.7.0 $PV && PATCHES=( "${FILESDIR}"/haproxy-1.7-contrib.patch )
81 +CONTRIBS=( halog iprange )
82 +# ip6range is present in 1.6, but broken.
83 +version_is_at_least 1.7.0 $PV && CONTRIBS+=( ip6range spoa_example tcploop )
84 +
85 +haproxy_use() {
86 + (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
87 +
88 + usex "${1}" "USE_${2}=1" "USE_${2}="
89 +}
90 +
91 +pkg_setup() {
92 + enewgroup haproxy
93 + enewuser haproxy -1 -1 -1 haproxy
94 +
95 + if use net_ns; then
96 + CONFIG_CHECK="~NET_NS"
97 + linux-info_pkg_setup
98 + fi
99 +}
100 +
101 +src_compile() {
102 + local -a args=(
103 + TARGET=linux2628
104 + USE_GETADDRINFO=1
105 + USE_TFO=1
106 + )
107 +
108 + args+=( $(haproxy_use crypt LIBCRYPT) )
109 + args+=( $(haproxy_use net_ns NS) )
110 + args+=( $(haproxy_use pcre PCRE) )
111 + args+=( $(haproxy_use pcre-jit PCRE_JIT) )
112 + args+=( $(haproxy_use ssl OPENSSL) )
113 + args+=( $(haproxy_use slz SLZ) )
114 + args+=( $(haproxy_use zlib ZLIB) )
115 + args+=( $(haproxy_use lua LUA) )
116 + args+=( $(haproxy_use 51degrees 51DEGREES) )
117 + args+=( $(haproxy_use device-atlas DEVICEATLAS) )
118 + args+=( $(haproxy_use wurfl WURFL) )
119 +
120 + # For now, until the strict-aliasing breakage will be fixed
121 + append-cflags -fno-strict-aliasing
122 +
123 + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
124 + emake -C contrib/systemd SBINDIR=/usr/sbin
125 +
126 + if use tools ; then
127 + for contrib in ${CONTRIBS[@]} ; do
128 + emake -C contrib/${contrib} \
129 + CFLAGS="${CFLAGS}" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
130 + done
131 + fi
132 +}
133 +
134 +src_install() {
135 + dosbin haproxy
136 + dosym /usr/sbin/haproxy /usr/bin/haproxy
137 +
138 + newconfd "${FILESDIR}/${PN}.confd" $PN
139 + newinitd "${FILESDIR}/${PN}.initd-r6" $PN
140 +
141 + doman doc/haproxy.1
142 +
143 + dosbin haproxy-systemd-wrapper
144 + dosym /usr/sbin/haproxy-systemd-wrapper /usr/bin/haproxy-systemd-wrapper
145 + systemd_dounit contrib/systemd/haproxy.service
146 +
147 + einstalldocs
148 +
149 + # The errorfiles are used by upstream defaults.
150 + insinto /etc/haproxy/errors/
151 + doins examples/errorfiles/*
152 +
153 + if use doc; then
154 + dodoc ROADMAP doc/*.txt
155 + #if use lua; then
156 + # TODO: doc/lua-api/
157 + #fi
158 + fi
159 +
160 + if use tools ; then
161 + has halog "${CONTRIBS[@]}" && dobin contrib/halog/halog
162 + has "iprange" "${CONTRIBS[@]}" && newbin contrib/iprange/iprange haproxy_iprange
163 + has "ip6range" "${CONTRIBS[@]}" && newbin contrib/ip6range/ip6range haproxy_ip6range
164 + has "spoa_example" "${CONTRIBS[@]}" && newbin contrib/spoa_example/spoa haproxy_spoa_example
165 + has "spoa_example" "${CONTRIBS[@]}" && newdoc contrib/spoa_example/README README.spoa_example
166 + has "tcploop" "${CONTRIBS[@]}" && newbin contrib/tcploop/tcploop haproxy_tcploop
167 + fi
168 +
169 + if use examples ; then
170 + docinto examples
171 + dodoc examples/*.cfg
172 + dodoc examples/seamless_reload.txt
173 + fi
174 +
175 + if use vim-syntax ; then
176 + insinto /usr/share/vim/vimfiles/syntax
177 + doins examples/haproxy.vim
178 + fi
179 +}
180 +
181 +pkg_postinst() {
182 + if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then
183 + ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service."
184 + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created."
185 + ewarn "Make use of them with the \"user\" and \"group\" directives."
186 +
187 + if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then
188 + einfo "Please consult the installed documentation for learning the configuration file's syntax."
189 + einfo "The documentation and sample configuration files are installed here:"
190 + einfo " ${EROOT}usr/share/doc/${PF}"
191 + fi
192 + fi
193 +}
194
195 diff --git a/net-proxy/haproxy/haproxy-1.8.9.ebuild b/net-proxy/haproxy/haproxy-1.8.9.ebuild
196 new file mode 100644
197 index 00000000000..44131da836d
198 --- /dev/null
199 +++ b/net-proxy/haproxy/haproxy-1.8.9.ebuild
200 @@ -0,0 +1,169 @@
201 +# Copyright 1999-2018 Gentoo Foundation
202 +# Distributed under the terms of the GNU General Public License v2
203 +
204 +EAPI="6"
205 +
206 +[[ ${PV} == *9999 ]] && SCM="git-r3"
207 +inherit user versionator toolchain-funcs flag-o-matic systemd linux-info $SCM
208 +
209 +MY_P="${PN}-${PV/_beta/-dev}"
210 +
211 +DESCRIPTION="A TCP/HTTP reverse proxy for high availability environments"
212 +HOMEPAGE="http://www.haproxy.org"
213 +if [[ ${PV} != *9999 ]]; then
214 + SRC_URI="http://haproxy.1wt.eu/download/$(get_version_component_range 1-2)/src/${MY_P}.tar.gz"
215 + KEYWORDS="~amd64 ~arm ~ppc ~x86"
216 +else
217 + EGIT_REPO_URI="http://git.haproxy.org/git/haproxy-$(get_version_component_range 1-2).git/"
218 + EGIT_BRANCH=master
219 +fi
220 +
221 +LICENSE="GPL-2 LGPL-2.1"
222 +SLOT="0"
223 +IUSE="+crypt doc examples libressl slz net_ns +pcre pcre-jit pcre2 pcre2-jit ssl
224 +systemd +threads tools vim-syntax +zlib lua device-atlas 51degrees wurfl"
225 +REQUIRED_USE="pcre-jit? ( pcre )
226 + pcre2-jit? ( pcre2 )
227 + pcre? ( !pcre2 )
228 + device-atlas? ( pcre )
229 + ?? ( slz zlib )"
230 +
231 +DEPEND="
232 + pcre? (
233 + dev-libs/libpcre
234 + pcre-jit? ( dev-libs/libpcre[jit] )
235 + )
236 + pcre2? (
237 + dev-libs/libpcre
238 + pcre2-jit? ( dev-libs/libpcre2[jit] )
239 + )
240 + ssl? (
241 + !libressl? ( dev-libs/openssl:0=[zlib?] )
242 + libressl? ( dev-libs/libressl:0= )
243 + )
244 + slz? ( dev-libs/libslz:= )
245 + zlib? ( sys-libs/zlib )
246 + lua? ( dev-lang/lua:5.3 )
247 + device-atlas? ( dev-libs/device-atlas-api-c )"
248 +RDEPEND="${DEPEND}"
249 +
250 +S="${WORKDIR}/${MY_P}"
251 +
252 +DOCS=( CHANGELOG CONTRIBUTING MAINTAINERS README )
253 +CONTRIBS=( halog iprange )
254 +# ip6range is present in 1.6, but broken.
255 +version_is_at_least 1.7.0 $PV && CONTRIBS+=( ip6range spoa_example tcploop )
256 +# TODO: mod_defender - requires apache / APR, modsecurity - the same
257 +version_is_at_least 1.8.0 $PV && CONTRIBS+=( hpack )
258 +
259 +haproxy_use() {
260 + (( $# != 2 )) && die "${FUNCNAME} <USE flag> <make option>"
261 +
262 + usex "${1}" "USE_${2}=1" "USE_${2}="
263 +}
264 +
265 +pkg_setup() {
266 + enewgroup haproxy
267 + enewuser haproxy -1 -1 -1 haproxy
268 +
269 + if use net_ns; then
270 + CONFIG_CHECK="~NET_NS"
271 + linux-info_pkg_setup
272 + fi
273 +}
274 +
275 +src_compile() {
276 + local -a args=(
277 + TARGET=linux2628
278 + USE_GETADDRINFO=1
279 + USE_TFO=1
280 + )
281 +
282 + # TODO: PCRE2_WIDTH?
283 + args+=( $(haproxy_use threads THREAD) )
284 + args+=( $(haproxy_use crypt LIBCRYPT) )
285 + args+=( $(haproxy_use net_ns NS) )
286 + args+=( $(haproxy_use pcre PCRE) )
287 + args+=( $(haproxy_use pcre-jit PCRE_JIT) )
288 + args+=( $(haproxy_use ssl OPENSSL) )
289 + args+=( $(haproxy_use slz SLZ) )
290 + args+=( $(haproxy_use zlib ZLIB) )
291 + args+=( $(haproxy_use lua LUA) )
292 + args+=( $(haproxy_use 51degrees 51DEGREES) )
293 + args+=( $(haproxy_use device-atlas DEVICEATLAS) )
294 + args+=( $(haproxy_use wurfl WURFL) )
295 + args+=( $(haproxy_use systemd SYSTEMD) )
296 +
297 + # For now, until the strict-aliasing breakage will be fixed
298 + append-cflags -fno-strict-aliasing
299 +
300 + emake CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
301 + emake -C contrib/systemd SBINDIR=/usr/sbin
302 +
303 + if use tools ; then
304 + for contrib in ${CONTRIBS[@]} ; do
305 + emake -C contrib/${contrib} \
306 + CFLAGS="${CFLAGS}" OPTIMIZE="${CFLAGS}" LDFLAGS="${LDFLAGS}" CC=$(tc-getCC) ${args[@]}
307 + done
308 + fi
309 +}
310 +
311 +src_install() {
312 + dosbin haproxy
313 + dosym ../sbin/haproxy /usr/bin/haproxy
314 +
315 + newconfd "${FILESDIR}/${PN}.confd" $PN
316 + newinitd "${FILESDIR}/${PN}.initd-r6" $PN
317 +
318 + doman doc/haproxy.1
319 +
320 + systemd_dounit contrib/systemd/haproxy.service
321 +
322 + einstalldocs
323 +
324 + # The errorfiles are used by upstream defaults.
325 + insinto /etc/haproxy/errors/
326 + doins examples/errorfiles/*
327 +
328 + if use doc; then
329 + dodoc ROADMAP doc/*.txt
330 + #if use lua; then
331 + # TODO: doc/lua-api/
332 + #fi
333 + fi
334 +
335 + if use tools ; then
336 + has halog "${CONTRIBS[@]}" && dobin contrib/halog/halog
337 + has "iprange" "${CONTRIBS[@]}" && newbin contrib/iprange/iprange haproxy_iprange
338 + has "ip6range" "${CONTRIBS[@]}" && newbin contrib/ip6range/ip6range haproxy_ip6range
339 + has "spoa_example" "${CONTRIBS[@]}" && newbin contrib/spoa_example/spoa haproxy_spoa_example
340 + has "spoa_example" "${CONTRIBS[@]}" && newdoc contrib/spoa_example/README README.spoa_example
341 + has "tcploop" "${CONTRIBS[@]}" && newbin contrib/tcploop/tcploop haproxy_tcploop
342 + has "hpack" "${CONTRIBS[@]}" && newbin contrib/hpack/gen-rht haproxy_hpack
343 + fi
344 +
345 + if use examples ; then
346 + docinto examples
347 + dodoc examples/*.cfg
348 + dodoc examples/seamless_reload.txt
349 + fi
350 +
351 + if use vim-syntax ; then
352 + insinto /usr/share/vim/vimfiles/syntax
353 + doins examples/haproxy.vim
354 + fi
355 +}
356 +
357 +pkg_postinst() {
358 + if [[ ! -f "${EROOT}/etc/haproxy/haproxy.cfg" ]] ; then
359 + ewarn "You need to create /etc/haproxy/haproxy.cfg before you start the haproxy service."
360 + ewarn "It's best practice to not run haproxy as root, user and group haproxy was therefore created."
361 + ewarn "Make use of them with the \"user\" and \"group\" directives."
362 +
363 + if [[ -d "${EROOT}/usr/share/doc/${PF}" ]]; then
364 + einfo "Please consult the installed documentation for learning the configuration file's syntax."
365 + einfo "The documentation and sample configuration files are installed here:"
366 + einfo " ${EROOT}usr/share/doc/${PF}"
367 + fi
368 + fi
369 +}