]> code.ossystems Code Review - openembedded-core.git/commitdiff
sysklogd: Re-enable alternatives for syslogd.8 man page
authorMark Hatle <mark.hatle@windriver.com>
Thu, 27 Sep 2018 18:17:46 +0000 (14:17 -0400)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 27 Sep 2018 22:41:55 +0000 (23:41 +0100)
Other recipes, such as meta-networking inetutils may also provide a man page
for syslogd.8.  Use the alternatives mechanism to select the man page to
display.

This is a partial revert of commit: 988aad01b20c18a8850db0ad6dc547525d94116c

The syslogd tool itself is provided by both recipes in their respective runtime
packages.  In the inet case, it is inetutils-syslogd, which has an appropriate
RCONFLICTS with the syslogd version.  Only one or the other will be installed.
This is the conflict resolution the original commit of
"988aad01b20c18a8850db0ad6dc547525d94116c" was referring to.

HOWEVER, both syslogd and inetutils each only have a singular 'doc' package.
(As do most packages it seems.)  Since this is the case, if both syslogd and
inetutils (not syslogd part) is requested for a configuration -- AND ---
doc-pkgs are configured in, you get an error of conflicting files.

Now does the documentation match whichever package was installed, maybe not...
but this isn't a big deal as it turns out, since most syslogd share a common set
of arguments and those are the things a run-time user would query from the man
pages.

The only alternative is to start spliting up the docs into their relevant
subpackages, as we have the runtime items.  But this then complicates the
doc-pkgs processing and related...

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-extended/sysklogd/sysklogd.inc

index fc4e67c18e163fae024eaa7cbd780843c0c7019c..f151dd87f783f1656b73c5e2455f59209dec0461 100644 (file)
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b \
                     file://klogd.c;beginline=2;endline=19;md5=7e87ed0ae6142de079bce738c10c899d \
                    "
 
-inherit update-rc.d systemd
+inherit update-rc.d update-alternatives systemd
 
 SRC_URI = "http://www.infodrom.org/projects/sysklogd/download/sysklogd-${PV}.tar.gz \
            file://no-strip-install.patch \
@@ -58,6 +58,11 @@ do_install () {
 
 FILES_${PN} += "${@bb.utils.contains('DISTRO_FEATURES','systemd','${exec_prefix}/lib/tmpfiles.d/sysklogd.conf', '', d)}"
 
+ALTERNATIVE_PRIORITY = "100"
+
+ALTERNATIVE_${PN}-doc = "syslogd.8"
+ALTERNATIVE_LINK_NAME[syslogd.8] = "${mandir}/man8/syslogd.8"
+
 pkg_prerm_${PN} () {
        if test "x$D" = "x"; then
        if test "$1" = "upgrade" -o "$1" = "remove"; then