Update to 1.4.0

This commit is contained in:
Volker Fröhlich 2010-07-11 23:32:19 +00:00
parent 4bf8e371ba
commit 3b42313d34
14 changed files with 2224 additions and 446 deletions

View File

@ -1 +1 @@
qgis_1.0.2.tar.gz
qgis_1.4.0.tar.gz

View File

@ -1,252 +0,0 @@
diff -Naur qgis-1.0.2-orig/python/core/conversions.sip qgis-1.0.2/python/core/conversions.sip
--- qgis-1.0.2-orig/python/core/conversions.sip 2008-08-20 02:55:54.000000000 -0400
+++ qgis-1.0.2/python/core/conversions.sip 2009-12-23 10:29:42.819937299 -0500
@@ -77,17 +77,17 @@
for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
{
int state;
- //TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
+ //TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
QVector<TYPE> * t = reinterpret_cast< QVector<TYPE> * >(sipConvertToMappedType(PyList_GET_ITEM(sipPy, i), qvector_qgspoint, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
if (*sipIsErr)
{
- sipReleaseInstance(t, sipClass_TYPE, state);
+ sipReleaseInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
delete ql;
return 0;
}
ql->append(*t);
- sipReleaseInstance(t, sipClass_TYPE, state);
+ sipReleaseInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
}
*sipCppPtr = ql;
@@ -153,17 +153,17 @@
for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
{
int state;
- //TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
+ //TYPE *t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
QVector<QVector<TYPE> > * t = reinterpret_cast< QVector< QVector<TYPE> > * >(sipConvertToMappedType(PyList_GET_ITEM(sipPy, i), qvector_qgspoint, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
if (*sipIsErr)
{
- sipReleaseInstance(t, sipClass_TYPE, state);
+ sipReleaseInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
delete ql;
return 0;
}
ql->append(*t);
- sipReleaseInstance(t, sipClass_TYPE, state);
+ sipReleaseInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
}
*sipCppPtr = ql;
@@ -243,7 +243,7 @@
TYPE *t = new TYPE(*it);
PyObject *tobj;
- if ((tobj = sipConvertFromNewInstance(t, sipClass_TYPE, sipTransferObj)) == NULL)
+ if ((tobj = sipConvertFromNewInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), sipTransferObj)) == NULL)
{
Py_DECREF(l);
delete t;
@@ -263,7 +263,7 @@
return 0;
for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
- if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, SIP_NOT_NONE))
+ if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy, i), (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), SIP_NOT_NONE))
return 0;
return 1;
@@ -274,16 +274,16 @@
for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i)
{
int state;
- TYPE* t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), sipClass_TYPE, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
+ TYPE* t = reinterpret_cast<TYPE *>(sipConvertToInstance(PyList_GET_ITEM(sipPy, i), (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
if (*sipIsErr)
{
- sipReleaseInstance(t, sipClass_TYPE, state);
+ sipReleaseInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
delete qset;
return 0;
}
qset->insert(*t);
- sipReleaseInstance(t, sipClass_TYPE, state);
+ sipReleaseInstance(t, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
}
*sipCppPtr = qset;
@@ -364,7 +364,7 @@
Py_ssize_t j = 0;
while (PyDict_Next(tobj, &j, &kobj2, &tobj2))
{
- if (!sipCanConvertToInstance(tobj2, sipClass_TYPE, SIP_NOT_NONE))
+ if (!sipCanConvertToInstance(tobj2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), SIP_NOT_NONE))
return 0;
}
@@ -391,17 +391,17 @@
int k2 = PyInt_AsLong(kobj2);
int state;
- TYPE* fa = reinterpret_cast<TYPE*>(sipConvertToInstance(tobj2, sipClass_TYPE, sipTransferObj,SIP_NOT_NONE,&state,sipIsErr));
+ TYPE* fa = reinterpret_cast<TYPE*>(sipConvertToInstance(tobj2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), sipTransferObj,SIP_NOT_NONE,&state,sipIsErr));
if (*sipIsErr)
{
- sipReleaseInstance(tobj2, sipClass_TYPE, state);
+ sipReleaseInstance(tobj2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
delete qm;
return 0;
}
qm2.insert(k2, *fa);
- sipReleaseInstance(tobj2, sipClass_TYPE, state);
+ sipReleaseInstance(tobj2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE), state);
}
qm->insert(k, qm2);
}
@@ -432,7 +432,7 @@
{
QString *t1 = new QString(i.key());
- PyObject *t1obj = sipConvertFromNewInstance(t1, sipClass_QString, sipTransferObj);
+ PyObject *t1obj = sipConvertFromNewInstance(t1, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_QString), sipTransferObj);
PyObject *t2obj = PyInt_FromLong( (long) i.value() );
if (t1obj == NULL || t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0)
@@ -478,7 +478,7 @@
while (PyDict_Next(sipPy, &i, &t1obj, &t2obj))
{
- if (!sipCanConvertToInstance(t1obj, sipClass_QString, SIP_NOT_NONE))
+ if (!sipCanConvertToInstance(t1obj, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_QString), SIP_NOT_NONE))
return 0;
}
@@ -491,19 +491,19 @@
{
int state;
- QString *t1 = reinterpret_cast<QString *>(sipConvertToInstance(t1obj, sipClass_QString, sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
+ QString *t1 = reinterpret_cast<QString *>(sipConvertToInstance(t1obj, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_QString), sipTransferObj, SIP_NOT_NONE, &state, sipIsErr));
QVariant::Type t2 = (QVariant::Type) PyInt_AsLong(t1obj);
if (*sipIsErr)
{
- sipReleaseInstance(t1, sipClass_QString, state);
+ sipReleaseInstance(t1, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_QString), state);
delete qm;
return 0;
}
qm->insert(*t1, t2);
- sipReleaseInstance(t1, sipClass_QString, state);
+ sipReleaseInstance(t1, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_QString), state);
}
*sipCppPtr = qm;
@@ -534,8 +534,8 @@
TYPE1 *t1 = new TYPE1(i.key());
TYPE2 *t2 = i.value();
- PyObject *t1obj = sipConvertFromNewInstance(t1, sipClass_TYPE1, sipTransferObj);
- PyObject *t2obj = sipConvertFromInstance(t2, sipClass_TYPE2, sipTransferObj);
+ PyObject *t1obj = sipConvertFromNewInstance(t1, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE1), sipTransferObj);
+ PyObject *t2obj = sipConvertFromInstance(t2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), sipTransferObj);
if (t1obj == NULL || t2obj == NULL || PyDict_SetItem(d, t1obj, t2obj) < 0)
{
@@ -579,10 +579,10 @@
while (PyDict_Next(sipPy, &i, &t1obj, &t2obj))
{
- if (!sipCanConvertToInstance(t1obj, sipClass_TYPE1, SIP_NOT_NONE))
+ if (!sipCanConvertToInstance(t1obj, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE1), SIP_NOT_NONE))
return 0;
- if (!sipCanConvertToInstance(t2obj, sipClass_TYPE2, SIP_NOT_NONE))
+ if (!sipCanConvertToInstance(t2obj, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), SIP_NOT_NONE))
return 0;
}
@@ -595,13 +595,13 @@
{
int state1, state2;
- TYPE1 *t1 = reinterpret_cast<TYPE1 *>(sipConvertToInstance(t1obj, sipClass_TYPE1, sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr));
- TYPE2 *t2 = reinterpret_cast<TYPE2 *>(sipConvertToInstance(t2obj, sipClass_TYPE2, sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
+ TYPE1 *t1 = reinterpret_cast<TYPE1 *>(sipConvertToInstance(t1obj, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE1), sipTransferObj, SIP_NOT_NONE, &state1, sipIsErr));
+ TYPE2 *t2 = reinterpret_cast<TYPE2 *>(sipConvertToInstance(t2obj, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), sipTransferObj, SIP_NOT_NONE, &state2, sipIsErr));
if (*sipIsErr)
{
- sipReleaseInstance(t1, sipClass_TYPE1, state1);
- sipReleaseInstance(t2, sipClass_TYPE2, state2);
+ sipReleaseInstance(t1, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE1), state1);
+ sipReleaseInstance(t2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), state2);
delete qm;
return 0;
@@ -609,8 +609,8 @@
qm->insert(*t1, t2);
- sipReleaseInstance(t1, sipClass_TYPE1, state1);
- sipReleaseInstance(t2, sipClass_TYPE2, state2);
+ sipReleaseInstance(t1, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE1), state1);
+ sipReleaseInstance(t2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), state2);
}
*sipCppPtr = qm;
@@ -642,7 +642,7 @@
const double t1 = i.key();
TYPE2 * t2 = &i.value();
PyObject *t1obj = PyFloat_FromDouble(t1);
- PyObject *t2obj = sipConvertFromInstance(t2, sipClass_TYPE2, sipTransferObj);
+ PyObject *t2obj = sipConvertFromInstance(t2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), sipTransferObj);
if (PyDict_GetItem(d, t1obj) == NULL) {
PyObject *lst = PyList_New(0);
PyDict_SetItem(d, t1obj, lst);
@@ -695,7 +695,7 @@
{
for (int i = 0; i < PyList_GET_SIZE(t2obj); ++i) {
if (!sipCanConvertToInstance(PyList_GET_ITEM(t2obj, i),
- sipClass_TYPE2, SIP_NOT_NONE))
+ (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), SIP_NOT_NONE))
return 0;
}
}
@@ -712,7 +712,7 @@
TYPE2 *t2 =
reinterpret_cast<TYPE2 *>(sipConvertToInstance(PyList_GET_ITEM(t2obj,
i),
- sipClass_TYPE2,
+ (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2),
sipTransferObj,
SIP_NOT_NONE,
&state2,
@@ -720,7 +720,7 @@
if (*sipIsErr)
{
- sipReleaseInstance(t2, sipClass_TYPE2, state2);
+ sipReleaseInstance(t2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), state2);
delete qm;
return 0;
@@ -728,7 +728,7 @@
qm->insert(k, *t2);
- sipReleaseInstance(t2, sipClass_TYPE2, state2);
+ sipReleaseInstance(t2, (sipWrapperType *) sipTypeAsPyTypeObject (sipType_TYPE2), state2);
}
}

