diff options
author | Richard Purdie <richard@openedhand.com> | 2006-05-09 16:10:46 +0000 |
---|---|---|
committer | Richard Purdie <richard@openedhand.com> | 2006-05-09 16:10:46 +0000 |
commit | 189b9a916b845c90db5e51f62496a13f60936d36 (patch) | |
tree | e9227d9f63eea070317afffd41cbcdfed018753f /openembedded/classes | |
parent | 8d41bd1c8f4c36ed9c1c73e0586031af8a0f292c (diff) | |
download | openembedded-core-189b9a916b845c90db5e51f62496a13f60936d36.tar.gz openembedded-core-189b9a916b845c90db5e51f62496a13f60936d36.tar.bz2 openembedded-core-189b9a916b845c90db5e51f62496a13f60936d36.tar.xz openembedded-core-189b9a916b845c90db5e51f62496a13f60936d36.zip |
Sync bbclass files with OE
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@374 311d38ba-8fff-0310-9ca6-ca027cbcb966
Diffstat (limited to 'openembedded/classes')
-rw-r--r-- | openembedded/classes/base.bbclass | 13 | ||||
-rw-r--r-- | openembedded/classes/cross.bbclass | 1 | ||||
-rw-r--r-- | openembedded/classes/e.bbclass | 37 | ||||
-rw-r--r-- | openembedded/classes/efl.bbclass | 40 | ||||
-rw-r--r-- | openembedded/classes/kernel.bbclass | 6 | ||||
-rw-r--r-- | openembedded/classes/native.bbclass | 1 | ||||
-rw-r--r-- | openembedded/classes/opie.bbclass | 3 | ||||
-rw-r--r-- | openembedded/classes/package.bbclass | 8 | ||||
-rw-r--r-- | openembedded/classes/palmtop.bbclass | 20 | ||||
-rw-r--r-- | openembedded/classes/qmake-base.bbclass | 2 | ||||
-rw-r--r-- | openembedded/classes/qmake.bbclass | 6 | ||||
-rw-r--r-- | openembedded/classes/qt4x11.bbclass | 7 | ||||
-rw-r--r-- | openembedded/classes/sanity.bbclass | 68 | ||||
-rw-r--r-- | openembedded/classes/sdl.bbclass | 61 | ||||
-rw-r--r-- | openembedded/classes/sip.bbclass | 9 | ||||
-rw-r--r-- | openembedded/classes/srec.bbclass | 2 |
16 files changed, 190 insertions, 94 deletions
diff --git a/openembedded/classes/base.bbclass b/openembedded/classes/base.bbclass index 21feaab6e..1728b6570 100644 --- a/openembedded/classes/base.bbclass +++ b/openembedded/classes/base.bbclass @@ -27,7 +27,7 @@ def base_read_file(filename): try: f = file( filename, "r" ) except IOError, reason: - raise bb.build.FuncFailed("can't read from file '%s' (%s)", (filename,reason)) + return "" # WARNING: can't raise an error now because of the new RDEPENDS handling. This is a bit ugly. :M: else: return f.read().strip() return None @@ -196,7 +196,7 @@ oe_libinstall() { # stop libtool using the final directory name for libraries # in staging: __runcmd rm -f $destpath/$libname.la - __runcmd sed -e 's/^installed=yes$/installed=no/' $dotlai >$destpath/$libname.la + __runcmd sed -e 's/^installed=yes$/installed=no/' -e '/^dependency_libs=/s,${WORKDIR}[[:alnum:]/\._+-]*/\([[:alnum:]\._+-]*\),${STAGING_LIBDIR}/\1,' $dotlai >$destpath/$libname.la else __runcmd install -m 0644 $dotlai $destpath/$libname.la fi @@ -723,7 +723,14 @@ python __anonymous () { this_host = bb.data.getVar('HOST_SYS', d, 1) if not re.match(need_host, this_host): raise bb.parse.SkipPackage("incompatible with host %s" % this_host) - + + need_machine = bb.data.getVar('COMPATIBLE_MACHINE', d, 1) + if need_machine: + import re + this_machine = bb.data.getVar('MACHINE', d, 1) + if not re.match(need_machine, this_machine): + raise bb.parse.SkipPackage("incompatible with machine %s" % this_machine) + pn = bb.data.getVar('PN', d, 1) srcdate = bb.data.getVar('SRCDATE_%s' % pn, d, 1) diff --git a/openembedded/classes/cross.bbclass b/openembedded/classes/cross.bbclass index 5d670ccad..09357acbe 100644 --- a/openembedded/classes/cross.bbclass +++ b/openembedded/classes/cross.bbclass @@ -14,6 +14,7 @@ CPPFLAGS = "${BUILD_CPPFLAGS}" CFLAGS = "${BUILD_CFLAGS}" CXXFLAGS = "${BUILD_CFLAGS}" LDFLAGS = "${BUILD_LDFLAGS}" +LDFLAGS_build-darwin = "-L${STAGING_DIR}/${BUILD_SYS}/lib " # Overrides for paths diff --git a/openembedded/classes/e.bbclass b/openembedded/classes/e.bbclass new file mode 100644 index 000000000..afd9b6d2b --- /dev/null +++ b/openembedded/classes/e.bbclass @@ -0,0 +1,37 @@ +MAINTAINER = "Justin Patrin <papercrane@reversefold.com>" +HOMEPAGE = "http://www.enlightenment.org" +SECTION = "e/apps" + +inherit autotools pkgconfig binconfig + +do_prepsources () { + make clean distclean || true +} +addtask prepsources after do_fetch before do_unpack + +def binconfig_suffix(d): + import bb + return ["","-native"][bb.data.inherits_class('native', d)] + +export CURL_CONFIG = "${STAGING_BINDIR}/curl-config${@binconfig_suffix(d)}" +export EDB_CONFIG = "${STAGING_BINDIR}/edb-config${@binconfig_suffix(d)}" +export EET_CONFIG = "${STAGING_BINDIR}/eet-config${@binconfig_suffix(d)}" +export EVAS_CONFIG = "${STAGING_BINDIR}/evas-config${@binconfig_suffix(d)}" +export ECORE_CONFIG = "${STAGING_BINDIR}/ecore-config${@binconfig_suffix(d)}" +export EMBRYO_CONFIG = "${STAGING_BINDIR}/embryo-config${@binconfig_suffix(d)}" +export ENGRAVE_CONFIG = "${STAGING_BINDIR}/engrave-config${@binconfig_suffix(d)}" +export ENLIGHTENMENT_CONFIG = "${STAGING_BINDIR}/enlightenment-config${@binconfig_suffix(d)}" +export EPSILON_CONFIG = "${STAGING_BINDIR}/epsilon-config${@binconfig_suffix(d)}" +export EPEG_CONFIG = "${STAGING_BINDIR}/epeg-config${@binconfig_suffix(d)}" +export ESMART_CONFIG = "${STAGING_BINDIR}/esmart-config${@binconfig_suffix(d)}" +export FREETYPE_CONFIG = "${STAGING_BINDIR}/freetype-config${@binconfig_suffix(d)}" +export IMLIB2_CONFIG = "${STAGING_BINDIR}/imlib2-config${@binconfig_suffix(d)}" + +do_compile_prepend() { + find ${S} -name Makefile | xargs sed -i 's:/usr/include:${STAGING_INCDIR}:' + find ${S} -name Makefile | xargs sed -i 's:/usr/X11R6/include:${STAGING_INCDIR}:' +} + +PACKAGES = "${PN} ${PN}-themes" +FILES_${PN} = "${libdir}/lib*.so*" +FILES_${PN}-themes = "${datadir}/${PN}/themes ${datadir}/${PN}/data ${datadir}/${PN}/fonts ${datadir}/${PN}/pointers ${datadir}/${PN}/images ${datadir}/${PN}/users ${datadir}/${PN}/images ${datadir}/${PN}/styles" diff --git a/openembedded/classes/efl.bbclass b/openembedded/classes/efl.bbclass index e5968b9ae..9c490284c 100644 --- a/openembedded/classes/efl.bbclass +++ b/openembedded/classes/efl.bbclass @@ -1,18 +1,11 @@ -MAINTAINER = "Justin Patrin <papercrane@reversefold.com>" -HOMEPAGE = "http://www.enlightenment.org" +inherit e + SECTION = "e/libs" SRCNAME = "${@bb.data.getVar('PN', d, 1).replace('-native', '')}" -SRC_URI = "http://enlightenment.freedesktop.org/files/${SRCNAME}-${PV}.tar.gz" +SRC_URI = "${E_URI}/${SRCNAME}-${PV}.tar.gz" S = "${WORKDIR}/${SRCNAME}-${PV}" -inherit autotools pkgconfig binconfig - -do_prepsources () { - make clean distclean || true -} -addtask prepsources after do_fetch before do_unpack - INHIBIT_AUTO_STAGE_INCLUDES = "1" INHIBIT_NATIVE_STAGE_INSTALL = "1" @@ -20,29 +13,6 @@ libdirectory = "src/lib" libraries = "lib${SRCNAME}" headers = "${@bb.data.getVar('SRCNAME',d,1).capitalize()}.h" -def binconfig_suffix(d): - import bb - return ["","-native"][bb.data.inherits_class('native', d)] - -export CURL_CONFIG = "${STAGING_BINDIR}/curl-config${@binconfig_suffix(d)}" -export EDB_CONFIG = "${STAGING_BINDIR}/edb-config${@binconfig_suffix(d)}" -export EET_CONFIG = "${STAGING_BINDIR}/eet-config${@binconfig_suffix(d)}" -export EVAS_CONFIG = "${STAGING_BINDIR}/evas-config${@binconfig_suffix(d)}" -export ECORE_CONFIG = "${STAGING_BINDIR}/ecore-config${@binconfig_suffix(d)}" -export EMBRYO_CONFIG = "${STAGING_BINDIR}/embryo-config${@binconfig_suffix(d)}" -export ENGRAVE_CONFIG = "${STAGING_BINDIR}/engrave-config${@binconfig_suffix(d)}" -export ENLIGHTENMENT_CONFIG = "${STAGING_BINDIR}/enlightenment-config${@binconfig_suffix(d)}" -export EPSILON_CONFIG = "${STAGING_BINDIR}/epsilon-config${@binconfig_suffix(d)}" -export EPEG_CONFIG = "${STAGING_BINDIR}/epeg-config${@binconfig_suffix(d)}" -export ESMART_CONFIG = "${STAGING_BINDIR}/esmart-config${@binconfig_suffix(d)}" -export FREETYPE_CONFIG = "${STAGING_BINDIR}/freetype-config${@binconfig_suffix(d)}" -export IMLIB2_CONFIG = "${STAGING_BINDIR}/imlib2-config${@binconfig_suffix(d)}" - -do_compile_prepend() { - find ${S} -name Makefile | xargs sed -i 's:/usr/include:${STAGING_INCDIR}:' - find ${S} -name Makefile | xargs sed -i 's:/usr/X11R6/include:${STAGING_INCDIR}:' -} - do_stage_append () { for i in ${libraries} do @@ -73,9 +43,7 @@ do_stage_append () { fi } -PACKAGES = "${PN} ${PN}-themes ${PN}-dev ${PN}-examples " -FILES_${PN} = "${libdir}/lib*.so*" -FILES_${PN}-themes = "${datadir}/${PN}/themes ${datadir}/${PN}/data ${datadir}/${PN}/fonts ${datadir}/${PN}/pointers ${datadir}/${PN}/images ${datadir}/${PN}/users ${datadir}/${PN}/images ${datadir}/${PN}/styles" +PACKAGES = "${PN} ${PN}-themes ${PN}-dev ${PN}-examples" FILES_${PN}-dev = "${bindir}/${PN}-config ${libdir}/pkgconfig ${libdir}/lib*.?a ${libdir}/lib*.a" FILES_${PN}-examples = "${bindir} ${datadir}" diff --git a/openembedded/classes/kernel.bbclass b/openembedded/classes/kernel.bbclass index 471acd4a6..ab8c03014 100644 --- a/openembedded/classes/kernel.bbclass +++ b/openembedded/classes/kernel.bbclass @@ -163,6 +163,7 @@ kernel_do_install() { oe_runmake SUBDIRS="scripts/genksyms" fi + install -d ${STAGING_KERNEL_DIR} cp -fR scripts ${STAGING_KERNEL_DIR}/ } @@ -193,7 +194,7 @@ ALLOW_EMPTY_kernel-image = "1" pkg_postinst_modules () { if [ -n "$D" ]; then - ${HOST_PREFIX}depmod -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_RELEASE} ${KERNEL_VERSION} + ${HOST_PREFIX}depmod-${KERNEL_MAJOR_VERSION} -A -b $D -F ${STAGING_KERNEL_DIR}/System.map-${KERNEL_RELEASE} ${KERNEL_VERSION} else depmod -A update-modules || true @@ -261,8 +262,9 @@ python populate_packages_prepend () { kernelver_stripped = m.group(1) path = bb.data.getVar("PATH", d, 1) host_prefix = bb.data.getVar("HOST_PREFIX", d, 1) or "" + major_version = bb.data.getVar('KERNEL_MAJOR_VERSION', d, 1) - cmd = "PATH=\"%s\" %sdepmod -n -a -r -b %s -F %s/boot/System.map-%s %s" % (path, host_prefix, dvar, dvar, kernelver, kernelver_stripped) + cmd = "PATH=\"%s\" %sdepmod-%s -n -a -r -b %s -F %s/boot/System.map-%s %s" % (path, host_prefix, major_version, dvar, dvar, kernelver, kernelver_stripped) f = os.popen(cmd, 'r') deps = {} diff --git a/openembedded/classes/native.bbclass b/openembedded/classes/native.bbclass index fea8048fe..011e48cf6 100644 --- a/openembedded/classes/native.bbclass +++ b/openembedded/classes/native.bbclass @@ -34,6 +34,7 @@ CPPFLAGS = "${BUILD_CPPFLAGS}" CFLAGS = "${BUILD_CFLAGS}" CXXFLAGS = "${BUILD_CFLAGS}" LDFLAGS = "${BUILD_LDFLAGS}" +LDFLAGS_build-darwin = "-L${STAGING_DIR}/${BUILD_SYS}/lib " # Path prefixes base_prefix = "${exec_prefix}" diff --git a/openembedded/classes/opie.bbclass b/openembedded/classes/opie.bbclass index c00f7e19a..47f364a64 100644 --- a/openembedded/classes/opie.bbclass +++ b/openembedded/classes/opie.bbclass @@ -23,7 +23,8 @@ OPIE_CVS_PV = "1.2.1+cvs-${SRCDATE}" DEPENDS_prepend = "${@["libopie2 ", ""][(bb.data.getVar('PN', d, 1) == 'libopie2')]}" # to be consistent, put all targets into workdir -EXTRA_QMAKEVARS_POST_append = " DESTDIR=${S}" +# NOTE: leave one space at the end, other files are expecting that +EXTRA_QMAKEVARS_POST += "DESTDIR=${S} " # Opie standard TAG value TAG = "${@'v' + bb.data.getVar('PV',d,1).replace('.', '_')}" diff --git a/openembedded/classes/package.bbclass b/openembedded/classes/package.bbclass index fbeabb64b..9edcc1e5e 100644 --- a/openembedded/classes/package.bbclass +++ b/openembedded/classes/package.bbclass @@ -241,6 +241,14 @@ python populate_packages () { return 0 return (s[stat.ST_MODE] & stat.S_IEXEC) + # Sanity check PACKAGES for duplicates - should be moved to + # sanity.bbclass once we have he infrastucture + pkgs = [] + for pkg in packages.split(): + if pkg in pkgs: + bb.error("%s is listed in PACKAGES mutliple times. Undefined behaviour will result." % pkg) + pkgs += pkg + for pkg in packages.split(): localdata = bb.data.createCopy(d) root = os.path.join(workdir, "install", pkg) diff --git a/openembedded/classes/palmtop.bbclass b/openembedded/classes/palmtop.bbclass index 523c3d71b..9d54de874 100644 --- a/openembedded/classes/palmtop.bbclass +++ b/openembedded/classes/palmtop.bbclass @@ -1,10 +1,20 @@ -# basically a placeholder for something more fancy -# for now, just declare some things +# this build class sets up qmake variables to +# * build using the Qt Windowing System (QWS) +# * use qt +# * link against supc++ instead of stdc++ +# * use threads, if requested via PALMTOP_USE_MULTITHREADED_QT = "yes" +# inherit this class to build programs against libqpe +# inherit opie if you want to build programs against libopie2 +# don't override EXTRA_QMAKEVARS_POST, if you use inherit this class inherit qmake -EXTRA_QMAKEVARS_POST_append = " DEFINES+=QWS LIBS+=-lqpe CONFIG+=qt LIBS-=-lstdc++ LIBS+=-lsupc++" - -DEPENDS_prepend = "virtual/libqpe uicmoc-native " +# special case for DISTRO = sharprom +CPP_SUPPORT_LIB = "LIBS-=-lstdc++ LIBS+=-lsupc++" +CPP_SUPPORT_LIB_sharprom = "LIBS-=-lstdc++" +EXTRA_QMAKEVARS_POST += "DEFINES+=QWS CONFIG+=qt ${CPP_SUPPORT_LIB}" +EXTRA_QMAKEVARS_POST += '${@base_conditional("PALMTOP_USE_MULTITHREADED_QT", "yes", "CONFIG+=thread", "CONFIG-=thread",d)}' +EXTRA_QMAKEVARS_POST += "${@["LIBS+=-lqpe ", ""][(bb.data.getVar('PN', d, 1) == 'libqpe-opie')]}" +DEPENDS_prepend = "${@["virtual/libqpe1 uicmoc-native ", ""][(bb.data.getVar('PN', d, 1) == 'libqpe-opie')]}" FILES_${PN} = "${palmtopdir}" diff --git a/openembedded/classes/qmake-base.bbclass b/openembedded/classes/qmake-base.bbclass index 4a360dae4..36ecfb622 100644 --- a/openembedded/classes/qmake-base.bbclass +++ b/openembedded/classes/qmake-base.bbclass @@ -16,6 +16,8 @@ export OE_QMAKE_AR="${AR}" export OE_QMAKE_STRIP="${STRIP}" export OE_QMAKE_UIC="${STAGING_BINDIR}/uic" export OE_QMAKE_MOC="${STAGING_BINDIR}/moc" +export OE_QMAKE_RCC="non-existant" +export OE_QMAKE_QMAKE="${STAGING_BINDIR}/qmake" export OE_QMAKE_RPATH="-Wl,-rpath-link," # default to qte2 via bb.conf, inherit qt3x11 to configure for qt3x11 diff --git a/openembedded/classes/qmake.bbclass b/openembedded/classes/qmake.bbclass index 10aa8c9f7..4f2fceff3 100644 --- a/openembedded/classes/qmake.bbclass +++ b/openembedded/classes/qmake.bbclass @@ -2,7 +2,7 @@ inherit qmake-base qmake_do_configure() { case ${QMAKESPEC} in - *linux-oe-g++|*linux-uclibc-oe-g++) + *linux-oe-g++|*linux-uclibc-oe-g++|*linux-gnueabi-oe-g++) ;; *-oe-g++) die Unsupported target ${TARGET_OS} for oe-g++ qmake spec @@ -47,9 +47,9 @@ qmake_do_configure() { oenote "qmake prevar substitution: ${EXTRA_QMAKEVARS_PRE}" fi -#oenote "Calling 'qmake -makefile -spec ${QMAKESPEC} -o Makefile $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST'" +#oenote "Calling '${OE_QMAKE_QMAKE} -makefile -spec ${QMAKESPEC} -o Makefile $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST'" unset QMAKESPEC || true - qmake -makefile -spec ${QMAKESPEC} -o Makefile $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST || die "Error calling qmake on $PROFILES" + ${OE_QMAKE_QMAKE} -makefile -spec ${QMAKESPEC} -o Makefile $QMAKE_VARSUBST_PRE $AFTER $PROFILES $QMAKE_VARSUBST_POST || die "Error calling ${OE_QMAKE_QMAKE} on $PROFILES" } EXPORT_FUNCTIONS do_configure diff --git a/openembedded/classes/qt4x11.bbclass b/openembedded/classes/qt4x11.bbclass index d4ca0073d..04aff565b 100644 --- a/openembedded/classes/qt4x11.bbclass +++ b/openembedded/classes/qt4x11.bbclass @@ -1,9 +1,14 @@ +DEPENDS_prepend = "qmake2-native " # -# override variables set by qmake-base to compile Qt/X11 apps +# override variables set by qmake-base to compile Qt4/X11 apps # export QTDIR="${STAGING_DIR}/${HOST_SYS}/qt4" +export QMAKESPEC="${QTDIR}/mkspecs/${TARGET_OS}-oe-g++" export OE_QMAKE_UIC="${STAGING_BINDIR}/uic4" export OE_QMAKE_MOC="${STAGING_BINDIR}/moc4" +export OE_QMAKE_RCC="${STAGING_BINDIR}/rcc4" +export OE_QMAKE_QMAKE="${STAGING_BINDIR}/qmake2" +export OE_QMAKE_LINK="${CXX}" export OE_QMAKE_CXXFLAGS="${CXXFLAGS}" export OE_QMAKE_INCDIR_QT="${QTDIR}/include" export OE_QMAKE_LIBDIR_QT="${QTDIR}/lib" diff --git a/openembedded/classes/sanity.bbclass b/openembedded/classes/sanity.bbclass index f82af18d7..8253b2793 100644 --- a/openembedded/classes/sanity.bbclass +++ b/openembedded/classes/sanity.bbclass @@ -2,11 +2,9 @@ # Sanity check the users setup for common misconfigurations # -BB_MIN_VERSION = "1.3.3" - def raise_sanity_error(msg): import bb - bb.fatal("Openembedded's config sanity checker detected a potential misconfiguration.\nEither fix cause of this error or at your own risk disable the checker (see sanity.conf).\n%s" % msg) + bb.fatal("Openembedded's config sanity checker detected a potential misconfiguration.\nEither fix the cause of this error or at your own risk disable the checker (see sanity.conf).\n%s" % msg) def check_conf_exists(fn, data): import bb, os @@ -22,37 +20,41 @@ def check_conf_exists(fn, data): return True return False -addhandler check_sanity_eventhandler -python check_sanity_eventhandler() { +def check_app_exists(app, d): + from bb import which, data + + app = data.expand(app, d) + path = data.getVar('PATH', d) + return len(which(path, app)) != 0 + + +def check_sanity(e): from bb import note, error, data, __version__ from bb.event import Handled, NotHandled, getName from distutils.version import LooseVersion import os - sanity_checked = bb.data.getVar('SANITY_CHECKED', e.data) - if sanity_checked == "1": - return - # Check the bitbake version meets minimum requirements - minversion = bb.data.getVar('BB_MIN_VERSION', e.data , True) + minversion = data.getVar('BB_MIN_VERSION', e.data , True) if not minversion: # Hack: BB_MIN_VERSION hasn't been parsed yet so return # and wait for the next call + print "Foo %s" % minversion return - if (LooseVersion(bb.__version__) < LooseVersion(minversion)): - raise_sanity_error('Bitbake version %s is required and version %s was found' % (minversion, bb.__version__)) + if (LooseVersion(__version__) < LooseVersion(minversion)): + raise_sanity_error('Bitbake version %s is required and version %s was found' % (minversion, __version__)) # Check TARGET_ARCH is set - if bb.data.getVar('TARGET_ARCH', e.data, True) == 'INVALID': + if data.getVar('TARGET_ARCH', e.data, True) == 'INVALID': raise_sanity_error('Please set TARGET_ARCH directly, or choose a MACHINE or DISTRO that does so.') # Check TARGET_OS is set - if bb.data.getVar('TARGET_OS', e.data, True) == 'INVALID': + if data.getVar('TARGET_OS', e.data, True) == 'INVALID': raise_sanity_error('Please set TARGET_OS directly, or choose a MACHINE or DISTRO that does so.') # Check user doesn't have ASSUME_PROVIDED = instead of += in local.conf - if "diffstat-native" not in bb.data.getVar('ASSUME_PROVIDED', e.data, True).split(): + if "diffstat-native" not in data.getVar('ASSUME_PROVIDED', e.data, True).split(): raise_sanity_error('Please use ASSUME_PROVIDED +=, not ASSUME_PROVIDED = in your local.conf') # Check the MACHINE is valid @@ -62,8 +64,36 @@ python check_sanity_eventhandler() { # Check the distro is valid if not check_conf_exists("conf/distro/${DISTRO}.conf", e.data): raise_sanity_error('Please set a valid DISTRO in your local.conf') - - bb.data.setVar('SANITY_CHECKED', "1", e.data) - return -} + if not check_app_exists("${MAKE}", e.data): + raise_sanity_error('GNU make missing. Please install GNU make') + + if not check_app_exists('${BUILD_PREFIX}gcc', e.data): + raise_sanity_error('C Host-Compiler is missing, please install one' ) + + if not check_app_exists('${BUILD_PREFIX}g++', e.data): + raise_sanity_error('C++ Host-Compiler is missing, please install one' ) + + if not check_app_exists('patch', e.data): + raise_sanity_error('Please install the patch utility, preferable GNU patch.') + + if not check_app_exists('diffstat', e.data): + raise_sanity_error('Please install the diffstat utility') + + if not check_app_exists('texi2html', e.data): + raise_sanity_error('Please install the texi2html binary') + + oes_bb_conf = data.getVar( 'OES_BITBAKE_CONF', e.data, True ) + if not oes_bb_conf: + raise_sanity_error('You do not include OpenEmbeddeds version of conf/bitbake.conf') + +addhandler check_sanity_eventhandler +python check_sanity_eventhandler() { + from bb import note, error, data, __version__ + from bb.event import getName + + if getName(e) == "BuildStarted": + check_sanity(e) + + return NotHandled +} diff --git a/openembedded/classes/sdl.bbclass b/openembedded/classes/sdl.bbclass index 541812ed9..c0b21427a 100644 --- a/openembedded/classes/sdl.bbclass +++ b/openembedded/classes/sdl.bbclass @@ -1,27 +1,44 @@ -FILES_${PN} += '${libdir}/perl5' +# +# (C) Michael 'Mickey' Lauer <mickey@Vanille.de> +# -sdl_do_configure () { - if [ -x ${S}/configure ] ; then - cfgcmd="${S}/configure \ - -GL -GLU" - oenote "Running $cfgcmd..." - $cfgcmd || oefatal "oe_runconf failed" - if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then - . ${STAGING_DIR}/${TARGET_SYS}/perl/config.sh - sed -e "s:\(SITELIBEXP = \).*:\1${sitelibexp}:; s:\(SITEARCHEXP = \).*:\1${sitearchexp}:; s:\(INSTALLVENDORLIB = \).*:\1${D}${libdir}/perl5:; s:\(INSTALLVENDORARCH = \).*:\1${D}${libdir}/perl5:" < Makefile > Makefile.new - mv Makefile.new Makefile - fi - else - oefatal "no configure script found" - fi -} +DEPENDS += "virtual/libsdl libsdl-mixer libsdl-image" -sdl_do_compile () { - oe_runmake PASTHRU_INC="${CFLAGS}" -} +APPDESKTOP ?= "${PN}.desktop" +APPNAME ?= "${PN}" +APPIMAGE ?= "${PN}.png" + +sdl_do_sdl_install() { + install -d ${D}${palmtopdir}/bin + install -d ${D}${palmtopdir}/pics + install -d ${D}${palmtopdir}/apps/Games + ln -sf ${bindir}/${APPNAME} ${D}${palmtopdir}/bin/${APPNAME} + install -m 0644 ${APPIMAGE} ${D}${palmtopdir}/pics/${PN}.png -sdl_do_install () { - oe_runmake install_vendor + if [ -e "${APPDESKTOP}" ] + then + echo ${APPDESKTOP} present, installing to palmtopdir... + install -m 0644 ${APPDESKTOP} ${D}${palmtopdir}/apps/Games/${PN}.desktop + else + echo ${APPDESKTOP} not present, creating one on-the-fly... + cat >${D}${palmtopdir}/apps/Games/${PN}.desktop <<EOF +[Desktop Entry] +Note=Auto Generated... this may be not what you want +Comment=${DESCRIPTION} +Exec=${APPNAME} +Icon=${APPIMAGE} +Type=Application +Name=${PN} +EOF + fi } -EXPORT_FUNCTIONS do_configure do_compile do_install +EXPORT_FUNCTIONS do_sdl_install +addtask sdl_install after do_compile before do_populate_staging + +SECTION = "x11/games" +SECTION_${PN}-opie = "opie/games" + +PACKAGES += "${PN}-opie" +RDEPENDS_${PN}-opie += "${PN}" +FILES_${PN}-opie = "${palmtopdir}" diff --git a/openembedded/classes/sip.bbclass b/openembedded/classes/sip.bbclass index 7e049bc65..adf179b13 100644 --- a/openembedded/classes/sip.bbclass +++ b/openembedded/classes/sip.bbclass @@ -1,6 +1,11 @@ -DEPENDS_prepend = "sip-native python-sip " +# Build Class for Sip based Python Bindings +# (C) Michael 'Mickey' Lauer <mickey@Vanille.de> +# -#EXTRA_SIPTAGS = "-tWS_QWS -tQtPE_1_6_0 -tQt_2_3_1" +DEPENDS =+ "sip-native python-sip" + +# default stuff, do not uncomment +# EXTRA_SIPTAGS = "-tWS_QWS -tQtPE_1_6_0 -tQt_2_3_1" sip_do_generate() { if [ -z "${SIP_MODULES}" ]; then diff --git a/openembedded/classes/srec.bbclass b/openembedded/classes/srec.bbclass index ae46a407f..e7bdc6c75 100644 --- a/openembedded/classes/srec.bbclass +++ b/openembedded/classes/srec.bbclass @@ -10,6 +10,8 @@ SREC_CMD = "${TARGET_PREFIX}objcopy -O srec -I binary --adjust-vma ${SREC_VMAADD # Do not build srec files for these types of images: SREC_SKIP = "tar" +do_srec[nostamp] = 1 + do_srec () { if [ ${SREC_VMAADDR} = "" ] ; then oefatal Cannot do_srec without SREC_VMAADDR defined. |