1# Class to pack gnome help files or delete them during install 2# There are the following cases: 3# 4# if 'helpfiles' not in DISTRO_FEATURES 5# delete all help contants during install 6# else 7# if PACKAGE_NO_HELP_SPLIT == 1 8# pack all help files to ${PN}-help 9# else 10# pack all help files to ${PN}-help-<lingua> 11 12# Dummy to get yelp build & PACKAGE_NO_HELP_SPLIT set 1 13PACKAGES:append = " ${PN}-help" 14FILES:${PN}-help = "${datadir}/help" 15RRECOMMENDS:${PN}-help = "${@bb.utils.contains('DISTRO_FEATURES','helpfiles','yelp','',d)}" 16 17do_install:append() { 18 if ${@bb.utils.contains('DISTRO_FEATURES','helpfiles','false','true',d)}; then 19 rm -rf ${D}${datadir}/help/* 20 fi 21} 22 23python gnome_do_split_help() { 24 if bb.utils.contains('DISTRO_FEATURES', 'helpfiles', False, True, d): 25 return 26 27 if (d.getVar('PACKAGE_NO_HELP_SPLIT') == '1'): 28 # all help files go to ${ 29 bb.debug(1, "package requested not splitting help-files") 30 return 31 32 packages = (d.getVar('PACKAGES') or "").split() 33 datadir = d.getVar('datadir') 34 dvar = d.getVar('PKGD') 35 pn = d.getVar('PN') 36 37 if pn + '-help' in packages: 38 packages.remove(pn + '-help') 39 40 helpdir = os.path.join(dvar + datadir, 'help') 41 42 if not cpath.isdir(helpdir): 43 bb.warn("No help files in this package - remove gnome-help from inherit?") 44 return 45 46 helps = os.listdir(helpdir) 47 48 summary = d.getVar('SUMMARY') or pn 49 description = d.getVar('DESCRIPTION') or "" 50 locale_section = d.getVar('LOCALE_SECTION') 51 mlprefix = d.getVar('MLPREFIX') or "" 52 for l in sorted(helps): 53 ln = legitimize_package_name(l) 54 pkg = pn + '-help-' + ln 55 packages.append(pkg) 56 d.setVar('FILES:' + pkg, os.path.join(datadir, 'help', l)) 57 d.setVar('RRECOMMENDS:' + pkg, '%syelp' % mlprefix) 58 d.setVar('SUMMARY:' + pkg, '%s - %s help' % (summary, l)) 59 d.setVar('DESCRIPTION:' + pkg, '%s This package contains language help files for the %s locale.' % (description, l)) 60 if locale_section: 61 d.setVar('SECTION:' + pkg, locale_section) 62 63 d.setVar('PACKAGES', ' '.join(packages)) 64} 65 66PACKAGESPLITFUNCS:prepend = "gnome_do_split_help " 67 68