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 = 4.7.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 json-c libglib2 openssl pcre2 16SYSLOG_NG_CONF_OPTS = --disable-manpages --localstatedir=/var/run \ 17 --disable-java --disable-java-modules --disable-mongodb \ 18 --disable-python 19SYSLOG_NG_CFLAGS = $(TARGET_CFLAGS) 20 21ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_101915),y) 22SYSLOG_NG_CFLAGS += -O0 23endif 24 25SYSLOG_NG_CONF_ENV = CFLAGS="$(SYSLOG_NG_CFLAGS)" 26 27ifeq ($(BR2_PACKAGE_GEOIP),y) 28SYSLOG_NG_DEPENDENCIES += geoip 29SYSLOG_NG_CONF_OPTS += --enable-geoip 30else 31SYSLOG_NG_CONF_OPTS += --disable-geoip 32endif 33 34ifeq ($(BR2_PACKAGE_LIBCAP),y) 35SYSLOG_NG_DEPENDENCIES += libcap 36SYSLOG_NG_CONF_OPTS += --enable-linux-caps 37else 38SYSLOG_NG_CONF_OPTS += --disable-linux-caps 39endif 40 41ifeq ($(BR2_PACKAGE_LIBESMTP),y) 42SYSLOG_NG_DEPENDENCIES += libesmtp 43SYSLOG_NG_CONF_OPTS += --enable-smtp 44SYSLOG_NG_CONF_OPTS += --with-libesmtp="$(STAGING_DIR)/usr" 45else 46SYSLOG_NG_CONF_OPTS += --disable-smtp 47endif 48 49ifeq ($(BR2_PACKAGE_UTIL_LINUX_LIBUUID),y) 50SYSLOG_NG_DEPENDENCIES += util-linux 51endif 52 53ifeq ($(BR2_PACKAGE_LIBNET),y) 54SYSLOG_NG_DEPENDENCIES += libnet 55SYSLOG_NG_CONF_OPTS += \ 56 --with-libnet=$(STAGING_DIR)/usr/bin \ 57 --enable-spoof-source 58else 59SYSLOG_NG_CONF_OPTS += --disable-spoof-source 60endif 61 62ifeq ($(BR2_PACKAGE_LIBCURL),y) 63SYSLOG_NG_DEPENDENCIES += libcurl 64SYSLOG_NG_CONF_OPTS += --enable-http 65SYSLOG_NG_CONF_OPTS += --with-libcurl="$(STAGING_DIR)/usr" 66ifeq ($(BR2_INSTALL_LIBSTDCPP),y) 67SYSLOG_NG_CONF_OPTS += --enable-cloud-auth 68else 69SYSLOG_NG_CONF_OPTS += --disable-cloud-auth 70endif 71else 72SYSLOG_NG_CONF_OPTS += --disable-http --disable-cloud-auth 73endif 74 75ifeq ($(BR2_PACKAGE_RABBITMQ_C),y) 76SYSLOG_NG_DEPENDENCIES += rabbitmq-c 77SYSLOG_NG_CONF_OPTS += --enable-amqp 78else 79SYSLOG_NG_CONF_OPTS += --disable-amqp 80endif 81 82ifeq ($(BR2_INIT_SYSTEMD),y) 83SYSLOG_NG_DEPENDENCIES += systemd 84SYSLOG_NG_CONF_OPTS += \ 85 --enable-systemd \ 86 --with-systemdsystemunitdir=/usr/lib/systemd/system 87else 88SYSLOG_NG_CONF_OPTS += --disable-systemd 89endif 90 91ifeq ($(BR2_PACKAGE_NETSNMP),y) 92SYSLOG_NG_DEPENDENCIES += netsnmp 93SYSLOG_NG_CONF_OPTS += --enable-afsnmp 94SYSLOG_NG_CONF_OPTS += --with-net-snmp="$(STAGING_DIR)/usr/bin" 95else 96SYSLOG_NG_CONF_OPTS += --disable-afsnmp 97endif 98 99define SYSLOG_NG_INSTALL_INIT_SYSV 100 $(INSTALL) -m 0755 -D package/syslog-ng/S01syslog-ng \ 101 $(TARGET_DIR)/etc/init.d/S01syslog-ng 102endef 103 104# By default syslog-ng installs a .service that requires a config file at 105# /etc/default, so provide one with the default values. 106define SYSLOG_NG_INSTALL_INIT_SYSTEMD 107 mkdir -p $(TARGET_DIR)/usr/lib/systemd/system/syslog-ng@.service.d 108 printf '[Install]\nDefaultInstance=default\n' \ 109 >$(TARGET_DIR)/usr/lib/systemd/system/syslog-ng@.service.d/buildroot-default-instance.conf 110endef 111 112# By default syslog-ng installs a number of sample configuration 113# files. Some of these rely on optional features being 114# enabled. Because of this buildroot uninstalls the shipped config 115# files and provides a simplified configuration. 116define SYSLOG_NG_FIXUP_CONFIG 117 $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ 118 DESTDIR=$(TARGET_DIR) scl-uninstall-local 119 $(INSTALL) -D -m 0644 package/syslog-ng/syslog-ng.conf \ 120 $(TARGET_DIR)/etc/syslog-ng.conf 121endef 122 123SYSLOG_NG_POST_INSTALL_TARGET_HOOKS = SYSLOG_NG_FIXUP_CONFIG 124 125$(eval $(autotools-package)) 126