mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-07-16 04:17:25 +00:00
systemd.bbclass: add *-systemd packages to RRECOMMENDS
This commit is contained in:
committed by
Koen Kooi
parent
241e40a64a
commit
264e5a44e1
@@ -180,8 +180,21 @@ python populate_packages_prepend () {
|
|||||||
raise bb.build.FuncFailed, "\n\nFor package %s SYSTEMD_SERVICE-entry %s does not exist" % \
|
raise bb.build.FuncFailed, "\n\nFor package %s SYSTEMD_SERVICE-entry %s does not exist" % \
|
||||||
(pkg_systemd, service)
|
(pkg_systemd, service)
|
||||||
|
|
||||||
# *-systemd packages get RDEPENDS to systemd and their base package
|
""" Setup rdepends / rrecommmends as:
|
||||||
def systemd_add_rdepends(pkg_systemd):
|
|
||||||
|
-----------------------------
|
||||||
|
| pkg_systemd_base: 'foo' |
|
||||||
|
-----------------------------
|
||||||
|
| ^
|
||||||
|
| | --------------
|
||||||
|
rrecommends | | rdepends | 'systemd' |
|
||||||
|
| | ->--------------
|
||||||
|
V | / rdepends
|
||||||
|
------------------------------/
|
||||||
|
| pkg_systemd: 'foo-systemd' |
|
||||||
|
------------------------------
|
||||||
|
"""
|
||||||
|
def systemd_add_rdepends_rrecommends(pkg_systemd):
|
||||||
# RDEPENDS_${pkg_systemd} += pkg_systemd_base systemd
|
# RDEPENDS_${pkg_systemd} += pkg_systemd_base systemd
|
||||||
rdepends = d.getVar('RDEPENDS_' + pkg_systemd, 1) or ""
|
rdepends = d.getVar('RDEPENDS_' + pkg_systemd, 1) or ""
|
||||||
rdepends_arr = rdepends.split()
|
rdepends_arr = rdepends.split()
|
||||||
@@ -195,13 +208,18 @@ python populate_packages_prepend () {
|
|||||||
if len(rdepends_arr) == 0 and pkg_systemd != '${PN}' and not pkg_systemd_base in rdepends:
|
if len(rdepends_arr) == 0 and pkg_systemd != '${PN}' and not pkg_systemd_base in rdepends:
|
||||||
rdepends = '%s %s' % (rdepends, pkg_systemd_base)
|
rdepends = '%s %s' % (rdepends, pkg_systemd_base)
|
||||||
d.setVar('RDEPENDS_' + pkg_systemd, rdepends)
|
d.setVar('RDEPENDS_' + pkg_systemd, rdepends)
|
||||||
|
# RRECOMMENDS_${pkg_systemd_base} += pkg_systemd systemd
|
||||||
|
rrecommends = d.getVar('RRECOMMENDS_' + pkg_systemd_base, 1) or ""
|
||||||
|
# not rrecommending myself AND avoid double entries
|
||||||
|
if pkg_systemd != pkg_systemd_base and not pkg_systemd in rrecommends.split():
|
||||||
|
rrecommends = '%s %s' % (rrecommends, pkg_systemd)
|
||||||
|
d.setVar('RRECOMMENDS_' + pkg_systemd_base, rrecommends)
|
||||||
|
|
||||||
# run all modifications once when creating package
|
# run all modifications once when creating package
|
||||||
if os.path.exists('${D}'):
|
if os.path.exists('${D}'):
|
||||||
for pkg_systemd in d.getVar('SYSTEMD_PACKAGES', 1).split():
|
for pkg_systemd in d.getVar('SYSTEMD_PACKAGES', 1).split():
|
||||||
if get_package_var(d, 'SYSTEMD_SERVICE', pkg_systemd) != "":
|
if get_package_var(d, 'SYSTEMD_SERVICE', pkg_systemd) != "":
|
||||||
systemd_generate_package_scripts(pkg_systemd)
|
systemd_generate_package_scripts(pkg_systemd)
|
||||||
systemd_add_rdepends(pkg_systemd)
|
systemd_add_rdepends_rrecommends(pkg_systemd)
|
||||||
systemd_check_services()
|
systemd_check_services()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user