Skip to contentSkip to conversation

pseudo 1.4.3: @GLIBC_2.7, libdirs, and so on.

PATCH In review Peter Seebach 2 participants 6 messages Jan 31, 2013 – Feb 1, 2013

lore
Share & tools
lore
#0 lore raw

cover pseudo 1.4.3: @GLIBC_2.7, libdirs, and so on.

So, staring closely at the problems pseudo 1.4.2 had with sqlite, I fixed the libdir problem in a different enough way to justify a version bump. Also, we ran into some issues trying to use an SDK on older machines, and it turned out we could avoid them very easily, so those have been changed.

This also includes the other changes from 1.4.2:
* Support for linkat()
* Some Darwin bitrot fixups

I've sent a link to the tarball for inclusion in the Yocto download servers, you can also test using the git version or the tarball temporarily present at:

        ftp://ftp.windriver.com/pub/pseebach/pseudo-1.4.3.tar.bz2

The following changes since commit 1489a69cecb1dcc3502a4c24beaea81e6ca6dacc:
Marko Lindqvist (1):
harfbuzz: fix install of version.h

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib seebs/pseudo143
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=seebs/pseudo143

Peter Seebach (1):
pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3

 meta/recipes-devtools/pseudo/pseudo.inc      |    8 ++++----
 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb |    8 --------
 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb |    8 ++++++++
 meta/recipes-devtools/pseudo/pseudo_git.bb   |    4 ++--
 4 files changed, 14 insertions(+), 14 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb
 create mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb
#1 lore raw

PATCH 1/1 pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3

This updates to pseudo 1.4.3. Changes:

1. A couple of minor tweaks to reduce difficulties using SDKs built on slightly more recent machines on older machines; specifically, avoiding getting @GLIBC_2.7 symbol references for sscanf(), fscanf(), and open2().
2. Revision of the logic determining the library directory to use for sqlite's library files.

The latter is a source of difficulty because it's come up a few times that we may want pseudo to use lib64 for libpseudo.so, but bitbake's usual setup would have libsqlite3.a in lib regardless of bit width. Cleaned up previous design a bit by providing a distinct setting for sqlite-lib, which defaults to the same library directory used for other things. Adjusted build to use this new setting.

Testing: Successful build of meta-toolchain for both 64-bit and 32-bit SDKMACHINE, and builds with NO32LIBS = "0" also succeeded.

---
 meta/recipes-devtools/pseudo/pseudo.inc      |    8 ++++----
 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb |    8 --------
 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb |    8 ++++++++
 meta/recipes-devtools/pseudo/pseudo_git.bb   |    4 ++--
 4 files changed, 14 insertions(+), 14 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb
 create mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb
meta/recipes-devtools/pseudo/pseudo.inc +4 -4
index 98f706c..8dd9842 100644
@@ -30,9 +30,9 @@ NO32LIBS ??= "1"
 # Compile for the local machine arch...
 do_compile () {
 	if [ "${SITEINFO_BITS}" = "64" ]; then
-	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib${SITEINFO_BITS} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
+	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib${SITEINFO_BITS} --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
 	else
-	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
+	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
 	fi
 	oe_runmake ${MAKEOPTS}
 }
