summaryrefslogtreecommitdiff
path: root/openembedded/classes
diff options
context:
space:
mode:
authorRichard Purdie <richard@openedhand.com>2006-05-09 16:10:46 +0000
committerRichard Purdie <richard@openedhand.com>2006-05-09 16:10:46 +0000
commit189b9a916b845c90db5e51f62496a13f60936d36 (patch)
treee9227d9f63eea070317afffd41cbcdfed018753f /openembedded/classes
parent8d41bd1c8f4c36ed9c1c73e0586031af8a0f292c (diff)
downloadopenembedded-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.bbclass13
-rw-r--r--openembedded/classes/cross.bbclass1
-rw-r--r--openembedded/classes/e.bbclass37
-rw-r--r--openembedded/classes/efl.bbclass40
-rw-r--r--openembedded/classes/kernel.bbclass6
-rw-r--r--openembedded/classes/native.bbclass1
-rw-r--r--openembedded/classes/opie.bbclass3
-rw-r--r--openembedded/classes/package.bbclass8
-rw-r--r--openembedded/classes/palmtop.bbclass20
-rw-r--r--openembedded/classes/qmake-base.bbclass2
-rw-r--r--openembedded/classes/qmake.bbclass6
-rw-r--r--openembedded/classes/qt4x11.bbclass7
-rw-r--r--openembedded/classes/sanity.bbclass68
-rw-r--r--openembedded/classes/sdl.bbclass61
-rw-r--r--openembedded/classes/sip.bbclass9
-rw-r--r--openembedded/classes/srec.bbclass2
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.