Add a forked version of the old sysklogd.
This version has seen some major cleanup, with RFC3164 and RFC5424 support.
Notable is the addition of remote syslog messages and syslogp() support.

Signed-off-by: Christian Melki <[email protected]>
---
 rules/sysklogd-bbinit.in |  8 ++++
 rules/sysklogd.in        | 44 ++++++++++++++++++++
 rules/sysklogd.make      | 89 ++++++++++++++++++++++++++++++++++++++++
 3 files changed, 141 insertions(+)
 create mode 100644 rules/sysklogd-bbinit.in
 create mode 100644 rules/sysklogd.in
 create mode 100644 rules/sysklogd.make

diff --git a/rules/sysklogd-bbinit.in b/rules/sysklogd-bbinit.in
new file mode 100644
index 000000000..ea8f80832
--- /dev/null
+++ b/rules/sysklogd-bbinit.in
@@ -0,0 +1,8 @@
+## SECTION=initmethod_bbinit
+
+config SYSKLOGD_BBINIT_LINK
+       string
+       depends on SYSKLOGD_STARTSCRIPT
+       prompt "syslogd"
+       default "S10syslogd"
+
diff --git a/rules/sysklogd.in b/rules/sysklogd.in
new file mode 100644
index 000000000..1189ace95
--- /dev/null
+++ b/rules/sysklogd.in
@@ -0,0 +1,44 @@
+## SECTION=networking
+
+menuconfig SYSKLOGD
+       tristate
+       prompt "sysklogd                      "
+       select SYSTEMD          if SYSKLOGD_SYSTEMD
+       help
+         The venerable BSD syslogd and klogd rolled into one syslogd.
+         This is a maintained and updated variant of the same.
+
+if SYSKLOGD
+
+comment "runtime options   ---"
+
+config SYSKLOGD_CONFIG
+       bool
+       default y
+       prompt "Install configuration file"
+       help
+         Installs (if present) the "./projectroot/etc/syslogd.conf"
+         file from your workspace, otherwise a generic one from the
+         ptxdist installation
+         ("<PTXDIST>/projectroot/etc/syslogd.conf").
+
+config SYSKLOGD_SYSTEMD
+       bool
+       default y
+       prompt "Enable systemd support"
+       depends on INITMETHOD_SYSTEMD
+       help
+         Installs the systemd service file and enables support for the
+         systemd-journal
+
+config SYSKLOGD_STARTSCRIPT
+       bool
+       default y
+       depends on INITMETHOD_BBINIT
+       help
+         Installs (if present) the
+         "./projectroot/etc/init.d/syslogd" startscript from your
+         workspace, otherwise a generic one from the ptxdist
+         installation ("<PTXDIST>/projectroot/etc/init.d/syslogd").
+
+endif
diff --git a/rules/sysklogd.make b/rules/sysklogd.make
new file mode 100644
index 000000000..217b1642a
--- /dev/null
+++ b/rules/sysklogd.make
@@ -0,0 +1,89 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2021 by Christian Melki <[email protected]>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_SYSKLOGD) += sysklogd
+
+#
+# Paths and names
+#
+SYSKLOGD_VERSION       := 2.2.3
+SYSKLOGD_MD5           := 2c6749c49f52b8c5dad18e9a9315e7dd
+SYSKLOGD               := sysklogd-$(SYSKLOGD_VERSION)
+SYSKLOGD_SUFFIX                := tar.gz
+SYSKLOGD_URL           := 
https://github.com/troglobit/sysklogd/releases/download/v$(SYSKLOGD_VERSION)/$(SYSKLOGD).$(SYSKLOGD_SUFFIX)
+SYSKLOGD_SOURCE                := $(SRCDIR)/$(SYSKLOGD).$(SYSKLOGD_SUFFIX)
+SYSKLOGD_DIR           := $(BUILDDIR)/$(SYSKLOGD)
+SYSKLOGD_LICENSE       := BSD-3-Clause
+
+# ----------------------------------------------------------------------------
+# Prepare
+# ----------------------------------------------------------------------------
+
+#
+# autoconf
+#
+SYSKLOGD_AUTOCONF = \
+       $(CROSS_AUTOCONF_USR)
+
+# ----------------------------------------------------------------------------
+# Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/sysklogd.install:
+       @$(call targetinfo)
+       @$(call world/install, SYSKLOGD)
+       @$(call touch)
+
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/sysklogd.targetinstall:
+       @$(call targetinfo)
+
+       @$(call install_init, sysklogd)
+       @$(call install_fixup, sysklogd,PRIORITY,optional)
+       @$(call install_fixup, sysklogd,SECTION,base)
+       @$(call install_fixup, sysklogd,AUTHOR,"Christian Melki 
<[email protected]>")
+       @$(call install_fixup, sysklogd,DESCRIPTION,missing)
+       @$(call install_copy, sysklogd, 0, 0, 0755, -, /usr/bin/logger)
+       @$(call install_copy, sysklogd, 0, 0, 0755, -, /usr/sbin/syslogd)
+       @$(call install_lib, sysklogd, 0, 0, 0644, libsyslog)
+ifdef PTXCONF_SYSKLOGD_CONFIG
+       @$(call install_alternative, sysklogd, 0, 0, 0644, /etc/syslog.conf, n)
+endif
+
+ifdef PTXCONF_SYSKLOGD_STARTSCRIPT
+       @$(call install_alternative, sysklogd, 0, 0, 0755, /etc/init.d/syslogd, 
n)
+
+ifneq ($(call remove_quotes,$(PTXCONF_SYSKLOGD_BBINIT_LINK)),)
+       @$(call install_link, sysklogd, \
+               ../init.d/syslogd, \
+               /etc/rc.d/$(PTXCONF_SYSKLOGD_BBINIT_LINK))
+endif
+endif
+
+ifdef PTXCONF_INITMETHOD_SYSTEMD
+ifdef PTXCONF_SYSKLOGD_SYSTEMD
+       @$(call install_alternative, sysklogd, 0, 0, 0644, \
+               /usr/lib/systemd/system/sysklogd.service)
+       @$(call install_link, sysklogd, ../syslogd.service, \
+               /usr/lib/systemd/system/multi-user.target.wants/syslogd.service)
+       @$(call install_link, sysklogd, syslogd.service, \
+               /usr/lib/systemd/system/syslog.service)
+endif
+endif
+       @$(call install_finish, sysklogd)
+
+       @$(call touch)
+
+# vim: syntax=make
-- 
2.30.2


_______________________________________________
ptxdist mailing list
[email protected]
To unsubscribe, send a mail with subject "unsubscribe" to 
[email protected]

Reply via email to