summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Orling <timothy.t.orling@linux.intel.com>2018-01-21 15:45:17 -0800
committerArmin Kuster <akuster808@gmail.com>2018-01-26 17:28:13 -0800
commit37da2271b3b0cd6861fbdad0af9e31ca391dbde9 (patch)
tree8712885721cecfc25eb5e8e156e6a47d7b9670eb
parentfc23f03f02a7bbcc273efff463800c02a2a99fce (diff)
downloadmeta-openembedded-37da2271b3b0cd6861fbdad0af9e31ca391dbde9.tar.gz
python[3]-systemd: cleanup common content; fix build for musl
* Put common content in python-systemd.inc * Add patch to provide strndupa() for musl Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
-rw-r--r--meta-python/recipes-devtools/python/python-systemd.inc18
-rw-r--r--meta-python/recipes-devtools/python/python-systemd/0001-Provide-implementation-of-strndupa-for-musl.patch42
-rw-r--r--meta-python/recipes-devtools/python/python-systemd_234.bb15
-rw-r--r--meta-python/recipes-devtools/python/python3-systemd_234.bb15
4 files changed, 64 insertions, 26 deletions
diff --git a/meta-python/recipes-devtools/python/python-systemd.inc b/meta-python/recipes-devtools/python/python-systemd.inc
new file mode 100644
index 000000000..808af82cd
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python-systemd.inc
@@ -0,0 +1,18 @@
1SUMMARY = "Python interface for libsystemd"
2HOMEPAGE = "https://github.com/systemd/python-systemd"
3LICENSE = "LGPLv2.1+"
4LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4fbd65380cdd255951079008b364516c"
5
6PYPI_PACKAGE = "systemd-python"
7DEPENDS += "systemd (<=234)"
8RDEPENDS_${PN} += "systemd"
9REQUIRED_DISTRO_FEATURES = "systemd"
10inherit pypi distro_features_check
11
12SRC_URI[md5sum] = "5071ea5bcb976186e92a3f5e75df221d"
13SRC_URI[sha256sum] = "fd0e44bf70eadae45aadc292cb0a7eb5b0b6372cd1b391228047d33895db83e7"
14
15# allow for common patches for python- and python3-systemd
16FILESEXTRAPATHS_prepend := "${THISDIR}/python-systemd:"
17
18SRC_URI_append_libc-musl = " file://0001-Provide-implementation-of-strndupa-for-musl.patch"
diff --git a/meta-python/recipes-devtools/python/python-systemd/0001-Provide-implementation-of-strndupa-for-musl.patch b/meta-python/recipes-devtools/python/python-systemd/0001-Provide-implementation-of-strndupa-for-musl.patch
new file mode 100644
index 000000000..d7085a856
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python-systemd/0001-Provide-implementation-of-strndupa-for-musl.patch
@@ -0,0 +1,42 @@
1From 8b639f9faf6199e47b9eae0698d01a22917b6abe Mon Sep 17 00:00:00 2001
2From: Tim Orling <timothy.t.orling@linux.intel.com>
3Date: Fri, 29 Dec 2017 09:17:17 -0800
4Subject: [PATCH] Provide implementation of strndupa for musl
5
6Reuse the approach from oe-core:
7/meta/recipes-core/systemd/systemd/0002-src-basic-missing.h-check-for-missing-strndupa.patch
8
9Original patch author: Emil Renner Berthing <systemd@esmil.dk>
10
11Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com
12---
13Upstream-Status: Pending
14
15 systemd/util.c | 11 +++++++++++
16 1 file changed, 11 insertions(+)
17
18diff --git a/systemd/util.c b/systemd/util.c
19index e02c825..277e611 100644
20--- a/systemd/util.c
21+++ b/systemd/util.c
22@@ -34,6 +34,17 @@
23
24 #include "util.h"
25
26+#if !HAVE_DECL_STRNDUPA
27+#define strndupa(s, n) \
28+ ({ \
29+ const char *__old = (s); \
30+ size_t __len = strnlen(__old, (n)); \
31+ char *__new = (char *)alloca(__len + 1); \
32+ __new[__len] = '\0'; \
33+ (char *)memcpy(__new, __old, __len); \
34+ })
35+#endif
36+
37 int safe_atou(const char *s, unsigned *ret_u) {
38 char *x = NULL;
39 unsigned long l;
40--
412.13.6
42
diff --git a/meta-python/recipes-devtools/python/python-systemd_234.bb b/meta-python/recipes-devtools/python/python-systemd_234.bb
index ef1183171..80f290077 100644
--- a/meta-python/recipes-devtools/python/python-systemd_234.bb
+++ b/meta-python/recipes-devtools/python/python-systemd_234.bb
@@ -1,13 +1,2 @@
1SUMMARY = "Python interface for libsystemd" 1require python-systemd.inc
2HOMEPAGE = "https://github.com/systemd/python-systemd" 2inherit setuptools
3LICENSE = "LGPLv2.1+"
4LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4fbd65380cdd255951079008b364516c"
5
6PYPI_PACKAGE = "systemd-python"
7DEPENDS += "systemd (<=234)"
8RDEPENDS_${PN} += "systemd"
9REQUIRED_DISTRO_FEATURES = "systemd"
10inherit pypi setuptools distro_features_check
11
12SRC_URI[md5sum] = "5071ea5bcb976186e92a3f5e75df221d"
13SRC_URI[sha256sum] = "fd0e44bf70eadae45aadc292cb0a7eb5b0b6372cd1b391228047d33895db83e7"
diff --git a/meta-python/recipes-devtools/python/python3-systemd_234.bb b/meta-python/recipes-devtools/python/python3-systemd_234.bb
index 845b7d9e1..580d99352 100644
--- a/meta-python/recipes-devtools/python/python3-systemd_234.bb
+++ b/meta-python/recipes-devtools/python/python3-systemd_234.bb
@@ -1,13 +1,2 @@
1SUMMARY = "Python interface for libsystemd" 1require python-systemd.inc
2HOMEPAGE = "https://github.com/systemd/python-systemd" 2inherit setuptools3
3LICENSE = "LGPLv2.1+"
4LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=4fbd65380cdd255951079008b364516c"
5
6PYPI_PACKAGE = "systemd-python"
7DEPENDS += "systemd (<=234)"
8RDEPENDS_${PN} += "systemd"
9REQUIRED_DISTRO_FEATURES = "systemd"
10inherit pypi setuptools3 distro_features_check
11
12SRC_URI[md5sum] = "5071ea5bcb976186e92a3f5e75df221d"
13SRC_URI[sha256sum] = "fd0e44bf70eadae45aadc292cb0a7eb5b0b6372cd1b391228047d33895db83e7"