systemd: added python-systemd package generation.
PATCH v4 1/1 systemd: added python-systemd package generation.
--- meta/recipes-core/systemd/systemd_199.bb | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-)
meta/recipes-core/systemd/systemd_199.bb +16 -4
@@ -16,7 +16,13 @@ DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" SECTION = "base/shell" -inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives +inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives pythonnative python-dir + +# need to export these variables for python-config to work +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \ file://touchscreen.rules \
@@ -46,11 +52,13 @@ LDFLAGS_libc-uclibc_append = " -lrt" GTKDOC_DOCDIR = "${S}/docs/" -PACKAGECONFIG ??= "xz" +PACKAGECONFIG ??= "xz python" # Sign the journal for anti-tampering PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt" # Compress the journal PACKAGECONFIG[xz] = "--enable-xz,--disable-xz,xz" +# Use python-systemd +PACKAGECONFIG[python] = "--with-python,--without-python,python" CACHED_CONFIGUREVARS = "ac_cv_path_KILL=${base_bindir}/kill"
@@ -65,7 +73,6 @@ EXTRA_OECONF = " --with-rootprefix=${base_prefix} \ --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 \
@@ -119,7 +126,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} python-${PN}-dbg python-${PN}-dev" USERADD_PACKAGES = "${PN}" GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal"
@@ -129,6 +136,11 @@ 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_python-${PN}-dev = "${PYTHON_SITEPACKAGES_DIR}/systemd/*.la" +FILES_python-${PN}-dbg = "${PYTHON_SITEPACKAGES_DIR}/systemd/.debug" + FILES_${PN}-gui = "${bindir}/systemadm" FILES_${PN}-vconsole-setup = "${systemd_unitdir}/systemd-vconsole-setup \
Signature · 1 line
1.7.9.5
Quoted 1 line · Yevhen Kyriukha
+inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives pythonnative python-dir
Does this really need pythonnative? That's adding a python-native dependency to build systemd.
Ross
Quoted 5 lines · Ross
Quoted 1 line · Yevhen Kyriukha
+inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives pythonnative python-dir
Does this really need pythonnative? That's adding a python-native dependency to build systemd.
To handle python modules correctly, I suspect the answer is yes. It would be better if we could make this inherit conditional somehow. I'm also sceptical about the separate -dev/=dbg packages for the python pieces, this isn't the standard practise.
Cheers,
Richard
2013/4/23 Richard Purdie <[email protected]>:
Quoted 7 lines · Ross
Quoted 5 lines · Yevhen Kyriukha
Quoted 1 line
+inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives pythonnative python-dir
Does this really need pythonnative? That's adding a python-native dependency to build systemd.
Quoted 9 lines
To handle python modules correctly, I suspect the answer is yes. It would be better if we could make this inherit conditional somehow. I'm also sceptical about the separate -dev/=dbg packages for the python pieces, this isn't the standard practise.
Cheers,
Richard
It isn't a pure python package but a combination of C library and python therefore -dev and -dbg are needed.
Best regards,
Yevhen
Quoted 2 lines · Yevhen Kyriukha
It isn't a pure python package but a combination of C library and python therefore -dev and -dbg are needed.
FILES_python-${PN}-dev = "${PYTHON_SITEPACKAGES_DIR}/systemd/*.la"
Nobody will be linking to that library as it's a shared module and Python won't read .la files when looking for modules, so you don't need this. Just delete it instead of packaging a useless file in a useless package.
Ross
OK, and what about -dbg?
Best regards,
Yevhen
2013/4/23 Burton, Ross <[email protected]>:
Quoted 12 lines · Yevhen Kyriukha
Quoted 2 lines
It isn't a pure python package but a combination of C library and python therefore -dev and -dbg are needed.
FILES_python-${PN}-dev = "${PYTHON_SITEPACKAGES_DIR}/systemd/*.la"
Nobody will be linking to that library as it's a shared module and Python won't read .la files when looking for modules, so you don't need this. Just delete it instead of packaging a useless file in a useless package.
Ross
Quoted 1 line · Yevhen Kyriukha
OK, and what about -dbg?
I'd suggest adding that to systemd-dbg, it's going to be so small it's barely worth the overhead of a package.
Ross
Quoted 24 lines · Yevhen Kyriukha
--- meta/recipes-core/systemd/systemd_199.bb | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-)meta/recipes-core/systemd/systemd_199.bb +7
-1@@ -16,7 +16,13 @@ DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}" SECTION = "base/shell" -inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives +inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives pythonnative python-dir + +# need to export these variables for python-config to work +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \ file://touchscreen.rules \
meta/recipes-core/systemd/systemd_199.bb LDFLAGS_libc-uclibc_append = " -lrt" · line 55
Quoted 5 lines
meta/recipes-core/systemd/systemd_199.bb +1
-1@@ -46,11 +52,13 @@ LDFLAGS_libc-uclibc_append = " -lrt" GTKDOC_DOCDIR = "${S}/docs/" -PACKAGECONFIG ??= "xz" +PACKAGECONFIG ??= "xz python"
I believe that the default should be python is not enabled.
Sau!
Quoted 39 lines
meta/recipes-core/systemd/systemd_199.bb +8
-2# Sign the journal for anti-tampering PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt" # Compress the journal PACKAGECONFIG[xz] = "--enable-xz,--disable-xz,xz" +# Use python-systemd +PACKAGECONFIG[python] = "--with-python,--without-python,python" CACHED_CONFIGUREVARS = "ac_cv_path_KILL=${base_bindir}/kill"@@ -65,7 +73,6 @@ EXTRA_OECONF = " --with-rootprefix=${base_prefix} \ --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 \@@ -119,7 +126,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} python-${PN}-dbg python-${PN}-dev" USERADD_PACKAGES = "${PN}" GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal"@@ -129,6 +136,11 @@ 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_python-${PN}-dev = "${PYTHON_SITEPACKAGES_DIR}/systemd/*.la" +FILES_python-${PN}-dbg = "${PYTHON_SITEPACKAGES_DIR}/systemd/.debug" + FILES_${PN}-gui = "${bindir}/systemadm" FILES_${PN}-vconsole-setup = "${systemd_unitdir}/systemd-vconsole-setup \
I'll send new patch without python in PACKAGECONFIG. Best regards,
Yevhen
2013/4/23 Saul Wold <[email protected]>:
Quoted 88 lines · Yevhen Kyriukha
Quoted 30 lines
--- meta/recipes-core/systemd/systemd_199.bb | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-)meta/recipes-core/systemd/systemd_199.bb +0
-0@@ -16,7 +16,13 @@ DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam','libpam', '', d)}"
SECTION = "base/shell"
-inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives
+inherit gtk-doc useradd pkgconfig autotools perlnative update-rc.d update-alternatives pythonnative python-dirmeta/recipes-core/systemd/systemd_199.bb +6
-0+ +# need to export these variables for python-config to work +export BUILD_SYS +export HOST_SYS +export STAGING_INCDIR +export STAGING_LIBDIR SRC_URI ="http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \ file://touchscreen.rules \meta/recipes-core/systemd/systemd_199.bb LDFLAGS_libc-uclibc_append = " -lrt" · line 55
Quoted 5 lines
meta/recipes-core/systemd/systemd_199.bb +1
-1@@ -46,11 +52,13 @@ LDFLAGS_libc-uclibc_append = " -lrt" GTKDOC_DOCDIR = "${S}/docs/" -PACKAGECONFIG ??= "xz" +PACKAGECONFIG ??= "xz python"I believe that the default should be python is not enabled.
Sau!
Quoted 44 lines
meta/recipes-core/systemd/systemd_199.bb +2
-2# Sign the journal for anti-tampering PACKAGECONFIG[gcrypt] = "--enable-gcrypt,--disable-gcrypt,libgcrypt" # Compress the journal PACKAGECONFIG[xz] = "--enable-xz,--disable-xz,xz" +# Use python-systemd +PACKAGECONFIG[python] = "--with-python,--without-python,python" CACHED_CONFIGUREVARS = "ac_cv_path_KILL=${base_bindir}/kill"@@ -65,7 +73,6 @@ EXTRA_OECONF = " --with-rootprefix=${base_prefix} \ --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 \@@ -119,7 +126,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} python-${PN}-dbg python-${PN}-dev"USERADD_PACKAGES = "${PN}" GROUPADD_PARAM_${PN} = "-r lock; -r systemd-journal"meta/recipes-core/systemd/systemd_199.bb +1
-0@@ -129,6 +136,11 @@ 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"
meta/recipes-core/systemd/systemd_199.bb +3
-0+FILES_python-${PN}-dev = "${PYTHON_SITEPACKAGES_DIR}/systemd/*.la" +FILES_python-${PN}-dbg = "${PYTHON_SITEPACKAGES_DIR}/systemd/.debug" + FILES_${PN}-gui = "${bindir}/systemadm" FILES_${PN}-vconsole-setup = "${systemd_unitdir}/systemd-vconsole-setup\