diff options
Diffstat (limited to 'meta/recipes-extended/man-db')
4 files changed, 110 insertions, 71 deletions
diff --git a/meta/recipes-extended/man-db/files/0001-man-Move-local-variable-declaration-to-function-scop.patch b/meta/recipes-extended/man-db/files/0001-man-Move-local-variable-declaration-to-function-scop.patch new file mode 100644 index 0000000000..57ecd48b1f --- /dev/null +++ b/meta/recipes-extended/man-db/files/0001-man-Move-local-variable-declaration-to-function-scop.patch @@ -0,0 +1,38 @@ +From e4125223631f0d555fc327da6d8705bcc8ee5ba5 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Wed, 9 Feb 2022 17:30:16 -0800 +Subject: [PATCH] man: Move local variable declaration to function scope + +There is a clang bug [1] unearthed here, so help clang by re-arranging +code without changing the logic, until its fixed in clang + +[1] https://github.com/llvm/llvm-project/issues/53692 + +Upstream-Status: Inappropriate [Inappropriate: Clang bug] +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + src/man.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/man.c b/src/man.c +index 195d35d..6870989 100644 +--- a/src/man.c ++++ b/src/man.c +@@ -379,7 +379,7 @@ static void init_html_pager (void) + static error_t parse_opt (int key, char *arg, struct argp_state *state) + { + static bool apropos, whatis; /* retain values between calls */ +- ++ char *s; + /* Please keep these keys in the same order as in options above. */ + switch (key) { + case 'C': +@@ -411,7 +411,7 @@ static error_t parse_opt (int key, char *arg, struct argp_state *state) + case OPT_WARNINGS: + #ifdef NROFF_WARNINGS + { +- char *s = xstrdup ++ s = xstrdup + (arg ? arg : default_roff_warnings); + const char *warning; + diff --git a/meta/recipes-extended/man-db/files/man_db.conf-avoid-multilib-install-file-conflict.patch b/meta/recipes-extended/man-db/files/man_db.conf-avoid-multilib-install-file-conflict.patch deleted file mode 100644 index 03273d3b49..0000000000 --- a/meta/recipes-extended/man-db/files/man_db.conf-avoid-multilib-install-file-conflict.patch +++ /dev/null @@ -1,16 +0,0 @@ -The first line of man_db.conf will be replaced by package name. And it causes -multilib install file conflict. Remove the line to avoid the issue. - -Upstream-Status: Pending - -Signed-off-by: Kai Kang <kai.kang@windriver.com> - -diff --git a/src/man_db.conf.in b/src/man_db.conf.in -index bc8bb7e..04cfb31 100644 ---- a/src/man_db.conf.in -+++ b/src/man_db.conf.in -@@ -1,4 +1,3 @@ --# @config_file_basename@ - # - # This file is used by the man-db package to configure the man and cat paths. - # It is also used to provide a manpath for those without one by examining diff --git a/meta/recipes-extended/man-db/man-db_2.12.1.bb b/meta/recipes-extended/man-db/man-db_2.12.1.bb new file mode 100644 index 0000000000..5c6797c8f1 --- /dev/null +++ b/meta/recipes-extended/man-db/man-db_2.12.1.bb @@ -0,0 +1,72 @@ +SUMMARY = "An implementation of the standard Unix documentation system accessed using the man command" +HOMEPAGE = "http://man-db.nongnu.org/" +DESCRIPTION = "man-db is an implementation of the standard Unix documentation system accessed using the man command. It uses a Berkeley DB database in place of the traditional flat-text whatis databases." +LICENSE = "LGPL-2.1-or-later & GPL-2.0-or-later & GPL-3.0-or-later" +LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \ + file://docs/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://docs/COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \ + " + +SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/man-db/man-db-${PV}.tar.xz \ + file://99_mandb \ + file://0001-man-Move-local-variable-declaration-to-function-scop.patch \ + " +SRC_URI[sha256sum] = "ddee249daeb78cf92bab794ccd069cc8b575992265ea20e239e887156e880265" + +DEPENDS = "libpipeline gdbm groff-native base-passwd" +RDEPENDS:${PN} += "base-passwd" +PACKAGE_WRITE_DEPS += "base-passwd" + +# | /usr/src/debug/man-db/2.8.0-r0/man-db-2.8.0/src/whatis.c:939: undefined reference to `_nl_msg_cat_cntr' +USE_NLS:libc-musl = "no" + +inherit gettext pkgconfig autotools systemd + +EXTRA_OECONF = "--with-pager=less --with-systemdsystemunitdir=${systemd_system_unitdir}" +EXTRA_AUTORECONF += "-I ${S}/gl/m4" + +PACKAGECONFIG[bzip2] = "--with-bzip2=bzip2,ac_cv_prog_have_bzip2='',bzip2" +PACKAGECONFIG[gzip] = "--with-gzip=gzip,ac_cv_prog_have_gzip='',gzip" +PACKAGECONFIG[lzip] = "--with-lzip=lzip,ac_cv_prog_have_lzip='',lzip" +PACKAGECONFIG[lzma] = "--with-lzma=lzma,ac_cv_prog_have_lzma='',xz" +PACKAGECONFIG[zstd] = "--with-zstd=zstd,ac_cv_prog_have_zstd='',zstd" +PACKAGECONFIG[xz] = "--with-xz=xz,ac_cv_prog_have_xz='',xz" + +do_install() { + autotools_do_install + + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}/etc/default/volatiles + install -m 0644 ${UNPACKDIR}/99_mandb ${D}/etc/default/volatiles + fi +} + +do_install:append:libc-musl() { + rm -f ${D}${libdir}/charset.alias +} + +FILES:${PN} += "${prefix}/lib/tmpfiles.d" + +FILES:${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so" + +RDEPENDS:${PN} += "groff" +RRECOMMENDS:${PN} += "less" +# iconv from glibc-utils can be used to transform encoding +RRECOMMENDS:${PN}:append:libc-glibc = " glibc-utils" +RPROVIDES:${PN} += "man" + +def compress_pkg(d): + if bb.utils.contains("INHERIT", "compress_doc", True, False, d): + compress = d.getVar("DOC_COMPRESS") + if compress == "gz": + return "gzip" + elif compress == "bz2": + return "bzip2" + elif compress == "xz": + return "xz" + return "" + +RDEPENDS:${PN} += "${@compress_pkg(d)}" + +SYSTEMD_SERVICE:${PN} = "man-db.timer man-db.service" +SYSTEMD_AUTO_ENABLE ?= "disable" diff --git a/meta/recipes-extended/man-db/man-db_2.8.3.bb b/meta/recipes-extended/man-db/man-db_2.8.3.bb deleted file mode 100644 index cd8d27c33e..0000000000 --- a/meta/recipes-extended/man-db/man-db_2.8.3.bb +++ /dev/null @@ -1,55 +0,0 @@ -SUMMARY = "An implementation of the standard Unix documentation system accessed using the man command" -HOMEPAGE = "http://man-db.nongnu.org/" -LICENSE = "LGPLv2.1 & GPLv2" -LIC_FILES_CHKSUM = "file://docs/COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://docs/COPYING;md5=eb723b61539feef013de476e68b5c50a" - -SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/man-db/man-db-${PV}.tar.xz \ - file://99_mandb \ - file://man_db.conf-avoid-multilib-install-file-conflict.patch" -SRC_URI[md5sum] = "6f3055e18fdd1ce5cbbdb30403991ec7" -SRC_URI[sha256sum] = "5932a1ca366e1ec61a3ece1a3afa0e92f2fdc125b61d236f20cc6ff9d80cc4ac" - -DEPENDS = "libpipeline gdbm groff-native base-passwd" -RDEPENDS_${PN} += "base-passwd" - -# | /usr/src/debug/man-db/2.8.0-r0/man-db-2.8.0/src/whatis.c:939: undefined reference to `_nl_msg_cat_cntr' -USE_NLS_libc-musl = "no" - -inherit gettext pkgconfig autotools - -EXTRA_OECONF = "--with-pager=less" - -do_install() { - autotools_do_install - - if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then - install -d ${D}/etc/default/volatiles - install -m 0644 ${WORKDIR}/99_mandb ${D}/etc/default/volatiles - fi -} - -do_install_append_libc-musl() { - rm -f ${D}${libdir}/charset.alias -} - -FILES_${PN} += "${prefix}/lib/tmpfiles.d" - -FILES_${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so" - -RDEPENDS_${PN} += "groff" -RRECOMMENDS_${PN} += "less" -RPROVIDES_${PN} += " man" - -def compress_pkg(d): - if bb.utils.contains("INHERIT", "compress_doc", True, False, d): - compress = d.getVar("DOC_COMPRESS") - if compress == "gz": - return "gzip" - elif compress == "bz2": - return "bzip2" - elif compress == "xz": - return "xz" - return "" - -RDEPENDS_${PN} += "${@compress_pkg(d)}" |