Skip to contentSkip to conversation

recipes refreshed for uclibc and systemd update to 197

PATCH In review Khem Raj 5 participants 23 messages Jan 24, 2013 – Jan 25, 2013

lore
Share & tools
lore

Khem Raj

author
#0 lore raw

cover recipes refreshed for uclibc and systemd update to 197

This patchset addresses few things

1. Upgrades systemd to 197 (tested on uclibc and eglibc with all qemu machines)

2. Fixes recipes to compile with uclibc and build core-image-sato for all supported qemu machines and booted them

3. Fix intermittent build failures seen on high parallism and rebuild from sstate while editing package recipe and causing rebuilds of certain recipes only.

4. Pin uclibc git as default provider of uclibc in OE-Core since its the one which has tested support for systemd

5. Enable reenterant nss functionality in uclibc needed for quota and rpcbind

The following changes since commit ffab86f13cafb10d8d6273b6af8cd9a3c84eae20:

prserv: add LOCALCOUNT to AUTOINCs migration feature (2013-01-22 16:01:17 +0000)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib kraj/uclibc-systemd-updates
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=kraj/uclibc-systemd-updates

Khem Raj (11):
libpcap: Add missing libusb dependency
gettext: Fix build with uclibc remove upstreamed patches
libtirpc: Disable DES functions on uclibc
rpcbind: Dont use nss with uclibc
quota: inherit gettext
icu: Fix build on uclibc
uclibc-git/uClibc.distro: Enable UCLIBC_HAS_REENTRANT_RPC tcmode-default.inc: Switch to git version of uclibc by default
systemd: Fix build on ppc
systemd: Upgrade to 197
gawk: Add missing dependency on readline

 meta/conf/distro/include/tcmode-default.inc        |    2 +-
 meta/recipes-connectivity/libpcap/libpcap.inc      |    2 +-
 .../gnulib-uclibc-sched_param-def.patch            |   21 -
 .../gettext/gettext-0.18.2/wchar-uclibc.patch      |   74 --
 meta/recipes-core/gettext/gettext_0.18.2.bb        |    3 -
 ...emd-analyze-use-argparse-instead-of-getop.patch |  106 --
 .../0001-systemd-analyze-rewrite-in-C.patch        | 1087 ++++++++++++++++++++
 ...it-file-Add-libsystemd-daemon.la-to-LDADD.patch |   32 +
 ...-analyze-use-GDBus-instead-of-dbus-python.patch |   94 --
 .../systemd/{systemd_196.bb => systemd_197.bb}     |   13 +-
 meta/recipes-core/uclibc/uclibc-git/uClibc.distro  |    2 +-
 meta/recipes-extended/gawk/gawk_4.0.1.bb           |    2 +
 .../libtirpc-0.2.2/remove-des-uclibc.patch         |   47 +
 meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb   |    2 +
 meta/recipes-extended/quota/quota_4.01.bb          |    2 +-
 .../rpcbind/rpcbind/0001-uclibc-nss.patch          |   30 +
 .../rpcbind/0002-uclibc-rpcsvc-defines.patch       |   60 ++
 meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb     |    8 +
 meta/recipes-support/icu/icu.inc                   |    1 +
 19 files changed, 1281 insertions(+), 307 deletions(-)
 delete mode 100644 meta/recipes-core/gettext/gettext-0.18.2/gnulib-uclibc-sched_param-def.patch
 delete mode 100644 meta/recipes-core/gettext/gettext-0.18.2/wchar-uclibc.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0001-Revert-systemd-analyze-use-argparse-instead-of-getop.patch
 create mode 100644 meta/recipes-core/systemd/systemd/0001-systemd-analyze-rewrite-in-C.patch
 create mode 100644 meta/recipes-core/systemd/systemd/0001-test-unit-file-Add-libsystemd-daemon.la-to-LDADD.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0002-Revert-analyze-use-GDBus-instead-of-dbus-python.patch
 rename meta/recipes-core/systemd/{systemd_196.bb => systemd_197.bb} (95%)
 create mode 100644 meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch
 create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch
 create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch
Signature · 1 line
1.7.9.5
author
#1 lore raw

PATCH 1/11 libpcap: Add missing libusb dependency

libpcap notices libusb in its configure if its sysrooted
and ignores it if its not. But this causes problems since
there is no explicit dependency on libusb. Rebuild from shared
state sometimes fails when libusb has not been yet populated
in sysroot and libpcap has. And do_configure of consumers of libpcap e.g. tcpdump are probing for features on libpcap. All the tests fail since
none of link steps succeed and it sees as if libpcap does
not have required features and configure of tcpdump bails out.

---
 meta/recipes-connectivity/libpcap/libpcap.inc |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-connectivity/libpcap/libpcap.inc +1 -1
index 882c62c..0f71227 100644
@@ -8,7 +8,7 @@ SECTION = "libs/network"
 LICENSE = "BSD"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867 \
                     file://pcap.h;beginline=1;endline=34;md5=8d6cf7e17d5745010d633e30bc529ea9"
-DEPENDS = "flex-native bison-native libnl"
+DEPENDS = "flex-native bison-native libnl libusb"
 
 PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'bluetooth', 'bluetooth', '', d)}"
 PACKAGECONFIG[bluetooth] = "--enable-bluetooth,--disable-bluetooth,bluez4"
Signature · 1 line
1.7.9.5
author
#2 lore raw

