pseudo 1.4.3: @GLIBC_2.7, libdirs, and so on.
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
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
@@ -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
@@ -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
@@ -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
@@ -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
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(), andopen2().
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
Signed-off-by Peter Seebach <[email protected]>--- 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.bbmeta/recipes-devtools/pseudo/pseudo.inc +4
-4@@ -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} distcleanmeta/recipes-devtools/pseudo/pseudo_1.4.1.bb deleted +0
-8@@ -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@@ -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@@ -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]
Re: [PATCH 1/1] pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3
In reply to Peter SeebachQuoted 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(), andopen2().
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.
Signed-off-by Peter Seebach <[email protected]>--- 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.bbmeta/recipes-devtools/pseudo/pseudo.inc +4
-4@@ -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} distcleanmeta/recipes-devtools/pseudo/pseudo_1.4.1.bb deleted +0
-8@@ -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
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
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
-0DEFAULT_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]
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.
Re: [PATCH 1/1] pseudo.inc: Fix sqlite libdir again, pseudo 1.4.3
In reply to Martin JansaQuoted 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.