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