@@ -51,7 +51,7 @@ do_compile_prepend_class-native () {
 		# built this will fail and be ignored.
 		make ${MAKEOPTS} distclean || :
 
-		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
+		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
 		oe_runmake ${MAKEOPTS} libpseudo
 		# prevent it from removing the lib, but remove everything else
 		make 'LIB=foo' ${MAKEOPTS} distclean 
@@ -63,7 +63,7 @@ do_compile_prepend_class-nativesdk () {
 		# We need the 32-bit libpseudo on a 64-bit machine...
                 # ... and we really, really, hope that the native host is
                 # x86, or else --bits may not work.
-		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
+		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
 		oe_runmake ${MAKEOPTS} libpseudo
 		# prevent it from removing the lib, but remove everything else
 		make 'LIB=foo' ${MAKEOPTS} distclean 
meta/recipes-devtools/pseudo/pseudo_1.4.1.bb deleted +0 -8
deleted file mode 100644
index 70fe9c0..0000000
@@ -1,8 +0,0 @@
-require pseudo.inc
-
-PR = "r13"
-
-SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"
-
-SRC_URI[md5sum] = "b49bb87c7e1de33f37fea479ddb99dca"
-SRC_URI[sha256sum] = "ae4bfba2bd1e3954ea8f83bf06571ee4958bf7623e4fa897056281dddfe6446d"
meta/recipes-devtools/pseudo/pseudo_1.4.3.bb new file +8 -0
new file mode 100644
index 0000000..9b3cb5f
@@ -0,0 +1,8 @@
+require pseudo.inc
+
+PR = "r14"
+
+SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "ac943153aa78e210e2d0db7c85845db3"
+SRC_URI[sha256sum] = "0ca12a319c0ee87d1c8b2a4310c36a6d68d8d4b8c9c7dba00bace1773baf18e8"
meta/recipes-devtools/pseudo/pseudo_git.bb +2 -2
index e394ffb..d2fe498 100644
@@ -1,7 +1,7 @@
 require pseudo.inc
 
-SRCREV = "398a264490713c912b4ce465251a8a82a7905f45"
-PV = "1.4.1+git${SRCPV}"
+SRCREV = "a01d7884e5f3acba1460cf6b500d28390e7af9f8"
+PV = "1.4.3+git${SRCPV}"
 PR = "r28"
 
 DEFAULT_PREFERENCE = "-1"
Signature · 1 line
1.7.0.4
#2 lore raw

Re: [PATCH 1/1] pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3

Quoted 16 lines · Peter Seebach

This updates to pseudo 1.4.3. Changes:

1. A couple of minor tweaks to reduce difficulties using SDKs built on slightly more recent machines on older machines; specifically, avoiding getting @GLIBC_2.7 symbol references for sscanf(), fscanf(), and open2().
2. Revision of the logic determining the library directory to use for sqlite's library files.

The latter is a source of difficulty because it's come up a few times that we may want pseudo to use lib64 for libpseudo.so, but bitbake's usual setup would have libsqlite3.a in lib regardless of bit width. Cleaned up previous design a bit by providing a distinct setting for sqlite-lib, which defaults to the same library directory used for other things. Adjusted build to use this new setting.

Quoted 2 lines

Testing: Successful build of meta-toolchain for both 64-bit and 32-bit SDKMACHINE, and builds with NO32LIBS = "0" also succeeded.

Interesting that this patch didn't make it to patchwork:
http://patchwork.openembedded.org/project/oe-core/list/?state=*&q=pseudo&archive=both
and it's not one of known cases where patchwork does not work (e.g. renames only with -M).

Peter can you check this issue:
http://lists.linuxtogo.org/pipermail/openembedded-core/2013-January/035089.html
to confirm or disprove that it could be somehow caused by pseudo?

I'll try it with 1.4.3 just in case :).

Regards,

Quoted 94 lines
---
 meta/recipes-devtools/pseudo/pseudo.inc      |    8 ++++----
 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb |    8 --------
 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb |    8 ++++++++
 meta/recipes-devtools/pseudo/pseudo_git.bb   |    4 ++--
 4 files changed, 14 insertions(+), 14 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb
 create mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb
meta/recipes-devtools/pseudo/pseudo.inc +4 -4
index 98f706c..8dd9842 100644
@@ -30,9 +30,9 @@ NO32LIBS ??= "1"
 # Compile for the local machine arch...
 do_compile () {
 	if [ "${SITEINFO_BITS}" = "64" ]; then
-	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib${SITEINFO_BITS} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
+	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib${SITEINFO_BITS} --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
 	else
-	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
+	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
 	fi
 	oe_runmake ${MAKEOPTS}
 }
@@ -51,7 +51,7 @@ do_compile_prepend_class-native () {
 		# built this will fail and be ignored.
 		make ${MAKEOPTS} distclean || :
 
-		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
+		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
 		oe_runmake ${MAKEOPTS} libpseudo
 		# prevent it from removing the lib, but remove everything else
 		make 'LIB=foo' ${MAKEOPTS} distclean 
@@ -63,7 +63,7 @@ do_compile_prepend_class-nativesdk () {
 		# We need the 32-bit libpseudo on a 64-bit machine...
                 # ... and we really, really, hope that the native host is
                 # x86, or else --bits may not work.
-		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
+		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
 		oe_runmake ${MAKEOPTS} libpseudo
 		# prevent it from removing the lib, but remove everything else
 		make 'LIB=foo' ${MAKEOPTS} distclean 
meta/recipes-devtools/pseudo/pseudo_1.4.1.bb deleted +0 -8
deleted file mode 100644
index 70fe9c0..0000000
@@ -1,8 +0,0 @@
-require pseudo.inc
-
-PR = "r13"
-
-SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"
-
-SRC_URI[md5sum] = "b49bb87c7e1de33f37fea479ddb99dca"
-SRC_URI[sha256sum] = "ae4bfba2bd1e3954ea8f83bf06571ee4958bf7623e4fa897056281dddfe6446d"
meta/recipes-devtools/pseudo/pseudo_1.4.3.bb new file +8 -0
new file mode 100644
index 0000000..9b3cb5f
@@ -0,0 +1,8 @@
+require pseudo.inc
+
+PR = "r14"
+
+SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "ac943153aa78e210e2d0db7c85845db3"
+SRC_URI[sha256sum] = "0ca12a319c0ee87d1c8b2a4310c36a6d68d8d4b8c9c7dba00bace1773baf18e8"
meta/recipes-devtools/pseudo/pseudo_git.bb +2 -2
index e394ffb..d2fe498 100644
@@ -1,7 +1,7 @@
 require pseudo.inc
 
-SRCREV = "398a264490713c912b4ce465251a8a82a7905f45"
-PV = "1.4.1+git${SRCPV}"
+SRCREV = "a01d7884e5f3acba1460cf6b500d28390e7af9f8"
+PV = "1.4.3+git${SRCPV}"
 PR = "r28"
 
 DEFAULT_PREFERENCE = "-1"
Signature · 7 lines
1.7.0.4


_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#4 lore raw

Re: [PATCH 1/1] pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3

In reply to Peter Seebach
Quoted 83 lines · Peter Seebach

This updates to pseudo 1.4.3. Changes:

1. A couple of minor tweaks to reduce difficulties using SDKs built on slightly more recent machines on older machines; specifically, avoiding getting @GLIBC_2.7 symbol references for sscanf(), fscanf(), and open2().
2. Revision of the logic determining the library directory to use for sqlite's library files.

The latter is a source of difficulty because it's come up a few times that we may want pseudo to use lib64 for libpseudo.so, but bitbake's usual setup would have libsqlite3.a in lib regardless of bit width. Cleaned up previous design a bit by providing a distinct setting for sqlite-lib, which defaults to the same library directory used for other things. Adjusted build to use this new setting.

Testing: Successful build of meta-toolchain for both 64-bit and 32-bit SDKMACHINE, and builds with NO32LIBS = "0" also succeeded.

---
 meta/recipes-devtools/pseudo/pseudo.inc      |    8 ++++----
 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb |    8 --------
 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb |    8 ++++++++
 meta/recipes-devtools/pseudo/pseudo_git.bb   |    4 ++--
 4 files changed, 14 insertions(+), 14 deletions(-)
 delete mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.1.bb
 create mode 100644 meta/recipes-devtools/pseudo/pseudo_1.4.3.bb
meta/recipes-devtools/pseudo/pseudo.inc +4 -4
index 98f706c..8dd9842 100644
@@ -30,9 +30,9 @@ NO32LIBS ??= "1"
 # Compile for the local machine arch...
 do_compile () {
 	if [ "${SITEINFO_BITS}" = "64" ]; then
-	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib${SITEINFO_BITS} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
+	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib${SITEINFO_BITS} --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
 	else
-	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
+	  ${S}/configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --cflags="${CFLAGS}" --bits=${SITEINFO_BITS} --enable-static-sqlite --without-rpath
 	fi
 	oe_runmake ${MAKEOPTS}
 }
@@ -51,7 +51,7 @@ do_compile_prepend_class-native () {
 		# built this will fail and be ignored.
 		make ${MAKEOPTS} distclean || :
 
-		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
+		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
 		oe_runmake ${MAKEOPTS} libpseudo
 		# prevent it from removing the lib, but remove everything else
 		make 'LIB=foo' ${MAKEOPTS} distclean 
@@ -63,7 +63,7 @@ do_compile_prepend_class-nativesdk () {
 		# We need the 32-bit libpseudo on a 64-bit machine...
                 # ... and we really, really, hope that the native host is
                 # x86, or else --bits may not work.
-		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
+		./configure --prefix=${prefix} --libdir=${prefix}/lib/pseudo/lib --with-sqlite-lib=lib --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32 --without-rpath
 		oe_runmake ${MAKEOPTS} libpseudo
 		# prevent it from removing the lib, but remove everything else
 		make 'LIB=foo' ${MAKEOPTS} distclean 
meta/recipes-devtools/pseudo/pseudo_1.4.1.bb deleted +0 -8
deleted file mode 100644
index 70fe9c0..0000000
@@ -1,8 +0,0 @@
-require pseudo.inc
-
-PR = "r13"
-
-SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"
-
-SRC_URI[md5sum] = "b49bb87c7e1de33f37fea479ddb99dca"
-SRC_URI[sha256sum] = "ae4bfba2bd1e3954ea8f83bf06571ee4958bf7623e4fa897056281dddfe6446d"
meta/recipes-devtools/pseudo/pseudo_1.4.3.bb new file +0 -0
new file mode 100644
index 0000000..9b3cb5f

meta/recipes-devtools/pseudo/pseudo_1.4.3.bb line 3

Quoted 3 lines
meta/recipes-devtools/pseudo/pseudo_1.4.3.bb new file +3 -0
@@ -0,0 +1,8 @@
+require pseudo.inc
+
+PR = "r14"

You can remove PR when upgrading PV.

Quoted 10 lines
meta/recipes-devtools/pseudo/pseudo_1.4.3.bb new file +5 -0
+
+SRC_URI = "http://www.yoctoproject.org/downloads/${BPN}/${BPN}-${PV}.tar.bz2"
+
+SRC_URI[md5sum] = "ac943153aa78e210e2d0db7c85845db3"
+SRC_URI[sha256sum] = "0ca12a319c0ee87d1c8b2a4310c36a6d68d8d4b8c9c7dba00bace1773baf18e8"
meta/recipes-devtools/pseudo/pseudo_git.bb +0 -0
index e394ffb..d2fe498 100644

meta/recipes-devtools/pseudo/pseudo_git.bb line 5

Quoted 7 lines
meta/recipes-devtools/pseudo/pseudo_git.bb +2 -2
@@ -1,7 +1,7 @@
 require pseudo.inc
 
-SRCREV = "398a264490713c912b4ce465251a8a82a7905f45"
-PV = "1.4.1+git${SRCPV}"
+SRCREV = "a01d7884e5f3acba1460cf6b500d28390e7af9f8"
+PV = "1.4.3+git${SRCPV}"
 PR = "r28"

You can remove PR when upgrading PV.

Quoted 10 lines
meta/recipes-devtools/pseudo/pseudo_git.bb +0 -0
 DEFAULT_PREFERENCE = "-1"
Signature · 7 lines
1.7.0.4


_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]
#5 lore raw

Re: [PATCH 1/1] pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3

Quoted 1 line · On Fri, 1 Feb 2013 13:22:44 +0100 Martin Jansa <[email protected]> wrote:

You can remove PR when upgrading PV.

Thanks! I had been sort of wondering whether there was a way to get away from ever-increasing PR, but I hadn't actually followed through to find out.

-s

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

Re: [PATCH 1/1] pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3

In reply to Martin Jansa
Quoted 3 lines · On Fri, 1 Feb 2013 11:29:35 +0100 Martin Jansa <[email protected]> wrote:

Peter can you check this issue:
http://lists.linuxtogo.org/pipermail/openembedded-core/2013-January/035089.html
to confirm or disprove that it could be somehow caused by pseudo?

It's possible that the increases in file name length caused by canonicalizing are relevant, but if you're iterating over a large pool of files, stuff like this will happen sooner or later regardless.

-s

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