PATCH 2/11 gettext: Fix build with uclibc remove upstreamed patches

uclibc specific patches are not needed now as they are available in 0.18.2 gettext now

---
 .../gnulib-uclibc-sched_param-def.patch            |   21 ------
 .../gettext/gettext-0.18.2/wchar-uclibc.patch      |   74 --------------------
 meta/recipes-core/gettext/gettext_0.18.2.bb        |    3 -
 3 files changed, 98 deletions(-)
 delete mode 100644 meta/recipes-core/gettext/gettext-0.18.2/gnulib-uclibc-sched_param-def.patch
 delete mode 100644 meta/recipes-core/gettext/gettext-0.18.2/wchar-uclibc.patch
meta/recipes-core/gettext/gettext-0.18.2/gnulib-uclibc-sched_param-def.patch deleted +0 -21
deleted file mode 100644
index d8d10db..0000000
@@ -1,21 +0,0 @@
-uclibc defines __GLIBC__ but it does not expose struct shed_param as much as glibc
-and is not needed too per standard. gnulib attempts to use it but we have to account
-for it because in this case uclibc does not behave like glibc.
-
--Khem
-
-Upstream-Status: Pending
-
-Index: gettext-0.18.1.1/gettext-tools/gnulib-lib/spawn.in.h
-===================================================================
---- gettext-0.18.1.1.orig/gettext-tools/gnulib-lib/spawn.in.h
-+++ gettext-0.18.1.1/gettext-tools/gnulib-lib/spawn.in.h
-@@ -31,7 +31,7 @@
- 
- /* Get definitions of 'struct sched_param' and 'sigset_t'.
-    But avoid namespace pollution on glibc systems.  */
--#ifndef __GLIBC__
-+#if !defined __GLIBC__ || defined __UCLIBC__
- # include <sched.h>
- # include <signal.h>
- #endif
meta/recipes-core/gettext/gettext-0.18.2/wchar-uclibc.patch deleted +0 -74

74 lines not on this page · raw message

meta/recipes-core/gettext/gettext_0.18.2.bb +0 -3
index 3e93089..086f7fa 100644
@@ -15,9 +15,6 @@ SRC_URI = "${GNU_MIRROR}/gettext/gettext-${PV}.tar.gz \
 	   file://parallel.patch \
           "
 
-SRC_URI_append_libc-uclibc = " file://wchar-uclibc.patch \
-                               file://gnulib-uclibc-sched_param-def.patch \
-                             "
 LDFLAGS_prepend_libc-uclibc = " -lrt -lpthread "
 
 SRC_URI[md5sum] = "0c86e5af70c195ab8bd651d17d783928"
Signature · 1 line
1.7.9.5
author
#3 lore raw

PATCH 3/11 libtirpc: Disable DES functions on uclibc

In reply to Khem Raj

uclibc does not provide these functions so dont expect them

/usr/lib/libtirpc.so: undefined reference to key_encryptsession_pk' /usr/lib/libtirpc.so: undefined reference to getnetname' /usr/lib/libtirpc.so: undefined reference to cbc_crypt' /usr/lib/libtirpc.so: undefined reference to ecb_crypt' /usr/lib/libtirpc.so: undefined reference to getpublickey' /usr/lib/libtirpc.so: undefined reference to key_gendes'

---
 .../libtirpc-0.2.2/remove-des-uclibc.patch         |   47 ++++++++++++++++++++
 meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb   |    2 +
 2 files changed, 49 insertions(+)
 create mode 100644 meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch
