[oe] [meta-oe v2][for-denzil][PATCH] systemd: use system variables instead of hardcoded paths
b28495 at freescale.com
b28495 at freescale.com
Fri Sep 14 10:17:19 UTC 2012
From: Ting Liu <b28495 at freescale.com>
Back port commit 980b338fb5100ff4c779335a86f3d9450ea8c54a
Below is the original commit message:
Fix build for ppc64
Consider /lib64 and /usr/lib64
Some 64bit architectures chose lib64 instead of lib
for default library dirnames. So we dig this from metadata
vars base_libdir and libdir instead of hardcoding 'lib'
ppc64 in OE uses lib64 for default libdir
and this leaves lot of udev/systemd
files unpackaged since 'lib' was hardcoded
Signed-off-by: Khem Raj <raj.khem at gmail.com>
Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
Signed-off-by: Ting Liu <b28495 at freescale.com>
---
meta-oe/classes/systemd.bbclass | 5 +-
.../systemd/systemd/use-rootlibdir.patch | 94 ++++++++++++++++++++
meta-oe/recipes-core/systemd/systemd_git.bb | 3 +-
3 files changed, 100 insertions(+), 2 deletions(-)
create mode 100644 meta-oe/recipes-core/systemd/systemd/use-rootlibdir.patch
diff --git a/meta-oe/classes/systemd.bbclass b/meta-oe/classes/systemd.bbclass
index a2c8ddf..0d88c64 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/'
+ base_libdir = d.getVar('base_libdir', 1)
+ searchpaths = '/etc/systemd/system/' + ' '
+ searchpaths += d.getVar('base_libdir', 1) + '/systemd/system/' + ' '
+ searchpaths += d.getVar('libdir', 1) + '/systemd/system/' + ' '
systemd_packages = d.getVar('SYSTEMD_PACKAGES', 1)
has_exactly_one_service = len(systemd_packages.split()) == 1
if has_exactly_one_service:
diff --git a/meta-oe/recipes-core/systemd/systemd/use-rootlibdir.patch b/meta-oe/recipes-core/systemd/systemd/use-rootlibdir.patch
new file mode 100644
index 0000000..26973c4
--- /dev/null
+++ b/meta-oe/recipes-core/systemd/systemd/use-rootlibdir.patch
@@ -0,0 +1,94 @@
+From 5210f67d0c637f4fbd8bb0a94e9b11da25a9c76c Mon Sep 17 00:00:00 2001
+From: Ting Liu <b28495 at freescale.com>
+Date: Fri, 14 Sep 2012 16:56:30 +0800
+Subject: [PATCH] use rootlibdir
+
+Back port from meta-oe 980b338fb5100ff4c779335a86f3d9450ea8c54a.
+Below is the original message in the patch:
+
+Upstream-Status: Undecided
+
+This patch removes some of hardcoded references to /lib
+and /usr/lib since on some architectures it should be
+/lib64 and /usr/lib64 atleast in OE
+
+I am not sure about the intention of hardcoded values
+thats why status is undecided
+
+Signed-off-by: Khem Raj <raj.khem at gmail.com>
+Signed-off-by: Ting Liu <b28495 at freescale.com>
+---
+ Makefile.am | 20 ++++++++++----------
+ 1 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 219d8de..b96ac74 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -50,19 +50,19 @@ bashcompletiondir=$(sysconfdir)/bash_completion.d
+
+ # Our own, non-special dirs
+ pkgsysconfdir=$(sysconfdir)/systemd
+-userunitdir=$(prefix)/lib/systemd/user
+-tmpfilesdir=$(prefix)/lib/tmpfiles.d
+-sysctldir=$(prefix)/lib/sysctl.d
++userunitdir=$(prefix)/$(rootlibdir)/gcsystemd/user
++tmpfilesdir=$(prefix)/$(rootlibdir)/gctmpfiles.d
++sysctldir=$(prefix)/$(rootlibdir)/gcsysctl.d
+ usergeneratordir=$(pkglibexecdir)/user-generators
+ pkgincludedir=$(includedir)/systemd
+
+ # And these are the special ones for /
+ rootprefix=@rootprefix@
+ rootbindir=$(rootprefix)/bin
+-rootlibexecdir=$(rootprefix)/lib/systemd
++rootlibexecdir=$(rootprefix)/$(rootlibdir)/gcsystemd
+ systemgeneratordir=$(rootlibexecdir)/system-generators
+ systemshutdowndir=$(rootlibexecdir)/system-shutdown
+-systemunitdir=$(rootprefix)/lib/systemd/system
++systemunitdir=$(rootprefix)/$(rootlibdir)/gcsystemd/system
+
+ CLEANFILES =
+ EXTRA_DIST =
+@@ -93,7 +93,7 @@ AM_CPPFLAGS = \
+ -DSYSTEMD_STDIO_BRIDGE_BINARY_PATH=\"$(bindir)/systemd-stdio-bridge\" \
+ -DROOTPREFIX=\"$(rootprefix)\" \
+ -DRUNTIME_DIR=\"/run\" \
+- -DRANDOM_SEED=\"$(localstatedir)/lib/random-seed\" \
++ -DRANDOM_SEED=\"$(localstatedir)/$(rootlibdir)/gcrandom-seed\" \
+ -DSYSTEMD_CRYPTSETUP_PATH=\"$(rootlibexecdir)/systemd-cryptsetup\" \
+ -DSYSTEM_GENERATOR_PATH=\"$(systemgeneratordir)\" \
+ -DUSER_GENERATOR_PATH=\"$(usergeneratordir)\" \
+@@ -1408,7 +1408,7 @@ nodist_systemunit_DATA += \
+
+ binfmt-install-data-hook:
+ $(MKDIR_P) -m 0755 \
+- $(DESTDIR)$(prefix)/lib/binfmt.d \
++ $(DESTDIR)$(prefix)/$(rootlibdir)/gcbinfmt.d \
+ $(DESTDIR)$(sysconfdir)/binfmt.d \
+ $(DESTDIR)$(systemunitdir)/sysinit.target.wants
+ ( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
+@@ -1940,7 +1940,7 @@ polkitpolicy_in_files += \
+ logind-install-data-hook:
+ $(MKDIR_P) -m 0755 \
+ $(DESTDIR)$(systemunitdir)/multi-user.target.wants \
+- $(DESTDIR)$(localstatedir)/lib/systemd
++ $(DESTDIR)$(localstatedir)/$(rootlibdir)/gcsystemd
+ ( cd $(DESTDIR)$(systemunitdir) && \
+ rm -f dbus-org.freedesktop.login1.service && \
+ $(LN_S) systemd-logind.service dbus-org.freedesktop.login1.service)
+@@ -2196,9 +2196,9 @@ systemd-install-data-hook:
+ $(MKDIR_P) -m 0755 \
+ $(DESTDIR)$(tmpfilesdir) \
+ $(DESTDIR)$(sysconfdir)/tmpfiles.d \
+- $(DESTDIR)$(prefix)/lib/modules-load.d \
++ $(DESTDIR)$(prefix)/$(rootlibdir)/gcmodules-load.d \
+ $(DESTDIR)$(sysconfdir)/modules-load.d \
+- $(DESTDIR)$(prefix)/lib/sysctl.d \
++ $(DESTDIR)$(prefix)/$(rootlibdir)/gcsysctl.d \
+ $(DESTDIR)$(sysconfdir)/sysctl.d \
+ $(DESTDIR)$(systemshutdowndir) \
+ $(DESTDIR)$(systemgeneratordir) \
+--
+1.7.5
+
diff --git a/meta-oe/recipes-core/systemd/systemd_git.bb b/meta-oe/recipes-core/systemd/systemd_git.bb
index b9c8a19..21a6326 100644
--- a/meta-oe/recipes-core/systemd/systemd_git.bb
+++ b/meta-oe/recipes-core/systemd/systemd_git.bb
@@ -14,13 +14,14 @@ inherit gitpkgv
PKGV = "v${GITPKGVTAG}"
PV = "git"
-PR = "r28"
+PR = "r29"
inherit useradd pkgconfig autotools vala perlnative
SRCREV = "3eff4208ffecedd778fec260f0d4b18e94dab443"
SRC_URI = "git://anongit.freedesktop.org/systemd/systemd;protocol=git \
+ file://use-rootlibdir.patch \
${UCLIBCPATCHES} \
file://var-run.conf \
"
--
1.7.5
More information about the Openembedded-devel
mailing list