]> code.ossystems Code Review - openembedded-core.git/commitdiff
pseudo: Enable dual 32-bit and 64-bit support
authorMark Hatle <Mark.Hatle@windriver.com>
Fri, 6 Aug 2010 13:54:38 +0000 (06:54 -0700)
committerMark Hatle <Mark.Hatle@windriver.com>
Fri, 6 Aug 2010 13:56:03 +0000 (06:56 -0700)
On an x86_64 host, both 32-bit and 64-bit libraries need to be generated.
It is fairly common that a user will have at least a few 32-bit programs
on their x86_64 host system, so a pseudo wrapper for 32-bit is required
to allow those programs to be successfully wrapped.

Signed-off-by: Mark Hatle <Mark.Hatle@windriver.com>
meta/packages/pseudo/pseudo_git.bb

index 78d172050155c2a3d617676d502049040ced68cf..020c8380b4d1bb773080a7e6357bd54577ce237b 100644 (file)
@@ -6,7 +6,7 @@ LICENSE = "LGPL2.1"
 DEPENDS = "sqlite3"
 
 PV = "0.0+git${SRCPV}"
-PR = "r11"
+PR = "r12"
 
 SRC_URI = "git://github.com/wrpseudo/pseudo.git;protocol=git \
            file://static_sqlite.patch"
@@ -19,15 +19,27 @@ S = "${WORKDIR}/git"
 inherit siteinfo
 
 do_configure () {
-       ${S}/configure --prefix=${prefix} --with-sqlite=${STAGING_DIR_TARGET}${exec_prefix} --bits=${SITEINFO_BITS}
+       :
 }
 
 do_compile () {
-       oe_runmake 'LIB=lib/pseudo/lib'
+       if [ "${SITEINFO_BITS}" == "64" ]; 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'
+          # prevent it from removing the lib, but keep 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' install
+       oe_runmake 'DESTDIR=${D}' 'LIB=lib/pseudo/lib$(MARK64)' install
+       if [ "${SITEINFO_BITS}" == "64" ]; then
+         mkdir -p ${D}${prefix}/lib/pseudo/lib
+         cp lib/pseudo/lib/libpseudo.so ${D}${prefix}/lib/pseudo/lib/.
+       fi
 }
 
 BBCLASSEXTEND = "native"