xref: /OK3568_Linux_fs/buildroot/package/syslog-ng/syslog-ng.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1################################################################################
2#
3# syslog-ng
4#
5################################################################################
6
7# When updating the version, please check at runtime if the version in
8# syslog-ng.conf header needs to be updated
9SYSLOG_NG_VERSION = 3.34.1
10SYSLOG_NG_SITE = https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$(SYSLOG_NG_VERSION)
11SYSLOG_NG_LICENSE = LGPL-2.1+ (syslog-ng core), GPL-2.0+ (modules)
12SYSLOG_NG_LICENSE_FILES = COPYING GPL.txt LGPL.txt
13SYSLOG_NG_CPE_ID_VENDOR = oneidentity
14SYSLOG_NG_DEPENDENCIES = host-bison host-flex host-pkgconf \
15	libglib2 openssl pcre
16# We're patching configure.ac
17SYSLOG_NG_AUTORECONF = YES
18SYSLOG_NG_CONF_OPTS = --disable-manpages --localstatedir=/var/run \
19	--disable-java --disable-java-modules --disable-mongodb
20
21ifeq ($(BR2_PACKAGE_GEOIP),y)
22SYSLOG_NG_DEPENDENCIES += geoip
23SYSLOG_NG_CONF_OPTS += --enable-geoip
24else
25SYSLOG_NG_CONF_OPTS += --disable-geoip
26endif
27
28ifeq ($(BR2_PACKAGE_LIBCAP),y)
29SYSLOG_NG_DEPENDENCIES += libcap
30SYSLOG_NG_CONF_OPTS += --enable-linux-caps
31else
32SYSLOG_NG_CONF_OPTS += --disable-linux-caps
33endif
34
35ifeq ($(BR2_PACKAGE_PYTHON),y)
36SYSLOG_NG_DEPENDENCIES += python
37SYSLOG_NG_CONF_OPTS += \
38	--enable-python \
39	--with-python=$(PYTHON_VERSION_MAJOR)
40else ifeq ($(BR2_PACKAGE_PYTHON3),y)
41SYSLOG_NG_DEPENDENCIES += python3
42SYSLOG_NG_CONF_OPTS += \
43	--enable-python \
44	--with-python=$(PYTHON3_VERSION_MAJOR)
45else
46SYSLOG_NG_CONF_OPTS += --disable-python
47endif
48
49ifeq ($(BR2_PACKAGE_LIBESMTP),y)
50SYSLOG_NG_DEPENDENCIES += libesmtp
51SYSLOG_NG_CONF_OPTS += --enable-smtp
52SYSLOG_NG_CONF_OPTS += --with-libesmtp="$(STAGING_DIR)/usr"
53else
54SYSLOG_NG_CONF_OPTS += --disable-smtp
55endif
56
57ifeq ($(BR2_PACKAGE_JSON_C),y)
58SYSLOG_NG_DEPENDENCIES += json-c
59SYSLOG_NG_CONF_OPTS += --enable-json
60else
61SYSLOG_NG_CONF_OPTS += --disable-json
62endif
63
64ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y)
65SYSLOG_NG_DEPENDENCIES += util-linux
66endif
67
68ifeq ($(BR2_PACKAGE_LIBNET),y)
69SYSLOG_NG_DEPENDENCIES += libnet
70SYSLOG_NG_CONF_OPTS += \
71	--with-libnet=$(STAGING_DIR)/usr/bin \
72	--enable-spoof-source
73else
74SYSLOG_NG_CONF_OPTS += --disable-spoof-source
75endif
76
77ifeq ($(BR2_PACKAGE_LIBCURL),y)
78SYSLOG_NG_DEPENDENCIES += libcurl
79SYSLOG_NG_CONF_OPTS += --enable-http
80SYSLOG_NG_CONF_OPTS += --with-libcurl="$(STAGING_DIR)/usr"
81else
82SYSLOG_NG_CONF_OPTS += --disable-http
83endif
84
85ifeq ($(BR2_PACKAGE_RABBITMQ_C),y)
86SYSLOG_NG_DEPENDENCIES += rabbitmq-c
87SYSLOG_NG_CONF_OPTS += --enable-amqp
88else
89SYSLOG_NG_CONF_OPTS += --disable-amqp
90endif
91
92ifeq ($(BR2_INIT_SYSTEMD),y)
93SYSLOG_NG_DEPENDENCIES += systemd
94SYSLOG_NG_CONF_OPTS += \
95	--enable-systemd \
96	--with-systemdsystemunitdir=/usr/lib/systemd/system
97else
98SYSLOG_NG_CONF_OPTS += --disable-systemd
99endif
100
101ifeq ($(BR2_PACKAGE_NETSNMP),y)
102SYSLOG_NG_DEPENDENCIES += netsnmp
103SYSLOG_NG_CONF_OPTS += --enable-afsnmp
104SYSLOG_NG_CONF_OPTS += --with-net-snmp="$(STAGING_DIR)/usr/bin"
105else
106SYSLOG_NG_CONF_OPTS += --disable-afsnmp
107endif
108
109define SYSLOG_NG_INSTALL_INIT_SYSV
110	$(INSTALL) -m 0755 -D package/syslog-ng/S01syslog-ng \
111		$(TARGET_DIR)/etc/init.d/S01syslog-ng
112endef
113
114# By default syslog-ng installs a .service that requires a config file at
115# /etc/default, so provide one with the default values.
116define SYSLOG_NG_INSTALL_INIT_SYSTEMD
117	mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/syslog-ng@.service.d
118	printf '[Install]\nDefaultInstance=default\n' \
119		>$(TARGET_DIR)/usr/lib/systemd/system/syslog-ng@.service.d/buildroot-default-instance.conf
120endef
121
122# By default syslog-ng installs a number of sample configuration
123# files. Some of these rely on optional features being
124# enabled. Because of this buildroot uninstalls the shipped config
125# files and provides a simplified configuration.
126define SYSLOG_NG_FIXUP_CONFIG
127	$(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \
128		DESTDIR=$(TARGET_DIR) scl-uninstall-local
129	$(INSTALL) -D -m 0644 package/syslog-ng/syslog-ng.conf \
130		$(TARGET_DIR)/etc/syslog-ng.conf
131endef
132
133SYSLOG_NG_POST_INSTALL_TARGET_HOOKS = SYSLOG_NG_FIXUP_CONFIG
134
135$(eval $(autotools-package))
136