Skip to contentSkip to conversation

pseudo 1.6.3

PATCH In review Peter Seebach 3 participants 7 messages Jan 20, 2015 – Jan 22, 2015

lore
Share & tools
lore
#0 lore raw

cover pseudo 1.6.3

This has two changes from 1.6.2:
* Merge (with some tweaking) of the without-passwd-fallback patches
* Fix for #7097

The fix for #7097 looks reasonable to me and passes simple testing, I'm not sure whether it's going to survive reality. Long story short, instead of trimming trailing slashes in the client, we now trim them in the server, so they don't affect database lookups, but do affect things like underlying system stat() calls.

I've done a build with this, and the changes should be low-impact. File should be up on the servers.

The following changes since commit eaea05c88661a88a89fa6b139f7e6b243155d492:

depmodwrapper-cross: Update to use STAGING_KERNEL_BUILDDIR (2015-01-17 17:05:25 +0000)

are available in the git repository at:
git://git.yoctoproject.org/poky-contrib seebs/pseudo_163
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=seebs/pseudo_163

Peter Seebach (1):
pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

 ...do_client.c-protect-pwd_lck-against-magic.patch |   56 ----------
 ..._util-modify-interface-to-pseudo_etc_file.patch |   70 ------------
 ...nt.c-support-multiple-directories-in-PSEU.patch |  116 --------------------
 .../pseudo/{pseudo_1.6.2.bb => pseudo_1.6.3.bb}    |    7 +-
 meta/recipes-devtools/pseudo/pseudo_git.bb         |    4 +-
 5 files changed, 4 insertions(+), 249 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0001-pseudo_client.c-protect-pwd_lck-against-magic.patch
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch
 rename meta/recipes-devtools/pseudo/{pseudo_1.6.2.bb => pseudo_1.6.3.bb} (57%)
#1 lore raw

PATCH 1/1 pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

pseudo 1.6.3 merges (with some changes) the changes from Peter A. Bigot to make --without-fallback-passwd work. It also adds a proposed fix for Yocto bug #7097, which has passed the obvious tests I could think of.

---
 ...do_client.c-protect-pwd_lck-against-magic.patch |   56 ----------
 ..._util-modify-interface-to-pseudo_etc_file.patch |   70 ------------
 ...nt.c-support-multiple-directories-in-PSEU.patch |  116 --------------------
 .../pseudo/{pseudo_1.6.2.bb => pseudo_1.6.3.bb}    |    7 +-
 meta/recipes-devtools/pseudo/pseudo_git.bb         |    4 +-
 5 files changed, 4 insertions(+), 249 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0001-pseudo_client.c-protect-pwd_lck-against-magic.patch
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch
 rename meta/recipes-devtools/pseudo/{pseudo_1.6.2.bb => pseudo_1.6.3.bb} (57%)