meta/recipes-extended/libtirpc/libtirpc-0.2.2/remove-des-uclibc.patch new file +47 -0
new file mode 100644
index 0000000..4e828f6
@@ -0,0 +1,47 @@
+uclibc does not provide des functionality unlike eglibc so lets disable ssl support
+
+Upstream-Status: Inappropriate [uclibc specific]
+Signed-off-by: Khem Raj <[email protected]>
+
+Index: libtirpc-0.2.2/src/Makefile.am
+===================================================================
+--- libtirpc-0.2.2.orig/src/Makefile.am	2013-01-23 14:08:58.802143165 -0800
++++ libtirpc-0.2.2/src/Makefile.am	2013-01-23 18:06:22.970410357 -0800
+@@ -40,7 +40,7 @@
+ # release number of your package. This is an abuse that only fosters
+ # misunderstanding of the purpose of library versions."
+ #
+-libtirpc_la_LDFLAGS = -lnsl -lpthread -version-info 1:10:0
++libtirpc_la_LDFLAGS = -lpthread -version-info 1:10:0
+ 
+ libtirpc_la_SOURCES = auth_none.c auth_unix.c authunix_prot.c bindresvport.c clnt_bcast.c \
+         clnt_dg.c clnt_generic.c clnt_perror.c clnt_raw.c clnt_simple.c \
+@@ -50,7 +50,7 @@
+         rpc_callmsg.c rpc_generic.c rpc_soc.c rpcb_clnt.c rpcb_prot.c \
+         rpcb_st_xdr.c svc.c svc_auth.c svc_dg.c svc_auth_unix.c svc_generic.c \
+         svc_raw.c svc_run.c svc_simple.c svc_vc.c getpeereid.c \
+-        auth_time.c auth_des.c authdes_prot.c
++        auth_time.c
+ 
+ ## XDR
+ libtirpc_la_SOURCES += xdr.c xdr_rec.c xdr_array.c xdr_float.c xdr_mem.c xdr_reference.c xdr_stdio.c
+Index: libtirpc-0.2.2/src/rpc_soc.c
+===================================================================
+--- libtirpc-0.2.2.orig/src/rpc_soc.c	2011-05-02 05:10:40.000000000 -0700
++++ libtirpc-0.2.2/src/rpc_soc.c	2013-01-23 18:07:28.894410317 -0800
+@@ -515,6 +515,7 @@
+ 	    (resultproc_t) rpc_wrap_bcast, "udp");
+ }
+ 
++#if 0
+ /*
+  * Create the client des authentication object. Obsoleted by
+  * authdes_seccreate().
+@@ -546,6 +547,7 @@
+ 	dummy = authdes_seccreate(servername, window, NULL, ckey);
+ 	return (dummy);
+ }
++#endif
+ 
+ /*
+  * Create a client handle for a unix connection. Obsoleted by clnt_vc_create()
meta/recipes-extended/libtirpc/libtirpc_0.2.2.bb +2 -0
index 295ca83..36591bf 100644
@@ -19,6 +19,8 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2;name=libtirpc \
            file://obsolete_automake_macros.patch \
           "
 
+SRC_URI_append_libc-uclibc = " file://remove-des-uclibc.patch"
+
 SRC_URI[libtirpc.md5sum] = "74c41c15c2909f7d11d9c7bfa7db6273"
 SRC_URI[libtirpc.sha256sum] = "f05eb17c85d62423858b8f74512cfe66a9ae1cedf93f03c2a0a32e04f0a33705"
 SRC_URI[glibc-nfs.md5sum] = "5ae500b9d0b6b72cb875bc04944b9445"
Signature · 1 line
1.7.9.5
author
#4 lore raw

PATCH 4/11 rpcbind: Dont use nss with uclibc

In reply to Khem Raj

Add defines which otherwise are missing in uclibc nss

---
 .../rpcbind/rpcbind/0001-uclibc-nss.patch          |   30 ++++++++++
 .../rpcbind/0002-uclibc-rpcsvc-defines.patch       |   60 ++++++++++++++++++++
 meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb     |    8 +++
 3 files changed, 98 insertions(+)
 create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch
 create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch
meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch new file +30 -0
new file mode 100644
index 0000000..afa55f3
@@ -0,0 +1,30 @@
+Upstream-Status: Pending
+
+From b8f0d7b7318ba344c25785d6f5cf3f8de98012d4 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <[email protected]>
+Date: Tue, 2 Feb 2010 09:36:03 +0000
+Subject: [PATCH 1/2] uclibc-nss
+
+---
+ src/rpcbind.c |    4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/src/rpcbind.c b/src/rpcbind.c
+index 525ffba..1fe1a60 100644
+--- a/src/rpcbind.c
++++ b/src/rpcbind.c
+@@ -67,7 +67,11 @@
+ #include <pwd.h>
+ #include <string.h>
+ #include <errno.h>
++#if defined(__UCLIBC__)
++#define __nss_configure_lookup(x,y)
++#else
+ #include <nss.h>
++#endif
+ #include "config.h"
+ #include "rpcbind.h"
+ 
+-- 
+1.6.6.1
+
meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch new file +60 -0

60 lines not on this page · raw message

meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb +8 -0
index 9fb4f51..7b723df 100644
@@ -13,8 +13,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \
 SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \
            file://init.d \
            file://fix_host_path.patch \
+           ${UCLIBCPATCHES} \
           "
 
+UCLIBCPATCHES_libc-uclibc = "file://0001-uclibc-nss.patch \
+                             file://0002-uclibc-rpcsvc-defines.patch \
+                            "
+UCLIBCPATCHES ?= ""
+
+LDFLAGS += "-lssl"
+
 SRC_URI[md5sum] = "1a77ddb1aaea8099ab19c351eeb26316"
 SRC_URI[sha256sum] = "c92f263e0353887f16379d7708ef1fb4c7eedcf20448bc1e4838f59497a00de3"
 
Signature · 1 line
1.7.9.5
#5 lore raw

Re: [PATCH 04/11] rpcbind: Dont use nss with uclibc

Quoted 120 lines · Khem Raj

Add defines which otherwise are missing in uclibc nss

---
 .../rpcbind/rpcbind/0001-uclibc-nss.patch          |   30 ++++++++++
 .../rpcbind/0002-uclibc-rpcsvc-defines.patch       |   60 ++++++++++++++++++++
 meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb     |    8 +++
 3 files changed, 98 insertions(+)
 create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch
 create mode 100644 meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch
meta/recipes-extended/rpcbind/rpcbind/0001-uclibc-nss.patch new file +30 -0
new file mode 100644
index 0000000..afa55f3
@@ -0,0 +1,30 @@
+Upstream-Status: Pending
+
+From b8f0d7b7318ba344c25785d6f5cf3f8de98012d4 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <[email protected]>
+Date: Tue, 2 Feb 2010 09:36:03 +0000
+Subject: [PATCH 1/2] uclibc-nss
+
+---
+ src/rpcbind.c |    4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/src/rpcbind.c b/src/rpcbind.c
+index 525ffba..1fe1a60 100644
+--- a/src/rpcbind.c
++++ b/src/rpcbind.c
+@@ -67,7 +67,11 @@
+ #include <pwd.h>
+ #include <string.h>
+ #include <errno.h>
++#if defined(__UCLIBC__)
++#define __nss_configure_lookup(x,y)
++#else
+ #include <nss.h>
++#endif
+ #include "config.h"
+ #include "rpcbind.h"
+ 
+-- 
+1.6.6.1
+
meta/recipes-extended/rpcbind/rpcbind/0002-uclibc-rpcsvc-defines.patch new file +60 -0
new file mode 100644
index 0000000..c54fc96
@@ -0,0 +1,60 @@
+Upstream-Status: Pending
+
+From 077add040c2e30d3ac507362f4afe350f47be027 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <[email protected]>
+Date: Tue, 2 Feb 2010 09:47:57 +0000
+Subject: [PATCH 2/2] uclibc-rpcsvc-defines
+
+---
+ src/security.c |   28 ++++++++++++++++++++++++++++
+ 1 files changed, 28 insertions(+), 0 deletions(-)
+
+diff --git a/src/security.c b/src/security.c
+index 0edeac6..e9fed55 100644
+--- a/src/security.c
++++ b/src/security.c
+@@ -20,6 +20,32 @@
+ /*
+  * XXX for special case checks in check_callit.
+  */
++#if defined(__UCLIBC__)
++
++#define MOUNTPROC_MNT 1
++#define MOUNTPROC_UMNT 3
++
++#define NFS_PROGRAM	100003
++#define YPPROG		100004
++#define MOUNTPROG	100005
++#define YPBINDPROG	100007
++#define YPPASSWDPROG	100009
++#define RQUOTAPROG	100011
++
++#define YPPROC_NULL	0
++#define YPPROC_DOMAIN 	1
++#define YPPROC_DOMAIN_NONACK 2
++#define YPPROC_MATCH	3
++#define YPPROC_FIRST	4
++#define YPPROC_NEXT	5
++#define YPPROC_XFR	6
++#define YPPROC_CLEAR	7
++#define YPPROC_ALL	8
++
++#define YPBINDPROC_SETDOM	2
++
++#else
++
+ #include <rpcsvc/mount.h>
+ #include <rpcsvc/rquota.h>
+ #include <rpcsvc/nfs_prot.h>
+@@ -27,6 +53,8 @@
+ #include <rpcsvc/ypclnt.h>
+ #include <rpcsvc/yppasswd.h>
+ 
++#endif
++
+ #include "rpcbind.h"
+ 
+ #ifdef LIBWRAP
+-- 
+1.6.6.1
+
meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb +0 -0
index 9fb4f51..7b723df 100644
@@ -13,8 +13,16 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \
 SRC_URI = "${SOURCEFORGE_MIRROR}/rpcbind/rpcbind-${PV}.tar.bz2 \
            file://init.d \

meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \ · line 24

Quoted 10 lines
meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb +7 -0
            file://fix_host_path.patch \
+           ${UCLIBCPATCHES} \
           "
 
+UCLIBCPATCHES_libc-uclibc = "file://0001-uclibc-nss.patch \
+                             file://0002-uclibc-rpcsvc-defines.patch \
+                            "
+UCLIBCPATCHES ?= ""
+
+LDFLAGS += "-lssl"

The LDFLAGS change should really be marked as ublibc too...

Cheers,

Richard

author
#6 lore raw

Re: [PATCH 04/11] rpcbind: Dont use nss with uclibc

Quoted 5 lines · Richard Purdie

meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb LIC_FILES_CHKSUM = "file://COPYING;md5=b46486e4c4a416602693a711bb5bfa39 \ · line 24

Quoted 2 lines
meta/recipes-extended/rpcbind/rpcbind_0.2.0.bb +2 -0
+
+LDFLAGS += "-lssl"

The LDFLAGS change should really be marked as ublibc too...

actually this change is not needed at all since I change libtirpc to not need ssl so I have removed it and pushed a new
patch into the pull tree rebased on todays master.

author
#7 lore raw

PATCH 5/11 quota: inherit gettext

In reply to Khem Raj

Othereise it does not honor USE_NLS variable and does not have proper dependencies. Which leads to compile errors like missing liintl.h on uclibc

---
 meta/recipes-extended/quota/quota_4.01.bb |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-extended/quota/quota_4.01.bb +1 -1
index e2b7ad7..1cb6650 100644
@@ -17,7 +17,7 @@ S = "${WORKDIR}/quota-tools"
 
 DEPENDS = "gettext-native"
 
-inherit autotools
+inherit autotools gettext
 
 EXTRA_OEMAKE += 'STRIP=""'
 
Signature · 1 line
1.7.9.5
author
#8 lore raw

PATCH 6/11 icu: Fix build on uclibc

In reply to Khem Raj

_timezone is not implemented in uclibc therefore
bypass it.

---
 meta/recipes-support/icu/icu.inc |    1 +
 1 file changed, 1 insertion(+)
meta/recipes-support/icu/icu.inc +1 -0
index 1329635..64b3edf 100644
@@ -11,6 +11,7 @@ STAGING_ICU_DIR_NATIVE = "${STAGING_DATADIR_NATIVE}/${BPN}/${PV}"
 
 PARALLEL_MAKE = ""
 FULL_OPTIMIZATION_arm = "-Os"
+CPPFLAGS_append_libc-uclibc = " -DU_TIMEZONE=0"
 
 inherit autotools pkgconfig binconfig
 
Signature · 1 line
1.7.9.5
author
#9 lore raw

PATCH 7/11 uclibc-git/uClibc.distro: Enable UCLIBC_HAS_REENTRANT_RPC

In reply to Khem Raj

The renterant functions are needed by quota

---
 meta/recipes-core/uclibc/uclibc-git/uClibc.distro |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-core/uclibc/uclibc-git/uClibc.distro +1 -1
index c33bf8e..5affb5a 100644
@@ -54,7 +54,7 @@ UCLIBC_GRP_BUFFER_SIZE=256
 UCLIBC_HAS_IPV6=y
 UCLIBC_HAS_RPC=y
 UCLIBC_HAS_FULL_RPC=y
-# UCLIBC_HAS_REENTRANT_RPC is not set
+UCLIBC_HAS_REENTRANT_RPC=y
 UCLIBC_USE_NETLINK=y
 UCLIBC_SUPPORT_AI_ADDRCONFIG=y
 
Signature · 1 line
1.7.9.5
author
#10 lore raw

PATCH 8/11 tcmode-default.inc: Switch to git version of uclibc by default

In reply to Khem Raj

systemd related functionality is tested in latest git of uclibc therefore lets use it as default provider for uclibc as its the most tested version on master

---
 meta/conf/distro/include/tcmode-default.inc |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/conf/distro/include/tcmode-default.inc +1 -1
index 8f3ba2b..81f5091 100644
@@ -21,7 +21,7 @@ GCCVERSION ?= "4.7%"
 SDKGCCVERSION ?= "${GCCVERSION}"
 BINUVERSION ?= "2.23.1"
 EGLIBCVERSION ?= "2.16"
-UCLIBCVERSION ?= "0.9.33"
+UCLIBCVERSION ?= "0.9.33+git%"
 LINUXLIBCVERSION ?= "3.7"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
Signature · 1 line
1.7.9.5
author
#11 lore raw

PATCH 9/11 systemd: Fix build on ppc

In reply to Khem Raj

ppc discovers an interesting issue in linking systemd where a library is missing in link cmdline and linker barfs

./.libs/libsystemd-core.a(libsystemd_core_la-manager.o): In function `manager_check_finished':
/builddir/build/BUILD/systemd-196/src/core/manager.c:2092: undefined reference to `sd_notifyf'
collect2: error: ld returned 1 exit status

For more info see

https://bugzilla.redhat.com/show_bug.cgi?id=888255

---
 ...it-file-Add-libsystemd-daemon.la-to-LDADD.patch |   32 ++++++++++++++++++++
 meta/recipes-core/systemd/systemd_196.bb           |    3 ++
 2 files changed, 35 insertions(+)
 create mode 100644 meta/recipes-core/systemd/systemd/0001-test-unit-file-Add-libsystemd-daemon.la-to-LDADD.patch
meta/recipes-core/systemd/systemd/0001-test-unit-file-Add-libsystemd-daemon.la-to-LDADD.patch new file +32 -0
new file mode 100644
index 0000000..4cd2ee6
@@ -0,0 +1,32 @@
+Upstream-Status: Submitted
+
+From f3e0a95b6b3fe516e43ec72045c2fad239184392 Mon Sep 17 00:00:00 2001
+From: Khem Raj <[email protected]>
+Date: Tue, 22 Jan 2013 18:25:46 -0800
+Subject: [PATCH] test-unit-file: Add libsystemd-daemon.la to LDADD
+
+test-unit-file links with libsystemd-core which needs
+sd_* symbols from libsystemd-daemon
+
+Signed-off-by: Khem Raj <[email protected]>
+---
+ Makefile.am |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 7d5bd5a..884227a 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1270,7 +1270,8 @@ test_unit_file_CFLAGS = \
+ 	$(DBUS_CFLAGS)
+ 
+ test_unit_file_LDADD = \
+-	libsystemd-core.la
++	libsystemd-core.la \
++	libsystemd-daemon.la
+ 
+ test_log_SOURCES = \
+ 	src/test/test-log.c
+-- 
+1.7.9.5
+
meta/recipes-core/systemd/systemd_196.bb +3 -0
index a78a8a6..9801fc5 100644
@@ -8,6 +8,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
 
 PROVIDES = "udev"
 
+PR = "r1"
+
 DEPENDS = "xz kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline dbus libcap libcgroup tcp-wrappers usbutils glib-2.0 libgcrypt"
 DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
@@ -23,6 +25,7 @@ SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \
            file://var-run.conf \
            ${UCLIBCPATCHES} \
            file://00-create-volatile.conf \
+           file://0001-test-unit-file-Add-libsystemd-daemon.la-to-LDADD.patch \
           "
 SRC_URI[md5sum] = "05ebd7f108e420e2b4e4810ea4b3c810"
 SRC_URI[sha256sum] = "6bd4a658a5dd8198235b17ad1b1f0cc56d9e6f00d646ddcffdfc6f058b55e4bf"
Signature · 1 line
1.7.9.5
author
#12 lore raw

PATCH 10/11 systemd: Upgrade to 197

In reply to Khem Raj

LGPL-2.1 licensce is updated to reflect the new FSF address Drop patches to disable argparse and dbus-python

analyser has been implemented in C lets use that patch and get rid of the python version

disable hostname detection for uclibc bases systems since uclibc lacks NSS

