diff options
author | Christian Melki <christian.melki@t2data.com> | 2021-10-18 09:14:53 +0200 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2021-10-25 16:56:11 +0200 |
commit | 822b224b012890cd8b621bb9b32bef6b0bea18c0 (patch) | |
tree | c1ba959d4b83bb9d3b425d06bc57a9f73968395c | |
parent | d8c7b6738c0de92b285111428a1905c34c6c62d7 (diff) | |
download | ptxdist-822b224b012890cd8b621bb9b32bef6b0bea18c0.tar.gz ptxdist-822b224b012890cd8b621bb9b32bef6b0bea18c0.tar.xz |
sysklogd: Add new package.
Changes in v2:
* Add handling for similar functions in busybox.
* Example config installed as fallback in install_alternative
* Old syntax configuration replaced with modern one.
* Whitespace and ifdef corrections.
Signed-off-by: Christian Melki <christian.melki@t2data.com>
Message-Id: <20211018071453.3769512-1-christian.melki@t2data.com>
[mol: fix service file name in targetinstall]
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r-- | rules/sysklogd-bbinit.in | 8 | ||||
-rw-r--r-- | rules/sysklogd.in | 42 | ||||
-rw-r--r-- | rules/sysklogd.make | 90 |
3 files changed, 140 insertions, 0 deletions
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..e841e1935 --- /dev/null +++ b/rules/sysklogd.in @@ -0,0 +1,42 @@ +## SECTION=networking + +menuconfig SYSKLOGD + tristate + prompt "sysklogd " + depends on !BUSYBOX_SYSLOGD || ALLYES + depends on !BUSYBOX_LOGGER || ALLYES + 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. + +comment "BusyBox' syslogd is selected!" + depends on BUSYBOX_SYSLOGD + +comment "BusyBox' logger is selected!" + depends on BUSYBOX_LOGGER + +if SYSKLOGD + +comment "runtime options ---" + +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..b3ad40be3 --- /dev/null +++ b/rules/sysklogd.make @@ -0,0 +1,90 @@ +# -*-makefile-*- +# +# Copyright (C) 2021 by Christian Melki <christian.melki@t2data.com> +# +# 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_CONF_TOOL = autoconf +SYSKLOGD_CONF_OPT = \ + $(CROSS_AUTOCONF_USR) + +# ---------------------------------------------------------------------------- +# Install +# ---------------------------------------------------------------------------- + +$(STATEDIR)/sysklogd.install: + @$(call targetinfo) + @$(call world/install, SYSKLOGD) + @install -vD -m 644 $(SYSKLOGD_DIR)/syslog.conf \ + $(SYSKLOGD_PKGDIR)/etc/syslog.conf + @$(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 <christian.melki@t2data.com>") + @$(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) + + @$(call install_alternative, sysklogd, 0, 0, 0644, /etc/syslog.conf) + +ifdef PTXCONF_SYSKLOGD_STARTSCRIPT + @$(call install_alternative, sysklogd, 0, 0, 0755, /etc/init.d/syslogd) + +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 + @$(call install_alternative, sysklogd, 0, 0, 0644, \ + /usr/lib/systemd/system/syslogd.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 + + @$(call install_finish, sysklogd) + + @$(call touch) + +# vim: syntax=make |