blob: bc3b26f32707019c22dc21cbbff7d2ce42a6dab9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
|
# Contributor: Michael Pirogov <vbnet.ru@gmail.com>
# Contributor: jv <jens@eisfair.org>
# Contributor: Adrian Guenter <adrian@gntr.me>
# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer: jv <jens@eisfair.org>
pkgname=syslog-ng
pkgver=3.25.1
pkgrel=1
pkgdesc="Next generation logging daemon"
url="https://www.syslog-ng.com/products/open-source-log-management/"
arch="all"
license="GPL-2.0-or-later"
options="!check" # unit tests require https://github.com/Snaipe/Criterion with deps
makedepends="
curl-dev
eventlog-dev
file
bison
flex
autoconf
automake
libtool
glib-dev
hiredis-dev
ivykis-dev>=0.42.4
libdbi-dev
json-c-dev
openssl-dev
pcre-dev
python3-dev
rabbitmq-c-dev
"
install="$pkgname.post-install $pkgname.post-upgrade"
subpackages="
$pkgname-scl::noarch
$pkgname-dev
$pkgname-doc
$pkgname-openrc
py3-$pkgname:_python3
"
source="https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$pkgver/syslog-ng-$pkgver.tar.gz
$pkgname.conf
$pkgname.logrotate
$pkgname.initd
"
_modules="
add-contextual-data
amqp:afamqp
examples
graphite
http
json:json-plugin
map-value-pairs
redis
sql:afsql
stardate
stomp:afstomp
tags-parser
xml
"
for _i in $_modules; do
subpackages="$subpackages $pkgname-${_i%%:*}:_module"
done
prepare() {
default_prepare
# Remove bundled libraries
rm -rf lib/ivykis
rm -rf modules/afamqp/rabbitmq-c
rm -rf modules/afmongodb/mongo-c-driver
autoreconf -if
}
build() {
./configure \
--prefix=/usr \
--sysconfdir=/etc/syslog-ng \
--localstatedir=/run \
--enable-extra-warnings \
--enable-ipv6 \
--enable-manpages \
\
--enable-sql \
--disable-linux-caps \
--disable-mongodb \
--enable-json \
--enable-amqp \
--enable-stomp \
--disable-smtp \
--enable-http \
--enable-redis \
--enable-geoip \
--disable-geoip2 \
--disable-riemann \
--disable-systemd \
--enable-python \
--disable-java \
--disable-java-modules \
--enable-native \
--enable-rdrand \
--with-ivykis=system \
--with-jsonc=system \
--with-librabbitmq-client=system
make
}
package() {
make -j1 DESTDIR="$pkgdir" install
cd "$pkgdir"
rm -rf run usr/lib/$pkgname/libtest
# getent module doesn't build properly as musl doesn't support reentrant
# getprotoby[number|name] funcs. The provided compat lib only patches
# solaris, which does provide reentrant versions under a different sig
rm -f usr/lib/$pkgname/libtfgetent.so
install -m 644 "$srcdir"/$pkgname.conf etc/$pkgname/$pkgname.conf
install -D -m 755 "$srcdir"/$pkgname.initd etc/init.d/$pkgname
install -D -m 644 "$srcdir"/$pkgname.logrotate etc/logrotate.d/$pkgname
install -d -m 755 etc/$pkgname/conf.d
install -d -m 700 "$pkgdir"/var/lib/syslog-ng
}
scl() {
pkgdesc="$pkgdesc (configuration library)"
depends="$pkgname=$pkgver-r$pkgrel"
_submv usr/share/syslog-ng/include/scl
}
dev() {
default_dev
_submv usr/share/syslog-ng/tools \
usr/share/syslog-ng/xsd
}
_python3() {
pkgdesc="$pkgdesc (python3 module)"
_submv usr/lib/syslog-ng/libmod-python.so
local site_pkgs="$(python3 -c 'import site; print(site.getsitepackages()[0])')"
mkdir -p "$subpkgdir"/"$site_pkgs"
mv "$pkgdir"/usr/lib/syslog-ng/python/* \
"$subpkgdir"/"$site_pkgs"
}
_module() {
local name="${subpkgname#$pkgname-}"
pkgdesc="$pkgdesc (${name//-/ } module)"
local libname=$(printf '%s\n' $_modules | grep "^$name:" | cut -d: -f2)
local soname="lib${libname:-$name}.so"
_submv usr/lib/syslog-ng/$soname
}
_submv() {
local path; for path in "$@"; do
mkdir -p "$subpkgdir/${path%/*}"
mv "$pkgdir"/$path "$subpkgdir"/${path%/*}/
done
}
sha512sums="79e09f1ba11080179c572016ce27328a28d479e68e663d39fb16624c03dc37d8439020ede922f78680e31e21629a6c13a4671464a31213c1dcf6acd2c5cd4b13 syslog-ng-3.25.1.tar.gz
3e844f70564325f7b356e6cb6310c72473aedc14f8be3c3c7eb262184c84523648d3ea1de1aa40489529c97343026481e790ad92dfbcdc410a94e734fd744fc0 syslog-ng.conf
1825b85fb584c5cecf0ad370e81a7473b5c973ce10adce386d1ba5f68432abe4e2f54c937d7d94edb22dbd9031eff483bd113bc3244ce0d0072cf4bf4ab5c2cc syslog-ng.logrotate
873fef8815131f0acc618fa4911cd1eda59e260adc1eaae6eb91034900ce789f05ee48fa8afa4a87763026c18c87aef351e7ea76e0cbb46bcd5297f9ca14d527 syslog-ng.initd"
|