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: ChangeLog rsyslog-6.2.1.ebuild
Date: Fri, 01 Jun 2012 12:54:28
Message-Id: 20120601125418.1EAA02004C@flycatcher.gentoo.org
1 ultrabug 12/06/01 12:54:18
2
3 Modified: ChangeLog
4 Added: rsyslog-6.2.1.ebuild
5 Log:
6 New stable v6 branch bump, fix #398269.
7
8 (Portage version: 2.1.10.63/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.71 app-admin/rsyslog/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?rev=1.71&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?rev=1.71&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/ChangeLog?r1=1.70&r2=1.71
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v
20 retrieving revision 1.70
21 retrieving revision 1.71
22 diff -u -r1.70 -r1.71
23 --- ChangeLog 31 May 2012 16:50:42 -0000 1.70
24 +++ ChangeLog 1 Jun 2012 12:54:18 -0000 1.71
25 @@ -1,6 +1,14 @@
26 # ChangeLog for app-admin/rsyslog
27 # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v 1.70 2012/05/31 16:50:42 ultrabug Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/ChangeLog,v 1.71 2012/06/01 12:54:18 ultrabug Exp $
30 +
31 +*rsyslog-6.2.1 (01 Jun 2012)
32 +
33 + 01 Jun 2012; Ultrabug <ultrabug@g.o> +files/6-stable/rsyslog.confd,
34 + +files/6-stable/rsyslog.initd, +files/6-stable/rsyslog.logrotate,
35 + +files/6-stable/rsyslog-gentoo.conf, +files/6-stable/rsyslog6-zeromq.patch,
36 + +rsyslog-6.2.1.ebuild:
37 + New stable v6 branch bump, fix #398269.
38
39 31 May 2012; Ultrabug <ultrabug@g.o> rsyslog-5.8.11.ebuild,
40 rsyslog-5.8.5.ebuild, rsyslog-5.8.8.ebuild:
41
42
43
44 1.1 app-admin/rsyslog/rsyslog-6.2.1.ebuild
45
46 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/rsyslog-6.2.1.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-admin/rsyslog/rsyslog-6.2.1.ebuild?rev=1.1&content-type=text/plain
48
49 Index: rsyslog-6.2.1.ebuild
50 ===================================================================
51 # Copyright 1999-2012 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/app-admin/rsyslog/rsyslog-6.2.1.ebuild,v 1.1 2012/06/01 12:54:18 ultrabug Exp $
54
55 EAPI=4
56 AUTOTOOLS_AUTORECONF=yes
57
58 inherit autotools-utils systemd
59
60 DESCRIPTION="An enhanced multi-threaded syslogd with database support and more."
61 HOMEPAGE="http://www.rsyslog.com/"
62 SRC_URI="http://www.rsyslog.com/files/download/${PN}/${P}.tar.gz
63 zeromq? ( https://github.com/aggregateknowledge/rsyslog-zeromq/tarball/44b551abc29dd5b541884bd51b45b413855a93d8 -> ${PN}-zeromq.tar.gz )"
64
65 LICENSE="GPL-3 LGPL-3 Apache-2.0"
66 KEYWORDS="~amd64 ~x86"
67 SLOT="0"
68 IUSE="dbi debug doc extras kerberos mysql oracle postgres relp snmp ssl static-libs zeromq zlib"
69
70 RDEPEND="
71 dev-libs/libee
72 dev-libs/libestr
73 dev-libs/liblognorm
74 dbi? ( dev-db/libdbi )
75 extras? ( net-libs/libnet )
76 kerberos? ( virtual/krb5 )
77 mysql? ( virtual/mysql )
78 postgres? ( dev-db/postgresql-base )
79 oracle? ( dev-db/oracle-instantclient-basic )
80 relp? ( >=dev-libs/librelp-0.1.3 )
81 snmp? ( net-analyzer/net-snmp )
82 ssl? ( net-libs/gnutls dev-libs/libgcrypt )
83 zeromq? ( net-libs/zeromq )
84 zlib? ( sys-libs/zlib )"
85 DEPEND="${RDEPEND}
86 virtual/pkgconfig"
87
88 BRANCH="6-stable"
89
90 # need access to certain device nodes
91 RESTRICT="test"
92
93 # Maitainer note : open a bug to upstream
94 # showing that building in a separate dir fails
95 AUTOTOOLS_IN_SOURCE_BUILD=1
96
97 DOCS=(AUTHORS ChangeLog doc/rsyslog-example.conf)
98
99 src_prepare() {
100 autotools-utils_src_prepare
101
102 # Maintainer notes:
103 # ZeroMQ support,upstream bug #277
104 if use zeromq; then
105 local ZEROPATH=${WORKDIR}/aggregateknowledge-rsyslog-zeromq-44b551a
106 epatch "${FILESDIR}/${BRANCH}/rsyslog6-zeromq.patch"
107 cp -r ${ZEROPATH}/{i,o}mzeromq "${S}/plugins"
108 fi
109
110 # Don't force '-g' CFLAG
111 # Correct the sm_cust_bindcdr plugin detection (bug #330 upstream)
112 sed -e 's/CFLAGS="\(.*\) -g"/CFLAGS="\1"/g' \
113 -e 's/smcustbindcdr/sm_cust_bindcdr/g' \
114 -i configure.ac || die
115 eautoreconf
116 }
117
118 src_configure() {
119 # Maintainer notes:
120 # * rfc3195 needs a library and development of that library
121 # is suspended, so we disable it
122 # * About the java GUI:
123 # The maintainer says there is no real installation support
124 # for the java GUI, so we disable it for now.
125 # * mongodb : no plugin in the sources, we'll wait for bug #330 upstream
126 local myeconfargs=(
127 --disable-gui
128 --disable-rfc3195
129 --enable-imdiag
130 --enable-imfile
131 --enable-impstats
132 --enable-imtemplate
133 --enable-imptcp
134 --enable-largefile
135 --enable-mail
136 --enable-mmnormalize
137 --enable-omprog
138 --enable-omstdout
139 --enable-omtemplate
140 --disable-omdbalerting
141 --enable-omuxsock
142 --enable-pmlastmsg
143 --enable-pmrfc3164sd
144 --enable-pmcisconames
145 --enable-pmaixforwardedfrom
146 --enable-pmsnare
147 --enable-sm_cust_bindcdr
148 --enable-unlimited-select
149 $(use_enable dbi libdbi)
150 $(use_enable debug)
151 $(use_enable debug rtinst)
152 $(use_enable debug diagtools)
153 $(use_enable debug memcheck)
154 $(use_enable debug valgrind)
155 $(use_enable extras omudpspoof)
156 $(use_enable kerberos gssapi-krb5)
157 $(use_enable mysql)
158 $(use_enable oracle)
159 $(use_enable postgres pgsql)
160 $(use_enable relp)
161 $(use_enable snmp)
162 $(use_enable snmp mmsnmptrapd)
163 $(use_enable ssl gnutls)
164 $(use_enable zlib)
165 )
166
167 use zeromq && myeconfargs=(
168 ${myeconfargs[@]-}
169 $(use_enable zeromq imzeromq)
170 $(use_enable zeromq omzeromq)
171 )
172
173 systemd_to_myeconfargs
174 autotools-utils_src_configure
175 }
176
177 src_install() {
178 use doc && HTML_DOCS=(doc/)
179 autotools-utils_src_install
180
181 insinto /etc
182 newins "${FILESDIR}/${BRANCH}/${PN}-gentoo.conf" ${PN}.conf
183 newconfd "${FILESDIR}/${BRANCH}/${PN}.confd" ${PN}
184 newinitd "${FILESDIR}/${BRANCH}/${PN}.initd" ${PN}
185 keepdir /var/spool/${PN}
186 keepdir /etc/ssl/${PN}
187 keepdir /etc/${PN}.d
188
189 use static-libs || find "${D}" -name '*.la' -delete || die
190
191 if use mysql; then
192 insinto /usr/share/doc/${PF}/scripts/mysql
193 doins plugins/ommysql/{createDB.sql,contrib/delete_mysql}
194 fi
195
196 if use postgres; then
197 insinto /usr/share/doc/${PF}/scripts/pgsql
198 doins plugins/ompgsql/createDB.sql
199 fi
200
201 insinto /etc/logrotate.d/
202 newins "${FILESDIR}/${BRANCH}/${PN}.logrotate" ${PN}
203 }
204
205 pkg_postinst() {
206 if use mysql || use postgres; then
207 echo
208 elog "Sample SQL scripts for MySQL & PostgreSQL have been installed to:"
209 elog " /usr/share/doc/${PF}/scripts"
210 fi
211
212 if use ssl; then
213 echo
214 elog "To create a default CA and certificates for your server and clients, run:"
215 elog " emerge --config =${PF}"
216 elog "on your logging server. You can run it several times,"
217 elog "once for each logging client. The client certificates will be signed"
218 elog "using the CA certificate generated during the first run."
219 fi
220 }
221
222 pkg_config() {
223 if ! use ssl ; then
224 einfo "There is nothing to configure for rsyslog unless you"
225 einfo "used USE=ssl to build it."
226 return 0
227 fi
228
229 # Make sure the certificates directory exists
230 CERTDIR="${ROOT}/etc/ssl/${PN}"
231 if [ ! -d "${CERTDIR}" ]; then
232 mkdir "${CERTDIR}" || die
233 fi
234 einfo "Your certificates will be stored in ${CERTDIR}"
235
236 # Create a default CA if needed
237 if [ ! -f "${CERTDIR}/${PN}_ca.cert.pem" ]; then
238 einfo "No CA key and certificate found in ${CERTDIR}, creating them for you..."
239 certtool --generate-privkey \
240 --outfile "${CERTDIR}/${PN}_ca.privkey.pem" &>/dev/null
241 chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
242
243 cat > "${T}/${PF}.$$" <<- _EOF
244 cn = Portage automated CA
245 ca
246 cert_signing_key
247 expiration_days = 3650
248 _EOF
249
250 certtool --generate-self-signed \
251 --load-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
252 --outfile "${CERTDIR}/${PN}_ca.cert.pem" \
253 --template "${T}/${PF}.$$" &>/dev/null
254 chmod 400 "${CERTDIR}/${PN}_ca.privkey.pem"
255
256 # Create the server certificate
257 echo
258 einfon "Please type the Common Name of the SERVER you wish to create a certificate for: "
259 read -r CN
260
261 einfo "Creating private key and certificate for server ${CN}..."
262 certtool --generate-privkey \
263 --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
264 chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
265
266 cat > "${T}/${PF}.$$" <<- _EOF
267 cn = ${CN}
268 tls_www_server
269 dns_name = ${CN}
270 expiration_days = 3650
271 _EOF
272
273 certtool --generate-certificate \
274 --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
275 --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
276 --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
277 --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
278 --template "${T}/${PF}.$$" &>/dev/null
279 chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
280
281 else
282 einfo "Found existing ${CERTDIR}/${PN}_ca.cert.pem, skipping CA and SERVER creation."
283 fi
284
285 # Create a client certificate
286 echo
287 einfon "Please type the Common Name of the CLIENT you wish to create a certificate for: "
288 read -r CN
289
290 einfo "Creating private key and certificate for client ${CN}..."
291 certtool --generate-privkey \
292 --outfile "${CERTDIR}/${PN}_${CN}.key.pem" &>/dev/null
293 chmod 400 "${CERTDIR}/${PN}_${CN}.key.pem"
294
295 cat > "${T}/${PF}.$$" <<- _EOF
296 cn = ${CN}
297 tls_www_client
298 dns_name = ${CN}
299 expiration_days = 3650
300 _EOF
301
302 certtool --generate-certificate \
303 --outfile "${CERTDIR}/${PN}_${CN}.cert.pem" \
304 --load-privkey "${CERTDIR}/${PN}_${CN}.key.pem" \
305 --load-ca-certificate "${CERTDIR}/${PN}_ca.cert.pem" \
306 --load-ca-privkey "${CERTDIR}/${PN}_ca.privkey.pem" \
307 --template "${T}/${PF}.$$" &>/dev/null
308 chmod 400 "${CERTDIR}/${PN}_${CN}.cert.pem"
309
310 rm -f "${T}/${PF}.$$"
311
312 echo
313 einfo "Here is the documentation on how to encrypt your log traffic:"
314 einfo " http://www.rsyslog.com/doc/rsyslog_tls.html"
315 }