mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00

If a package installs manual files, it should update manual index cache after its installation. Add package 'man-db' to RDEPENDS which contains command 'mandb' to update the cache. And do the update in the post install scripts. (From OE-Core rev: 078900f2416202b677471b10b69c8defb0f14c8d) Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
38 lines
1.5 KiB
Plaintext
38 lines
1.5 KiB
Plaintext
# Inherit this class to enable or disable building and installation of manpages
|
|
# depending on whether 'api-documentation' is in DISTRO_FEATURES. Such building
|
|
# tends to pull in the entire XML stack and other tools, so it's not enabled
|
|
# by default.
|
|
PACKAGECONFIG_append_class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}"
|
|
|
|
inherit qemu
|
|
|
|
# usually manual files are packaged to ${PN}-doc except man-pages
|
|
MAN_PKG ?= "${PN}-doc"
|
|
|
|
# only add man-db to RDEPENDS when manual files are built and installed
|
|
RDEPENDS_${MAN_PKG} += "${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'man-db', '', d)}"
|
|
|
|
pkg_postinst_append_${MAN_PKG} () {
|
|
# only update manual page index caches when manual files are built and installed
|
|
if ${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'true', 'false', d)}; then
|
|
if test -n "$D"; then
|
|
if ${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'true','false', d)}; then
|
|
sed "s:\(\s\)/:\1$D/:g" $D${sysconfdir}/man_db.conf | ${@qemu_run_binary(d, '$D', '${bindir}/mandb')} -C - -u -q $D${mandir}
|
|
mkdir -p $D${localstatedir}/cache/man
|
|
mv $D${mandir}/index.db $D${localstatedir}/cache/man
|
|
else
|
|
$INTERCEPT_DIR/postinst_intercept delay_to_first_boot ${PKG} mlprefix=${MLPREFIX}
|
|
fi
|
|
else
|
|
mandb -q
|
|
fi
|
|
fi
|
|
}
|
|
|
|
pkg_postrm_append_${MAN_PKG} () {
|
|
# only update manual page index caches when manual files are built and installed
|
|
if ${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'true', 'false', d)}; then
|
|
mandb -q
|
|
fi
|
|
}
|