From: Michael Olbrich <m.olbrich@pengutronix.de>
To: ptxdist@pengutronix.de
Cc: matthias.schiffer@ew.tq-group.com
Subject: Re: [ptxdist] [PATCH v2] syslogng: update to 3.25.1
Date: Fri, 21 Feb 2020 08:47:12 +0100 [thread overview]
Message-ID: <20200221074712.GC4597@pengutronix.de> (raw)
In-Reply-To: <20200220083947.28574-1-matthias.schiffer@ew.tq-group.com>
On Thu, Feb 20, 2020 at 09:39:47AM +0100, Matthias Schiffer wrote:
> Update and move out of staging. The new version adds compatiblity with
> OpenSSL 1.1.x and switches to Python 3.
>
> The AMQP and MongoDB destinations are removed, they were never buildable
> without additional packages not available in plain PTXdist. Various
> other modules are disabled explicitly to avoid the build
> nondeterministically picking up undeclared dependencies.
>
> A simple replacement for the old systemd unit is added, as the new version
> only provides an instanced unit which cannot be linked as syslog.service
> (which is necessary to use syslog-ng as the default system logger by
> enabling ForwardToSyslog in journald.conf).
>
> Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
> ---
> projectroot/etc/syslog-ng.conf | 6 ++-
> .../usr/lib/systemd/system/syslog-ng.service | 20 +++++++++
> rules/syslogng.in | 30 ++++++-------
> rules/syslogng.make | 45 ++++++++++++++++---
> 4 files changed, 76 insertions(+), 25 deletions(-)
> create mode 100644 projectroot/usr/lib/systemd/system/syslog-ng.service
>
> diff --git a/projectroot/etc/syslog-ng.conf b/projectroot/etc/syslog-ng.conf
> index 254aecfd2..0235b9857 100644
> --- a/projectroot/etc/syslog-ng.conf
> +++ b/projectroot/etc/syslog-ng.conf
> @@ -1,13 +1,15 @@
> #
> -# syslog-ng configuration
> +# syslog-ng configuration
> #
>
> +@version: 3.25
> +
> #
> # Options
> #
>
> # sync every 0 lines
> -options { long_hostnames(off); sync(0); };
> +options { chain_hostnames(off); flush_lines(0); };
>
> #
> # Sources
> diff --git a/projectroot/usr/lib/systemd/system/syslog-ng.service b/projectroot/usr/lib/systemd/system/syslog-ng.service
> new file mode 100644
> index 000000000..6bf591efd
> --- /dev/null
> +++ b/projectroot/usr/lib/systemd/system/syslog-ng.service
> @@ -0,0 +1,20 @@
> +[Unit]
> +Description=System Logger Daemon
> +Documentation=man:syslog-ng(8)
> +Conflicts=emergency.service emergency.target
> +Requires=syslog.socket
> +Wants=network.target network-online.target
> +After=network.target network-online.target
> +
> +[Service]
> +Type=notify
> +ExecStartPre=/bin/mkdir -p /var/lib/syslog-ng
> +ExecStart=/usr/sbin/syslog-ng -F --enable-core --cfgfile /etc/syslog-ng.conf --control /var/run/syslog-ng.ctl --persist-file /var/lib/syslog-ng/syslog-ng.persist --pidfile /var/run/syslog-ng.pid
> +ExecReload=/bin/kill -HUP $MAINPID
> +StandardOutput=journal
> +StandardError=journal
> +Restart=on-failure
> +
> +[Install]
> +Alias=syslog.service
> +WantedBy=multi-user.target
> diff --git a/rules/syslogng.in b/rules/syslogng.in
> index 3b1af844b..7707c8c32 100644
> --- a/rules/syslogng.in
> +++ b/rules/syslogng.in
> @@ -1,6 +1,4 @@
> -## SECTION=staging
> -## old section:
> -### SECTION=networking
> +## SECTION=networking
> # syslog-ng configuration
>
> menuconfig SYSLOGNG
> @@ -9,7 +7,9 @@ menuconfig SYSLOGNG
> select EVENTLOG
> select GLIB
> select OPENSSL
> - select PYTHON if SYSLOGNG_PYTHON_DESTINATION
> + select LIBCURL if SYSLOGNG_HTTP
> + select JSON_C if SYSLOGNG_JSON
> + select PYTHON3 if SYSLOGNG_PYTHON_DESTINATION
> select LIBC_NSL
> select LIBC_RT
> select LIBNET if SYSLOGNG_SPOOF_SOURCE
> @@ -19,10 +19,6 @@ menuconfig SYSLOGNG
> help
> The next generation syslog daemon.
>
> - STAGING: remove in ptxdist-2020.01.0
> - Fails to build with OpenSSL 1.1.x. Update to a new version is
> - needed.
> -
> if SYSLOGNG
>
> config SYSLOGNG_TCP_WRAPPER
> @@ -46,28 +42,30 @@ config SYSLOGNG_SPOOF_SOURCE
> destinations though the original message can be
> received by TCP as well.
>
> -config SYSLOGNG_AMQP_DESTINATION
> +config SYSLOGNG_HTTP
> bool
> - prompt "support the AMQP destination"
> + prompt "Enable HTTP support"
> help
> - Enables the ability to publish AMQP messages.
> + Enable support for the http() destination that is based
> + on libcurl.
>
> -config SYSLOGNG_MONGODB_DESTINATION
> +config SYSLOGNG_JSON
> bool
> - prompt "support the MongoDB destination"
> + prompt "Enable JSON support"
> help
> - Enables the ability to send messages to a MongoDB database.
> + JSON support is required for json-parser, and the format-cim
> + and format-json template functions.
>
> config SYSLOGNG_PYTHON_DESTINATION
> bool
> - prompt "support the python destination"
> + prompt "Support the python destination"
> help
> Enables the ability to use inline python in the
> syslog-ng configuration file.
>
> config SYSLOGNG_STOMP_DESTINATION
> bool
> - prompt "support the STOMP destination"
> + prompt "Support the STOMP destination"
> help
> Enables the ability to send STOMP messages to message brokers.
>
> diff --git a/rules/syslogng.make b/rules/syslogng.make
> index 114f72cef..6175a9e31 100644
> --- a/rules/syslogng.make
> +++ b/rules/syslogng.make
> @@ -16,9 +16,9 @@ PACKAGES-$(PTXCONF_SYSLOGNG) += syslogng
> #
> # Paths and names
> #
> -SYSLOGNG_VERSION := 3.7.3
> -SYSLOG_LIBVERSION := 3.7
> -SYSLOGNG_MD5 := 803d61a713d6d41a973942d417fec999
> +SYSLOGNG_VERSION := 3.25.1
> +SYSLOG_LIBVERSION := 3.25
> +SYSLOGNG_MD5 := 07c2ebb712ddacd201b24b265b857b0d
> SYSLOGNG := syslog-ng-$(SYSLOGNG_VERSION)
> SYSLOGNG_SUFFIX := tar.gz
> SYSLOGNG_URL := https://github.com/balabit/syslog-ng/releases/download/syslog-ng-$(SYSLOGNG_VERSION)/$(SYSLOGNG).$(SYSLOGNG_SUFFIX)
> @@ -32,7 +32,7 @@ SYSLOGNG_LICENSE := GPL-2.0-or-later AND LGPL-2.1-only
>
> SYSLOGNG_ENV = \
> $(CROSS_ENV) \
> - ac_cv_path_PYTHON=$(CROSS_PYTHON)
> + ac_cv_path_PYTHON=$(CROSS_PYTHON3)
>
> #
> # autoconf
> @@ -41,10 +41,21 @@ SYSLOGNG_AUTOCONF = \
> $(CROSS_AUTOCONF_USR) \
> $(GLOBAL_IPV6_OPTION) \
> --enable-dynamic-linking \
> + --disable-amqp \
> --disable-debug \
> + --disable-geoip2 \
> + --disable-java \
> + --disable-java-modules \
> + --disable-kafka \
> + --disable-mongodb \
> + --disable-redis \
> + --disable-riemann \
> + --disable-smtp \
> + --disable-snmp-dest \
> + --disable-sql \
> --disable-sun-streams \
> - --$(call ptx/endis, PTXCONF_SYSLOGNG_AMQP_DESTINATION)-amqp \
> - --$(call ptx/endis, PTXCONF_SYSLOGNG_MONGODB_DESTINATION)-mongodb \
> + --$(call ptx/endis, PTXCONF_SYSLOGNG_HTTP)-http \
> + --$(call ptx/endis, PTXCONF_SYSLOGNG_JSON)-json \
> --$(call ptx/endis, PTXCONF_SYSLOGNG_PYTHON_DESTINATION)-python \
> --$(call ptx/endis, PTXCONF_SYSLOGNG_SYSTEMD)-systemd \
> --$(call ptx/endis, PTXCONF_SYSLOGNG_SPOOF_SOURCE)-spoof-source \
> @@ -53,8 +64,26 @@ SYSLOGNG_AUTOCONF = \
> --with-systemd-journal=$(call ptx/ifdef, PTXCONF_SYSLOGNG_SYSTEMD,system,no) \
> --with-systemdsystemunitdir=/usr/lib/systemd/system \
> --localstatedir=/var/run \
> + --with-ivykis=internal \
> + --with-jsonc=$(if $(PTXCONF_SYSLOGNG_JSON),system,no) \
> --with-libnet=$(SYSROOT)/usr/bin \
> - --with-python=$(PYTHON_MAJORMINOR)
> + --with-python=$(PYTHON3_MAJORMINOR)
As I noted in my last review, please use configure_helper.py to check and
improve the options.
- GLOBAL_LARGE_FILE_OPTION should be used
- the sorting should be corrected
- there are several enable/disable and with/without options that are
missing and may pick up dependencies automatically.
Ignore the --with-python output: configure_helper.py currently cannot
handle two options with the same name --enable-python and --with-python in
this case. The two options are merged so the output for this is wrong.
> +
> +# ----------------------------------------------------------------------------
> +# Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/syslogng.install:
> + @$(call targetinfo)
> +
> + @$(call world/install, SYSLOGNG)
> +
> + @rm "$(SYSLOGNG_PKGDIR)/usr/bin/loggen"
> + @rm -r "$(SYSLOGNG_PKGDIR)/usr/lib/libloggen_"*
> + @rm -r "$(SYSLOGNG_PKGDIR)/usr/lib/syslog-ng/loggen"
Why are these removed? This deserves a comment above.
Michael
> + @$(call touch)
> +
>
> # ----------------------------------------------------------------------------
> # Target-Install
> @@ -73,6 +102,8 @@ $(STATEDIR)/syslogng.targetinstall:
> @$(call install_copy, syslogng, 0, 0, 0755, -, \
> /usr/sbin/syslog-ng)
> @$(call install_lib, syslogng, 0, 0, 0644, libsyslog-ng-$(SYSLOG_LIBVERSION))
> + @$(call install_lib, syslogng, 0, 0, 0644, libevtlog-$(SYSLOG_LIBVERSION))
> + @$(call install_lib, syslogng, 0, 0, 0644, libsecret-storage)
> @$(call install_glob, syslogng, 0, 0, -, /usr/lib/syslog-ng, *.so)
>
> # # config
> --
> 2.17.1
>
>
> _______________________________________________
> ptxdist mailing list
> ptxdist@pengutronix.de
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
_______________________________________________
ptxdist mailing list
ptxdist@pengutronix.de
next prev parent reply other threads:[~2020-02-21 7:47 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-13 17:22 [ptxdist] [PATCH] kmscube: switch to https URL Matthias Schiffer
2020-02-13 17:22 ` [ptxdist] [PATCH] parted: update to 3.3 Matthias Schiffer
2020-02-14 8:49 ` Michael Olbrich
2020-02-14 9:07 ` [ptxdist] [PATCH v2] " Matthias Schiffer
2020-02-14 10:38 ` [ptxdist] [PATCH v3] " Matthias Schiffer
2020-02-15 10:05 ` Michael Olbrich
2020-02-17 8:53 ` [ptxdist] [PATCH v4] " Matthias Schiffer
2020-02-13 17:22 ` [ptxdist] [PATCH] gettext: deterministically build with included libraries Matthias Schiffer
2020-02-14 9:12 ` Michael Olbrich
2020-02-14 9:48 ` [ptxdist] (EXT) " Matthias Schiffer
2020-02-14 10:38 ` Matthias Schiffer
2020-02-15 9:27 ` Michael Olbrich
2020-02-13 17:22 ` [ptxdist] [PATCH] gst-plugins-good1: qmlglsink: fix build on EGL platform without X11 headers Matthias Schiffer
2020-02-14 9:18 ` Michael Olbrich
2020-02-13 17:22 ` [ptxdist] [PATCH] varoverlayfs: support kernels without metacopy Matthias Schiffer
2020-02-14 9:21 ` Michael Olbrich
2020-02-14 10:38 ` [ptxdist] [PATCH v2] " Matthias Schiffer
2020-02-13 17:22 ` [ptxdist] [PATCH] syslogng: update to 3.25.1 Matthias Schiffer
2020-02-17 9:38 ` Michael Olbrich
2020-02-17 9:59 ` Michael Olbrich
2020-02-20 8:39 ` [ptxdist] [PATCH v2] " Matthias Schiffer
2020-02-21 7:47 ` Michael Olbrich [this message]
2020-02-21 8:30 ` [ptxdist] (EXT) " Matthias Schiffer
2020-03-18 10:50 ` Michael Olbrich
2020-04-03 5:28 ` Michael Olbrich
2020-04-03 8:00 ` [ptxdist] (EXT) " Matthias Schiffer
2020-02-14 8:40 ` [ptxdist] [PATCH] kmscube: switch to https URL Michael Olbrich
2020-02-14 8:53 ` [ptxdist] (EXT) " Matthias Schiffer
2020-02-15 9:29 ` Michael Olbrich
2020-02-17 9:00 ` [ptxdist] [PATCH v2] kmscube: switch to https archive download Matthias Schiffer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200221074712.GC4597@pengutronix.de \
--to=m.olbrich@pengutronix.de \
--cc=matthias.schiffer@ew.tq-group.com \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox