[oe-commits] [openembedded-core] 01/03: pseudo: Upgrade to 1.8.1

git at git.openembedded.org git at git.openembedded.org
Fri Jul 8 09:50:58 UTC 2016


rpurdie pushed a commit to branch master
in repository openembedded-core.

commit 0c36984d4c501d12fa91cf7371511641585cc256
Author: Richard Purdie <richard.purdie at linuxfoundation.org>
AuthorDate: Tue Jul 5 13:18:31 2016 +0100

    pseudo: Upgrade to 1.8.1
    
    * Drop patches where the changes exist upstream
    * Fetch from git as no tarball is available for 1.8.1
    * Move common code to pseudo.inc
    * Update patchset in git recipe
    
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 .../pseudo/files/handle-remove-xattr.patch         | 36 ---------
 .../pseudo/files/moreretries.patch                 | 12 +--
 meta/recipes-devtools/pseudo/pseudo.inc            | 13 +++-
 .../pseudo/pseudo/obey-ldflags.patch               | 50 -------------
 .../pseudo/pseudo-glibc-rtld-next-workaround.patch | 85 ----------------------
 meta/recipes-devtools/pseudo/pseudo_1.7.5.bb       | 23 ------
 meta/recipes-devtools/pseudo/pseudo_1.8.1.bb       | 11 +++
 meta/recipes-devtools/pseudo/pseudo_git.bb         | 10 ++-
 8 files changed, 34 insertions(+), 206 deletions(-)

diff --git a/meta/recipes-devtools/pseudo/files/handle-remove-xattr.patch b/meta/recipes-devtools/pseudo/files/handle-remove-xattr.patch
deleted file mode 100644
index 8b7f30c..0000000
--- a/meta/recipes-devtools/pseudo/files/handle-remove-xattr.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From a24cf102967a4966bfabe36c3542fb65f35bf539 Mon Sep 17 00:00:00 2001
-From: Peter Seebach <peter.seebach at windriver.com>
-Date: Wed, 23 Mar 2016 11:55:25 -0500
-Subject: actually handle remove_xattr correctly
-
-The path is required but wasn't being extracted from the client's message,
-resulting in xattr removal never working. This does not fully address some
-deeper problems with the xattr implementation, but at least the common
-removal case works.
-
-Upstream-Status: Backport
-
-Index: pseudo-1.7.5/ChangeLog.txt
-===================================================================
---- pseudo-1.7.5.orig/ChangeLog.txt
-+++ pseudo-1.7.5/ChangeLog.txt
-@@ -1,3 +1,7 @@
-+2016-03-22:
-+       * (seebs) extract path from message for remove_xattr so it
-+         actually works.
-+
- 2016-02-09:
-         * (seebs) 1.7.5 release
- 
-Index: pseudo-1.7.5/pseudo.c
-===================================================================
---- pseudo-1.7.5.orig/pseudo.c
-+++ pseudo-1.7.5/pseudo.c
-@@ -543,6 +543,7 @@ pseudo_op(pseudo_msg_t *msg, const char
- 		case OP_GET_XATTR:
- 		case OP_LIST_XATTR:
- 		case OP_REPLACE_XATTR:
-+		case OP_REMOVE_XATTR:
- 		case OP_SET_XATTR:
- 			/* In a rename there are two paths, null separated in msg->path */
- 			initial_len = strlen(msg->path);
diff --git a/meta/recipes-devtools/pseudo/files/moreretries.patch b/meta/recipes-devtools/pseudo/files/moreretries.patch
index c1e5552..adea266 100644
--- a/meta/recipes-devtools/pseudo/files/moreretries.patch
+++ b/meta/recipes-devtools/pseudo/files/moreretries.patch
@@ -4,15 +4,15 @@ server shutdowns.
 Upstream-Status: Pending
 RP 2016/2/28
 
-Index: pseudo-1.7.5/pseudo_client.c
+Index: git/pseudo_client.c
 ===================================================================
---- pseudo-1.7.5.orig/pseudo_client.c
-+++ pseudo-1.7.5/pseudo_client.c
-@@ -1214,7 +1214,7 @@ pseudo_client_setup(void) {
- 	return 1;
+--- git.orig/pseudo_client.c
++++ git/pseudo_client.c
+@@ -1282,7 +1282,7 @@ pseudo_client_setup(void) {
+ 	}
  }
  
--#define PSEUDO_RETRIES 50
+-#define PSEUDO_RETRIES 20
 +#define PSEUDO_RETRIES 250
  static pseudo_msg_t *
  pseudo_client_request(pseudo_msg_t *msg, size_t len, const char *path) {
diff --git a/meta/recipes-devtools/pseudo/pseudo.inc b/meta/recipes-devtools/pseudo/pseudo.inc
index 16c57c9..18ce9f9 100644
--- a/meta/recipes-devtools/pseudo/pseudo.inc
+++ b/meta/recipes-devtools/pseudo/pseudo.inc
@@ -26,6 +26,8 @@ do_configure () {
 NO32LIBS ??= "1"
 NO32LIBS_class-nativesdk = "1"
 
+PSEUDO_EXTRA_OPTS ?= "--enable-force-async --without-passwd-fallback"
+
 # Compile for the local machine arch...
 do_compile () {
 	if [ "${SITEINFO_BITS}" = "64" ]; then
@@ -112,10 +114,15 @@ do_install () {
 	oe_runmake 'DESTDIR=${D}' ${MAKEOPTS} 'LIB=lib/pseudo/lib$(MARK64)' install
 }
 
-# Two below are the same
-# If necessary install for the alternative machine arch.  This is only 
-# necessary in a native build.
 do_install_append_class-native () {
+	install -d ${D}${sysconfdir}
+	# The fallback files should never be modified
+	install -m 444 ${WORKDIR}/fallback-passwd ${D}${sysconfdir}/passwd
+	install -m 444 ${WORKDIR}/fallback-group ${D}${sysconfdir}/group
+
+	# Two native/nativesdk entries below are the same
+	# If necessary install for the alternative machine arch.  This is only
+	# necessary in a native build.
 	maybe_make32
 	if $make32; then
 		mkdir -p ${D}${prefix}/lib/pseudo/lib
diff --git a/meta/recipes-devtools/pseudo/pseudo/obey-ldflags.patch b/meta/recipes-devtools/pseudo/pseudo/obey-ldflags.patch
deleted file mode 100644
index 8881f6e..0000000
--- a/meta/recipes-devtools/pseudo/pseudo/obey-ldflags.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 0ace81a687355a3c55caa161b51972a82f5c413f Mon Sep 17 00:00:00 2001
-From: Christopher Larson <chris_larson at mentor.com>
-Date: Mon, 9 May 2016 17:00:57 -0700
-Subject: [PATCH] Obey external LDFLAGS the way we obey CFLAGS
-
-Upstream-Status: Backport
-
-Signed-off-by: Christopher Larson <chris_larson at mentor.com>
----
- Makefile.in | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 6511814..22ef625 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -109,26 +109,26 @@ pseudo: $(PSEUDO)
- $(PSEUDO): $(BIN) pseudo.o $(SHOBJS) $(DBOBJS) pseudo_client.o pseudo_server.o pseudo_ipc.o
- 	$(CC) $(CFLAGS) $(CFLAGS_PSEUDO) -o $(PSEUDO) \
- 		pseudo.o pseudo_server.o pseudo_client.o pseudo_ipc.o \
--		$(DBOBJS) $(SHOBJS) $(DB_LDFLAGS) $(CLIENT_LDFLAGS)
-+		$(DBOBJS) $(SHOBJS) $(LDFLAGS) $(DB_LDFLAGS) $(CLIENT_LDFLAGS)
- 
- pseudolog: $(PSEUDOLOG)
- 
- $(PSEUDOLOG): $(BIN) pseudolog.o $(SHOBJS) $(DBOBJS) pseudo_client.o pseudo_ipc.o
- 	$(CC) $(CFLAGS) $(CFLAGS_PSEUDO) -o $(PSEUDOLOG) pseudolog.o pseudo_client.o pseudo_ipc.o \
--		$(DBOBJS) $(SHOBJS) $(DB_LDFLAGS) $(CLIENT_LDFLAGS)
-+		$(DBOBJS) $(SHOBJS) $(LDFLAGS) $(DB_LDFLAGS) $(CLIENT_LDFLAGS)
- 
- pseudodb: $(PSEUDODB)
- 
- $(PSEUDODB): $(BIN) pseudodb.o $(SHOBJS) $(DBOBJS) pseudo_ipc.o
- 	$(CC) $(CFLAGS) $(CFLAGS_PSEUDO) -o $(PSEUDODB) pseudodb.o \
--		$(DBOBJS) $(SHOBJS) pseudo_ipc.o $(DB_LDFLAGS) $(CLIENT_LDFLAGS)
-+		$(DBOBJS) $(SHOBJS) pseudo_ipc.o $(LDFLAGS) $(DB_LDFLAGS) $(CLIENT_LDFLAGS)
- 
- libpseudo: $(LIBPSEUDO)
- 
- $(LIBPSEUDO): $(LIB) $(WRAPOBJS) pseudo_client.o pseudo_ipc.o $(SHOBJS)
- 	$(CC) $(CFLAGS) $(CFLAGS_PSEUDO) -shared -o $(LIBPSEUDO) \
- 		pseudo_client.o pseudo_ipc.o \
--		$(WRAPOBJS) $(SHOBJS) $(CLIENT_LDFLAGS)
-+		$(WRAPOBJS) $(SHOBJS) $(LDFLAGS) $(CLIENT_LDFLAGS)
- 
- # *everything* now relies on stuff that's generated in the
- # wrapper process.
--- 
-2.8.0
-
diff --git a/meta/recipes-devtools/pseudo/pseudo/pseudo-glibc-rtld-next-workaround.patch b/meta/recipes-devtools/pseudo/pseudo/pseudo-glibc-rtld-next-workaround.patch
deleted file mode 100644
index 6710734..0000000
--- a/meta/recipes-devtools/pseudo/pseudo/pseudo-glibc-rtld-next-workaround.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-We started seeing:
-
-No real function for mknod: /home/paul/poky_sdk/tmp/sysroots/x86_64-
-linux/usr/bin/../lib/pseudo/lib64/libpseudo.so: undefined symbol: mknod
-No real function for mknodat: /home/paul/poky_sdk/tmp/sysroots/x86_64-
-linux/usr/bin/../lib/pseudo/lib64/libpseudo.so: undefined symbol: mknodat
-
-In glibc 2.24 they've merged:
-
-https://sourceware.org/git/?p=glibc.git;a=commit;h=7d45c163d00c88d5875a112343c4ea3e61349e6b
-related to bugzilla entry:
-https://sourceware.org/bugzilla/show_bug.cgi?id=19509
-
-which means that the behaviour of RTLD_NEXT is slightly different.
-As far as I can tell, mknod has not been present in glibc for a while. 
-To quote stat.h:
-
-/* To allow the `struct stat' structure and the file type `mode_t'
-   bits to vary without changing shared library major version number,
-   the `stat' family of functions and `mknod' are in fact inline
-   wrappers around calls to `xstat', `fxstat', `lxstat', and `xmknod',
-   which all take a leading version-number argument designating the
-   data structure and bits used.  <bits/stat.h> defines _STAT_VER with
-   the version number corresponding to `struct stat' as defined in
-   that file; and _MKNOD_VER with the version number corresponding to
-   the S_IF* macros defined therein.  It is arranged that when not
-   inlined these function are always statically linked; that way a
-   dynamically-linked executable always encodes the version number
-   corresponding to the data structures it uses, so the `x' functions
-   in the shared library can adapt without needing to recompile all
-   callers.  */
-
-so I suspect mknod has not existed for a while, if ever and what we
-were finding, who knows. Everying in the system links against _xmknod
-which we have a separate wrapper for.
-
-Anyhow, ignoring that problem which hasn't caused a issue in the past, 
-the RTLD_NEXT change causes messages to be printed to stdout which causes 
-carnage if for example the packaging code is expecting a list of packages:
-
-WARNING: core-image-minimal-1.0-r0 do_rootfs: No not found in the base feeds (qemux86_64 core2-64 x86_64 noarch any all).
-WARNING: core-image-minimal-1.0-r0 do_rootfs: real not found in the base feeds (qemux86_64 core2-64 x86_64 noarch any all).
-WARNING: core-image-minimal-1.0-r0 do_rootfs: function not found in the base feeds (qemux86_64 core2-64 x86_64 noarch any all).
-WARNING: core-image-minimal-1.0-r0 do_rootfs: for not found in the base feeds (qemux86_64 core2-64 x86_64 noarch any all).
-WARNING: core-image-minimal-1.0-r0 do_rootfs: mknod: not found in the base feeds (qemux86_64 core2-64 x86_64 noarch any all).
-[etc]
-
-This bug will affect:
-* any distro using glibc 2.24
-* any system using a uninative tarball for glibc 2.24
-* any system which took a backport for the fix which was merged into
-  the 2.23 branch for a while before it was reverted (Fedora 23 had this)
-
-The easiest thing to do is to ignore the problem and disable the diag
-message which masks the problem with no ill effects.
-
-As Peter notes, there are a few issues here:
-
-* the fact there is no mknod symbol
-* the fact an error here isn't fatal
-* the #ifdef/#else looks suspect
-* handle RTLD_NEXT chaining properly (need more libs?)
-
-which he'll work on upstream and hopefully have fixed in a new version.
-
-Upstream-Status: Submitted [Peter is aware of the issue]
-
-RP 2016/5/18
-
-Index: pseudo-1.7.5/pseudo_wrappers.c
-===================================================================
---- pseudo-1.7.5.orig/pseudo_wrappers.c
-+++ pseudo-1.7.5/pseudo_wrappers.c
-@@ -146,9 +146,9 @@ pseudo_init_one_wrapper(pseudo_function
- 			return;
- 		}
- #else
--		if (e != NULL) {
-+		/*if (e != NULL) {
- 			pseudo_diag("No real function for %s: %s\n", func->name, e);
--		}
-+		}*/
- #endif
- 	}
- }
diff --git a/meta/recipes-devtools/pseudo/pseudo_1.7.5.bb b/meta/recipes-devtools/pseudo/pseudo_1.7.5.bb
deleted file mode 100644
index d4f1e36..0000000
--- a/meta/recipes-devtools/pseudo/pseudo_1.7.5.bb
+++ /dev/null
@@ -1,23 +0,0 @@
-require pseudo.inc
-
-SRC_URI = "http://downloads.yoctoproject.org/releases/pseudo/${BPN}-${PV}.tar.bz2 \
-           file://0001-configure-Prune-PIE-flags.patch \
-           file://fallback-passwd \
-           file://fallback-group \
-           file://moreretries.patch \
-           file://handle-remove-xattr.patch \
-           file://obey-ldflags.patch \
-           file://pseudo-glibc-rtld-next-workaround.patch \
-           "
-
-SRC_URI[md5sum] = "c10209938f03128d0c193f041ff3596d"
-SRC_URI[sha256sum] = "fd89cadec984d3b8202aca465898b1bb4350e0d63ba9aa9ac899f6f50270e688"
-
-PSEUDO_EXTRA_OPTS ?= "--enable-force-async --without-passwd-fallback"
-
-do_install_append_class-native () {
-	install -d ${D}${sysconfdir}
-	# The fallback files should never be modified
-	install -m 444 ${WORKDIR}/fallback-passwd ${D}${sysconfdir}/passwd
-	install -m 444 ${WORKDIR}/fallback-group ${D}${sysconfdir}/group
-}
diff --git a/meta/recipes-devtools/pseudo/pseudo_1.8.1.bb b/meta/recipes-devtools/pseudo/pseudo_1.8.1.bb
new file mode 100644
index 0000000..3381df0
--- /dev/null
+++ b/meta/recipes-devtools/pseudo/pseudo_1.8.1.bb
@@ -0,0 +1,11 @@
+require pseudo.inc
+
+SRC_URI = "http://downloads.yoctoproject.org/releases/pseudo/${BPN}-${PV}.tar.bz2 \
+           file://0001-configure-Prune-PIE-flags.patch \
+           file://fallback-passwd \
+           file://fallback-group \
+           file://moreretries.patch \
+           "
+
+SRC_URI[md5sum] = "ee38e4fb62ff88ad067b1a5a3825bac7"
+SRC_URI[sha256sum] = "dac4ad2d21228053151121320f629d41dd5c0c87695ac4e7aea286c414192ab5"
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index abff1cf..9febf60 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -1,11 +1,15 @@
 require pseudo.inc
 
-SRCREV = "786c6d3813622d18e12d36c4aa722af6a417c8fa"
-PV = "1.7.5+git${SRCPV}"
+SRCREV = "eb47d855a831b6dc0ad34890e84b8f6f483693df"
+PV = "1.8.1+git${SRCPV}"
 
 DEFAULT_PREFERENCE = "-1"
 
-SRC_URI = "git://git.yoctoproject.org/pseudo"
+SRC_URI = "git://git.yoctoproject.org/pseudo \
+           file://0001-configure-Prune-PIE-flags.patch \
+           file://fallback-passwd \
+           file://fallback-group \
+           file://moreretries.patch"
 
 S = "${WORKDIR}/git"
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list