---
 ...emd-analyze-use-argparse-instead-of-getop.patch |  106 --
 .../0001-systemd-analyze-rewrite-in-C.patch        | 1087 ++++++++++++++++++++
 ...-analyze-use-GDBus-instead-of-dbus-python.patch |   94 --
 .../systemd/{systemd_196.bb => systemd_197.bb}     |   14 +-
 4 files changed, 1094 insertions(+), 207 deletions(-)
 delete mode 100644 meta/recipes-core/systemd/systemd/0001-Revert-systemd-analyze-use-argparse-instead-of-getop.patch
 create mode 100644 meta/recipes-core/systemd/systemd/0001-systemd-analyze-rewrite-in-C.patch
 delete mode 100644 meta/recipes-core/systemd/systemd/0002-Revert-analyze-use-GDBus-instead-of-dbus-python.patch
 rename meta/recipes-core/systemd/{systemd_196.bb => systemd_197.bb} (95%)
meta/recipes-core/systemd/systemd/0001-Revert-systemd-analyze-use-argparse-instead-of-getop.patch deleted +0 -106
deleted file mode 100644
index 1e208a2..0000000
@@ -1,106 +0,0 @@
-Upstream-Status: Backport [revert]
-Signed-off-by: Koen Kooi <[email protected]>
-
-From 2003e63f48cee2f497de7b90b66284f98c1c9919 Mon Sep 17 00:00:00 2001
-From: Koen Kooi <[email protected]>
-Date: Mon, 10 Dec 2012 12:24:32 +0100
-Subject: [PATCH 1/2] Revert "systemd-analyze: use argparse instead of getopt"
-
-This reverts commit 0c0271841ab45595f71528c50bcf1904d4b841d5.
-
-Argparse is broken in current OE python
----
- src/analyze/systemd-analyze |   60 ++++++++++++++++++++++++++++---------------
- 1 files changed, 39 insertions(+), 21 deletions(-)
-
-diff --git a/src/analyze/systemd-analyze b/src/analyze/systemd-analyze
-index 88699d6..87a83dd 100755
---- a/src/analyze/systemd-analyze
-+++ b/src/analyze/systemd-analyze
-@@ -1,7 +1,6 @@
- #!/usr/bin/python
- 
--import sys, os
--import argparse
-+import getopt, sys, os
- from gi.repository import Gio
- try:
-         import cairo
-@@ -76,6 +75,20 @@ def draw_text(context, x, y, text, size = 12, r = 0, g = 0, b = 0, vcenter = 0.5
- 
-         context.restore()
- 
-+def usage():
-+        sys.stdout.write("""systemd-analyze [--user] time
-+systemd-analyze [--user] blame
-+systemd-analyze [--user] plot
-+
-+Process systemd profiling information
-+
-+  -h --help         Show this help
-+""")
-+
-+def help():
-+        usage()
-+        sys.exit()
-+
- def time():
- 
-         initrd_time, start_time, finish_time = acquire_start_time()
-@@ -266,29 +279,34 @@ def plot():
- 
-         surface.finish()
- 
--parser = argparse.ArgumentParser(formatter_class=argparse.RawDescriptionHelpFormatter,
--                                 description='Process systemd profiling information',
--                                 epilog='''\
--time - print time spent in the kernel before reaching userspace
--blame - print list of running units ordered by time to init
--plot - output SVG graphic showing service initialization
--''')
--
--parser.add_argument('action', choices=('time', 'blame', 'plot'),
--                    default='time', nargs='?',
--                    help='action to perform (default: time)')
--parser.add_argument('--user', action='store_true',
--                    help='use the session bus')
-+def unknown_verb():
-+        sys.stderr.write("Unknown verb '%s'.\n" % args[0])
-+        usage()
-+        sys.exit(1)
- 
--args = parser.parse_args()
-+bus = Gio.BusType.SYSTEM
- 
--if args.user:
--        bus = Gio.BusType.SESSION
--else:
--        bus = Gio.BusType.SYSTEM
-+try:
-+        opts, args = getopt.gnu_getopt(sys.argv[1:], "h", ["help", "user"])
-+except getopt.GetoptError as err:
-+        sys.stdout.write(str(err) + "\n")
-+        usage()
-+        sys.exit(2)
-+for o, a in opts:
-+        if o in ("-h", "--help"):
-+                help()
-+        elif o == '--user':
-+                bus = Gio.BusType.SESSION
-+        else:
-+                assert False, "unhandled option"
- 
- verb = {'time' : time,
- 	'blame': blame,
- 	'plot' : plot,
-+	'help' : help,
- 	}
--verb.get(args.action)()
-+
-+if len(args) == 0:
-+        time()
-+else:
-+        verb.get(args[0], unknown_verb)()
--- 
-1.7.7.6
-
meta/recipes-core/systemd/systemd/0001-systemd-analyze-rewrite-in-C.patch new file +1087 -0

1,087 lines not on this page · raw message

meta/recipes-core/systemd/systemd/0002-Revert-analyze-use-GDBus-instead-of-dbus-python.patch deleted +0 -94

94 lines not on this page · raw message

meta/recipes-core/systemd/systemd_197.bb renamed from meta/recipes-core/systemd/systemd_196.bb +7 -7
similarity index 95%
rename from meta/recipes-core/systemd/systemd_196.bb
rename to meta/recipes-core/systemd/systemd_197.bb
index 9801fc5..d87855d 100644
@@ -3,13 +3,11 @@ HOMEPAGE = "http://www.freedesktop.org/wiki/Software/systemd"
 
 LICENSE = "GPLv2 & LGPLv2.1 & MIT"
 LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
-                    file://LICENSE.LGPL2.1;md5=fb919cc88dbe06ec0b0bd50e001ccf1f \
+                    file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c \
                     file://LICENSE.MIT;md5=544799d0b492f119fa04641d1b8868ed"
 
 PROVIDES = "udev"
 
-PR = "r1"
-
 DEPENDS = "xz kmod docbook-sgml-dtd-4.1-native intltool-native gperf-native acl readline dbus libcap libcgroup tcp-wrappers usbutils glib-2.0 libgcrypt"
 DEPENDS += "${@base_contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
@@ -18,17 +16,16 @@ SECTION = "base/shell"
 inherit gtk-doc useradd pkgconfig autotools perlnative
 
 SRC_URI = "http://www.freedesktop.org/software/systemd/systemd-${PV}.tar.xz \
-           file://0001-Revert-systemd-analyze-use-argparse-instead-of-getop.patch \
-           file://0002-Revert-analyze-use-GDBus-instead-of-dbus-python.patch \
            file://touchscreen.rules \
            file://modprobe.rules \
            file://var-run.conf \
            ${UCLIBCPATCHES} \
            file://00-create-volatile.conf \
+           file://0001-systemd-analyze-rewrite-in-C.patch \
            file://0001-test-unit-file-Add-libsystemd-daemon.la-to-LDADD.patch \
           "
-SRC_URI[md5sum] = "05ebd7f108e420e2b4e4810ea4b3c810"
-SRC_URI[sha256sum] = "6bd4a658a5dd8198235b17ad1b1f0cc56d9e6f00d646ddcffdfc6f058b55e4bf"
+SRC_URI[md5sum] = "56a860dceadfafe59f40141eb5223743"
+SRC_URI[sha256sum] = "e6857ea21ae24d7056e7b0f4c2aaaba73b8bf57025b8949c0a8af0c1bc9774b5"
 
 UCLIBCPATCHES = ""
 UCLIBCPATCHES_libc-uclibc = "file://systemd-pam-configure-check-uclibc.patch \
@@ -67,6 +64,8 @@ EXTRA_OECONF = " --with-distro=${SYSTEMDDISTRO} \
                  --disable-microhttpd \
                  --without-python \
                "
+# uclibc does not have NSS
+EXTRA_OECONF_append_libc-uclibc = " --disable-myhostname "
 
 # There's no docbook-xsl-native, so for the xsltproc check to false
 do_configure_prepend() {
@@ -150,6 +149,7 @@ FILES_${PN} = " ${base_bindir}/* \
                 ${systemd_unitdir}/system/* \
                 /lib/udev/rules.d/99-systemd.rules \
                 ${base_libdir}/security/*.so \
+                ${libdir}/libnss_myhostname.so.2 \
                 /cgroup \
                 ${bindir}/systemd* \
                 ${bindir}/localectl \
Signature · 1 line
1.7.9.5
#13 lore raw

Re: [PATCH 10/11] systemd: Upgrade to 197

Quoted 10 lines · Khem Raj

LGPL-2.1 licensce is updated to reflect the new FSF address Drop patches to disable argparse and dbus-python

analyser has been implemented in C lets use that patch and get rid of the python version

disable hostname detection for uclibc bases systems since uclibc lacks NSS

I see that hddimg is still broken though (broken with 196 too), hangs at "waiting for removable media". If anyone has any hints as to why this could be they'll be much appreciated (udev is actually running).

It also renames my laptop's eth0 to enp0s25. systemd and a static interfaces file will be fun!

Ross

#14 lore raw

Re: [PATCH 10/11] systemd: Upgrade to 197

Quoted 10 lines · Ross
Quoted 9 lines · Khem Raj

LGPL-2.1 licensce is updated to reflect the new FSF address Drop patches to disable argparse and dbus-python

analyser has been implemented in C lets use that patch and get rid of the python version

disable hostname detection for uclibc bases systems since uclibc lacks NSS

Quoted 8 lines
Quoted 1 line

I see that hddimg is still broken though (broken with 196 too), hangs at "waiting for removable media". If anyone has any hints as to why this could be they'll be much appreciated (udev is actually running).

It also renames my laptop's eth0 to enp0s25. systemd and a static interfaces file will be fun!

Yes, lot of fun:
http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames

Cheers,

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
author
#16 lore raw

PATCH 11/11 gawk: Add missing dependency on readline

In reply to Khem Raj

building from shared state often ends up with

| /b/kraj/angstrom/build/tmp-angstrom_next-uclibc/work/i586-angstrom-linux-uclibc/gawk/4.0.1-r1/gawk-4 .0.1/debug.c:4135: undefined reference to `rl_reset_terminal'
| /b/kraj/angstrom/build/tmp-angstrom_next-uclibc/work/i586-angstrom-linux-uclibc/gawk/4.0.1-r1/gawk-4 .0.1/debug.c:4138: undefined reference to `rl_get_screen_size'
| debug.o: In function `unserialize':

Adding the missing readline dependency to fix such cases where readline has not been populated in sysroot via some other dependency and gawk would then use it or bail out.

---
 meta/recipes-extended/gawk/gawk_4.0.1.bb |    2 ++
 1 file changed, 2 insertions(+)
meta/recipes-extended/gawk/gawk_4.0.1.bb +2 -0
index fcd7619..38ad25b 100644
@@ -9,6 +9,8 @@ SECTION = "console/utils"
 LICENSE = "GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
+DEPENDS += "readline"
+
 RDEPENDS_gawk += "gawk-common"
 RDEPENDS_pgawk += "gawk-common"
 PR = "r1"
Signature · 1 line
1.7.9.5
#17 lore raw

Re: [PATCH 01/11] libpcap: Add missing libusb dependency

In reply to Khem Raj
Quoted 9 lines · Khem Raj

libpcap notices libusb in its configure if its sysrooted
and ignores it if its not. But this causes problems since
there is no explicit dependency on libusb. Rebuild from shared
state sometimes fails when libusb has not been yet populated
in sysroot and libpcap has. And do_configure of consumers of libpcap e.g. tcpdump are probing for features on libpcap. All the tests fail since
none of link steps succeed and it sees as if libpcap does
not have required features and configure of tcpdump bails out.

Quoted 4 lines
---
 meta/recipes-connectivity/libpcap/libpcap.inc |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Do we need libusb support in libpcap? What does this dependency buy us and couldn't we force it off instead?

Cheers,

Richard

author
#18 lore raw

Re: [PATCH 01/11] libpcap: Add missing libusb dependency

Quoted 2 lines · Richard Purdie

Do we need libusb support in libpcap? What does this dependency buy us and couldn't we force it off instead?

its needed to support canusb in libpcap, I would say yes we should support it but disabling it would be ok too although all my builds were silently using libusb so I think unknowingly may be but we are already shipping with canusb support.

#19 lore raw

Re: [PATCH 01/11] libpcap: Add missing libusb dependency

Quoted 9 lines · Khem Raj
Quoted 2 lines · Richard Purdie

Do we need libusb support in libpcap? What does this dependency buy us and couldn't we force it off instead?

its needed to support canusb in libpcap, I would say yes we should support it but disabling it would be ok too although all my builds were silently using libusb so I think unknowingly may be but we are already shipping with canusb support.

I'd personally prefer it disabled, but I'd think at the very least it should be a PACKAGECONFIG entry, whether its included in the default value of PACKAGECONFIG itself or not.

Signature · 1 line
Christopher Larson
#20 lore raw

Re: [PATCH 01/11] libpcap: Add missing libusb dependency

Quoted 17 lines · Chris Larson

On Thu, Jan 24, 2013 at 3:14 PM, Khem Raj <[email protected]> wrote:
On Thu, Jan 24, 2013 at 1:50 PM, Richard Purdie <[email protected]> wrote:
> Do we need libusb support in libpcap? What does this dependency buy us
> and couldn't we force it off instead?

its needed to support canusb in libpcap, I would say yes we should
support it but disabling it would be ok too although all my builds
were silently using libusb so I think unknowingly may be but we are
already shipping with canusb support.

Quoted 4 lines

I'd personally prefer it disabled, but I'd think at the very least it should be a PACKAGECONFIG entry, whether its included in the default value of PACKAGECONFIG itself or not.

Agreed, PACKAGECONFIG, default off is the way to go with this IMO too.

Cheers,

Richard

author
#21 lore raw

Re: [PATCH 01/11] libpcap: Add missing libusb dependency

Quoted 18 lines · Richard Purdie
Quoted 17 lines · Chris Larson

On Thu, Jan 24, 2013 at 3:14 PM, Khem Raj <[email protected]> wrote:
On Thu, Jan 24, 2013 at 1:50 PM, Richard Purdie <[email protected]> wrote:
> Do we need libusb support in libpcap? What does this dependency buy us
> and couldn't we force it off instead?

its needed to support canusb in libpcap, I would say yes we should
support it but disabling it would be ok too although all my builds
were silently using libusb so I think unknowingly may be but we are
already shipping with canusb support.

Quoted 5 lines
Quoted 4 lines

I'd personally prefer it disabled, but I'd think at the very least it should be a PACKAGECONFIG entry, whether its included in the default value of PACKAGECONFIG itself or not.

Agreed, PACKAGECONFIG, default off is the way to go with this IMO too.

yes seems good. idea, I will try to go that route. very least I will disable it

author
#22 lore raw

Re: [PATCH 01/11] libpcap: Add missing libusb dependency

In reply to Richard Purdie

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Quoted 15 lines · Richard Purdie
Quoted 14 lines · Chris Larson
Quoted 1 line · Richard Purdie

Do we need libusb support in libpcap? What does this

dependency buy us

Quoted 1 line

and couldn't we force it off instead?

its needed to support canusb in libpcap, I would say yes we should support it but disabling it would be ok too although all my builds were silently using libusb so I think unknowingly may be but we are already shipping with canusb support.

Quoted 7 lines
Quoted 4 lines

I'd personally prefer it disabled, but I'd think at the very least it should be a PACKAGECONFIG entry, whether its included in the default value of PACKAGECONFIG itself or not.

Agreed, PACKAGECONFIG, default off is the way to go with this IMO too.

OK I have turned it into a PACKAGECONFIG which is off by default. Disabling canusb support in 1.3 was buggy and it really did not disable it so I had to backport relevant patches from libpcap upstream but now
all looks good.

I have pushed V2 into pull tree please take a look.

Quoted 4 lines

Cheers,

Richard

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlECClQACgkQuwUzVZGdMxTkKACaApmk49aFcWyV8Vcn/I7TToPo y0MAn2uGa7LTEt+PPy2aMOgsVX4oKdHF
=qLRK
-----END PGP SIGNATURE-----