Package: ogre Version: 1.0.0-4 Severity: serious Tags: patch When building 'ogre' in a clean 'unstable' chroot, I get the following error:
In file included from ../../OgreMain/include/OgrePrerequisites.h:88, from ../../OgreMain/include/OgreAnimation.h:29, from OgreAnimation.cpp:26: ../../OgreMain/include/OgreStdHeaders.h:30:23: error: hash_set: No such file or directory ../../OgreMain/include/OgreStdHeaders.h:31:23: error: hash_map: No such file or directory ../../OgreMain/include/OgreString.h:64: error: expected initializer before '<' token ../../OgreMain/include/OgreString.h:172: error: expected initializer before '<' token ../../OgreMain/include/OgreNode.h:64: error: ISO C++ forbids declaration of 'hash_map' with no type ../../OgreMain/include/OgreNode.h:64: error: typedef name may not be a nested-name-specifier ../../OgreMain/include/OgreNode.h:64: error: expected ';' before '<' token ../../OgreMain/include/OgreNode.h:65: error: 'ChildNodeMap' was not declared in this scope ../../OgreMain/include/OgreNode.h:65: error: template argument 1 is invalid ../../OgreMain/include/OgreNode.h:71: error: 'ChildNodeMap' does not name a type make[3]: *** [OgreAnimation.lo] Error 1 make[3]: Leaving directory `/ogre-1.0.0/build-tree/ogre-free/OgreMain/src' The attached patch fixes this by always defining GCC_3_1 and EXT_HASH for gcc version >= 3. It also fixes some 'cast from pointer to int loses precision' errors which occur in OgreSerializer.cpp when compiling on 64 bit platform with gcc4. Additionally, the patch adds the missing Build-Depends on 'libxerces26-dev' and 'libcegui-mk2-dev' to debian/control. Regards Andreas Jochens diff -urN ../tmp-orig/ogre-1.0.0/debian/control ./debian/control --- ../tmp-orig/ogre-1.0.0/debian/control 2005-04-12 15:31:25.707685308 +0200 +++ ./debian/control 2005-04-12 15:01:28.753252140 +0200 @@ -2,7 +2,7 @@ Priority: optional Section: libs Maintainer: Federico Di Gregorio <[EMAIL PROTECTED]> -Build-Depends: dbs, debhelper (>> 4.0.0), libdevil-dev, libfreetype6-dev, libjpeg62-dev, liblcms1-dev, libmng-dev, libpng-dev, libtiff-dev, zlib1g-dev, libopenexr-dev, xlibs-dev, doxygen, texi2html, libtool, automake1.9, autoconf, pkg-config, libxaw7-dev, libsdl1.2-dev, libzzip-dev +Build-Depends: dbs, debhelper, libcegui-mk2-dev, libxerces26-dev, libdevil-dev, libfreetype6-dev, libjpeg62-dev, liblcms1-dev, libmng-dev, libpng-dev, libtiff-dev, zlib1g-dev, libopenexr-dev, xlibs-dev, doxygen, texi2html, libtool, automake1.9, autoconf, pkg-config, libxaw7-dev, libsdl1.2-dev, libzzip-dev Standards-Version: 3.6.1.0 Package: libogre5 diff -urN ../tmp-orig/ogre-1.0.0/debian/patches/gcc4_fix.diff ./debian/patches/gcc4_fix.diff --- ../tmp-orig/ogre-1.0.0/debian/patches/gcc4_fix.diff 1970-01-01 01:00:00.000000000 +0100 +++ ./debian/patches/gcc4_fix.diff 2005-04-12 15:18:38.361736670 +0200 @@ -0,0 +1,41 @@ +diff -urN tmp/OgreMain/include/OgrePlatform.h ogre-free/OgreMain/include/OgrePlatform.h +--- tmp/OgreMain/include/OgrePlatform.h 2005-04-12 13:03:15.670449105 +0000 ++++ ogre-free/OgreMain/include/OgrePlatform.h 2005-04-12 13:09:24.565540326 +0000 +@@ -51,6 +51,11 @@ + # define OGRE_COMPILER OGRE_COMPILER_GNUC + # define OGRE_COMP_VER (((__GNUC__)*100)+__GNUC_MINOR__) + ++# if __GNUC__ >= 3 ++# define GCC_3_1 ++# define EXT_HASH ++# endif ++ + #elif defined( __BORLANDC__ ) + # define OGRE_COMPILER OGRE_COMPILER_BORL + # define OGRE_COMP_VER __BCPLUSPLUS__ +diff -urN tmp/OgreMain/src/OgreSerializer.cpp ogre-free/OgreMain/src/OgreSerializer.cpp +--- tmp/OgreMain/src/OgreSerializer.cpp 2005-02-04 17:50:16.000000000 +0000 ++++ ogre-free/OgreMain/src/OgreSerializer.cpp 2005-04-12 12:13:36.726968986 +0000 +@@ -310,7 +310,7 @@ + { + for(unsigned int index = 0; index < count; index++) + { +- flipEndian((void *)((int)pData + (index * size)), size); ++ flipEndian((void *)((long)pData + (index * size)), size); + } + } + +@@ -319,9 +319,9 @@ + char swapByte; + for(unsigned int byteIndex = 0; byteIndex < size/2; byteIndex++) + { +- swapByte = *(char *)((int)pData + byteIndex); +- *(char *)((int)pData + byteIndex) = *(char *)((int)pData + size - byteIndex - 1); +- *(char *)((int)pData + size - byteIndex - 1) = swapByte; ++ swapByte = *(char *)((long)pData + byteIndex); ++ *(char *)((long)pData + byteIndex) = *(char *)((long)pData + size - byteIndex - 1); ++ *(char *)((long)pData + size - byteIndex - 1) = swapByte; + } + } + + -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]