summaryrefslogtreecommitdiff
path: root/meta/recipes-devtools/pseudo
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 /meta/recipes-devtools/pseudo
parent7586adb360d8075d3e97184dfcafb1b13ce5f838 (diff)
downloadopenembedded-core-5ade6c7de84893b4f94f7c068d775beeaecb9f5f.tar.gz
openembedded-core-5ade6c7de84893b4f94f7c068d775beeaecb9f5f.tar.bz2
openembedded-core-5ade6c7de84893b4f94f7c068d775beeaecb9f5f.tar.xz
openembedded-core-5ade6c7de84893b4f94f7c068d775beeaecb9f5f.zip
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>
Diffstat (limited to 'meta/recipes-devtools/pseudo')
-rw-r--r--meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch18
-rw-r--r--meta/recipes-devtools/pseudo/pseudo_git.bb38
2 files changed, 42 insertions, 14 deletions
diff --git a/meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch b/meta/recipes-devtools/pseudo/pseudo/static_sqlite.patch
index 0a2fa28d7..6faa7a2a4 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 4e94df7e8..244fabe1e 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"