On 06/26/2013 05:15 AM, Yevhen Kyriukha wrote:
---
meta/recipes-core/systemd/systemd_204.bb | 20 ++++++++++++++++----
1 file changed, 16 insertions(+), 4 deletions(-)
diff --git a/meta/recipes-core/systemd/systemd_204.bb
b/meta/recipes-core/systemd/systemd_204.bb
index b8b1290..a12c6c9 100644
--- a/meta/recipes-core/systemd/systemd_204.bb
+++ b/meta/recipes-core/systemd/systemd_204.bb
@@ -13,9 +13,15 @@ PE = "1"
DEPENDS = "kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl
readline dbus libcap libcgroup glib-2.0 qemu-native util-linux"
DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
+# need to export these variables for python-config to work
+export BUILD_SYS
+export HOST_SYS
+export STAGING_INCDIR
+export STAGING_LIBDIR
+
SECTION = "base/shell"
-inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d
update-alternatives qemu
+inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d
update-alternatives qemu pythonnative python-dir
There is still a problem with that, that systemd will no bring in python
native unconditionally even if the PACKAGECONFIG is disabled, we will
need a way to wrap the inherit some how using variables.
See image.bbclass usage of it around line 100.
Thanks
Sau!
SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \
file://touchscreen.rules \
@@ -51,6 +57,8 @@ DEPENDS += "libgcrypt"
# Compress the journal
PACKAGECONFIG[xz] = "--enable-xz,--disable-xz,xz"
PACKAGECONFIG[tcp-wrappers] =
"--enable-tcpwrap,--disable-tcpwrap,tcp-wrappers"
+# Use python-systemd
+PACKAGECONFIG[python] = "--with-python,--without-python,python"
CACHED_CONFIGUREVARS = "ac_cv_path_KILL=${base_bindir}/kill"
@@ -71,7 +79,6 @@ EXTRA_OECONF = " --with-rootprefix=${rootprefix} \
--disable-tcpwrap \
--enable-split-usr \
--disable-microhttpd \
- --without-python \
--with-sysvrcnd-path=${sysconfdir} \
--with-firmware-path=/lib/firmware \
ac_cv_path_KILL=${base_bindir}/kill \
@@ -93,6 +100,8 @@ do_install() {
# Provided by a separate recipe
rm ${D}${systemd_unitdir}/system/serial-getty* -f
+ rm -f ${D}${PYTHON_SITEPACKAGES_DIR}/systemd/*.la
+
# Provide support for initramfs
ln -s ${rootlibexecdir}/systemd/systemd ${D}/init
ln -s ${rootlibexecdir}/systemd/systemd-udevd ${D}/${base_sbindir}/udevd
@@ -121,7 +130,7 @@ python populate_packages_prepend (){
}
PACKAGES_DYNAMIC += "^lib(udev|gudev|systemd).*"
-PACKAGES =+ "${PN}-gui ${PN}-vconsole-setup ${PN}-initramfs ${PN}-analyze
${PN}-kernel-install"
+PACKAGES =+ "${PN}-gui ${PN}-vconsole-setup ${PN}-initramfs ${PN}-analyze
${PN}-kernel-install python-${PN}"
USERADD_PACKAGES = "${PN}"
GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal"
@@ -131,6 +140,9 @@ FILES_${PN}-analyze = "${bindir}/systemd-analyze"
FILES_${PN}-initramfs = "/init"
RDEPENDS_${PN}-initramfs = "${PN}"
+FILES_python-${PN} = "${PYTHON_SITEPACKAGES_DIR}/systemd/*.py*
${PYTHON_SITEPACKAGES_DIR}/systemd/*.so"
+RDEPENDS_python-${PN} = "python-core python-datetime python-logging
python-syslog"
+
FILES_${PN}-gui = "${bindir}/systemadm"
FILES_${PN}-vconsole-setup =
"${rootlibexecdir}/systemd/systemd-vconsole-setup \
@@ -187,7 +199,7 @@ FILES_${PN} = " ${base_bindir}/* \
/lib/udev/rules.d/99-systemd.rules \
"
-FILES_${PN}-dbg += "${rootlibdir}/.debug ${systemd_unitdir}/.debug
${systemd_unitdir}/*/.debug ${base_libdir}/security/.debug/"
+FILES_${PN}-dbg += "${rootlibdir}/.debug ${systemd_unitdir}/.debug
${systemd_unitdir}/*/.debug ${base_libdir}/security/.debug/
${PYTHON_SITEPACKAGES_DIR}/systemd/.debug"
FILES_${PN}-dev += "${base_libdir}/security/*.la ${datadir}/dbus-1/interfaces/
${sysconfdir}/rpm/macros.systemd"
RDEPENDS_${PN} += "dbus util-linux-mount"
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core