diff --git a/qgis-0.9.2rc1_gccfix.diff b/qgis-0.9.2rc1_gccfix.diff new file mode 100644 index 0000000..9723edd --- /dev/null +++ b/qgis-0.9.2rc1_gccfix.diff @@ -0,0 +1,322 @@ +diff -ur qgis-0.9.2rc1/src/app/composer/qgscomposition.cpp qgis-0.9.2rc1_new/src/app/composer/qgscomposition.cpp +--- qgis-0.9.2rc1/src/app/composer/qgscomposition.cpp 2008-02-01 16:52:13.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/app/composer/qgscomposition.cpp 2008-03-05 10:50:55.000000000 +0100 +@@ -33,6 +33,7 @@ + #include + + #include ++#include + #include + + QgsCompositionPaper::QgsCompositionPaper ( QString name, int w, int h, bool c) +diff -ur qgis-0.9.2rc1/src/app/qgsvectorlayerproperties.cpp qgis-0.9.2rc1_new/src/app/qgsvectorlayerproperties.cpp +--- qgis-0.9.2rc1/src/app/qgsvectorlayerproperties.cpp 2008-02-01 16:52:16.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/app/qgsvectorlayerproperties.cpp 2008-03-05 10:39:02.000000000 +0100 +@@ -17,6 +17,7 @@ + ***************************************************************************/ + /* $Id: qgsvectorlayerproperties.cpp 7922 2008-01-10 22:38:05Z timlinux $ */ + ++#include + + #include "qgsattributeactiondialog.h" + #include "qgscontexthelp.h" +diff -ur qgis-0.9.2rc1/src/core/qgsvectordataprovider.cpp qgis-0.9.2rc1_new/src/core/qgsvectordataprovider.cpp +--- qgis-0.9.2rc1/src/core/qgsvectordataprovider.cpp 2008-02-01 16:53:07.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/qgsvectordataprovider.cpp 2008-03-04 18:48:59.000000000 +0100 +@@ -17,6 +17,7 @@ + #include + + #include // for DBL_MAX ++#include + + #include "qgsvectordataprovider.h" + #include "qgsfeature.h" +diff -ur qgis-0.9.2rc1/src/core/qgsvectorlayer.cpp qgis-0.9.2rc1_new/src/core/qgsvectorlayer.cpp +--- qgis-0.9.2rc1/src/core/qgsvectorlayer.cpp 2008-02-01 16:53:07.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/qgsvectorlayer.cpp 2008-03-04 18:59:14.000000000 +0100 +@@ -28,6 +28,7 @@ + #include + #include + #include ++#include + #include + #include + #include +diff -ur qgis-0.9.2rc1/src/core/spatialindex/geometry/LineSegment.cc qgis-0.9.2rc1_new/src/core/spatialindex/geometry/LineSegment.cc +--- qgis-0.9.2rc1/src/core/spatialindex/geometry/LineSegment.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/geometry/LineSegment.cc 2008-03-04 19:29:37.000000000 +0100 +@@ -19,7 +19,9 @@ + // Email: + // mhadji@gmail.com + ++#include + #include ++#include + + Tools::Geometry::LineSegment::LineSegment() + : m_dimension(0), m_pStartPoint(0), m_pEndPoint(0) +diff -ur qgis-0.9.2rc1/src/core/spatialindex/geometry/Point.cc qgis-0.9.2rc1_new/src/core/spatialindex/geometry/Point.cc +--- qgis-0.9.2rc1/src/core/spatialindex/geometry/Point.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/geometry/Point.cc 2008-03-04 19:34:50.000000000 +0100 +@@ -20,6 +20,8 @@ + // mhadji@gmail.com + + #include ++#include ++#include + + Tools::Geometry::Point::Point() + : m_dimension(0), m_pCoords(0) +diff -ur qgis-0.9.2rc1/src/core/spatialindex/geometry/Region.cc qgis-0.9.2rc1_new/src/core/spatialindex/geometry/Region.cc +--- qgis-0.9.2rc1/src/core/spatialindex/geometry/Region.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/geometry/Region.cc 2008-03-05 08:06:32.000000000 +0100 +@@ -18,6 +18,8 @@ + // mhadji@gmail.com + + #include ++#include ++#include + + Tools::Geometry::Region::Region() + : m_dimension(0), m_pLow(0), m_pHigh(0) +diff -ur qgis-0.9.2rc1/src/core/spatialindex/include/RTree.h qgis-0.9.2rc1_new/src/core/spatialindex/include/RTree.h +--- qgis-0.9.2rc1/src/core/spatialindex/include/RTree.h 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/include/RTree.h 2008-03-04 19:08:17.000000000 +0100 +@@ -70,13 +70,7 @@ + unsigned long m_dataLength; + }; // Data + +-#ifdef _MSC_VER +- // MSVC didn't like the difference in parameter names between declaration +- // definition + extern ISpatialIndex* returnRTree(IStorageManager& sm, Tools::PropertySet& ps); +-#else +- extern ISpatialIndex* returnRTree(IStorageManager& in, Tools::PropertySet& in); +-#endif//_MSC_VER + extern ISpatialIndex* createNewRTree( + IStorageManager& sm, + double fillFactor, +diff -ur qgis-0.9.2rc1/src/core/spatialindex/include/SpatialIndex.h qgis-0.9.2rc1_new/src/core/spatialindex/include/SpatialIndex.h +--- qgis-0.9.2rc1/src/core/spatialindex/include/SpatialIndex.h 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/include/SpatialIndex.h 2008-03-05 08:28:16.000000000 +0100 +@@ -38,10 +38,6 @@ + + using namespace Tools::Geometry; + +-# if !HAVE_BZERO +-# define bzero(d, n) memset((d), 0, (n)) +-# endif +- + namespace SpatialIndex + { + //const std::string VERSION; +@@ -183,13 +179,7 @@ + extern IStorageManager* createNewDiskStorageManager(std::string& baseName, unsigned long pageSize); + extern IStorageManager* loadDiskStorageManager(std::string& baseName); + +-#ifdef _MSC_VER +- // MSVC didn't like the difference in parameter names between declaration +- // definition + extern IBuffer* returnRandomEvictionsBuffer(IStorageManager& sm, Tools::PropertySet& ps); +-#else +- extern IBuffer* returnRandomEvictionsBuffer(IStorageManager& in, Tools::PropertySet& in); +-#endif//_MSC_VER + extern IBuffer* createNewRandomEvictionsBuffer(IStorageManager& in, unsigned int capacity, bool bWriteThrough); + } + +diff -ur qgis-0.9.2rc1/src/core/spatialindex/rtree/BulkLoader.cc qgis-0.9.2rc1_new/src/core/spatialindex/rtree/BulkLoader.cc +--- qgis-0.9.2rc1/src/core/spatialindex/rtree/BulkLoader.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/rtree/BulkLoader.cc 2008-03-05 09:55:12.000000000 +0100 +@@ -20,6 +20,7 @@ + // mhadji@gmail.com + + #include ++#include + #include + + #include "../spatialindex/SpatialIndexImpl.h" +diff -ur qgis-0.9.2rc1/src/core/spatialindex/rtree/Leaf.cc qgis-0.9.2rc1_new/src/core/spatialindex/rtree/Leaf.cc +--- qgis-0.9.2rc1/src/core/spatialindex/rtree/Leaf.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/rtree/Leaf.cc 2008-03-05 10:03:32.000000000 +0100 +@@ -19,6 +19,8 @@ + // Email: + // mhadji@gmail.com + ++#include ++ + #include "../spatialindex/SpatialIndexImpl.h" + + #include "RTree.h" +@@ -135,7 +137,7 @@ + { + // keep this in the for loop. The tree height might change after insertions. + byte* overflowTable = new byte[m_pTree->m_stats.m_treeHeight]; +- bzero(overflowTable, m_pTree->m_stats.m_treeHeight); ++ memset(overflowTable, 0, m_pTree->m_stats.m_treeHeight); + m_pTree->insertData_impl(n->m_pDataLength[cChild], n->m_pData[cChild], *(n->m_ptrMBR[cChild]), n->m_pIdentifier[cChild], n->m_level, overflowTable); + n->m_pData[cChild] = 0; + delete[] overflowTable; +diff -ur qgis-0.9.2rc1/src/core/spatialindex/rtree/Node.cc qgis-0.9.2rc1_new/src/core/spatialindex/rtree/Node.cc +--- qgis-0.9.2rc1/src/core/spatialindex/rtree/Node.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/rtree/Node.cc 2008-03-05 10:10:36.000000000 +0100 +@@ -19,6 +19,8 @@ + // Email: + // mhadji@gmail.com + ++#include ++ + #include "../spatialindex/SpatialIndexImpl.h" + + #include "RTree.h" +@@ -592,7 +594,7 @@ + + // use this mask array for marking visited entries. + byte* mask = new byte[m_capacity + 1]; +- bzero(mask, m_capacity + 1); ++ memset(mask, 0, m_capacity + 1); + + // insert new data in the node for easier manipulation. Data arrays are always + // by one larger than node capacity. +diff -ur qgis-0.9.2rc1/src/core/spatialindex/rtree/RTree.cc qgis-0.9.2rc1_new/src/core/spatialindex/rtree/RTree.cc +--- qgis-0.9.2rc1/src/core/spatialindex/rtree/RTree.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/rtree/RTree.cc 2008-03-05 10:22:54.000000000 +0100 +@@ -19,6 +19,8 @@ + // Email: + // mhadji@gmail.com + ++#include ++ + #include "../spatialindex/SpatialIndexImpl.h" + + #include "Node.h" +@@ -1097,7 +1099,7 @@ + NodePtr root = readNode(m_rootID); + + overflowTable = new byte[root->m_level]; +- bzero(overflowTable, root->m_level); ++ memset(overflowTable, 0, root->m_level); + + NodePtr l = root->chooseSubtree(mbr, 0, pathBuffer); + if (l.get() == root.get()) +diff -ur qgis-0.9.2rc1/src/core/spatialindex/storagemanager/Buffer.h qgis-0.9.2rc1_new/src/core/spatialindex/storagemanager/Buffer.h +--- qgis-0.9.2rc1/src/core/spatialindex/storagemanager/Buffer.h 2008-02-01 16:53:04.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/storagemanager/Buffer.h 2008-03-05 08:15:05.000000000 +0100 +@@ -22,6 +22,8 @@ + #ifndef __storagemanager_buffer_h + #define __storagemanager_buffer_h + ++#include ++ + namespace SpatialIndex + { + namespace StorageManager +diff -ur qgis-0.9.2rc1/src/core/spatialindex/storagemanager/DiskStorageManager.cc qgis-0.9.2rc1_new/src/core/spatialindex/storagemanager/DiskStorageManager.cc +--- qgis-0.9.2rc1/src/core/spatialindex/storagemanager/DiskStorageManager.cc 2008-02-01 16:53:04.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/storagemanager/DiskStorageManager.cc 2008-03-05 08:40:57.000000000 +0100 +@@ -23,6 +23,7 @@ + + #include + #include ++#include + #include + #include + #include +@@ -194,7 +195,7 @@ + + // create buffer. + m_buffer = new byte[m_pageSize]; +- bzero(m_buffer, m_pageSize); ++ memset(m_buffer, 0, m_pageSize); + + if (bOverwrite == false) + { +diff -ur qgis-0.9.2rc1/src/core/spatialindex/storagemanager/MemoryStorageManager.cc qgis-0.9.2rc1_new/src/core/spatialindex/storagemanager/MemoryStorageManager.cc +--- qgis-0.9.2rc1/src/core/spatialindex/storagemanager/MemoryStorageManager.cc 2008-02-01 16:53:04.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/storagemanager/MemoryStorageManager.cc 2008-03-05 09:18:19.000000000 +0100 +@@ -20,6 +20,7 @@ + // mhadji@gmail.com + + #include ++#include + + #include "../spatialindex/SpatialIndexImpl.h" + +diff -ur qgis-0.9.2rc1/src/core/spatialindex/tools/Tools.cc qgis-0.9.2rc1_new/src/core/spatialindex/tools/Tools.cc +--- qgis-0.9.2rc1/src/core/spatialindex/tools/Tools.cc 2008-02-01 16:53:05.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/core/spatialindex/tools/Tools.cc 2008-03-04 19:25:14.000000000 +0100 +@@ -19,6 +19,8 @@ + // Email: + // mhadji@gmail.com + ++#include ++#include + #include + #include "ExternalSort.h" + //#include "SHA1.h" +diff -ur qgis-0.9.2rc1/src/plugins/grass/qgsgrassmapcalc.cpp qgis-0.9.2rc1_new/src/plugins/grass/qgsgrassmapcalc.cpp +--- qgis-0.9.2rc1/src/plugins/grass/qgsgrassmapcalc.cpp 2008-02-01 16:52:48.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/plugins/grass/qgsgrassmapcalc.cpp 2008-03-05 14:49:40.000000000 +0100 +@@ -13,6 +13,7 @@ + * * + *************************************************************************/ + #include ++#include + + #include + #include +diff -ur qgis-0.9.2rc1/src/plugins/grass/qgsgrassmodule.cpp qgis-0.9.2rc1_new/src/plugins/grass/qgsgrassmodule.cpp +--- qgis-0.9.2rc1/src/plugins/grass/qgsgrassmodule.cpp 2008-02-01 16:52:48.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/plugins/grass/qgsgrassmodule.cpp 2008-03-05 15:27:06.000000000 +0100 +@@ -13,6 +13,8 @@ + * (at your option) any later version. * + * * + ***************************************************************************/ ++#include ++ + #include + #include + #include +diff -ur qgis-0.9.2rc1/src/providers/gpx/gpsdata.cpp qgis-0.9.2rc1_new/src/providers/gpx/gpsdata.cpp +--- qgis-0.9.2rc1/src/providers/gpx/gpsdata.cpp 2008-02-01 16:53:08.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/providers/gpx/gpsdata.cpp 2008-03-05 14:18:45.000000000 +0100 +@@ -16,6 +16,7 @@ + ***************************************************************************/ + + #include ++#include + #include + + #include +diff -ur qgis-0.9.2rc1/src/providers/gpx/qgsgpxprovider.cpp qgis-0.9.2rc1_new/src/providers/gpx/qgsgpxprovider.cpp +--- qgis-0.9.2rc1/src/providers/gpx/qgsgpxprovider.cpp 2008-02-01 16:53:08.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/providers/gpx/qgsgpxprovider.cpp 2008-03-05 13:39:39.000000000 +0100 +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + + // Changed #include to . Apparently some + // debian distros do not include the qapp.h wrapper and the compilation +diff -ur qgis-0.9.2rc1/src/providers/postgres/qgspostgisbox2d.cpp qgis-0.9.2rc1_new/src/providers/postgres/qgspostgisbox2d.cpp +--- qgis-0.9.2rc1/src/providers/postgres/qgspostgisbox2d.cpp 2008-02-01 16:53:08.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/providers/postgres/qgspostgisbox2d.cpp 2008-03-05 11:35:59.000000000 +0100 +@@ -18,6 +18,7 @@ + /* $Id: qgspostgisbox2d.cpp 6415 2007-01-09 02:39:15Z wonder $ */ + + #include ++#include + + #include + +diff -ur qgis-0.9.2rc1/src/providers/postgres/qgspostgisbox3d.cpp qgis-0.9.2rc1_new/src/providers/postgres/qgspostgisbox3d.cpp +--- qgis-0.9.2rc1/src/providers/postgres/qgspostgisbox3d.cpp 2008-02-01 16:53:08.000000000 +0100 ++++ qgis-0.9.2rc1_new/src/providers/postgres/qgspostgisbox3d.cpp 2008-03-05 12:01:38.000000000 +0100 +@@ -18,6 +18,7 @@ + /* $Id: qgspostgisbox3d.cpp 6415 2007-01-09 02:39:15Z wonder $ */ + + #include ++#include + + #include + diff --git a/qgis.spec b/qgis.spec index ebc0a89..f6e8a31 100644 --- a/qgis.spec +++ b/qgis.spec @@ -5,6 +5,7 @@ License: GPL Group: Applications/Engineering Source: %{name}-%{version}.tar.bz2 Source1: %{name}.desktop +Patch: qgis-0.9.2rc1_gccfix.diff Url: http://www.qgis.org/ Summary: Quantum GIS (QGIS) is designed to be a Geographic Information System (GIS) built for Linux/Unix. Packager: Otto Dassau @@ -83,6 +84,7 @@ Development packages for Quantum GIS %prep %setup +%patch -p1 %build export CFLAGS="$RPM_OPT_FLAGS"