diff options
Diffstat (limited to 'meta/recipes-devtools/pseudo/pseudo.inc')
-rw-r--r-- | meta/recipes-devtools/pseudo/pseudo.inc | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/meta/recipes-devtools/pseudo/pseudo.inc b/meta/recipes-devtools/pseudo/pseudo.inc new file mode 100644 index 0000000000..a458dcce69 --- /dev/null +++ b/meta/recipes-devtools/pseudo/pseudo.inc @@ -0,0 +1,69 @@ +DESCRIPTION = "Pseudo gives fake root capabilities to a normal user" +HOMEPAGE = "http://wiki.github.com/wrpseudo/pseudo/" +LIC_FILES_CHKSUM = "file://COPYING;md5=243b725d71bb5df4a1e5920b344b86ad" +SECTION = "base" +LICENSE = "LGPL2.1" +DEPENDS = "sqlite3" + +FILES_${PN} = "${libdir}/libpseudo.so ${bindir}/* ${localstatedir}/pseudo" +PROVIDES += "virtual/fakeroot" + +inherit siteinfo + +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 + 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_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 +} + +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" |