summaryrefslogtreecommitdiff
path: root/recipes/ogre
diff options
context:
space:
mode:
authorDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
committerDenys Dmytriyenko <denis@denix.org>2009-03-17 14:32:59 -0400
commit709c4d66e0b107ca606941b988bad717c0b45d9b (patch)
tree37ee08b1eb308f3b2b6426d5793545c38396b838 /recipes/ogre
parentfa6cd5a3b993f16c27de4ff82b42684516d433ba (diff)
rename packages/ to recipes/ per earlier agreement
See links below for more details: http://thread.gmane.org/gmane.comp.handhelds.openembedded/21326 http://thread.gmane.org/gmane.comp.handhelds.openembedded/21816 Signed-off-by: Denys Dmytriyenko <denis@denix.org> Acked-by: Mike Westerhof <mwester@dls.net> Acked-by: Philip Balister <philip@balister.org> Acked-by: Khem Raj <raj.khem@gmail.com> Acked-by: Marcin Juszkiewicz <hrw@openembedded.org> Acked-by: Koen Kooi <koen@openembedded.org> Acked-by: Frans Meulenbroeks <fransmeulenbroeks@gmail.com>
Diffstat (limited to 'recipes/ogre')
-rw-r--r--recipes/ogre/files/ogre-egl-update.diff165
-rw-r--r--recipes/ogre/freeimage_3.11.0.bb29
-rw-r--r--recipes/ogre/ogre-egl_svn.bb44
-rw-r--r--recipes/ogre/wgois_1.2.0.bb15
4 files changed, 253 insertions, 0 deletions
diff --git a/recipes/ogre/files/ogre-egl-update.diff b/recipes/ogre/files/ogre-egl-update.diff
new file mode 100644
index 0000000000..9173715ee3
--- /dev/null
+++ b/recipes/ogre/files/ogre-egl-update.diff
@@ -0,0 +1,165 @@
+Index: RenderSystems/GLES/include/OgreGLESSupport.h
+===================================================================
+--- RenderSystems/GLES/include/OgreGLESSupport.h (revision 8310)
++++ RenderSystems/GLES/include/OgreGLESSupport.h (working copy)
+@@ -80,6 +80,11 @@
+ virtual void initialiseExtensions();
+ virtual bool checkExtension(const String& ext) const;
+
++ virtual unsigned int getDisplayMonitorCount() const
++ {
++ return 1;
++ }
++
+ virtual void start() = 0;
+ virtual void stop() = 0;
+
+Index: RenderSystems/GLES/include/OgreGLESRenderSystem.h
+===================================================================
+--- RenderSystems/GLES/include/OgreGLESRenderSystem.h (revision 8310)
++++ RenderSystems/GLES/include/OgreGLESRenderSystem.h (working copy)
+@@ -139,9 +139,11 @@
+ void _setTextureBorderColour(size_t stage, const ColourValue& colour);
+ void _setTextureMipmapBias(size_t unit, float bias);
+ void _setTextureMatrix(size_t stage, const Matrix4& xform);
+- void _setSceneBlending(SceneBlendFactor sourceFactor, SceneBlendFactor destFactor);
+- void _setSeparateSceneBlending(SceneBlendFactor sourceFactor, SceneBlendFactor destFactor, SceneBlendFactor sourceFactorAlpha, SceneBlendFactor destFactorAlpha);
+- void _setAlphaRejectSettings(CompareFunction func, unsigned char value);
++ void _setSceneBlending(SceneBlendFactor sourceFactor, SceneBlendFactor destFactor, SceneBlendOperation op );
++ void _setSeparateSceneBlending(SceneBlendFactor sourceFactor, SceneBlendFactor destFactor, SceneBlendFactor sourceFactorAlpha, SceneBlendFactor destFactorAlpha, SceneBlendOperation op, SceneBlendOperation alphaOp );
++ void _setSceneBlendingOperation(SceneBlendOperation op);
++ void _setSeparateSceneBlendingOperation(SceneBlendOperation op, SceneBlendOperation alphaOp);
++ void _setAlphaRejectSettings(CompareFunction func, unsigned char value, bool alphaToCoverage);
+ void _setViewport(Viewport *vp);
+ void _beginFrame(void);
+ void _endFrame(void);
+@@ -195,6 +197,7 @@
+
+ GLESContext* _getMainContext() { return mMainContext; }
+ void _unregisterContext(GLESContext *context);
++ unsigned int getDisplayMonitorCount() const;
+ void _switchContext(GLESContext *context);
+ void _oneTimeContextInitialization();
+ void initialiseContext(RenderWindow* primary);
+Index: RenderSystems/GLES/include/OgreGLESDefaultHardwareBufferManager.h
+===================================================================
+--- RenderSystems/GLES/include/OgreGLESDefaultHardwareBufferManager.h (revision 8310)
++++ RenderSystems/GLES/include/OgreGLESDefaultHardwareBufferManager.h (working copy)
+@@ -110,6 +110,8 @@
+ HardwareIndexBufferSharedPtr
+ createIndexBuffer(HardwareIndexBuffer::IndexType itype, size_t numIndexes,
+ HardwareBuffer::Usage usage, bool useShadowBuffer = false);
++ // Create a render to vertex buffer
++ RenderToVertexBufferSharedPtr createRenderToVertexBuffer();
+ };
+ }
+
+Index: RenderSystems/GLES/src/OgreGLESRenderSystem.cpp
+===================================================================
+--- RenderSystems/GLES/src/OgreGLESRenderSystem.cpp (revision 8310)
++++ RenderSystems/GLES/src/OgreGLESRenderSystem.cpp (working copy)
+@@ -1182,7 +1182,8 @@
+ return GL_ONE;
+ }
+
+- void GLESRenderSystem::_setSceneBlending(SceneBlendFactor sourceFactor, SceneBlendFactor destFactor)
++
++ void GLESRenderSystem::_setSceneBlending(SceneBlendFactor sourceFactor, SceneBlendFactor destFactor, SceneBlendOperation op )
+ {
+ GLint sourceBlend = getBlendMode(sourceFactor);
+ GLint destBlend = getBlendMode(destFactor);
+@@ -1199,17 +1200,19 @@
+ GL_CHECK_ERROR;
+ }
+ }
+-
+- void GLESRenderSystem::_setSeparateSceneBlending(SceneBlendFactor sourceFactor,
+- SceneBlendFactor destFactor,
+- SceneBlendFactor sourceFactorAlpha,
+- SceneBlendFactor destFactorAlpha)
++
++ void GLESRenderSystem::_setSeparateSceneBlending(
++ SceneBlendFactor sourceFactor, SceneBlendFactor destFactor,
++ SceneBlendFactor sourceFactorAlpha, SceneBlendFactor destFactorAlpha,
++ SceneBlendOperation op, SceneBlendOperation alphaOp )
+ {
+ // Not supported
+ }
+
+- void GLESRenderSystem::_setAlphaRejectSettings(CompareFunction func, unsigned char value)
++ void GLESRenderSystem::_setAlphaRejectSettings(CompareFunction func, unsigned char value, bool alphaToCoverage)
+ {
++ bool a2c = false;
++ static bool lasta2c = false;
+ if (func == CMPF_ALWAYS_PASS)
+ {
+ glDisable(GL_ALPHA_TEST);
+@@ -1222,6 +1225,15 @@
+ glAlphaFunc(convertCompareFunction(func), value / 255.0f);
+ GL_CHECK_ERROR;
+ }
++ if (a2c != lasta2c && getCapabilities()->hasCapability(RSC_ALPHA_TO_COVERAGE))
++ {
++ if (a2c)
++ glEnable(GL_SAMPLE_ALPHA_TO_COVERAGE);
++ else
++ glDisable(GL_SAMPLE_ALPHA_TO_COVERAGE);
++
++ lasta2c = a2c;
++ }
+ }
+
+ void GLESRenderSystem::_setViewport(Viewport *vp)
+@@ -2084,7 +2096,12 @@
+ {
+ // Not implemented
+ }
+-
++
++ unsigned int GLESRenderSystem::getDisplayMonitorCount() const
++ {
++ return mGLSupport->getDisplayMonitorCount();
++ }
++
+ void GLESRenderSystem::setClipPlanesImpl(const Ogre::PlaneList& clipPlanes)
+ {
+ // A note on GL user clipping:
+Index: RenderSystems/GLES/src/OgreGLESDefaultHardwareBufferManager.cpp
+===================================================================
+--- RenderSystems/GLES/src/OgreGLESDefaultHardwareBufferManager.cpp (revision 8310)
++++ RenderSystems/GLES/src/OgreGLESDefaultHardwareBufferManager.cpp (working copy)
+@@ -164,4 +164,12 @@
+ return HardwareIndexBufferSharedPtr(
+ new GLESDefaultHardwareIndexBuffer(itype, numIndexes, usage));
+ }
++
++ RenderToVertexBufferSharedPtr
++ GLESDefaultHardwareBufferManager::createRenderToVertexBuffer()
++ {
++ OGRE_EXCEPT(Exception::ERR_RENDERINGAPI_ERROR,
++ "Cannot create RenderToVertexBuffer in GLESDefaultHardwareBufferManager",
++ "GLESDefaultHardwareBufferManager::createRenderToVertexBuffer");
++ }
+ }
+Index: RenderSystems/GLES/src/EGL/OgreEGLWindow.cpp
+===================================================================
+--- RenderSystems/GLES/src/EGL/OgreEGLWindow.cpp (revision 8310)
++++ RenderSystems/GLES/src/EGL/OgreEGLWindow.cpp (working copy)
+@@ -182,7 +182,7 @@
+
+ if ((opt = miscParams->find("parentWindowHandle")) != end)
+ {
+- std::vector<String> tokens = StringUtil::split(opt->second, " :");
++ StringVector tokens = StringUtil::split(opt->second, " :");
+
+ if (tokens.size() == 3)
+ {
+@@ -197,7 +197,7 @@
+ }
+ else if ((opt = miscParams->find("externalWindowHandle")) != end)
+ {
+- std::vector<String> tokens = StringUtil::split(opt->second, " :");
++ StringVector tokens = StringUtil::split(opt->second, " :");
+
+ LogManager::getSingleton().logMessage(
+ "EGLWindow::create: The externalWindowHandle parameter is deprecated.\n"
diff --git a/recipes/ogre/freeimage_3.11.0.bb b/recipes/ogre/freeimage_3.11.0.bb
new file mode 100644
index 0000000000..8281aaf371
--- /dev/null
+++ b/recipes/ogre/freeimage_3.11.0.bb
@@ -0,0 +1,29 @@
+LICENSE = "MIT"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/freeimage/FreeImage3110.zip"
+
+S = "${WORKDIR}/FreeImage/"
+
+do_configure() {
+ sed -i -e /^CC/d \
+ -e /^CXX\ /d \
+ -e /^AR/d \
+ -e /^INCDIR\ /d \
+ -e /^INSTALLDIR\ /d \
+ -e s:'-o root -g root'::g \
+ -e /ldconfig/d \
+ ${S}/Makefile.gnu
+}
+
+do_install() {
+ install -d ${D}${libdir}
+ install -d ${D}${includedir}
+ oe_runmake INSTALLDIR="${D}${libdir}" INCDIR="${D}${includedir}" install
+}
+
+do_stage() {
+ install -d ${STAGING_LIBDIR}
+ install -d ${STAGING_INCDIR}
+ oe_runmake INSTALLDIR="${STAGING_LIBDIR}" INCDIR="${STAGING_INCDIR}" install
+}
+
diff --git a/recipes/ogre/ogre-egl_svn.bb b/recipes/ogre/ogre-egl_svn.bb
new file mode 100644
index 0000000000..9ca9e8f54f
--- /dev/null
+++ b/recipes/ogre/ogre-egl_svn.bb
@@ -0,0 +1,44 @@
+DESCRIPTION = "OGRE (Object-Oriented Graphics Rendering Engine) is a scene-oriented, flexible 3D engine "
+LICENSE = "LGPL"
+DEPENDS = "gtk+ wgois cppunit zziplib boost freeimage freetype virtual/libx11 virtual/egl"
+
+PR = "r3"
+
+SRCREV = "8310"
+PV = "1.6.1+svnr${SRCREV}"
+
+SRC_URI = "svn://ogre.svn.sourceforge.net/svnroot/ogre;module=trunk;proto=https \
+ file://ogre-egl-update.diff;patch=1;pnum=0 \
+ "
+
+inherit autotools_stage
+
+# This is the EGL version
+EXTRA_OECONF = " --with-gui=gtk --disable-freetypetest --enable-ogre-demos --with-allocator=std --enable-threading=no --disable-cg --enable-gles "
+
+S = "${WORKDIR}/trunk"
+
+
+EXTRA_OEMAKE = " ZZIPLIB_CFLAGS=\"${@base_conditional('SITEINFO_ENDIANESS', 'le', '-DOGRE_CONFIG_LITTLE_ENDIAN', '-DOGRE_CONFIG_BIG_ENDIAN', d)}\" "
+
+do_configure_prepend() {
+ sed -i -e /OGRE_DETECT_ENDIAN/d ${S}/configure.in
+}
+
+do_install_append() {
+ install -d ${D}${datadir}/ogre3d/samples
+ mv ${D}${S}/Samples/* ${D}${datadir}/ogre3d/samples/
+ cp ${S}/Samples/Common/bin/Release/*cfg ${D}${datadir}/ogre3d/samples/Common/bin
+
+ install -d ${D}${datadir}/ogre3d/Media
+ cp -r ${S}/Samples/Media/* ${D}${datadir}/ogre3d/Media/
+ find ${D} -name ".svn" | xargs rm -rf
+}
+
+PACKAGES += "${PN}-samples"
+
+FILES_${PN}-samples = "${datadir}/ogre3d/"
+FILES_${PN}-dbg += "${libdir}/OGRE/.debug ${datadir}/ogre3d/samples/*/*/.debug"
+FILES_${PN}-dev += "${libdir}/OGRE/*.la"
+FILES_${PN} += "${libdir}/libOgreMain-*.so ${libdir}/OGRE/*.so"
+
diff --git a/recipes/ogre/wgois_1.2.0.bb b/recipes/ogre/wgois_1.2.0.bb
new file mode 100644
index 0000000000..ff59a3bcae
--- /dev/null
+++ b/recipes/ogre/wgois_1.2.0.bb
@@ -0,0 +1,15 @@
+DESCRIPTION = "Object Oriented Input System (OIS) is meant to be a cross platform, simple solution for using all kinds of Input Devices."
+LICENSE = "zlib"
+DEPENDS = "virtual/libx11"
+
+SRC_URI = "${SOURCEFORGE_MIRROR}/wgois/ois_${PV}.tar.gz"
+
+inherit autotools_stage
+
+S = "${WORKDIR}/ois"
+
+FILES_${PN} += "${libdir}/libOIS-1*.so"
+
+
+
+