mirror of https://git.wownero.com/dsc/mxe.git
update package gdal
This commit is contained in:
parent
391190993f
commit
3fe7ab2993
|
@ -1135,7 +1135,7 @@ USE_OSGPLUGIN(<plugin2>)
|
|||
</tr>
|
||||
<tr>
|
||||
<td id="gdal-package">gdal</td>
|
||||
<td id="gdal-version">1.9.1</td>
|
||||
<td id="gdal-version">1.9.2</td>
|
||||
<td id="gdal-website"><a href="http://www.gdal.org/">GDAL</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
|
|
@ -1,231 +0,0 @@
|
|||
This file is part of MXE.
|
||||
See index.html for further information.
|
||||
|
||||
From a0c0640eb7e98db4a9cbe5104abef8425d975712 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Brand <mabrand@mabrand.nl>
|
||||
Date: Wed, 4 Jul 2012 10:05:33 +0200
|
||||
Subject: [PATCH 1/2] giflib compatibility
|
||||
|
||||
Taken from http://trac.osgeo.org/gdal/changeset/24491?format=diff&new=24491
|
||||
---
|
||||
frmts/gif/gifdataset.cpp | 30 ++++++++++++++++++++++++------
|
||||
1 file changed, 24 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/frmts/gif/gifdataset.cpp b/frmts/gif/gifdataset.cpp
|
||||
index c89f34c..1947edd 100644
|
||||
--- a/frmts/gif/gifdataset.cpp
|
||||
+++ b/frmts/gif/gifdataset.cpp
|
||||
@@ -470,6 +470,28 @@ GDALDataset *GIFDataset::Open( GDALOpenInfo * poOpenInfo )
|
||||
}
|
||||
|
||||
/************************************************************************/
|
||||
+/* GDALPrintGifError() */
|
||||
+/************************************************************************/
|
||||
+
|
||||
+static void GDALPrintGifError(const char* pszMsg)
|
||||
+{
|
||||
+/* GIFLIB_MAJOR is only defined in libgif >= 4.2.0 */
|
||||
+/* libgif 4.2.0 has retired PrintGifError() and added GifErrorString() */
|
||||
+#if defined(GIFLIB_MAJOR) && defined(GIFLIB_MINOR) && \
|
||||
+ ((GIFLIB_MAJOR == 4 && GIFLIB_MINOR >= 2) || GIFLIB_MAJOR > 4)
|
||||
+ /* Static string actually, hence the const char* cast */
|
||||
+ const char* pszGIFLIBError = (const char*) GifErrorString();
|
||||
+ if (pszGIFLIBError == NULL)
|
||||
+ pszGIFLIBError = "Unknown error";
|
||||
+ CPLError( CE_Failure, CPLE_AppDefined,
|
||||
+ "%s. GIFLib Error : %s", pszMsg, pszGIFLIBError );
|
||||
+#else
|
||||
+ PrintGifError();
|
||||
+ CPLError( CE_Failure, CPLE_AppDefined, "%s", pszMsg );
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+/************************************************************************/
|
||||
/* CreateCopy() */
|
||||
/************************************************************************/
|
||||
|
||||
@@ -596,9 +618,7 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
psGifCT->ColorCount, 255, psGifCT) == GIF_ERROR)
|
||||
{
|
||||
FreeMapObject(psGifCT);
|
||||
- PrintGifError();
|
||||
- CPLError( CE_Failure, CPLE_AppDefined,
|
||||
- "Error writing gif file." );
|
||||
+ GDALPrintGifError("Error writing gif file.");
|
||||
EGifCloseFile(hGifFile);
|
||||
VSIFCloseL( fp );
|
||||
return NULL;
|
||||
@@ -622,9 +642,7 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
|
||||
if (EGifPutImageDesc(hGifFile, 0, 0, nXSize, nYSize, bInterlace, NULL) == GIF_ERROR )
|
||||
{
|
||||
- PrintGifError();
|
||||
- CPLError( CE_Failure, CPLE_AppDefined,
|
||||
- "Error writing gif file." );
|
||||
+ GDALPrintGifError("Error writing gif file.");
|
||||
EGifCloseFile(hGifFile);
|
||||
VSIFCloseL( fp );
|
||||
return NULL;
|
||||
--
|
||||
1.7.10.4
|
||||
|
||||
|
||||
From 7411f59dd769a72a79838e932d1a0988b04dc4d5 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Brand <mabrand@mabrand.nl>
|
||||
Date: Wed, 4 Jul 2012 10:42:33 +0200
|
||||
Subject: [PATCH 2/2] giflib 5 compatibility
|
||||
|
||||
taken from
|
||||
http://trac.osgeo.org/gdal/changeset/24627
|
||||
---
|
||||
frmts/gif/biggifdataset.cpp | 5 +++++
|
||||
frmts/gif/gifdataset.cpp | 43 ++++++++++++++++++++++++++++++++++++-------
|
||||
2 files changed, 41 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/frmts/gif/biggifdataset.cpp b/frmts/gif/biggifdataset.cpp
|
||||
index e3029e5..6bed0dc 100644
|
||||
--- a/frmts/gif/biggifdataset.cpp
|
||||
+++ b/frmts/gif/biggifdataset.cpp
|
||||
@@ -371,7 +371,12 @@ CPLErr BIGGIFDataset::ReOpen()
|
||||
VSIFSeekL( fp, 0, SEEK_SET );
|
||||
|
||||
nLastLineRead = -1;
|
||||
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5
|
||||
+ int nError;
|
||||
+ hGifFile = DGifOpen( fp, VSIGIFReadFunc, &nError );
|
||||
+#else
|
||||
hGifFile = DGifOpen( fp, VSIGIFReadFunc );
|
||||
+#endif
|
||||
if( hGifFile == NULL )
|
||||
{
|
||||
CPLError( CE_Failure, CPLE_OpenFailed,
|
||||
diff --git a/frmts/gif/gifdataset.cpp b/frmts/gif/gifdataset.cpp
|
||||
index 1947edd..0b99158 100644
|
||||
--- a/frmts/gif/gifdataset.cpp
|
||||
+++ b/frmts/gif/gifdataset.cpp
|
||||
@@ -36,8 +36,17 @@ CPL_CVSID("$Id: gifdataset.cpp 23621 2011-12-20 23:26:56Z rouault $");
|
||||
CPL_C_START
|
||||
void GDALRegister_GIF(void);
|
||||
|
||||
+#if !(defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5)
|
||||
+
|
||||
// This prototype seems to have been messed up!
|
||||
GifFileType * EGifOpen(void* userData, OutputFunc writeFunc);
|
||||
+
|
||||
+// Define alias compatible with giflib >= 5.0.0
|
||||
+#define GifMakeMapObject MakeMapObject
|
||||
+#define GifFreeMapObject FreeMapObject
|
||||
+
|
||||
+#endif // defined(GIFLIB_MAJOR) && GIFLIB_MAJOR < 5
|
||||
+
|
||||
CPL_C_END
|
||||
|
||||
static const int InterlacedOffset[] = { 0, 4, 2, 1 };
|
||||
@@ -322,7 +331,12 @@ GDALDataset *GIFDataset::Open( GDALOpenInfo * poOpenInfo )
|
||||
if( fp == NULL )
|
||||
return NULL;
|
||||
|
||||
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5
|
||||
+ int nError;
|
||||
+ hGifFile = DGifOpen( fp, VSIGIFReadFunc, &nError );
|
||||
+#else
|
||||
hGifFile = DGifOpen( fp, VSIGIFReadFunc );
|
||||
+#endif
|
||||
if( hGifFile == NULL )
|
||||
{
|
||||
VSIFCloseL( fp );
|
||||
@@ -380,7 +394,12 @@ GDALDataset *GIFDataset::Open( GDALOpenInfo * poOpenInfo )
|
||||
DGifCloseFile( hGifFile );
|
||||
|
||||
VSIFSeekL( fp, 0, SEEK_SET);
|
||||
+
|
||||
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5
|
||||
+ hGifFile = DGifOpen( fp, VSIGIFReadFunc, &nError );
|
||||
+#else
|
||||
hGifFile = DGifOpen( fp, VSIGIFReadFunc );
|
||||
+#endif
|
||||
if( hGifFile == NULL )
|
||||
{
|
||||
VSIFCloseL( fp );
|
||||
@@ -473,14 +492,19 @@ GDALDataset *GIFDataset::Open( GDALOpenInfo * poOpenInfo )
|
||||
/* GDALPrintGifError() */
|
||||
/************************************************************************/
|
||||
|
||||
-static void GDALPrintGifError(const char* pszMsg)
|
||||
+static void GDALPrintGifError(GifFileType *hGifFile, const char* pszMsg)
|
||||
{
|
||||
/* GIFLIB_MAJOR is only defined in libgif >= 4.2.0 */
|
||||
/* libgif 4.2.0 has retired PrintGifError() and added GifErrorString() */
|
||||
#if defined(GIFLIB_MAJOR) && defined(GIFLIB_MINOR) && \
|
||||
((GIFLIB_MAJOR == 4 && GIFLIB_MINOR >= 2) || GIFLIB_MAJOR > 4)
|
||||
/* Static string actually, hence the const char* cast */
|
||||
+
|
||||
+#if GIFLIB_MAJOR >= 5
|
||||
+ const char* pszGIFLIBError = (const char*) GifErrorString(hGifFile->Error);
|
||||
+#else
|
||||
const char* pszGIFLIBError = (const char*) GifErrorString();
|
||||
+#endif
|
||||
if (pszGIFLIBError == NULL)
|
||||
pszGIFLIBError = "Unknown error";
|
||||
CPLError( CE_Failure, CPLE_AppDefined,
|
||||
@@ -557,7 +581,12 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5
|
||||
+ int nError;
|
||||
+ hGifFile = EGifOpen( fp, VSIGIFWriteFunc, &nError );
|
||||
+#else
|
||||
hGifFile = EGifOpen( fp, VSIGIFWriteFunc );
|
||||
+#endif
|
||||
if( hGifFile == NULL )
|
||||
{
|
||||
VSIFCloseL( fp );
|
||||
@@ -577,7 +606,7 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
|
||||
if( poBand->GetColorTable() == NULL )
|
||||
{
|
||||
- psGifCT = MakeMapObject( 256, NULL );
|
||||
+ psGifCT = GifMakeMapObject( 256, NULL );
|
||||
for( iColor = 0; iColor < 256; iColor++ )
|
||||
{
|
||||
psGifCT->Colors[iColor].Red = (GifByteType) iColor;
|
||||
@@ -593,7 +622,7 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
while( nFullCount < poCT->GetColorEntryCount() )
|
||||
nFullCount = nFullCount * 2;
|
||||
|
||||
- psGifCT = MakeMapObject( nFullCount, NULL );
|
||||
+ psGifCT = GifMakeMapObject( nFullCount, NULL );
|
||||
for( iColor = 0; iColor < poCT->GetColorEntryCount(); iColor++ )
|
||||
{
|
||||
GDALColorEntry sEntry;
|
||||
@@ -617,14 +646,14 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
if (EGifPutScreenDesc(hGifFile, nXSize, nYSize,
|
||||
psGifCT->ColorCount, 255, psGifCT) == GIF_ERROR)
|
||||
{
|
||||
- FreeMapObject(psGifCT);
|
||||
- GDALPrintGifError("Error writing gif file.");
|
||||
+ GifFreeMapObject(psGifCT);
|
||||
+ GDALPrintGifError(hGifFile, "Error writing gif file.");
|
||||
EGifCloseFile(hGifFile);
|
||||
VSIFCloseL( fp );
|
||||
return NULL;
|
||||
}
|
||||
|
||||
- FreeMapObject(psGifCT);
|
||||
+ GifFreeMapObject(psGifCT);
|
||||
psGifCT = NULL;
|
||||
|
||||
/* Support for transparency */
|
||||
@@ -642,7 +671,7 @@ GIFDataset::CreateCopy( const char * pszFilename, GDALDataset *poSrcDS,
|
||||
|
||||
if (EGifPutImageDesc(hGifFile, 0, 0, nXSize, nYSize, bInterlace, NULL) == GIF_ERROR )
|
||||
{
|
||||
- GDALPrintGifError("Error writing gif file.");
|
||||
+ GDALPrintGifError(hGifFile, "Error writing gif file.");
|
||||
EGifCloseFile(hGifFile);
|
||||
VSIFCloseL( fp );
|
||||
return NULL;
|
||||
--
|
||||
1.7.10.4
|
||||
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
PKG := gdal
|
||||
$(PKG)_IGNORE :=
|
||||
$(PKG)_CHECKSUM := c1eae556398ff7b9332afe9d3022dcd931130808
|
||||
$(PKG)_CHECKSUM := 7eda6a4d735b8d6903740e0acdd702b43515e351
|
||||
$(PKG)_SUBDIR := gdal-$($(PKG)_VERSION)
|
||||
$(PKG)_FILE := gdal-$($(PKG)_VERSION).tar.gz
|
||||
$(PKG)_URL := http://download.osgeo.org/gdal/$($(PKG)_FILE)
|
||||
|
|
Loading…
Reference in New Issue