From: Ting Liu <[email protected]>

Fix below issue when check service-files for 64bit target:
| DEBUG: adding systemd calls to postinst/postrm for busybox-syslog-systemd
| ERROR: Function failed:
|
| For package busybox-syslog-systemd SYSTEMD_SERVICE-entry 
busybox-syslog.service does not exist
NOTE: package busybox-1.19.4-r6+fsl.0: task do_package: Failed

Signed-off-by: Ting Liu <[email protected]>
---
 meta-oe/classes/systemd.bbclass |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/meta-oe/classes/systemd.bbclass b/meta-oe/classes/systemd.bbclass
index a2c8ddf..9690c18 100644
--- a/meta-oe/classes/systemd.bbclass
+++ b/meta-oe/classes/systemd.bbclass
@@ -154,7 +154,10 @@ python populate_packages_prepend () {
 
        # check service-files and call systemd_add_files_and_parse for each 
entry
        def systemd_check_services():
-               searchpaths = '/etc/systemd/system/ /lib/systemd/system/ 
/usr/lib/systemd/system/'
+               searchpaths = []
+               searchpaths.append(d.getVar('sysconfdir', True))
+               searchpaths.append(d.getVar('libdir', True))
+               searchpaths.append(d.getVar('base_libdir', True))
                systemd_packages = d.getVar('SYSTEMD_PACKAGES', 1)
                has_exactly_one_service = len(systemd_packages.split()) == 1
                if has_exactly_one_service:
@@ -168,9 +171,9 @@ python populate_packages_prepend () {
                for pkg_systemd in systemd_packages.split():
                        for service in get_package_var(d, 'SYSTEMD_SERVICE', 
pkg_systemd).split():
                                path_found = ''
-                               for path in searchpaths.split():
-                                       if os.path.exists('${D}' + path + 
service):
-                                               path_found = path
+                               for path in searchpaths:
+                                       if os.path.exists('${D}' + path + 
'/systemd/system/' + service):
+                                               path_found = path + 
'/systemd/system/'
                                if path_found != '':
                                        
systemd_add_files_and_parse(pkg_systemd, path_found, service, keys)
                                else:
-- 
1.7.5.4



_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to