aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Hatle <mark.hatle@windriver.com>2011-02-03 18:54:58 -0600
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-02-07 16:52:40 +0000
commit5ade6c7de84893b4f94f7c068d775beeaecb9f5f (patch)
treeead6c182a65ea29908fee35de112a5dc5f3fdf34
parent7586adb360d8075d3e97184dfcafb1b13ce5f838 (diff)
downloadopenembedded-core-contrib-5ade6c7de84893b4f94f7c068d775beeaecb9f5f.tar.gz
pseudo: Uprev pseudo and fix a few minor bugs
Uprev pseudo to the latest version. This corrects a linking problem on some newer host systems. In addition, we add more detail to the local.conf.sample file to explain the NO32LIBS and why someone would set it to 0. Also fix a minor bug in pseudo that prevented it from building for the target. Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
-rw-r--r--meta/conf/distro/include/poky-default-revisions.inc2
-rw-r--r--meta/conf/local.conf.sample9
-rw-r--r--meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch18
-rw-r--r--meta/recipes-devtools/pseudo/pseudo_git.bb38
4 files changed, 52 insertions, 15 deletions
diff --git a/meta/conf/distro/include/poky-default-revisions.inc b/meta/conf/distro/include/poky-default-revisions.inc
index db72140a0e..f7ee1c04d0 100644
--- a/meta/conf/distro/include/poky-default-revisions.inc
+++ b/meta/conf/distro/include/poky-default-revisions.inc
@@ -152,7 +152,7 @@ PRELINKSRCREV ??= "909470ee441237563d6236c505cb2d02ddc48704"
SRCREV_pn-prelink ??= "${PRELINKSRCREV}"
SRCREV_pn-prelink-native ??= "${PRELINKSRCREV}"
SRCREV_pn-psplash ??= "424"
-PSEUDOSRCREV ??= "bcb42d80c0817da5479ab9c4f2cd8c4727e98ef8"
+PSEUDOSRCREV ??= "5434325fc887817ebb2bad36313d8277992cef1d"
SRCREV_pn-pseudo ??= "${PSEUDOSRCREV}"
SRCREV_pn-pseudo-native ??= "${PSEUDOSRCREV}"
SRCREV_pn-pseudo-nativesdk ??= "${PSEUDOSRCREV}"
diff --git a/meta/conf/local.conf.sample b/meta/conf/local.conf.sample
index f9953d1cee..8ac31d8f77 100644
--- a/meta/conf/local.conf.sample
+++ b/meta/conf/local.conf.sample
@@ -170,6 +170,15 @@ ENABLE_BINARY_LOCALE_GENERATION = "1"
#IMAGE_LINGUAS ?= "en-gb"
#LIMIT_BUILT_LOCALES ?= "POSIX en_GB"
+# This value is currently used by PSEUDO to determine if the recipe should
+# build both the 32-bit and 64-bit wrapper libraries on a 64-bit build system.
+#
+# PSEUDO will attempt to determine if a 32-bit wrapper is necessary, but
+# it doesn't always guess properly. If you have 32-bit executables on
+# your 64-bit build system, you likely want to set this to "0",
+# otherwise you could end up with incorrect file attributes on the
+# target filesystem.
+#
# Default to not build 32 bit libs on 64 bit systems, comment this
# out if that is desired
NO32LIBS = "1"
diff --git a/meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch b/meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch
index 0a2fa28d79..6faa7a2a44 100644
--- a/meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch
+++ b/meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch
@@ -2,14 +2,14 @@ Due to disabling the LD_LIBRARY_PATH handling, we need to use a static
libsqlite.
diff -ur git.orig/Makefile.in git/Makefile.in
---- git.orig/Makefile.in 2010-07-20 17:13:56.000000000 -0700
-+++ git/Makefile.in 2010-07-20 17:12:14.000000000 -0700
-@@ -45,7 +45,7 @@
- GLOB_PATTERN=guts/*.c
- GUTS=$(filter-out "$(GLOB_PATTERN)",$(wildcard $(GLOB_PATTERN)))
+--- git.orig/Makefile.in
++++ git/Makefile.in
+@@ -55,7 +55,7 @@
--DBLDFLAGS=-lsqlite3
-+DBLDFLAGS=$(SQLITE)/lib/libsqlite3.a
- USE_64=wrapfuncs64.in
+ # needed for anything that links with pseduo_client.o, pretty much
+ CLIENT_LDFLAGS=-ldl -lpthread
+-DB_LDFLAGS=-lsqlite3 -lpthread
++DB_LDFLAGS=$(SQLITE)/lib/libsqlite3.a -lpthread
- SHOBJS=pseudo_table.o pseudo_util.o
+ PSEUDO=$(BIN)/pseudo
+ PSEUDODB=$(BIN)/pseudodb
diff --git a/meta/recipes-devtools/pseudo/pseudo_git.bb b/meta/recipes-devtools/pseudo/pseudo_git.bb
index 4e94df7e8c..244fabe1eb 100644
--- a/meta/recipes-devtools/pseudo/pseudo_git.bb
+++ b/meta/recipes-devtools/pseudo/pseudo_git.bb
@@ -6,7 +6,7 @@ LICENSE = "LGPL2.1"
DEPENDS = "sqlite3"
PV = "0.0+git${SRCPV}"
-PR = "r17"
+PR = "r18"
SRC_URI = "git://github.com/wrpseudo/pseudo.git;protocol=git \
file://static_sqlite.patch \
@@ -25,7 +25,26 @@ do_configure () {
NO32LIBS ??= "0"
+# Compile for the local machine arch...
do_compile () {
+ ${S}/configure --prefix=${prefix} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=${SITEINFO_BITS}
+ oe_runmake 'LIB=lib/pseudo/lib$(MARK64)'
+}
+
+# Two below are the same
+# If necessary compile for the alternative machine arch. This is only
+# necessary in a native build.
+do_compile_prepend_virtclass-native () {
+ if [ "${SITEINFO_BITS}" == "64" -a -e "/usr/include/gnu/stubs-32.h" -a "${PN}" == "pseudo-native" -a "${NO32LIBS}" != "1" ]; then
+ # We need the 32-bit libpseudo on a 64-bit machine...
+ ./configure --prefix=${prefix} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32
+ oe_runmake 'CFLAGS=-m32' 'LIB=lib/pseudo/lib' libpseudo
+ # prevent it from removing the lib, but remove everything else
+ make 'LIB=foo' distclean
+ fi
+}
+
+do_compile_prepend_virtclass-nativesdk () {
if [ "${SITEINFO_BITS}" == "64" -a -e "/usr/include/gnu/stubs-32.h" -a "${PN}" == "pseudo-native" -a "${NO32LIBS}" != "1" ]; then
# We need the 32-bit libpseudo on a 64-bit machine...
./configure --prefix=${prefix} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=32
@@ -33,18 +52,27 @@ do_compile () {
# prevent it from removing the lib, but remove everything else
make 'LIB=foo' distclean
fi
- ${S}/configure --prefix=${prefix} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=${SITEINFO_BITS}
- oe_runmake 'LIB=lib/pseudo/lib$(MARK64)'
}
do_install () {
oe_runmake 'DESTDIR=${D}' '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_virtclass-native () {
if [ "${SITEINFO_BITS}" == "64" -a -e "/usr/include/gnu/stubs-32.h" -a "${PN}" == "pseudo-native" -a "${NO32LIBS}" != "1" ]; then
mkdir -p ${D}${prefix}/lib/pseudo/lib
cp lib/pseudo/lib/libpseudo.so ${D}${prefix}/lib/pseudo/lib/.
fi
}
-BBCLASSEXTEND = "native nativesdk"
-
+do_install_append_virtclass-nativesdk () {
+ if [ "${SITEINFO_BITS}" == "64" -a -e "/usr/include/gnu/stubs-32.h" -a "${PN}" == "pseudo-native" -a "${NO32LIBS}" != "1" ]; then
+ mkdir -p ${D}${prefix}/lib/pseudo/lib
+ cp lib/pseudo/lib/libpseudo.so ${D}${prefix}/lib/pseudo/lib/.
+ fi
+}
+BBCLASSEXTEND = "native nativesdk"