meta/recipes-devtools/pseudo/pseudo-1.6.2/0001-pseudo_client.c-protect-pwd_lck-against-magic.patch deleted +0 -56
deleted file mode 100644
index d0c0a27..0000000
@@ -1,56 +0,0 @@
-From e11468a47369596f57c5e99bd0a3dd58b2c6d5e0 Mon Sep 17 00:00:00 2001
-From: "Peter A. Bigot" <[email protected]>
-Date: Sun, 12 Oct 2014 08:27:14 -0500
-Subject: [PATCH 1/3] pseudo_client.c: protect pwd_lck against magic
-
-While attempting to diagnose unexpected uid/gid assignment I added
---without-passwd-fallback to the pseudo build.  This caused build
-failures due to inability to lock /etc/passwd.
-
-Instrumentation revealed that attempts to create the lock file ended up
-with pseudo_etc_file() creating the correct lock name, but the
-subsequent open had an extra PSEUDO_PASSWD directory prefix causing
-it to fail.
-
-Inspection of pseudo_client shows the only other use of PSEUDO_ETC_FILE
-to be protected against magic.  Applying the same shield to the
-unprotected calls in pseudo_pwd_lck_{open,close} fixes the issue.
-
-Upstream-Status: Pending
-Signed-off-by: Peter A. Bigot <[email protected]>
----
- pseudo_client.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index 8deaa1b..442dd19 100644
---- a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -416,20 +416,24 @@ pseudo_pwd_lck_open(void) {
- 		}
- 	}
- 	pseudo_pwd_lck_close();
-+	pseudo_antimagic();
- 	pseudo_pwd_lck_fd = PSEUDO_ETC_FILE(".pwd.lock",
- 					pseudo_pwd_lck_name, O_RDWR | O_CREAT);
-+	pseudo_magic();
- 	return pseudo_pwd_lck_fd;
- }
- 
- int
- pseudo_pwd_lck_close(void) {
- 	if (pseudo_pwd_lck_fd != -1) {
-+		pseudo_antimagic();
- 		close(pseudo_pwd_lck_fd);
- 		if (pseudo_pwd_lck_name) {
- 			unlink(pseudo_pwd_lck_name);
- 			free(pseudo_pwd_lck_name);
- 			pseudo_pwd_lck_name = 0;
- 		}
-+		pseudo_magic();
- 		pseudo_pwd_lck_fd = -1;
- 		return 0;
- 	} else {
--- 
-1.8.5.5
-
meta/recipes-devtools/pseudo/pseudo-1.6.2/0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch deleted +0 -70

70 lines not on this page · raw message

meta/recipes-devtools/pseudo/pseudo-1.6.2/0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch deleted +0 -116

116 lines not on this page · raw message

meta/recipes-devtools/pseudo/pseudo_1.6.3.bb renamed from meta/recipes-devtools/pseudo/pseudo_1.6.2.bb +2 -5
similarity index 57%
rename from meta/recipes-devtools/pseudo/pseudo_1.6.2.bb
rename to meta/recipes-devtools/pseudo/pseudo_1.6.3.bb
index 261c8d3..867c255 100644
@@ -2,15 +2,12 @@ require pseudo.inc
 
 SRC_URI = " \
     http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
-    file://0001-pseudo_client.c-protect-pwd_lck-against-magic.patch \
-    file://0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch \
-    file://0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch \
     file://fallback-passwd \
     file://fallback-group \
 "
 
-SRC_URI[md5sum] = "4d7b4f9d1b4aafa680ce94a5a9a52f1f"
-SRC_URI[sha256sum] = "c72be92689511ced7c419149c6aaa1b1a9e4dfc6409d1f16ab72cc35bc1e376a"
+SRC_URI[md5sum] = "af84506e6ecbd9e112d3573c0f2af6d4"
+SRC_URI[sha256sum] = "2f1ace3475866d26feffa706e1bdf51ce77502091dc670c1ace4dcbb0c544faa"
 
 PSEUDO_EXTRA_OPTS ?= "--enable-force-async --without-passwd-fallback"
 
meta/recipes-devtools/pseudo/pseudo_git.bb +2 -2
index 8c6f06a..3c501e1 100644
@@ -1,7 +1,7 @@
 require pseudo.inc
 
-SRCREV = "0dc29e7c67f25d0978a7da5cd8965514912c5b36"
-PV = "1.6.2+git${SRCPV}"
+SRCREV = "01fed630e636337cfb11bea72c21d45d80a2c10e"
+PV = "1.6.3+git${SRCPV}"
 
 DEFAULT_PREFERENCE = "-1"
 
Signature · 1 line
1.7.1
#2 lore raw

Re: [PATCH 1/1] pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

Quoted 4 lines · Peter Seebach

pseudo 1.6.3 merges (with some changes) the changes from Peter A. Bigot to make --without-fallback-passwd work. It also adds a proposed fix for Yocto bug #7097, which has passed the obvious tests I could think of.

Can you add the [YOCTO #7097] tag so we can track that way.

Thanks
Sau!

Quoted 312 lines
---
  ...do_client.c-protect-pwd_lck-against-magic.patch |   56 ----------
  ..._util-modify-interface-to-pseudo_etc_file.patch |   70 ------------
  ...nt.c-support-multiple-directories-in-PSEU.patch |  116 --------------------
  .../pseudo/{pseudo_1.6.2.bb => pseudo_1.6.3.bb}    |    7 +-
  meta/recipes-devtools/pseudo/pseudo_git.bb         |    4 +-
  5 files changed, 4 insertions(+), 249 deletions(-)

delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0001-pseudo_client.c-protect-pwd_lck-against-magic.patch delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch delete mode 100644 meta/recipes-devtools/pseudo/pseudo-1.6.2/0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch rename meta/recipes-devtools/pseudo/{pseudo_1.6.2.bb => pseudo_1.6.3.bb} (57%)

meta/recipes-devtools/pseudo/pseudo-1.6.2/0001-pseudo_client.c-protect-pwd_lck-against-magic.patch deleted +0 -56
deleted file mode 100644
index d0c0a27..0000000
@@ -1,56 +0,0 @@
-From e11468a47369596f57c5e99bd0a3dd58b2c6d5e0 Mon Sep 17 00:00:00 2001
-From: "Peter A. Bigot" <[email protected]>
-Date: Sun, 12 Oct 2014 08:27:14 -0500
-Subject: [PATCH 1/3] pseudo_client.c: protect pwd_lck against magic
-
-While attempting to diagnose unexpected uid/gid assignment I added
---without-passwd-fallback to the pseudo build.  This caused build
-failures due to inability to lock /etc/passwd.
-
-Instrumentation revealed that attempts to create the lock file ended up
-with pseudo_etc_file() creating the correct lock name, but the
-subsequent open had an extra PSEUDO_PASSWD directory prefix causing
-it to fail.
-
-Inspection of pseudo_client shows the only other use of PSEUDO_ETC_FILE
-to be protected against magic.  Applying the same shield to the
-unprotected calls in pseudo_pwd_lck_{open,close} fixes the issue.
-
-Upstream-Status: Pending
-Signed-off-by: Peter A. Bigot <[email protected]>
----
- pseudo_client.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index 8deaa1b..442dd19 100644
---- a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -416,20 +416,24 @@ pseudo_pwd_lck_open(void) {
- 		}
- 	}
- 	pseudo_pwd_lck_close();
-+	pseudo_antimagic();
- 	pseudo_pwd_lck_fd = PSEUDO_ETC_FILE(".pwd.lock",
- 					pseudo_pwd_lck_name, O_RDWR | O_CREAT);
-+	pseudo_magic();
- 	return pseudo_pwd_lck_fd;
- }
-
- int
- pseudo_pwd_lck_close(void) {
- 	if (pseudo_pwd_lck_fd != -1) {
-+		pseudo_antimagic();
- 		close(pseudo_pwd_lck_fd);
- 		if (pseudo_pwd_lck_name) {
- 			unlink(pseudo_pwd_lck_name);
- 			free(pseudo_pwd_lck_name);
- 			pseudo_pwd_lck_name = 0;
- 		}
-+		pseudo_magic();
- 		pseudo_pwd_lck_fd = -1;
- 		return 0;
- 	} else {
---
-1.8.5.5
-
meta/recipes-devtools/pseudo/pseudo-1.6.2/0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch deleted +0 -70
deleted file mode 100644
index c7006ef..0000000
@@ -1,70 +0,0 @@
-From f05def2bbd5507084672bc9072ffe0e5101e9b47 Mon Sep 17 00:00:00 2001
-From: "Peter A. Bigot" <[email protected]>
-Date: Sun, 12 Oct 2014 11:35:57 -0500
-Subject: [PATCH 2/3] pseudo_util: modify interface to pseudo_etc_file
-
-* Make the search directory pointers const: there is no reason why this
-  function should be allowed to mutate the directories.
-
-* Change the search directory argument from an array of pointers to a
-  pointer-to-pointers to prepare for an upcoming enhancement.
-
-Upstream-Status: Pending
-Signed-off-by: Peter A. Bigot <[email protected]>
----
- pseudo.h        | 2 +-
- pseudo_client.c | 2 +-
- pseudo_util.c   | 4 ++--
- 3 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/pseudo.h b/pseudo.h
-index 92020e4..05813c1 100644
---- a/pseudo.h
-+++ b/pseudo.h
-@@ -86,7 +86,7 @@ extern int pseudo_logfile(char *defname);
- extern ssize_t pseudo_sys_path_max(void);
- extern ssize_t pseudo_path_max(void);
- #define PSEUDO_PWD_MAX 4096
--extern int pseudo_etc_file(const char *filename, char *realname, int flags, char *path[], int dircount);
-+extern int pseudo_etc_file(const char *filename, char *realname, int flags, const char **search_dirs, int dircount);
- extern void pseudo_stat32_from64(struct stat *, const struct stat64 *);
- extern void pseudo_stat64_from32(struct stat64 *, const struct stat *);
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index 442dd19..7a4d7fa 100644
---- a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -93,7 +93,7 @@ gid_t pseudo_egid;
- gid_t pseudo_sgid;
- gid_t pseudo_fgid;
-
--#define PSEUDO_ETC_FILE(filename, realname, flags) pseudo_etc_file(filename, realname, flags, (char *[]) { pseudo_chroot, pseudo_passwd, PSEUDO_PASSWD_FALLBACK }, PSEUDO_PASSWD_FALLBACK ? 3 : 2)
-+#define PSEUDO_ETC_FILE(filename, realname, flags) pseudo_etc_file(filename, realname, flags, (const char *[]) { pseudo_chroot, pseudo_passwd, PSEUDO_PASSWD_FALLBACK }, PSEUDO_PASSWD_FALLBACK ? 3 : 2)
-
- /* helper function to make a directory, just like mkdir -p.
-  * Can't use system() because the child shell would end up trying
-diff --git a/pseudo_util.c b/pseudo_util.c
-index e4e1fc8..647d3ad 100644
---- a/pseudo_util.c
-+++ b/pseudo_util.c
-@@ -1264,7 +1264,7 @@ FILE *pseudo_host_etc_group_file = &pseudo_fake_group_file;
- #endif
-
- int
--pseudo_etc_file(const char *file, char *realname, int flags, char *search_dirs[], int dircount) {
-+pseudo_etc_file(const char *file, char *realname, int flags, const char **search_dirs, int dircount) {
- 	char filename[pseudo_path_max()];
- 	int rc = -1;
-
-@@ -1280,7 +1280,7 @@ pseudo_etc_file(const char *file, char *realname, int flags, char *search_dirs[]
- 		return -1;
- 	}
- 	for (i = 0; i < dircount; ++i) {
--		char *s = search_dirs[i];
-+		const char *s = search_dirs[i];
- 		if (!s)
- 			continue;
- #if PSEUDO_PORT_DARWIN
---
-1.8.5.5
-
meta/recipes-devtools/pseudo/pseudo-1.6.2/0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch deleted +0 -116
deleted file mode 100644
index e6c6284..0000000
@@ -1,116 +0,0 @@
-From 09f04dc36f21c179235109b3dcddce9dda9a8ba8 Mon Sep 17 00:00:00 2001
-From: "Peter A. Bigot" <[email protected]>
-Date: Sun, 12 Oct 2014 12:17:48 -0500
-Subject: [PATCH 3/3] pseudo_client.c: support multiple directories in
- PSEUDO_PASSWD
-
-For OpenEmbedded it is highly unlikely that using the build host passwd
-file is the right approach.  Most packages can be built with a pseudo
-that was configured --without-passwd-fallback, since
-PSEUDO_PASSWD=${STAGING_DIR_TARGET} suffices.
-
-This fails when building images, because image.bbclass (correctly)
-overrides to PSEUDO_PASSWD=${IMAGE_ROOTFS}.  However, the rootfs
-/etc/passwd is not created until the post-install phase of base-passwd,
-which is long after a passwd file is required.  For example, the smart
-RPM interface wants to look up uid 0 right away.  The right solution
-here is to look first in ${IMAGE_ROOTFS}, then fallback to
-a location holding immutable files with the minimum user/group settings
-necessary to successfully get base-passwd onto the target.
-
-Rather than rework pseudo to change PSEUDO_PASSWD_FALLBACK to be a
-run-time rather than compile-time specification, rework the handling of
-PSEUDO_PASSWD so that it is a colon-separated list of directories that
-are processed in order.
-
-Upstream-Status: Pending
-Signed-off-by: Peter A. Bigot <[email protected]>
----
- pseudo_client.c | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 49 insertions(+), 1 deletion(-)
-
-diff --git a/pseudo_client.c b/pseudo_client.c
-index 7a4d7fa..b52b86a 100644
---- a/pseudo_client.c
-+++ b/pseudo_client.c
-@@ -75,6 +75,8 @@ int pseudo_umask = 022;
-
- static char **fd_paths = NULL;
- static int nfds = 0;
-+static const char **passwd_paths = NULL;
-+static int npasswd_paths = 0;
- static int messages = 0;
- static struct timeval message_time = { .tv_sec = 0 };
- static int pseudo_inited = 0;
-@@ -93,7 +95,7 @@ gid_t pseudo_egid;
- gid_t pseudo_sgid;
- gid_t pseudo_fgid;
-
--#define PSEUDO_ETC_FILE(filename, realname, flags) pseudo_etc_file(filename, realname, flags, (const char *[]) { pseudo_chroot, pseudo_passwd, PSEUDO_PASSWD_FALLBACK }, PSEUDO_PASSWD_FALLBACK ? 3 : 2)
-+#define PSEUDO_ETC_FILE(filename, realname, flags) pseudo_etc_file(filename, realname, flags, passwd_paths, npasswd_paths)
-
- /* helper function to make a directory, just like mkdir -p.
-  * Can't use system() because the child shell would end up trying
-@@ -117,6 +119,42 @@ mkdir_p(char *path) {
- 	(void) mkdir(path, 0755);
- }
-
-+static int
-+build_passwd_paths(const char **paths)
-+{
-+	int np = 0;
-+	
-+	if (pseudo_chroot) {
-+		if (paths) {
-+			paths[np] = pseudo_chroot;
-+		}
-+		++np;
-+	}
-+	if (pseudo_passwd) {
-+		const char *cp = pseudo_passwd;
-+		const char *next = strchr(cp, ':');
-+		while (next) {
-+			if (paths) {
-+				paths[np] = strndup(cp, next-cp);
-+			}
-+			++np;
-+			cp = next+1;
-+			next = strchr(cp, ':');
-+		}
-+		if (paths) {
-+			paths[np] = strdup(cp);
-+		}
-+		++np;
-+	}
-+	if (PSEUDO_PASSWD_FALLBACK) {
-+		if (paths) {
-+			paths[np] = PSEUDO_PASSWD_FALLBACK;
-+		}
-+		++np;
-+	}
-+	return np;
-+}
-+
- void
- pseudo_init_client(void) {
- 	char *env;
-@@ -329,6 +367,16 @@ pseudo_init_client(void) {
- 		}
- 		free(env);
-
-+		npasswd_paths = build_passwd_paths(NULL);
-+		if (npasswd_paths) {
-+			passwd_paths = malloc(npasswd_paths * sizeof(*passwd_paths));
-+			if (!passwd_paths) {
-+				pseudo_diag("couldn't allocate space for passwd paths.\n");
-+				exit(1);
-+			}
-+			build_passwd_paths(passwd_paths);
-+		}
-+
- 		pseudo_inited = 1;
- 	}
- 	if (!pseudo_disabled)
---
-1.8.5.5
-
meta/recipes-devtools/pseudo/pseudo_1.6.3.bb renamed from meta/recipes-devtools/pseudo/pseudo_1.6.2.bb +2 -5
similarity index 57%
rename from meta/recipes-devtools/pseudo/pseudo_1.6.2.bb
rename to meta/recipes-devtools/pseudo/pseudo_1.6.3.bb
index 261c8d3..867c255 100644
@@ -2,15 +2,12 @@ require pseudo.inc
 
  SRC_URI = " \
      http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2 \
-    file://0001-pseudo_client.c-protect-pwd_lck-against-magic.patch \
-    file://0002-pseudo_util-modify-interface-to-pseudo_etc_file.patch \
-    file://0003-pseudo_client.c-support-multiple-directories-in-PSEU.patch \
      file://fallback-passwd \
      file://fallback-group \
  "
 
-SRC_URI[md5sum] = "4d7b4f9d1b4aafa680ce94a5a9a52f1f"
-SRC_URI[sha256sum] = "c72be92689511ced7c419149c6aaa1b1a9e4dfc6409d1f16ab72cc35bc1e376a"
+SRC_URI[md5sum] = "af84506e6ecbd9e112d3573c0f2af6d4"
+SRC_URI[sha256sum] = "2f1ace3475866d26feffa706e1bdf51ce77502091dc670c1ace4dcbb0c544faa"
 
  PSEUDO_EXTRA_OPTS ?= "--enable-force-async --without-passwd-fallback"
 
meta/recipes-devtools/pseudo/pseudo_git.bb +2 -2
index 8c6f06a..3c501e1 100644
@@ -1,7 +1,7 @@
  require pseudo.inc
 
-SRCREV = "0dc29e7c67f25d0978a7da5cd8965514912c5b36"
-PV = "1.6.2+git${SRCPV}"
+SRCREV = "01fed630e636337cfb11bea72c21d45d80a2c10e"
+PV = "1.6.3+git${SRCPV}"
 
  DEFAULT_PREFERENCE = "-1"
 
#3 lore raw

Re: [PATCH 1/1] pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

Quoted 7 lines · On Tue, 20 Jan 2015 13:48:38 -0800 Saul Wold <[email protected]> wrote:
Quoted 4 lines · Peter Seebach

pseudo 1.6.3 merges (with some changes) the changes from Peter A. Bigot to make --without-fallback-passwd work. It also adds a proposed fix for Yocto bug #7097, which has passed the obvious tests I could think of.

Can you add the [YOCTO #7097] tag so we can track that way.

Whoops. Done. Updated contrib:seebs/pseudo_163, also added the missing signed-off-by line.

commit 650c50804a3538bbe38f59998aba7c6838e93c98

Author: Peter Seebach <[email protected]>
Date:   Thu Jan 15 16:18:38 2015 -0600 
    pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

-s

Signature · 1 line
Listen, get this.  Nobody with a good compiler needs to be justified.
#4 lore raw

Re: [PATCH 1/1] pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

In reply to Peter Seebach
Quoted 4 lines · Peter Seebach

pseudo 1.6.3 merges (with some changes) the changes from Peter A. Bigot to make --without-fallback-passwd work. It also adds a proposed fix for Yocto bug #7097, which has passed the obvious tests I could think of.

This fails to build on *some* machines in the AB pool.

http://errors.yoctoproject.org/Errors/Search/Details/7899/1/10/a6ea28e3460217496856d2d79667c4bfbd867df9
:

DEBUG: Executing shell function do_compile
NOTE: Building/installing only 64-bit libpseudo.so for nativesdk-pseudo.
NOTE: If you need to run 32-bit executables, ensure that NO32LIBS is set to
0. /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/build/tmp/work/i686-nativesdk-pokysdk-linux/nativesdk-pseudo/1.6.3-r0/pseudo-1.6.3/configure:
line 72: cd: /opt/poky/1.7/sysroots/i686-pokysdk-linux/usr: No such file or
directory
ERROR: Prefix is current directory. That doesn't work.

Ross

#5 lore raw

Re: [PATCH 1/1] pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

Quoted 5 lines · Ross

This fails to build on *some* machines in the AB pool.

http://errors.yoctoproject.org/Errors/Search/Details/7899/1/10/a6ea28e3460217496856d2d79667c4bfbd867df9
:

Quoted 8 lines

DEBUG: Executing shell function do_compile
NOTE: Building/installing only 64-bit libpseudo.so for nativesdk-pseudo.
NOTE: If you need to run 32-bit executables, ensure that NO32LIBS is set to
0. /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/build/tmp/work/i686-nativesdk-pokysdk-linux/nativesdk-pseudo/1.6.3-r0/pseudo-1.6.3/configure:
line 72: cd: /opt/poky/1.7/sysroots/i686-pokysdk-linux/usr: No such file or
directory
ERROR: Prefix is current directory. That doesn't work.

D'oh.

Okay, so what's happening here is, I added a configure test to try to detect cases where --prefix=foo was the current directory. Which, of course, does $(cd $prefix; pwd).

And that won't work if the prefix directory doesn't exist at the time of compilation.

I'll get a fix for that in shortly. Sorry!

-s

Signature · 1 line
Listen, get this.  Nobody with a good compiler needs to be justified.
#6 lore raw

Re: [PATCH 1/1] pseudo_1.6.2.bb/pseudo_git.bb: Pseudo 1.6.3

In reply to Burton, Ross
Quoted 10 lines · Ross
Quoted 4 lines · Peter Seebach

pseudo 1.6.3 merges (with some changes) the changes from Peter A. Bigot to make --without-fallback-passwd work. It also adds a proposed fix for Yocto bug #7097, which has passed the obvious tests I could think of.

This fails to build on *some* machines in the AB pool.

So, I have a fix for that, but I also have a possible report of a (preexisting) possible issue involving dangling symlinks, but we haven't been able to narrow a reproducer down much. So I think I may sit on that for a little bit in the hopes that I'll be able to fix that one too in 1.6.4. But if people would rather see this one in right away, the fix is ready, and fairly trivial.

-s

Signature · 1 line
Listen, get this.  Nobody with a good compiler needs to be justified.