Gentoo Archives: gentoo-commits

From: "Alexys Jacob (ultrabug)" <ultrabug@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-admin/rsyslog: rsyslog-7.6.3-r1.ebuild ChangeLog rsyslog-7.6.3.ebuild
Date: Mon, 02 Jun 2014 11:55:41
Message-Id: 20140602115536.9E6032004E@flycatcher.gentoo.org
1 ultrabug 14/06/02 11:55:36
2
3 Modified: ChangeLog
4 Added: rsyslog-7.6.3-r1.ebuild
5 Removed: rsyslog-7.6.3.ebuild
6 Log:
7 fix #511748 thx to consus
8
9 (Portage version: 2.2.10/cvs/Linux x86_64, signed Manifest commit with key B658FA13)
10
11 Revision Changes Path
12 1.114 app-admin/rsyslog/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?rev=1.114&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?rev=1.114&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?r1=1.113&r2=1.114
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v
21 retrieving revision 1.113
22 retrieving revision 1.114
23 diff -u -r1.113 -r1.114
24 --- ChangeLog 22 May 2014 12:30:41 -0000 1.113
25 +++ ChangeLog 2 Jun 2014 11:55:36 -0000 1.114
26 @@ -1,6 +1,12 @@
27 # ChangeLog for app-admin/rsyslog
28 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v 1.113 2014/05/22 12:30:41 jer Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v 1.114 2014/06/02 11:55:36 ultrabug Exp $
31 +
32 +*rsyslog-7.6.3-r1 (02 Jun 2014)
33 +
34 + 02 Jun 2014; Ultrabug <ultrabug@g.o> -rsyslog-7.6.3.ebuild,
35 + +rsyslog-7.6.3-r1.ebuild, files/7-stable/rsyslog.initd-r1:
36 + fix #511748 thx to consus
37
38 22 May 2014; Jeroen Roovers <jer@g.o> rsyslog-7.6.3.ebuild:
39 Marked ~hppa (bug #511026).
40
41
42
43 1.1 app-admin/rsyslog/rsyslog-7.6.3-r1.ebuild
44
45 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/rsyslog-7.6.3-r1.ebuild?rev=1.1&view=markup
46 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/rsyslog-7.6.3-r1.ebuild?rev=1.1&content-type=text/plain
47
48 Index: rsyslog-7.6.3-r1.ebuild
49 ===================================================================
50 # Copyright 1999-2014 Gentoo Foundation
51 # Distributed under the terms of the GNU General Public License v2
52 # $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/rsyslog-7.6.3-r1.ebuild,v 1.1 2014/06/02 11:55:36 ultrabug Exp $
53
54 EAPI=5
55 AUTOTOOLS_AUTORECONF=1
56
57 inherit autotools-utils eutils systemd
58
59 DESCRIPTION="An enhanced multi-threaded syslogd with database support and more"
60 HOMEPAGE="http://www.rsyslog.com/"
61 SRC_URI="http://www.rsyslog.com/files/download/${PN}/${P}.tar.gz"
62
63 LICENSE="GPL-3 LGPL-3 Apache-2.0"
64 KEYWORDS="~amd64 ~hppa ~x86"
65 SLOT="0"
66 IUSE="dbi debug doc elasticsearch +gcrypt kerberos mongodb mysql normalize omudpspoof oracle postgres rabbitmq redis relp rfc3195 rfc5424hmac snmp ssl systemd usertools zeromq"
67
68 RDEPEND="
69 >=dev-libs/json-c-0.11:=
70 >=dev-libs/libestr-0.1.9
71 >=dev-libs/liblogging-1.0.1:=[stdlog]
72 >=sys-libs/zlib-1.2.5
73 dbi? ( >=dev-db/libdbi-0.8.3 )
74 elasticsearch? ( >=net-misc/curl-7.35.0 )
75 gcrypt? ( >=dev-libs/libgcrypt-1.5.3:= )
76 kerberos? ( virtual/krb5 )
77 mongodb? ( >=dev-libs/libmongo-client-0.1.4 )
78 mysql? ( virtual/mysql )
79 normalize? (
80 >=dev-libs/libee-0.4.0
81 >=dev-libs/liblognorm-0.3.1:=
82 !>=dev-libs/liblognorm-1.0.0
83 )
84 omudpspoof? ( >=net-libs/libnet-1.1.6 )
85 oracle? ( >=dev-db/oracle-instantclient-basic-10.2 )
86 postgres? ( >=dev-db/postgresql-base-8.4.20 )
87 rabbitmq? ( >=net-libs/rabbitmq-c-0.3.0 )
88 redis? ( >=dev-libs/hiredis-0.11.0 )
89 relp? ( >=dev-libs/librelp-1.2.5 )
90 rfc3195? ( >=dev-libs/liblogging-1.0.1:=[rfc3195] )
91 rfc5424hmac? ( >=dev-libs/openssl-0.9.8y )
92 snmp? ( >=net-analyzer/net-snmp-5.7.2 )
93 ssl? ( >=net-libs/gnutls-2.12.23 )
94 systemd? ( >=sys-apps/systemd-208 )
95 zeromq? ( >=net-libs/czmq-1.2.0 )"
96 DEPEND="${RDEPEND}
97 virtual/pkgconfig"
98
99 BRANCH="7-stable"
100
101 # Test suite requires a special setup or will always fail
102 RESTRICT="test"
103
104 # Maitainer note : open a bug to upstream
105 # showing that building in a separate dir fails
106 AUTOTOOLS_IN_SOURCE_BUILD=1
107
108 AUTOTOOLS_PRUNE_LIBTOOL_FILES="modules"
109
110 DOCS=(
111 AUTHORS
112 ChangeLog
113 doc/rsyslog-example.conf
114 "${FILESDIR}"/${BRANCH}/README.gentoo
115 )
116
117 PATCHES=(
118 "${FILESDIR}"/${BRANCH}/${PN}-7.x-mmjsonparse.patch
119 "${FILESDIR}"/${BRANCH}/fix-omruleset-default-value.patch
120 "${FILESDIR}"/${BRANCH}/bugfix_52.patch
121 "${FILESDIR}"/${BRANCH}/bugfix_73.patch
122 )
123
124 src_configure() {
125 # Maintainer notes:
126 # * Guardtime support is missing because libgt isn't yet available
127 # in portage.
128 # * Hadoop's HDFS file system output module is currently not
129 # supported in Gentoo because nobody is able to test it
130 # (JAVA dependency).
131 # * dev-libs/hiredis doesn't provide pkg-config (see #504614,
132 # upstream PR 129 and 136) so we need to export HIREDIS_*
133 # variables because rsyslog's build system depends on pkg-config.
134
135 if use redis; then
136 export HIREDIS_LIBS="-L${EPREFIX}/usr/$(get_libdir) -lhiredis"
137 export HIREDIS_CFLAGS="-I${EPREFIX}/usr/include"
138 fi
139
140 local myeconfargs=(
141 # Input Plugins without depedencies
142 --enable-imfile
143 --enable-impstats
144 --enable-imptcp
145 --enable-imttcp
146 # Message Modificiation Plugins without depedencies
147 --enable-mmanon
148 --enable-mmaudit
149 --enable-mmcount
150 --enable-mmfields
151 --enable-mmjsonparse
152 --enable-mmpstrucdata
153 --enable-mmsequence
154 --enable-mmutf8fix
155 # Output Modification Plugins without dependencies
156 --enable-mail
157 --enable-omprog
158 --enable-omruleset
159 --enable-omstdout
160 --enable-omuxsock
161 # Misc
162 --enable-pmaixforwardedfrom
163 --enable-pmcisconames
164 --enable-pmlastmsg
165 --enable-pmrfc3164sd
166 --enable-pmsnare
167 --enable-sm_cust_bindcdr
168 # DB
169 $(use_enable dbi libdbi)
170 $(use_enable mongodb ommongodb)
171 $(use_enable mysql)
172 $(use_enable oracle)
173 $(use_enable postgres pgsql)
174 $(use_enable redis omhiredis)
175 # Debug
176 $(use_enable debug)
177 $(use_enable debug diagtools)
178 $(use_enable debug imdiag)
179 $(use_enable debug memcheck)
180 $(use_enable debug rtinst)
181 $(use_enable debug valgrind)
182 # Misc
183 $(use_enable elasticsearch)
184 $(use_enable gcrypt libgcrypt)
185 $(use_enable kerberos gssapi-krb5)
186 $(use_enable normalize mmnormalize)
187 $(use_enable omudpspoof)
188 $(use_enable rabbitmq omrabbitmq)
189 $(use_enable relp)
190 $(use_enable rfc3195)
191 $(use_enable rfc5424hmac mmrfc5424addhmac)
192 $(use_enable snmp)
193 $(use_enable snmp mmsnmptrapd)
194 $(use_enable ssl gnutls)
195 $(use_enable systemd imjournal)
196 $(use_enable systemd omjournal)
197 $(use_enable usertools)
198 $(use_enable zeromq imzmq3)
199 $(use_enable zeromq omzmq3)
200 "$(systemd_with_unitdir)"
201 )
202
203 autotools-utils_src_configure
204 }
205
206 src_install() {
207 use doc && HTML_DOCS=( "${S}"/doc/ )
208 autotools-utils_src_install
209
210 newconfd "${FILESDIR}/${BRANCH}/${PN}.confd-r1" ${PN}
211 newinitd "${FILESDIR}/${BRANCH}/${PN}.initd-r1" ${PN}
212
213 keepdir /var/empty/dev
214 keepdir /var/spool/${PN}
215 keepdir /etc/ssl/${PN}
216 keepdir /etc/${PN}.d
217
218 insinto /etc
219 newins "${FILESDIR}/${BRANCH}/${PN}.conf" ${PN}.conf
220
221 insinto /etc/rsyslog.d/
222 doins "${FILESDIR}/${BRANCH}/50-default.conf"
223
224 insinto /etc/logrotate.d/
225 newins "${FILESDIR}/${BRANCH}/${PN}.logrotate-r1" ${PN}
226
227 if use mysql; then
228 insinto /usr/share/doc/${PF}/scripts/mysql
229 doins plugins/ommysql/{createDB.sql,contrib/delete_mysql}
230 fi
231
232 if use postgres; then
233 insinto /usr/share/doc/${PF}/scripts/pgsql
234 doins plugins/ompgsql/createDB.sql
235 fi
236 }
237
238 pkg_postinst() {
239 local advertise_readme=0
240
241 if [[ -z "${REPLACING_VERSIONS}" ]]; then
242 # This is a new installation
243
244 advertise_readme=1
245
246 if use mysql || use postgres; then
247 echo
248 elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
249 elog " /usr/share/doc/${PF}/scripts"
250 fi
251
252 if use ssl; then
253 echo
254 elog "To create a default CA and certificates for your server and clients, run:"
255 elog " emerge --config =${PF}"
256 elog "on your logging server. You can run it several times,"
257 elog "once for each logging client. The client certificates will be signed"
258 elog "using the CA certificate generated during the first run."
259 fi
260 fi
261
262 if [[ -z "${REPLACING_VERSIONS}" ]] || [[ ${REPLACING_VERSIONS} < 8.0 ]]; then
263 # Show this message until rsyslog-8.x
264 echo
265 elog "Since ${PN}-7.6.3 we no longer use the catch-all log target"
266 elog "\"/var/log/syslog\" due to its redundancy to the other log targets."
267
268 advertise_readme=1
269 fi
270
271 if [[ ${advertise_readme} -gt 0 ]]; then
272 # We need to show the README file location
273
274 echo ""
275 elog "Please read"
276 elog ""
277 elog " ${EPREFIX}/usr/share/doc/${PF}/README.gentoo*"
278 elog ""
279 elog "for more details."
280 fi
281 }
282
283 pkg_config() {
284 if ! use ssl ; then
285 einfo "There is nothing to configure for rsyslog unless you"
286 einfo "used USE=ssl to build it."
287 return 0
288 fi
289
290 # Make sure the certificates directory exists
291 CERTDIR="${EROOT}/etc/ssl/${PN}"
292 if [ ! -d "${CERTDIR}" ]; then
293 mkdir "${CERTDIR}" || die
294 fi
295 einfo "Your certificates will be stored in ${CERTDIR}"
296
297 # Create a default CA if needed
298 if [ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]; then
299 einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
300 certtool --generate-privkey \
301 --outfile "${CERTDIR}/${PN}_ca.privkey.pem" &>/dev/null
302 chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
303
304 cat > "${T}/${PF}.$$" <<- _EOF
305 cn = Portage automated CA
306 ca
307 cert_signing_key
308 expiration_days = 3650
309 _EOF
310
311 certtool --generate-self-signed \
312 --load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
313 --outfile "${CERTDIR}/${PN}_ca.cert.pem" \
314 --template "${T}/${PF}.$$" &>/dev/null
315 chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
316
317 # Create the server certificate
318 echo
319 einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
320 read -r CN
321
322 einfo "Creating private key and certificate for server ${CN}..."
323 certtool --generate-privkey \
324 --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
325 chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
326
327 cat > "${T}/${PF}.$$" <<- _EOF
328 cn = ${CN}
329 tls_www_server
330 dns_name = ${CN}
331 expiration_days = 3650
332 _EOF
333
334 certtool --generate-certificate \
335 --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
336 --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
337 --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
338 --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
339 --template "${T}/${PF}.$$" &>/dev/null
340 chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
341
342 else
343 einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
344 fi
345
346 # Create a client certificate
347 echo
348 einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
349 read -r CN
350
351 einfo "Creating private key and certificate for client ${CN}..."
352 certtool --generate-privkey \
353 --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
354 chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
355
356 cat > "${T}/${PF}.$$" <<- _EOF
357 cn = ${CN}
358 tls_www_client
359 dns_name = ${CN}
360 expiration_days = 3650
361 _EOF
362
363 certtool --generate-certificate \
364 --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
365 --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
366 --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
367 --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
368 --template "${T}/${PF}.$$" &>/dev/null
369 chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
370
371 rm -f "${T}/${PF}.$$"
372
373 echo
374 einfo "Here is the documentation on how to encrypt your log traffic:"
375 einfo " http://www.rsyslog.com/doc/rsyslog_tls.html"
376 }