11
qgis-1.4.0-QVariant.patch Normal file
View File

@ -0,0 +1,11 @@
--- qgis-1.4.0/src/app/composer/qgscomposer.cpp 2010-07-08 02:11:17.760602369 +0200
+++ qgis-1.4.0-QVariant/src/app/composer/qgscomposer.cpp 2010-07-09 09:32:38.158621669 +0200
@@ -1030,7 +1030,7 @@
QSettings settings;
restoreGeometry( settings.value( "/Composer/geometry" ).toByteArray() );
QVariant splitterState = settings.value( "/Composer/splitterState" );
- if ( splitterState != QVariant::QVariant() )
+ if ( splitterState != QVariant() )
{
//mSplitter->restoreState(settings.value("/Composer/splitterState").toByteArray());
}

View File

@ -0,0 +1,41 @@
Index: /trunk/qgis/src/core/qgscoordinatereferencesystem.cpp
===================================================================
--- qgis-1.4.0/src/core/qgscoordinatereferencesystem.cpp (revision 13307)
+++ /trunk/qgis/src/core/qgscoordinatereferencesystem.cpp (revision 13508)
@@ -32,5 +32,4 @@
#include "qgis.h" //const vals declared here
-#include <cassert>
#include <sqlite3.h>
@@ -1146,5 +1145,5 @@
sqlite3_close( db );
- //assert(myProjString.length() > 0);
+ //Q_ASSERT(myProjString.length() > 0);
return myProjString;
}
@@ -1260,10 +1259,8 @@
if ( myResult != SQLITE_OK )
{
- QgsDebugMsg( QString( "Can't open database: %1 \n please notify QGIS developers of this error \n %2 (file name) " )
- .arg( sqlite3_errmsg( myDatabase ) )
- .arg( QgsApplication::qgisUserDbFilePath() ) );
- // XXX This will likely never happen since on open, sqlite creates the
- // database if it does not exist.
- assert( myResult == SQLITE_OK );
+ QgsDebugMsg( QString( "Can't open or create database %1: %2" )
+ .arg( QgsApplication::qgisUserDbFilePath() )
+ .arg( sqlite3_errmsg( myDatabase ) ) );
+ return false;
}
QgsDebugMsg( QString( "Update or insert sql \n%1" ).arg( mySql ) );
@@ -1286,7 +1283,5 @@
{
QgsDebugMsg( QString( "Can't open database: %1" ).arg( sqlite3_errmsg( myDatabase ) ) );
- // XXX This will likely never happen since on open, sqlite creates the
- // database if it does not exist.
- assert( myResult == SQLITE_OK );
+ return 0;
}
// Set up the query to retrieve the projection information needed to populate the ELLIPSOID list

