Files
Alexandru Ardelean 98a90ef9f3 rsyslog: make libyaml support optional via RSYSLOG_libyaml
The upstream rsyslog build links against libyaml-0.so.2 whenever
pkg-config detects yaml-0.1, which made libyaml a hard dependency
of the rsyslog binary without any way to opt out from OpenWrt
config. libyaml is only used for YAML (.yaml/.yml) configuration
files and for loading rate-limiting policies from external files;
RainerScript (.conf) installs do not need it.

Introduce a new RSYSLOG_libyaml Config.in switch, default off, and
gate the +libyaml DEPENDS entry on it. Pass --enable-libyaml or
--disable-libyaml to configure based on the switch.

The upstream configure script in 8.2604.0 does not understand a
--disable-libyaml flag (libyaml was unconditionally autodetected).
Backport upstream commit c5c244861 ("configure: make libyaml
default-on explicit") as 001-configure-make-libyaml-default-on-
explicit.patch, which adds the AC_ARG_ENABLE(libyaml) block. The
patch dissolves cleanly once the package is bumped to 8.2606.0+.
PKG_FIXUP:=autoreconf is added so the configure.ac change flows
into the generated configure script during the SDK build.

Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
2026-05-20 08:57:38 +03:00

87 lines
2.7 KiB
Makefile

#
# Copyright (C) 2006-2014 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=rsyslog
PKG_VERSION:=8.2604.0
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:= \
https://fossies.org/linux/misc \
https://www.rsyslog.com/files/download/rsyslog
PKG_HASH:=2a04b1cd6f0a5e2b60eec231acce3cf9927c4ed02bc5fbbe5dc4c35fcf887b64
PKG_MAINTAINER:=Alexandru Ardelean <ardeleanalex@gmail.com>
PKG_LICENSE:=GPL-3.0-or-later
PKG_LICENSE_FILES:=COPYING
PKG_CPE_ID:=cpe:/a:rsyslog:rsyslog
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
include $(INCLUDE_DIR)/package.mk
define Package/rsyslog
SECTION:=admin
CATEGORY:=Administration
TITLE:=Enhanced system logging and kernel message trapping daemons
URL:=https://www.rsyslog.com/
DEPENDS:= \
+RSYSLOG_gssapi_krb5:krb5-libs +RSYSLOG_elasticsearch:libcurl \
+RSYSLOG_libdbi:libdbi +libestr +libfastjson +RSYSLOG_gnutls:libgnutls \
+RSYSLOG_mmdblookup:libmaxminddb +RSYSLOG_mysql:libmysqlclient \
+RSYSLOG_omhttp:libcurl +RSYSLOG_openssl:libopenssl \
+RSYSLOG_pgsql:libpq +RSYSLOG_libyaml:libyaml +libuuid +zlib
MENU:=1
endef
define Package/rsyslog/conffiles
/etc/rsyslog.conf
endef
CONFIGURE_ARGS+= \
--disable-libgcrypt \
--disable-fmhttp \
--disable-default-tests \
--disable-libsystemd \
--disable-impstats-push \
$(if $(CONFIG_RSYSLOG_libyaml),--enable-libyaml,--disable-libyaml) \
$(if $(CONFIG_RSYSLOG_gssapi_krb5),--enable-gssapi-krb5) \
$(if $(CONFIG_RSYSLOG_mysql),--enable-mysql) \
$(if $(CONFIG_RSYSLOG_pgsql),--enable-pgsql) \
$(if $(CONFIG_RSYSLOG_libdbi),--enable-libdbi) \
$(if $(CONFIG_RSYSLOG_elasticsearch),--enable-elasticsearch) \
$(if $(CONFIG_RSYSLOG_omhttp),--enable-omhttp) \
$(if $(CONFIG_RSYSLOG_openssl),--enable-openssl) \
$(if $(CONFIG_RSYSLOG_gnutls),--enable-gnutls) \
$(if $(CONFIG_RSYSLOG_mail),--enable-mail) \
$(if $(CONFIG_RSYSLOG_mmjsonparse),--enable-mmjsonparse) \
$(if $(CONFIG_RSYSLOG_mmdblookup),--enable-mmdblookup) \
$(if $(CONFIG_RSYSLOG_imfile),--enable-imfile)
define Package/rsyslog/install
$(INSTALL_DIR) $(1)/usr/sbin
$(CP) $(PKG_INSTALL_DIR)/usr/sbin/rsyslogd $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/usr/lib/rsyslog
$(CP) $(PKG_INSTALL_DIR)/usr/lib/rsyslog/* $(1)/usr/lib/rsyslog/
$(INSTALL_DIR) $(1)/etc
$(INSTALL_CONF) ./files/rsyslog.conf $(1)/etc
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/rsyslog.init $(1)/etc/init.d/rsyslog
$(INSTALL_DIR) $(1)/etc/uci-defaults
$(INSTALL_CONF) ./files/20_rsyslog $(1)/etc/uci-defaults
endef
define Package/rsyslog/config
source "$(SOURCE)/Config.in"
endef
$(eval $(call BuildPackage,rsyslog))