1*92b42cb3SPatrick Williams# 2*92b42cb3SPatrick Williams# Copyright OpenEmbedded Contributors 3*92b42cb3SPatrick Williams# 4*92b42cb3SPatrick Williams# SPDX-License-Identifier: MIT 5*92b42cb3SPatrick Williams# 6*92b42cb3SPatrick Williams 7*92b42cb3SPatrick Williams# Inherit this class to enable or disable building and installation of manpages 8*92b42cb3SPatrick Williams# depending on whether 'api-documentation' is in DISTRO_FEATURES. Such building 9*92b42cb3SPatrick Williams# tends to pull in the entire XML stack and other tools, so it's not enabled 10*92b42cb3SPatrick Williams# by default. 11*92b42cb3SPatrick WilliamsPACKAGECONFIG:append:class-target = " ${@bb.utils.contains('DISTRO_FEATURES', 'api-documentation', 'manpages', '', d)}" 12*92b42cb3SPatrick Williams 13*92b42cb3SPatrick Williamsinherit qemu 14*92b42cb3SPatrick Williams 15*92b42cb3SPatrick Williams# usually manual files are packaged to ${PN}-doc except man-pages 16*92b42cb3SPatrick WilliamsMAN_PKG ?= "${PN}-doc" 17*92b42cb3SPatrick Williams 18*92b42cb3SPatrick Williams# only add man-db to RDEPENDS when manual files are built and installed 19*92b42cb3SPatrick WilliamsRDEPENDS:${MAN_PKG} += "${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'man-db', '', d)}" 20*92b42cb3SPatrick Williams 21*92b42cb3SPatrick Williamspkg_postinst:${MAN_PKG}:append () { 22*92b42cb3SPatrick Williams # only update manual page index caches when manual files are built and installed 23*92b42cb3SPatrick Williams if ${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'true', 'false', d)}; then 24*92b42cb3SPatrick Williams if test -n "$D"; then 25*92b42cb3SPatrick Williams if ${@bb.utils.contains('MACHINE_FEATURES', 'qemu-usermode', 'true', 'false', d)}; then 26*92b42cb3SPatrick Williams sed "s:\(\s\)/:\1$D/:g" $D${sysconfdir}/man_db.conf | ${@qemu_run_binary(d, '$D', '${bindir}/mandb')} -C - -u -q $D${mandir} 27*92b42cb3SPatrick Williams chown -R root:root $D${mandir} 28*92b42cb3SPatrick Williams 29*92b42cb3SPatrick Williams mkdir -p $D${localstatedir}/cache/man 30*92b42cb3SPatrick Williams cd $D${mandir} 31*92b42cb3SPatrick Williams find . -name index.db | while read index; do 32*92b42cb3SPatrick Williams mkdir -p $D${localstatedir}/cache/man/$(dirname ${index}) 33*92b42cb3SPatrick Williams mv ${index} $D${localstatedir}/cache/man/${index} 34*92b42cb3SPatrick Williams chown man:man $D${localstatedir}/cache/man/${index} 35*92b42cb3SPatrick Williams done 36*92b42cb3SPatrick Williams cd - 37*92b42cb3SPatrick Williams else 38*92b42cb3SPatrick Williams $INTERCEPT_DIR/postinst_intercept delay_to_first_boot ${PKG} mlprefix=${MLPREFIX} 39*92b42cb3SPatrick Williams fi 40*92b42cb3SPatrick Williams else 41*92b42cb3SPatrick Williams mandb -q 42*92b42cb3SPatrick Williams fi 43*92b42cb3SPatrick Williams fi 44*92b42cb3SPatrick Williams} 45*92b42cb3SPatrick Williams 46*92b42cb3SPatrick Williamspkg_postrm:${MAN_PKG}:append () { 47*92b42cb3SPatrick Williams # only update manual page index caches when manual files are built and installed 48*92b42cb3SPatrick Williams if ${@bb.utils.contains('PACKAGECONFIG', 'manpages', 'true', 'false', d)}; then 49*92b42cb3SPatrick Williams mandb -q 50*92b42cb3SPatrick Williams fi 51*92b42cb3SPatrick Williams} 52