View File

@ -0,0 +1,45 @@
--- /src/core/qgscoordinatereferencesystem.cpp 2010-06-07 21:40:15.448733536 +0200
+++ qgscoordinatereferencesystem.cpp.patched 2010-06-07 22:05:03.340736906 +0200
@@ -31,7 +31,6 @@
#include "qgsmessageoutput.h"
#include "qgis.h" //const vals declared here
-#include <cassert>
#include <sqlite3.h>
//gdal and ogr includes (needed for == operator)
@@ -1127,7 +1126,7 @@
// close the database
sqlite3_close( db );
- //assert(myProjString.length() > 0);
+ //Q_ASSERT(myProjString.length() > 0);
return myProjString;
}
@@ -1238,10 +1237,10 @@
myResult = sqlite3_open( QgsApplication::qgisUserDbFilePath().toUtf8().data(), &myDatabase );
if ( myResult != SQLITE_OK )
{
- QgsDebugMsg( QString( "Can't open database: %1 \n please notify QGIS developers of this error \n %2 (file name) " ).arg( sqlite3_errmsg( myDatabase ) ).arg( QgsApplication::qgisUserDbFilePath() ) );
- // XXX This will likely never happen since on open, sqlite creates the
- // database if it does not exist.
- assert( myResult == SQLITE_OK );
+ QgsDebugMsg( QString( "Can't open or create database %1: %2" )
+ .arg( QgsApplication::qgisUserDbFilePath() )
+ .arg( sqlite3_errmsg( myDatabase ) ) );
+ return false;
}
QgsDebugMsg( QString( "Update or insert sql \n%1" ).arg( mySql ) );
myResult = sqlite3_prepare( myDatabase, mySql.toUtf8(), mySql.toUtf8().length(), &myPreparedStatement, &myTail );
@@ -1263,9 +1262,7 @@
if ( myResult != SQLITE_OK )
{
QgsDebugMsg( QString( "Can't open database: %1" ).arg( sqlite3_errmsg( myDatabase ) ) );
- // XXX This will likely never happen since on open, sqlite creates the
- // database if it does not exist.
- assert( myResult == SQLITE_OK );
+ return 0;
}
// Set up the query to retrieve the projection information needed to populate the ELLIPSOID list
QString mySql = "select count(*) from tbl_srs";

View File

@ -0,0 +1,35 @@
Index: /trunk/qgis/src/app/qgsfieldcalculator.cpp
===================================================================
--- qgis-1.4.0/src/app/qgsfieldcalculator.cpp (revision 12551)
+++ /trunk/qgis/src/app/qgsfieldcalculator.cpp (revision 13046)
@@ -25,4 +25,9 @@
setupUi( this );
+ if ( !vl )
+ {
+ return;
+ }
+
populateFields();
populateOutputFieldTypes();
@@ -32,5 +37,5 @@
mOutputFieldPrecisionSpinBox->setValue( 3 );
- mUpdateExistingFieldCheckBox->setCheckState( Qt::Checked );
+
//disable ok button until there is text for output field and expression
@@ -40,7 +45,13 @@
if ( !( vl->dataProvider()->capabilities() & QgsVectorDataProvider::AddAttributes ) )
{
+ mUpdateExistingFieldCheckBox->setCheckState( Qt::Checked );
mUpdateExistingFieldCheckBox->setEnabled( false ); // must stay checked
mNewFieldGroupBox->setEnabled( false );
mNewFieldGroupBox->setTitle( mNewFieldGroupBox->title() + tr( " (not supported by provider)" ) );
+ }
+
+ if ( vl->selectedFeaturesIds().size() > 0 )
+ {
+ mOnlyUpdateSelectedCheckBox->setChecked( true );
}

11
qgis-1.4.0-grass.patch Normal file
View File

