diff options
-rw-r--r-- | classes/packagehistory.bbclass | 102 | ||||
-rw-r--r-- | conf/checksums.ini | 8 | ||||
-rw-r--r-- | conf/distro/include/angstrom-glibc.inc | 8 | ||||
-rw-r--r-- | conf/distro/include/angstrom.inc | 2 | ||||
-rw-r--r-- | recipes/musicpd/mpd_0.15.bb | 45 | ||||
-rwxr-xr-x | recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr | 54 | ||||
-rw-r--r-- | recipes/powervr-drivers/libgles-omap3.inc | 14 | ||||
-rw-r--r-- | recipes/powervr-drivers/libgles-omap3_3.00.00.08.bb | 1 | ||||
-rw-r--r-- | recipes/powervr-drivers/libgles-omap3_3.00.00.09.bb | 26 | ||||
-rw-r--r-- | recipes/qt4/qt4-embedded-gles_4.5.2.bb | 16 | ||||
-rw-r--r-- | recipes/qt4/qt4-embedded.inc | 2 | ||||
-rw-r--r-- | recipes/qt4/qt4.inc | 17 |
12 files changed, 269 insertions, 26 deletions
diff --git a/classes/packagehistory.bbclass b/classes/packagehistory.bbclass new file mode 100644 index 0000000000..fdc47cb9b4 --- /dev/null +++ b/classes/packagehistory.bbclass @@ -0,0 +1,102 @@ +# Must inherit package first before changing PACKAGEFUNCS +inherit package +PACKAGEFUNCS += "emit_pkghistory" + +PKGHIST_DIR = "${TMPDIR}/pkghistory/" + + +# +# Called during do_package to write out metadata about this package +# for comparision when writing future packages +# +python emit_pkghistory() { + packages = bb.data.getVar('PACKAGES', d, True) + pkghistdir = bb.data.getVar('PKGHIST_DIR', d, True) + + + # Should check PACKAGES here to see if anything removed + + def getpkgvar(pkg, var): + val = bb.data.getVar('%s_%s' % (var, pkg), d, 1) + if val: + return val + val = bb.data.getVar('%s' % (var), d, 1) + + return val + + def getlastversion(pkg): + try: + pe = os.path.basename(os.readlink(os.path.join(pkghistdir, pkg, "latest"))) + pv = os.path.basename(os.readlink(os.path.join(pkghistdir, pkg, pe, "latest"))) + pr = os.path.basename(os.readlink(os.path.join(pkghistdir, pkg, pe, pv, "latest"))) + return (pe, pv, pr) + except OSError: + return (None, None, None) + + for pkg in packages.split(): + pe = getpkgvar(pkg, 'PE') or "0" + pv = getpkgvar(pkg, 'PV') + pr = getpkgvar(pkg, 'PR') + destdir = os.path.join(pkghistdir, pkg, pe, pv, pr) + + # + # Find out what the last version was + # Make sure the version did not decrease + # + lastversion = getlastversion(pkg) + (last_pe, last_pv, last_pr) = lastversion + + if last_pe is not None: + r = bb.utils.vercmp((pe, pv, pr), lastversion) + if r < 0: + bb.fatal("Package version for package %s went backwards which would break package feeds from (%s:%s-%s to %s:%s-%s)" % (pkg, last_pe, last_pv, last_pr, pe, pv, pr)) + + write_pkghistory(pkg, pe, pv, pr, d) + + if last_pe is not None: + check_pkghistory(pkg, pe, pv, pr, lastversion) + + write_latestlink(pkg, pe, pv, pr, d) +} + + +def check_pkghistory(pkg, pe, pv, pr, lastversion): + import bb + + (last_pe, last_pv, last_pr) = lastversion + + bb.debug(2, "Checking package history") + # RDEPENDS removed? + # PKG changed? + # Each file list of each package for file removals? + + +def write_pkghistory(pkg, pe, pv, pr, d): + import bb, os + bb.debug(2, "Writing package history") + + pkghistdir = bb.data.getVar('PKGHIST_DIR', d, True) + + verpath = os.path.join(pkghistdir, pkg, pe, pv, pr) + if not os.path.exists(verpath): + os.makedirs(verpath) + +def write_latestlink(pkg, pe, pv, pr, d): + import bb, os + + pkghistdir = bb.data.getVar('PKGHIST_DIR', d, True) + + def rm_link(path): + try: + os.unlink(path) + except OSError: + return + + rm_link(os.path.join(pkghistdir, pkg, "latest")) + rm_link(os.path.join(pkghistdir, pkg, pe, "latest")) + rm_link(os.path.join(pkghistdir, pkg, pe, pv, "latest")) + + os.symlink(os.path.join(pkghistdir, pkg, pe), os.path.join(pkghistdir, pkg, "latest")) + os.symlink(os.path.join(pkghistdir, pkg, pe, pv), os.path.join(pkghistdir, pkg, pe, "latest")) + os.symlink(os.path.join(pkghistdir, pkg, pe, pv, pr), os.path.join(pkghistdir, pkg, pe, pv, "latest")) + diff --git a/conf/checksums.ini b/conf/checksums.ini index 1c4ca7ca76..f73911534f 100644 --- a/conf/checksums.ini +++ b/conf/checksums.ini @@ -12902,6 +12902,10 @@ sha256=5fdaf9af5ac4f75c0215d000b82b128fd054a582f81cc4f039a1e7fe69335ebb md5=15de3830b751818a54a42899bd3ae72c sha256=5fdaf9af5ac4f75c0215d000b82b128fd054a582f81cc4f039a1e7fe69335ebb +[http://ftp.gnu.org/gnu/libcdio/libcdio-0.81.tar.gz] +md5=2ad1622b672ccf53a3444a0c55724d38 +sha256=ddeafa5965eaa07f3bd46b0e39b65cba6fa9940d684f7b15bfd615f77eccb51c + [http://libchamplain.pierlux.com/release/0.2.8/libchamplain-0.2.8.tar.gz] md5=fa4a620efa1a1c1036b6701b7d4dafe1 sha256=01e17811a85e93e5158f5d721b9b1b249db44683735a172fa0debd9759d3175c @@ -17202,6 +17206,10 @@ sha256=30e454514ef84f65162182b7cbcd0e46fdda4c99111ac500b5b2df7678ca10fd md5=66817a4b4c05454e6488f6b821f2a6a3 sha256=0b3926a141873f179efc3c3b9d296b65d332dbb898340ac5e5d1dd0c3dd9fb20 +[http://downloads.sourceforge.net/musicpd/mpd-0.15.tar.bz2] +md5=2ed93a60bd703ba46d6794e12cfb5f1d +sha256=38d4c4073e81585c0f0b1a3b4909f7fecd0305de90f373a9a1c087090e6ddc20 + [http://libmpeg2.sourceforge.net/files/mpeg2dec-0.4.0b.tar.gz] md5=52d10ea80595ec83d8557ba7ac6dc8e6 sha256=9416376952812e5b479745d67a2bf874fbcad10137517314ce7de37abb756df8 diff --git a/conf/distro/include/angstrom-glibc.inc b/conf/distro/include/angstrom-glibc.inc index 1f0967a42e..287bd9bd77 100644 --- a/conf/distro/include/angstrom-glibc.inc +++ b/conf/distro/include/angstrom-glibc.inc @@ -17,11 +17,9 @@ FULL_OPTIMIZATION_pn-glibc = "-fexpensive-optimizations -fomit-frame-pointer -O2 FULL_OPTIMIZATION_sparc = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2" FULL_OPTIMIZATION_ep9312 = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O -fno-signed-zeros" -BUILD_OPTIMIZATION = "-O2 -ggdb3" -BUILD_OPTIMIZATION_pn-perl = "-O1" -BUILD_OPTIMIZATION_pn-glibc = "-O2" -BUILD_OPTIMIZATION_sparc = "-O2" -BUILD_OPTIMIZATION_ep9312 = "-O" +# This is only used for -native packages +BUILD_OPTIMIZATION = "-O2 -g" +BUILD_OPTIMIZATION_pn-perl-native = "-O1 -g" TARGET_LINK_HASH_STYLE = "${@['-Wl,--hash-style=gnu',''][bb.data.getVar('TARGET_ARCH',d,1) in ['mips', 'mipsel']]}" diff --git a/conf/distro/include/angstrom.inc b/conf/distro/include/angstrom.inc index 525f949331..b56e3da132 100644 --- a/conf/distro/include/angstrom.inc +++ b/conf/distro/include/angstrom.inc @@ -77,7 +77,7 @@ INHERIT += "devshell" INHERIT += "angstrom-mirrors" #run QA tests on builds and packages and log them -INHERIT += "insane" +INHERIT += "insane packagehistory" QA_LOG = "1" #run QA tests on recipes diff --git a/recipes/musicpd/mpd_0.15.bb b/recipes/musicpd/mpd_0.15.bb new file mode 100644 index 0000000000..8a8573fab9 --- /dev/null +++ b/recipes/musicpd/mpd_0.15.bb @@ -0,0 +1,45 @@ +DESCRIPTION = "Music Player Daemon (mpd)" +HOMEPAGE = "http://www.musicpd.org" +SECTION = "console/multimedia" +LICENSE = "GPLv2" +DEPENDS = "libvorbis libogg libao zlib libmikmod flac audiofile virtual/libiconv faad2 pulseaudio \ + ${@base_conditional('ENTERPRISE_DISTRO', '1', '', 'libmad libid3tag lame', d)}" + +SRC_URI = "${SOURCEFORGE_MIRROR}/musicpd/mpd-${PV}.tar.bz2 \ + file://mpd/mpd.conf \ + file://mpd/mpd.init" + +inherit autotools update-rc.d +INITSCRIPT_NAME = "mpd" + +# Setting --enable-mpd-{mad,id3tag} causes local caches of the libraries to +# be built, instead we use the OE built versions which should be installed +# in staging - remove the --with and replace with --enable to use the local +# versions. + +EXTRA_OECONF = "\ + --enable-ogg \ + --with-id3tag-libraries=${STAGING_LIBDIR} \ + --with-id3tag-includes=${STAGING_INCDIR} \ + --with-mad-libraries=${STAGING_LIBDIR} \ + --with-mad-includes=${STAGING_INCDIR} \ + --with-faad-libraries=${STAGING_LIBDIR} \ + --with-faad-includes=${STAGING_INCDIR} \ + --disable-curl \ + --disable-ffmpeg \ + --disable-jack \ + --enable-pulse \ + --enable-mod \ + --disable-oggflac \ + --with-lame-includes=${STAGING_INCDIR}" + +do_compile_prepend() { + find -name Makefile | xargs sed -i 's~-I/usr/include~-I${STAGING_INCDIR}~g' +} + +do_install_append() { + install -d ${D}${sysconfdir}/init.d + install -m 755 ${WORKDIR}/mpd/mpd.init ${D}${sysconfdir}/init.d/mpd + install -m 644 ${WORKDIR}/mpd/mpd.conf ${D}${sysconfdir}/mpd.conf +} + diff --git a/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr b/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr new file mode 100755 index 0000000000..69c9f81c1c --- /dev/null +++ b/recipes/powervr-drivers/libgles-omap3-3.00.00.09/rc.pvr @@ -0,0 +1,54 @@ +#!/bin/sh + +if [ "$1" = "" ]; then + echo PVR-INIT: Please use start, stop, or restart. + exit 1 +fi + +if [ "$1" = "stop" -o "$1" = "restart" ]; then + echo Stopping PVR + #rmmod bc_example + rmmod omaplfb 2>/dev/null + rmmod pvrsrvkm 2>/dev/null +fi + +if [ "$1" = "stop" ]; then + exit 0 +fi + +echo Starting PVR +insmod $(busybox find /lib/modules/$(uname -r) -name "pvrsrvkm.ko") +#modprobe bc_example +modprobe omaplfb + +pvr_maj=`grep "pvrsrvkm$" /proc/devices | cut -b1,2,3` + +if [ -e /dev/pvrsrvkm ] ; then + rm -f /dev/pvrsrvkm +fi + +mknod /dev/pvrsrvkm c $pvr_maj 0 +chmod 666 /dev/pvrsrvkm + +touch /etc/powervr-esrev + +SAVED_ESREVISION="$(cat /etc/powervr-esrev)" +ES_REVISION="$(cat /proc/cpuinfo | grep "CPU revision" | awk -F: '{print $2}')" + +if [ "${ES_REVISION}" != "${SAVED_ESREVISION}" ] ; then + echo -n "Starting SGX fixup for" + if [ "${ES_REVISION}" = " 3" ] ; then + echo " ES3.x" + cp -a /usr/lib/ES3.0/* /usr/lib + cp -a /usr/bin/ES3.0/* /usr/bin + else + echo "ES 2.x" + cp -a /usr/lib/ES2.0/* /usr/lib + cp -a /usr/bin/ES2.0/* /usr/bin + fi + + echo "${ES_REVISION}" > /etc/powervr-esrev +fi + +/usr/bin/pvrsrvinit + diff --git a/recipes/powervr-drivers/libgles-omap3.inc b/recipes/powervr-drivers/libgles-omap3.inc index 6813b71aab..789632237b 100644 --- a/recipes/powervr-drivers/libgles-omap3.inc +++ b/recipes/powervr-drivers/libgles-omap3.inc @@ -66,15 +66,7 @@ inherit update-rc.d INITSCRIPT_NAME = "pvr-init" INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ." -do_accept_license() { - export HOME="${WORKDIR}" - echo "Y -q -Y -${S}" | ${WORKDIR}/OMAP35x_Graphics_SDK_setuplinux_${SGXPV}.bin --mode console -} - -addtask accept_license after do_unpack before do_configure +require ../dvsdk/ti-dspbios.inc do_compile() { for sofile in $(find ${S} -name "lib*Open*.so") $(find ${S} -name "lib*srv*.so") $(find ${S} -name "lib*gl*.so") $(find ${S} -name "libpvr*.so") $(find ${S} -name "lib*GL*.so"); do @@ -96,7 +88,7 @@ do_install () { cp -pP ${BINLOCATION}/gles1test1 ${D}${bindir}/ cp -pP ${BINLOCATION}/gles1_texture_stream ${D}${bindir}/ cp -pP ${BINLOCATION}/gles2test1 ${D}${bindir}/ - cp -pP ${BINLOCATION}/pvrsrvinit ${D}${bindir}/ + cp -pP ${BINLOCATION}/p[dv]* ${D}${bindir}/ cp -pP ${BINLOCATION}/xgles1test1 ${D}${bindir}/ cp -pP ${BINLOCATION}/freedesktop/kdrive/usr/X11R6_SGX/bin/Xsgx ${D}${bindir}/|| true @@ -106,6 +98,7 @@ do_install () { cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/Include/* ${D}${includedir}/ cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/LinuxOMAP3/Include/GLES/* ${D}${includedir}/GLES/ cp -pPr ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/LinuxOMAP3/Include/GLES/* ${D}${includedir}/GLES2/ + cp -PPr ${S}/include/*.h ${D}${includedir} || true install -d ${D}${sysconfdir}/init.d/ cp -pP ${WORKDIR}/rc.pvr ${D}${sysconfdir}/init.d/pvr-init @@ -134,6 +127,7 @@ do_stage () { cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/Include/* ${STAGING_INCDIR}/ cp -pPR ${S}/GFX_Linux_SDK/OGLES/SDKPackage/Builds/OGLES/LinuxOMAP3/Include/GLES/* ${STAGING_INCDIR}/GLES/ cp -pPr ${S}/GFX_Linux_SDK/OGLES2/SDKPackage/Builds/OGLES2/LinuxOMAP3/Include/GLES/* ${STAGING_INCDIR}/GLES2/ + cp -PPr ${S}/include/*.h ${STAGING_INCDIR} || true } pkg_postinst() { diff --git a/recipes/powervr-drivers/libgles-omap3_3.00.00.08.bb b/recipes/powervr-drivers/libgles-omap3_3.00.00.08.bb index a5c0d99143..2256c5b032 100644 --- a/recipes/powervr-drivers/libgles-omap3_3.00.00.08.bb +++ b/recipes/powervr-drivers/libgles-omap3_3.00.00.08.bb @@ -4,6 +4,7 @@ DEFAULT_PREFERENCE = "1" SGXPV = "3_00_00_08" IMGPV = "1.3.13.1607" +BINFILE := "OMAP35x_Graphics_SDK_setuplinux_${SGXPV}.bin" # Quality control is really poor on these SDKs, so hack around the latest madness: FILES_${PN} += "${libdir}/*.so" diff --git a/recipes/powervr-drivers/libgles-omap3_3.00.00.09.bb b/recipes/powervr-drivers/libgles-omap3_3.00.00.09.bb new file mode 100644 index 0000000000..6a04e8359b --- /dev/null +++ b/recipes/powervr-drivers/libgles-omap3_3.00.00.09.bb @@ -0,0 +1,26 @@ +require libgles-omap3.inc + +DEFAULT_PREFERENCE = "-1" + +SGXPV = "3_00_00_09" +IMGPV = "1.3.13.1832" +BINFILE := "OMAP35x_Graphics_SDK_setuplinux_${SGXPV}.bin" + +# The ES2.x and ES3.x CPUs have different SGX hardware, so we need to install 2 sets of userspace +do_install_append() { + install -d ${D}${libdir}/ES3.0 + install -d ${D}${libdir}/ES2.0 + install -d ${D}${bindir}/ES3.0 + install -d ${D}${bindir}/ES2.0 + + cp ${S}/gfx_rel_es2.x/lib* ${D}${libdir}/ES2.0/ + cp ${S}/gfx_rel_es2.x/p[dv]* ${D}${bindir}/ES2.0/ + + cp ${D}${libdir}/lib*${IMGPV} ${D}${libdir}/ES3.0/ + cp ${D}${bindir}/p[dv]* ${D}${bindir}/ES3.0 +} + +# Quality control is really poor on these SDKs, so hack around the latest madness: +FILES_${PN} += "${libdir}/*.so" +FILES_${PN}-dev = "${includedir}" + diff --git a/recipes/qt4/qt4-embedded-gles_4.5.2.bb b/recipes/qt4/qt4-embedded-gles_4.5.2.bb index 4e207c1863..31bfe0fee2 100644 --- a/recipes/qt4/qt4-embedded-gles_4.5.2.bb +++ b/recipes/qt4/qt4-embedded-gles_4.5.2.bb @@ -11,16 +11,14 @@ SRC_URI += "file://sgx-hack.patch;patch=1" export EXTRA_QMAKE_MUNGE = " glmunge " -CXXFLAGS_append = " -I${S}/src/3rdparty/powervr/" -CFLAGS_append = " -I${S}/src/3rdparty/powervr/" - - glmunge() { -sed -e /QMAKE_INCDIR_OPENGL/d -e /QMAKE_LIBDIR_OPENGL/d -e /QMAKE_LIBS_OPENGL/d -e /QMAKE_LIBS_OPENGL_QT/d -i mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf -echo "QMAKE_INCDIR_OPENGL = ${STAGING_INCDIR}/GLES/" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf -echo "QMAKE_LIBDIR_OPENGL = ${STAGING_LIBDIR}" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf -echo "QMAKE_LIBS_OPENGL = -lEGL -lGLES_CM -lIMGegl -lsrv_um" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf -echo "QMAKE_LIBS_OPENGL_QT = -lEGL -lGLES_CM -lIMGegl -lsrv_um" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf + sed -e /QMAKE_INCDIR_OPENGL/d -e /QMAKE_LIBDIR_OPENGL/d -e /QMAKE_LIBS_OPENGL/d -e /QMAKE_LIBS_OPENGL_QT/d -i mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf + + echo "QMAKE_INCDIR_OPENGL = ${STAGING_INCDIR}/GLES/" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf + echo "QMAKE_LIBDIR_OPENGL = ${STAGING_LIBDIR}" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf + echo "QMAKE_LIBS_OPENGL = -lEGL -lGLES_CM -lIMGegl -lsrv_um" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf + echo "QMAKE_LIBS_OPENGL_QT = -lEGL -lGLES_CM -lIMGegl -lsrv_um" >> mkspecs/${OE_QMAKE_PLATFORM}/qmake.conf + sed -i -e s:MBX_SYNC:HW_SYNC:g ${S}/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c } diff --git a/recipes/qt4/qt4-embedded.inc b/recipes/qt4/qt4-embedded.inc index 4c109e2f60..392ddc30bf 100644 --- a/recipes/qt4/qt4-embedded.inc +++ b/recipes/qt4/qt4-embedded.inc @@ -4,7 +4,7 @@ LICENSE = "GPL QPL" PRIORITY = "optional" HOMEPAGE = "http://www.trolltech.com" DEPENDS += "directfb tslib" -INC_PR = "r13" +INC_PR = "r14" QT_BASE_NAME = "qt4-embedded" QT_BASE_LIB = "libqt-embedded" diff --git a/recipes/qt4/qt4.inc b/recipes/qt4/qt4.inc index 42e2726e5a..9d82a1bc0c 100644 --- a/recipes/qt4/qt4.inc +++ b/recipes/qt4/qt4.inc @@ -24,6 +24,9 @@ export QT_CONF_PATH="${WORKDIR}/qt.conf" # Library packages QT_LIB_NAMES = "Qt3Support QtAssistantClient QtCLucene QtCore QtDBus QtDesigner QtDesignerComponents QtGui QtHelp QtNetwork QtOpenGL QtScript QtScriptTools QtSql QtSvg QtTest QtUiTools QtWebKit QtXml phonon" + +QT_EXTRA_LIBS = "pvrQWSWSEGL" + python __anonymous () { import bb @@ -48,6 +51,20 @@ python __anonymous () { for name in bb.data.getVar("OTHER_PACKAGES", d, 1).split(): dbg_packages.append("%s-dbg" % name) + for name in bb.data.getVar("QT_EXTRA_LIBS", d, 1).split(): + pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "") + "4" + bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s.so.*" % locals(), d) + bb.data.setVar("FILES_%s-dev" % pkg, """${libdir}/lib%(name)s.prl + ${libdir}/lib%(name)s.a + ${libdir}/lib%(name)s.la + ${libdir}/lib%(name)s.so + ${includedir}/${QT_DIR_NAME}/%(incname)s + ${libdir}/pkgconfig/%(name)s.pc""" % locals(), d) + bb.data.setVar("FILES_%s-dbg" % pkg, "${libdir}/.debug/lib%(name)s.so.*" % locals(), d) + lib_packages.append(pkg) + dev_packages.append("%s-dev" % pkg) + dbg_packages.append("%s-dbg" % pkg) + bb.data.setVar("LIB_PACKAGES", " ".join(lib_packages), d) bb.data.setVar("DEV_PACKAGES", " ".join(dev_packages), d) bb.data.setVar("DBG_PACKAGES", " ".join(dbg_packages), d) |