@ -0,0 +1,11 @@
--- qgis-1.4.0/cmake/FindGRASS.cmake 2009-11-28 17:02:15.000000000 +0100
+++ qgis-1.4.0-grass/cmake/FindGRASS.cmake 2010-06-09 00:45:47.444614774 +0200
@@ -12,7 +12,7 @@
MARK_AS_ADVANCED ( GRASS_LIBRARY_${LIB} )
SET(LIB_PATH NOTFOUND)
- FIND_LIBRARY(LIB_PATH NAMES grass_${LIB} PATHS ${G_PREFIX}/lib NO_DEFAULT_PATH)
+ FIND_LIBRARY(LIB_PATH NAMES grass_${LIB} PATHS ${G_PREFIX}/lib)
IF (LIB_PATH)
SET (GRASS_LIBRARY_${LIB} ${LIB_PATH})

149
qgis-1.4.0-qt47.patch Normal file
View File

@ -0,0 +1,149 @@
diff -uNr qgis-1.4.0/src/core/qgscoordinatereferencesystem.cpp qgis-1.4.0-qt47/src/core/qgscoordinatereferencesystem.cpp
--- qgis-1.4.0/src/core/qgscoordinatereferencesystem.cpp 2010-07-08 02:11:17.653725525 +0200
+++ qgis-1.4.0-qt47/src/core/qgscoordinatereferencesystem.cpp 2010-07-08 02:57:33.313600187 +0200
@@ -47,7 +47,7 @@
QgsCoordinateReferenceSystem::QgsCoordinateReferenceSystem()
: mMapUnits( QGis::UnknownUnit ),
mIsValidFlag( 0 ),
- mValidationHint( 0 )
+ mValidationHint()
{
mCRS = OSRNewSpatialReference( NULL );
}
@@ -55,7 +55,7 @@
QgsCoordinateReferenceSystem::QgsCoordinateReferenceSystem( QString theWkt )
: mMapUnits( QGis::UnknownUnit ),
mIsValidFlag( 0 ),
- mValidationHint( 0 )
+ mValidationHint()
{
mCRS = OSRNewSpatialReference( NULL );
createFromWkt( theWkt );
@@ -65,7 +65,7 @@
QgsCoordinateReferenceSystem::QgsCoordinateReferenceSystem( const long theId, CrsType theType )
: mMapUnits( QGis::UnknownUnit ),
mIsValidFlag( 0 ),
- mValidationHint( 0 )
+ mValidationHint()
{
mCRS = OSRNewSpatialReference( NULL );
createFromId( theId, theType );
diff -uNr qgis-1.4.0/src/core/qgshttptransaction.cpp qgis-1.4.0-qt47/src/core/qgshttptransaction.cpp
--- qgis-1.4.0/src/core/qgshttptransaction.cpp 2010-07-08 02:11:17.634633912 +0200
+++ qgis-1.4.0-qt47/src/core/qgshttptransaction.cpp 2010-07-08 02:08:03.768600629 +0200
@@ -45,10 +45,10 @@
QNetworkProxy::ProxyType proxyType,
QString userName,
QString password )
- : httpresponsecontenttype( 0 ),
+ : httpresponsecontenttype(),
httpurl( uri ),
httphost( proxyHost ),
- mError( 0 )
+ mError()
{
QSettings s;
mNetworkTimeoutMsec = s.value( "/qgis/networkAndProxy/networkTimeout", "20000" ).toInt();
diff -uNr qgis-1.4.0/src/core/qgsmessageoutput.cpp qgis-1.4.0-qt47/src/core/qgsmessageoutput.cpp
--- qgis-1.4.0/src/core/qgsmessageoutput.cpp 2010-07-08 02:11:17.628600247 +0200
+++ qgis-1.4.0-qt47/src/core/qgsmessageoutput.cpp 2010-07-08 02:08:40.298600356 +0200
@@ -44,7 +44,7 @@
// QgsMessageOutputConsole
QgsMessageOutputConsole::QgsMessageOutputConsole()
- : mMessage( NULL )
+ : mMessage()
{
}
diff -uNr qgis-1.4.0/src/core/qgsvectorlayer.h qgis-1.4.0-qt47/src/core/qgsvectorlayer.h
--- qgis-1.4.0/src/core/qgsvectorlayer.h 2010-07-08 02:11:17.615600358 +0200
+++ qgis-1.4.0-qt47/src/core/qgsvectorlayer.h 2010-07-08 02:22:35.046600640 +0200
@@ -91,8 +91,8 @@
};
/** Constructor */
- QgsVectorLayer( QString path = 0, QString baseName = 0,
- QString providerLib = 0, bool loadDefaultStyleFlag = true );
+ QgsVectorLayer( QString path = QString(), QString baseName = QString(),
+ QString providerLib = QString(), bool loadDefaultStyleFlag = true );
/** Destructor */
virtual ~QgsVectorLayer();
@@ -107,7 +107,7 @@
QString dataComment() const;
/** Set the primary display field to be used in the identify results dialog */
- void setDisplayField( QString fldName = 0 );
+ void setDisplayField( QString fldName = QString() );
/** Returns the primary display field name used in the identify results dialog */
const QString displayField() const;
diff -uNr qgis-1.4.0/src/plugins/grass/qgsgrassmapcalc.h qgis-1.4.0-qt47/src/plugins/grass/qgsgrassmapcalc.h
--- qgis-1.4.0/src/plugins/grass/qgsgrassmapcalc.h 2010-07-08 02:11:18.125600853 +0200
+++ qgis-1.4.0-qt47/src/plugins/grass/qgsgrassmapcalc.h 2010-07-09 12:34:31.686962175 +0200
@@ -219,8 +219,8 @@
QgsGrassMapcalcFunction() {};
QgsGrassMapcalcFunction( int type, QString name, int count = 2,
- QString description = 0, QString label = 0,
- QString labels = 0, bool drawLabel = true );
+ QString description = QString(), QString label = QString(),
+ QString labels = QString(), bool drawLabel = true );
~QgsGrassMapcalcFunction() {};
QString name() { return mName; }
@@ -331,7 +331,7 @@
~QgsGrassMapcalcObject();
// Set map name, constant value or function/operator
- void setValue( QString val, QString lab = 0 );
+ void setValue( QString val, QString lab = QString() );
// Set function
void setFunction( QgsGrassMapcalcFunction f );
diff -uNr qgis-1.4.0/src/plugins/grass/qgsgrassmodule.cpp qgis-1.4.0-qt47/src/plugins/grass/qgsgrassmodule.cpp
--- qgis-1.4.0/src/plugins/grass/qgsgrassmodule.cpp 2010-07-08 02:11:17.914600309 +0200
+++ qgis-1.4.0-qt47/src/plugins/grass/qgsgrassmodule.cpp 2010-07-09 13:27:12.574961370 +0200
@@ -1946,7 +1946,7 @@
QWidget * parent )
: QgsGrassModuleGroupBoxItem( module, key, qdesc, gdesc, gnode, parent ),
mModuleStandardOptions( options ),
- mGeometryTypeOption( 0 ), mVectorLayerOption( 0 ),
+ mGeometryTypeOption( QString() ), mVectorLayerOption( QString() ),
mRegionButton( 0 ), mUpdate( false ), mRequired( false )
{
QgsDebugMsg( "called." );
@@ -2581,7 +2581,7 @@
QgsGrassModule *module, int type, QString key, QDomElement &qdesc,
QDomElement &gdesc, QDomNode &gnode, QWidget * parent )
: QgsGrassModuleGroupBoxItem( module, key, qdesc, gdesc, gnode, parent ),
- mType( type ), mOgrLayerOption( 0 ), mOgrWhereOption( 0 )
+ mType( type ), mOgrLayerOption( QString() ), mOgrWhereOption( QString() )
{
if ( mTitle.isEmpty() )
{
diff -uNr qgis-1.4.0/src/providers/wms/qgswmsprovider.cpp qgis-1.4.0-qt47/src/providers/wms/qgswmsprovider.cpp
--- qgis-1.4.0/src/providers/wms/qgswmsprovider.cpp 2010-07-08 02:11:18.200725039 +0200
+++ qgis-1.4.0-qt47/src/providers/wms/qgswmsprovider.cpp 2010-07-09 02:13:01.258782364 +0200
@@ -60,7 +60,7 @@
cachedPixelHeight( 0 ),
mCoordinateTransform( 0 ),
extentDirty( TRUE ),
- mGetFeatureInfoUrlBase( 0 ),
+ mGetFeatureInfoUrlBase(),
mLayerCount( -1 )
{
diff -uNr qgis-1.4.0/src/providers/wms/qgswmsprovider.h qgis-1.4.0-qt47/src/providers/wms/qgswmsprovider.h
--- qgis-1.4.0/src/providers/wms/qgswmsprovider.h 2010-07-08 02:11:18.200725039 +0200
+++ qgis-1.4.0-qt47/src/providers/wms/qgswmsprovider.h 2010-07-08 10:49:46.516564676 +0200
@@ -341,7 +341,7 @@
* otherwise we contact the host directly.
*
*/
- QgsWmsProvider( QString const & uri = 0 );
+ QgsWmsProvider( QString const & uri = QString() );
//! Destructor
virtual ~QgsWmsProvider();

1687
qgis-1.4.0-savebutton.patch Normal file

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,6 @@
diff -ur qgis-1.0.2/cmake/Python.cmake qgis-1.0.2-sip410/cmake/Python.cmake
--- qgis-1.0.2/cmake/Python.cmake 2008-11-11 15:33:01.000000000 +0100
+++ qgis-1.0.2-sip410/cmake/Python.cmake 2010-02-05 22:35:47.000000000 +0100
@@ -64,8 +64,8 @@
--- qgis-1.4.0/cmake/Python.cmake 2009-08-19 21:09:10.000000000 +0200
+++ ../../qgis-1.4.0-sip410/cmake/Python.cmake 2010-05-12 20:46:28.884661938 +0200
@@ -148,8 +148,8 @@
IF (HAVE_SIP_MODULE AND SIP_BINARY_PATH AND SIP_INCLUDE_DIR)
# check for SIP version
# minimal version is 4.7 (to support universal builds)

View File

@ -0,0 +1,22 @@
Index: /trunk/qgis/src/providers/gpx/qgsgpxprovider.cpp
===================================================================
--- qgis-1.4.0/src/providers/gpx/qgsgpxprovider.cpp (revision 12601)
+++ /trunk/qgis/src/providers/gpx/qgsgpxprovider.cpp (revision 13425)
@@ -851,5 +851,5 @@
QgsCoordinateReferenceSystem QgsGPXProvider::crs()
{
- return QgsCoordinateReferenceSystem(); // use default CRS - it's WGS84
+ return QgsCoordinateReferenceSystem( GEOSRID, QgsCoordinateReferenceSystem::PostgisCrsId ); // use WGS84
}
Index: /trunk/qgis/src/providers/osm/osmprovider.cpp
===================================================================
--- qgis-1.4.0/src/providers/osm/osmprovider.cpp (revision 12591)
+++ /trunk/qgis/src/providers/osm/osmprovider.cpp (revision 13425)
@@ -938,5 +938,5 @@
QgsCoordinateReferenceSystem QgsOSMDataProvider::crs()
{
- return QgsCoordinateReferenceSystem(); // use default CRS - it's WGS84
+ return QgsCoordinateReferenceSystem( GEOSRID, QgsCoordinateReferenceSystem::PostgisCrsId ); // use WGS84
}

View File

@ -4,7 +4,7 @@ Name=Quantum GIS
GenericName=Geographic Information System
Comment=
Exec=qgis
Icon=qgis.png
Icon=qgis
Terminal=false
Type=Application
Categories=Graphics;
Categories=Geography;Viewer;Graphics;

338
qgis.spec
View File

@ -1,171 +1,185 @@
%{!?python_sitearch: %define python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
%if ! (0%{?fedora} > 12 || 0%{?rhel} > 5)
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%endif
Name: qgis
Version: 1.0.2
Release: 6%{?dist}
Version: 1.4.0
Release: 8%{?dist}
Summary: A user friendly Open Source Geographic Information System
Group: Applications/Engineering
License: GPLv2+
URL: http://qgis.org/
License: GPLv2+ with exceptions
URL: http://www.qgis.org/
Source0: http://download.osgeo.org/qgis/src/%{name}_%{version}.tar.gz
Source1: %{name}.desktop
# fix sip version check so it works with sip 4.10
Patch0: qgis-1.0.2-sip410.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
## upstream patches
# http://trac.osgeo.org/qgis/ticket/1959
Patch100: qgis-1.0.2-sip49.patch
# Fix sip version, so it works with sip 4.10
# Already fixed in upcoming version http://trac.osgeo.org/qgis/ticket/2446
Patch0: qgis-1.4.0-sip410.patch
# Fix detection problem for GRASS libraries
Patch1: qgis-1.4.0-grass.patch
Patch2: qgis-1.4.0-qt47.patch
# Already fixed in upcoming version https://trac.osgeo.org/qgis/ticket/2879
Patch3: qgis-1.4.0-QVariant.patch
## Upstream patches
# http://trac.osgeo.org/qgis/ticket/2542
Patch100: qgis-1.4.0-fieldcalc.patch
# http://trac.osgeo.org/qgis/ticket/2661
Patch101: qgis-1.4.0-vectorcrs.patch
# http://trac.osgeo.org/qgis/ticket/2670
Patch102: qgis-1.4.0-asslibqgisv.patch
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: qt4-devel
BuildRequires: bison, flex
BuildRequires: flex bison
BuildRequires: expat-devel
BuildRequires: gdal-devel
BuildRequires: geos-devel
BuildRequires: gsl-devel
BuildRequires: postgresql-devel
BuildRequires: proj-devel
BuildRequires: sqlite-devel
BuildRequires: chrpath
BuildRequires: desktop-file-utils
BuildRequires: qt-devel
BuildRequires: sip-devel > 4.7
BuildRequires: python-devel
BuildRequires: PyQt4-devel
BuildRequires: qt4-webkit-devel
# grass package contains definitions needed for configure script
BuildRequires: grass, grass-devel
BuildRequires: chrpath
# fixing missing library calls in atlas
BuildRequires: blas, lapack
Requires: gpsbabel
Obsoletes: qgis-theme-classic < 1.1
Obsoletes: qgis-theme-gis < 1.1
Obsoletes: qgis-theme-nkids < 1.1
%description
Quantum GIS (QGIS) is a user friendly Open Source Geographic Information
System (GIS) that runs on Linux, Unix, Mac OSX, and Windows. QGIS supports
vector, raster, and database formats. QGIS is licensed under the GNU
General Public License. QGIS lets you browse and create map data on your
computer. It supports many common spatial data formats (e.g. ESRI ShapeFile,
geotiff). QGIS supports plugins to do things like display tracks from your GPS.
System (GIS) that runs on Linux, Unix, Mac OSX, and Windows.
QGIS supports vector, raster, and database formats. QGIS lets you browse
and create map data on your computer. It supports many common spatial data
formats (e.g. ESRI ShapeFile, geotiff). QGIS supports plugins to do things
like display tracks from your GPS.
%package devel
Summary: Headers and libraries for building against qgis
Summary: Development Libraries for the Quantum GIS
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
%description devel
Headers and libraries for building against qgis
Development packages for Quantum GIS including the C header files.
%package grass
Summary: GRASS plugins for qgis
Summary: GRASS Support Libraries for Quantum GIS
Group: Applications/Engineering
Requires: %{name} = %{version}-%{release}
Requires: grass
%description grass
GRASS plugins for qgis
GRASS plugin for Quantum GIS required to interface with the GRASS system.
%package python
Summary: Python integration and plugins for qgis
Summary: Python integration and plugins for Quantum GIS
Group: Applications/Engineering
Requires: %{name} = %{version}-%{release}
Requires: PyQt4
%{?_sip_api:Requires: sip-api(%{_sip_api_major}) >= %{_sip_api}}
BuildRequires: sip-devel
BuildRequires: python-devel
BuildRequires: PyQt4-devel
%description python
Python integration and plugins for qgis
%package theme-classic
Summary: Addtional theme for qgis - classic
Group: Applications/Engineering
Requires: %{name} = %{version}-%{release}
%description theme-classic
Addtional theme for qgis - classic
%package theme-gis
Summary: Addtional theme for qgis - gis
Group: Applications/Engineering
Requires: %{name} = %{version}-%{release}
%description theme-gis
Addtional theme for qgis - gis
%package theme-nkids
Summary: Addtional theme for qgis - nkids
Group: Applications/Engineering
Requires: %{name} = %{version}-%{release}
%description theme-nkids
Addtional theme for qgis - nkids
Python integration and plugins for QGIS.
%prep
%setup -q -n %{name}-%{version}
%patch100 -p1 -b .sip49
%patch0 -p1 -b .sip410
%patch1 -p1 -b .grass
%patch2 -p1 -b .qt47
%patch3 -p1 -b .QVariant
%patch100 -p1 -b .fieldcalc
%patch101 -p1 -b .vectorcrs
%patch102 -p1 -b .asslibqgis
# fix spurious executable bits
%{__chmod} -x \
# Encode man-file to utf-8
iconv -f iso8859-1 -t utf-8 qgis_help.1 > qgis_help.1.conv && mv qgis_help.1.conv qgis_help.1
# Fix spurious executable bits
# Already fixed in upcoming version
chmod -x \
./src/app/legend/qgslegend.h \
./src/app/legend/qgslegend.cpp \
./src/gui/qgsdetaileditem*.cpp \
./src/gui/qgsdetaileditem*.h
# remove duplicate translations
/usr/bin/lupdate-qt4 -no-obsolete -ts i18n/*.ts
./src/core/composer/qgscomposershape.h \
./src/core/composer/qgscomposershape.cpp
# Remove obsolete translations
#/usr/bin/lupdate-qt4 -noobsolete -ts i18n/qgis_*.ts
%build
for dir in %{_libdir}/grass-*/ ; do
GRASS_PREFIX=$dir
done
# Detection doesn't work on it's own
GRASS_PREFIX=%{_libdir}
%cmake \
-D QGIS_MANUAL_SUBDIR=share/man \
-D QGIS_LIB_SUBDIR=%{_lib} \
-D QGIS_PLUGIN_SUBDIR=%{_lib}/qgis \
-D BINDINGS_GLOBAL_INSTALL:BOOL=ON \
-D QGIS_MANUAL_SUBDIR=/share/man \
-D QGIS_PLUGIN_SUBDIR=%{_lib}/%{name} \
-D WITH_BINDINGS:BOOL=TRUE \
-D BINDINGS_GLOBAL_INSTALL:BOOL=TRUE \
-D GRASS_PREFIX=$GRASS_PREFIX \
-D GDAL_INCLUDE_DIR=%{_includedir}/gdal \
-D GDAL_LIBRARY=%{_libdir}/libgdal.so \
.
make %{?_smp_mflags}
# Parallel make leads to race conditions with PYQT4_WRAP_UI
#make %{?_smp_mflags}
make
%install
%{__rm} -rf %{buildroot}
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}
# remove rpath from files
# Qt translations shouldn't be shipped
rm -f %{buildroot}/%{_datadir}/%{name}/i18n/qt_*.qm
%find_lang %{name} --with-qt
# Remove rpath from files
chrpath --delete \
%{buildroot}%{_bindir}/%{name} \
%{buildroot}%{python_sitearch}/%{name}/*.so
# add executable perms to python libs so they get striped
%{__chmod} +x %{buildroot}%{python_sitearch}/%{name}/*.so
# Add executable perms to python libs so they get stripped
chmod +x %{buildroot}%{python_sitearch}/%{name}/*.so
# remove files packaged by doc
%{__rm} -f %{buildroot}%{_datadir}/doc/AUTHORS \
%{buildroot}%{_datadir}/doc/SPONSORS
# Remove files packaged by doc or undesired
rm -f %{buildroot}%{_datadir}/%{name}/doc/BUGS \
%{buildroot}%{_datadir}/%{name}/doc/ChangeLog \
%{buildroot}%{_datadir}/%{name}/doc/CODING \
%{buildroot}%{_datadir}/%{name}/doc/COPYING \
%{buildroot}%{_datadir}/%{name}/doc/INSTALL \
%{buildroot}%{_datadir}/%{name}/doc/PROVENANCE \
%{buildroot}%{_datadir}/%{name}/doc/README
# install desktop file
%{__install} -d %{buildroot}%{_datadir}/pixmaps
%{__install} -m0644 \
%{buildroot}%{_datadir}/%{name}/images/icons/qgis-icon.png \
# Install desktop file
install -pd %{buildroot}%{_datadir}/pixmaps
install -pm0644 \
%{buildroot}%{_datadir}/%{name}/images/icons/%{name}-icon.png \
%{buildroot}%{_datadir}/pixmaps/%{name}.png
desktop-file-install --vendor="fedora" \
--dir=%{buildroot}%{_datadir}/applications \
%{SOURCE1}
--dir=%{buildroot}/%{_datadir}/applications \
%{SOURCE1}
%check
# The tests don't seem to work right
# -D ENABLE_TESTS:BOOL=TRUE \
#make -d test
%clean
%{__rm} -rf %{buildroot}
rm -rf %{buildroot}
%post -p /sbin/ldconfig
@ -179,87 +193,103 @@ desktop-file-install --vendor="fedora" \
%postun python -p /sbin/ldconfig
%files
%defattr(-, root, root, -)
%doc AUTHORS BUGS COPYING ChangeLog README SPONSORS CONTRIBUTORS
%{_bindir}/%{name}
%{_bindir}/%{name}_help
%files -f %{name}.lang
%defattr(-,root,root,-)
%doc BUGS COPYING ChangeLog README CODING PROVENANCE Exception_to_GPL_for_Qt.txt
# Can be viewed in the About-Box:
# CONTRIBUTORS AUTHORS
%{_libdir}/lib%{name}_*.so.*
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/libcoordinatecaptureplugin.so
%{_libdir}/%{name}/libcopyrightlabelplugin.so
%{_libdir}/%{name}/libdelimitedtextplugin.so
%{_libdir}/%{name}/libdelimitedtextprovider.so
%{_libdir}/%{name}/libdxf2shpconverterplugin.so
%{_libdir}/%{name}/libgeorefplugin.so
%{_libdir}/%{name}/libgpsimporterplugin.so
%{_libdir}/%{name}/libgpxprovider.so
%{_libdir}/%{name}/libgridmakerplugin.so
%{_libdir}/%{name}/libinterpolationplugin.so
%{_libdir}/%{name}/libmemoryprovider.so
%{_libdir}/%{name}/libnortharrowplugin.so
%{_libdir}/%{name}/libogrconverterplugin.so
%{_libdir}/%{name}/libogrprovider.so
%{_libdir}/%{name}/libpostgresprovider.so
%{_libdir}/%{name}/libquickprintplugin.so
%{_libdir}/%{name}/libscalebarplugin.so
%{_libdir}/%{name}/libspitplugin.so
%{_libdir}/%{name}/libwfsplugin.so
%{_libdir}/%{name}/libwfsprovider.so
%{_libdir}/%{name}/libwmsprovider.so
%{_datadir}/%{name}/doc
%{_libdir}/%{name}/
%{_bindir}/qgis*
%{_mandir}/man1/%{name}*
%dir %{_datadir}/%{name}/
%{_datadir}/pixmaps/%{name}.png
%{_datadir}/applications/fedora-%{name}.desktop
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/i18n
%dir %{_datadir}/%{name}/i18n/
%{_datadir}/%{name}/doc
%{_datadir}/%{name}/images
%{_datadir}/%{name}/resources
%{_datadir}/%{name}/svg
%dir %{_datadir}/%{name}/themes
%dir %{_datadir}/%{name}/themes/default
%{_datadir}/%{name}/themes/default/*.png
%{_mandir}/man1/*
%{_datadir}/%{name}/themes
%exclude %{_libdir}/libqgisgrass.so.%{version}
%exclude %{_libdir}/%{name}/libgrassprovider.so
%exclude %{_libdir}/%{name}/libgrassplugin.so
%exclude %{_datadir}/%{name}/themes/default/grass
%exclude %{_datadir}/%{name}/themes/gis/grass
%exclude %{_datadir}/%{name}/themes/classic/grass
%files devel
%defattr(-, root, root, -)
%defattr(-,root,root,-)
%{_includedir}/%{name}
%{_libdir}/lib%{name}_*.so
%{_libdir}/libqgisgrass.so
%{_libdir}/lib%{name}python.so
%{_libdir}/lib%{name}grass.so
%files grass
%defattr(-, root, root, -)
%{_libdir}/libqgisgrass.so.*
%{_libdir}/%{name}/libgrass*.so
%defattr(-,root,root,-)
%{_libdir}/lib%{name}grass.so.%{version}
%{_libdir}/%{name}/libgrassprovider.so
%{_libdir}/%{name}/libgrassplugin.so
%{_datadir}/%{name}/grass
%{_datadir}/%{name}/themes/default/grass
%{_datadir}/%{name}/themes/gis/grass
%{_datadir}/%{name}/themes/classic/grass
%files python
%defattr(-, root, root, -)
%{_libdir}/libqgispython.so.*
%{_libdir}/libqgispython.so
%defattr(-,root,root,-)
%{_libdir}/lib%{name}python.so.*
%{_datadir}/%{name}/python
%{python_sitearch}/%{name}
%files theme-classic
%defattr(-, root, root, -)
%{_datadir}/%{name}/themes/classic
%files theme-gis
%defattr(-, root, root, -)
%{_datadir}/%{name}/themes/gis
%files theme-nkids
%defattr(-, root, root, -)
%{_datadir}/%{name}/themes/nkids
%changelog
* Fri Feb 05 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> - 1.0.2-6
* Fri Jul 09 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-8
- Further completed qt47 patch
* Fri Jul 09 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-7
- Further completed qt47 patch
* Fri Jul 09 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-6
- Added patch to remove redundant ::QVariant in function-style cast
* Fri Jul 09 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-5
- Removed smp_mflags because of race conditions
- Simplified member initializer syntax in qt47 patch
* Wed Jul 07 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-4
- Added preliminary patch for Qt 4.7 -- still won't build for Rawhide because of https://bugzilla.redhat.com/show_bug.cgi?id=587707
- Put version variable in filelist for GRASS
- Added qt-webkit as build require, removed gettext
- Corrected erroneous dependency on GRASS subpackage
* Thu Jul 01 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-3
- Changed license to reflect exception for Qt; packaged exception file
- Added find_lang and excluded qt-translations
- Added ownership for directory in share
- Dropped docdir statement
- Changed description for the subpackages python and grass
* Wed Jun 24 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-2
- Grouped corresponding entries for %description and %package
- Corrected swapped summaries for python- and grass-subpackage
- Set theme subpackages as obsolete
- Removed nonsensical build-requires statements from subpackages
- Dropped redundant definition of GRASS_PREFIX
- Removed verbose-option from make
- Removed unnecessary chmod-command
- Removed nonsensical ldconfig for devel-subpackage
- Made the file list more elegant
- Removed unnecessary call for chrpath
* Thu Jun 17 2010 Volker Fröhlich <volker27@gmx.at> - 1.4.0-1
- Updated for 1.4.0
- Dropped theme packages
* Wed Feb 10 2010 Kevin Kofler <Kevin@tigcc.ticalc.org> - 1.0.2-6
- rebuild for sip 4.10
- fix sip version check so it works with sip 4.10 (#553713)
* Thu Jan 07 2010 Rex Dieter <rdieter@fedoraproject.org> - 1.0.2-5
- rebuild (sip)
* Wed Jan 13 2010 Devrim GÜNDÜZ <devrim@gunduz.org> - 1.0.2-5
- Rebuild against new GEOS.
* Wed Dec 23 2009 Rex Dieter <rdieter@fedoraproject.org> - 1.0.2-4
- qgis rebuild for sip-4.9.x (#538119)

View File

@ -1 +1 @@
71faff161c0b893f75d008187b471fc8 qgis_1.0.2.tar.gz
47710e7aa14c2a672c7f28457b0c956f qgis_1.4.0.tar.gz