--- /dev/null
+Index: /trunk/gdal/configure\r
+===================================================================\r
+--- /trunk/gdal/configure (revision 26534)\r
++++ /trunk/gdal/configure (revision 26582)\r
+@@ -723,4 +723,5 @@\r
+ II_SYSTEM\r
+ HAVE_INGRES\r
++MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION\r
+ MYSQL_LIB\r
+ MYSQL_INC\r
+@@ -23308,4 +23309,32 @@\r
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5\r
+ $as_echo "yes" >&6; }\r
++\r
++ # Check if mysql headers declare load_defaults\r
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking load_defaults() in MySQL" >&5\r
++$as_echo_n "checking load_defaults() in MySQL... " >&6; }\r
++ rm -f testmysql.*\r
++ echo '#include "my_global.h"' > testmysql.cpp\r
++ echo '#include "my_sys.h"' >> testmysql.cpp\r
++ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, found in my_sys.h" >&5\r
++$as_echo "yes, found in my_sys.h" >&6; }\r
++ else\r
++ echo 'extern "C" void load_defaults(const char *conf_file, const char **groups, int *argc, char ***argv);' > testmysql.cpp\r
++ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, found in library but not in header" >&5\r
++$as_echo "yes, found in library but not in header" >&6; }\r
++ MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION=yes\r
++ else\r
++ HAVE_MYSQL=no\r
++ MYSQL_LIB=\r
++ MYSQL_INC=\r
++ as_fn_error $? "Cannot find load_defaults()" "$LINENO" 5\r
++ fi\r
++ fi\r
++ rm -f testmysql.*\r
++ rm -f testmysql\r
++\r
+ ;;\r
+ esac\r
+@@ -23317,4 +23346,6 @@\r
+ \r
+ MYSQL_LIB=$MYSQL_LIB\r
++\r
++MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION=$MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION\r
+ \r
+ \r
+Index: /trunk/gdal/configure.in\r
+===================================================================\r
+--- /trunk/gdal/configure.in (revision 26534)\r
++++ /trunk/gdal/configure.in (revision 26582)\r
+@@ -2462,4 +2462,29 @@\r
+ MYSQL_INC="`$MYSQL_CONFIG --include`"\r
+ AC_MSG_RESULT([yes])\r
++\r
++ # Check if mysql headers declare load_defaults\r
++ AC_MSG_CHECKING([load_defaults() in MySQL])\r
++ rm -f testmysql.*\r
++ echo '#include "my_global.h"' > testmysql.cpp\r
++ echo '#include "my_sys.h"' >> testmysql.cpp\r
++ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ AC_MSG_RESULT([yes, found in my_sys.h])\r
++ else\r
++ echo 'extern "C" void load_defaults(const char *conf_file, const char **groups, int *argc, char ***argv);' > testmysql.cpp\r
++ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ AC_MSG_RESULT([yes, found in library but not in header])\r
++ MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION=yes\r
++ else\r
++ HAVE_MYSQL=no\r
++ MYSQL_LIB=\r
++ MYSQL_INC=\r
++ AC_MSG_ERROR([Cannot find load_defaults()])\r
++ fi\r
++ fi\r
++ rm -f testmysql.*\r
++ rm -f testmysql\r
++\r
+ ;;\r
+ esac\r
+@@ -2469,4 +2494,5 @@\r
+ AC_SUBST(MYSQL_INC,$MYSQL_INC)\r
+ AC_SUBST(MYSQL_LIB,$MYSQL_LIB)\r
++AC_SUBST(MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION,$MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION)\r
+ \r
+ dnl ---------------------------------------------------------------------------\r
+Index: /trunk/gdal/ogr/ogrsf_frmts/mysql/GNUmakefile\r
+===================================================================\r
+--- /trunk/gdal/ogr/ogrsf_frmts/mysql/GNUmakefile (revision 15888)\r
++++ /trunk/gdal/ogr/ogrsf_frmts/mysql/GNUmakefile (revision 26582)\r
+@@ -8,4 +8,9 @@\r
+ CPPFLAGS := -I.. -I../.. $(GDAL_INCLUDE) $(MYSQL_INC) $(CPPFLAGS)\r
+ \r
++ifeq ($(MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION),yes)\r
++CPPFLAGS += -DMYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION\r
++endif\r
++\r
++\r
+ default: $(O_OBJ:.o=.$(OBJ_EXT))\r
+ \r
+Index: /trunk/gdal/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp\r
+===================================================================\r
+--- /trunk/gdal/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp (revision 26506)\r
++++ /trunk/gdal/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp (revision 26582)\r
+@@ -37,4 +37,14 @@\r
+ #include "cpl_string.h"\r
+ \r
++/* Recent versions of mysql no longer declare load_defaults() in my_sys.h */\r
++/* but they still have it in the lib. Very fragile... */\r
++#ifdef MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION\r
++extern "C" {\r
++int load_defaults(const char *conf_file, const char **groups,\r
++ int *argc, char ***argv);\r
++void free_defaults(char **argv);\r
++}\r
++#endif\r
++\r
+ CPL_CVSID("$Id$");\r
+ /************************************************************************/\r
+Index: /trunk/gdal/GDALmake.opt.in\r
+===================================================================\r
+--- /trunk/gdal/GDALmake.opt.in (revision 26296)\r
++++ /trunk/gdal/GDALmake.opt.in (revision 26582)\r
+@@ -127,4 +127,5 @@\r
+ MYSQL_LIB = @MYSQL_LIB@\r
+ MYSQL_INC = @MYSQL_INC@\r
++MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION = @MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION@\r
+ LIBS += $(MYSQL_LIB)\r
+ \r
+Index: /trunk/gdal/configure\r
+===================================================================\r
+--- /trunk/gdal/configure (revision 26582)\r
++++ /trunk/gdal/configure (revision 26583)\r
+@@ -23317,5 +23317,5 @@\r
+ echo '#include "my_sys.h"' >> testmysql.cpp\r
+ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
+- if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} -o testmysql testmysql.cpp ${MYSQL_LIB} 2>&1`" ; then\r
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, found in my_sys.h" >&5\r
+ $as_echo "yes, found in my_sys.h" >&6; }\r
+@@ -23323,5 +23323,5 @@\r
+ echo 'extern "C" void load_defaults(const char *conf_file, const char **groups, int *argc, char ***argv);' > testmysql.cpp\r
+ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
+- if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} -o testmysql testmysql.cpp ${MYSQL_LIB} 2>&1`" ; then\r
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, found in library but not in header" >&5\r
+ $as_echo "yes, found in library but not in header" >&6; }\r
+Index: /trunk/gdal/configure.in\r
+===================================================================\r
+--- /trunk/gdal/configure.in (revision 26582)\r
++++ /trunk/gdal/configure.in (revision 26583)\r
+@@ -2469,10 +2469,10 @@\r
+ echo '#include "my_sys.h"' >> testmysql.cpp\r
+ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
+- if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} -o testmysql testmysql.cpp ${MYSQL_LIB} 2>&1`" ; then\r
+ AC_MSG_RESULT([yes, found in my_sys.h])\r
+ else\r
+ echo 'extern "C" void load_defaults(const char *conf_file, const char **groups, int *argc, char ***argv);' > testmysql.cpp\r
+ echo 'int main(int argc, char** argv) { load_defaults(0, 0, 0, 0); return 0; } ' >> testmysql.cpp\r
+- if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} ${MYSQL_LIB} testmysql.cpp -o testmysql 2>&1`" ; then\r
++ if test -z "`${CXX} ${CXXFLAGS} ${MYSQL_INC} -o testmysql testmysql.cpp ${MYSQL_LIB} 2>&1`" ; then\r
+ AC_MSG_RESULT([yes, found in library but not in header])\r
+ MYSQL_NEEDS_LOAD_DEFAULTS_DECLARATION=yes\r
Summary(pl.UTF-8): Biblioteka abstrakcji danych dotyczących powierzchni Ziemi
Name: gdal
Version: 1.10.1
-Release: 0.1
+Release: 1
License: BSD-like
Group: Libraries
Source0: http://download.osgeo.org/gdal/%{version}/%{name}-%{version}.tar.xz
Patch2: %{name}-php.patch
Patch3: %{name}-fpic.patch
Patch4: %{name}-format-security.patch
+Patch5: gdal-bug-5284.patch
URL: http://www.gdal.org/
%{?with_opencl:BuildRequires: OpenCL-devel >= 1.0}
%{?with_armadillo:BuildRequires: armadillo-devel}
%prep
%setup -q
+%{__aclocal}
+%{__autoconf}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
+%patch5 -p3
# need to regenerate (old ones don't support perl 5.10)
%{__rm} swig/perl/{gdal_wrap.cpp,gdalconst_wrap.c,ogr_wrap.cpp,osr_wrap.cpp}
sed -i -e 's|^$(INSTALL_DIR):|$(DESTDIR)$(INSTALL_DIR):|' swig/ruby/RubyMakefile.mk
sed -i -e 's|^install: $(INSTALL_DIR)|install: $(DESTDIR)$(INSTALL_DIR)|' swig/ruby/RubyMakefile.mk
+# our man path
+sed -i -e 's#^mandir=.*##g' configure.in
+
%{__rm} -r man
%{__sed} -i -e 's,DODS_INC="-I.*,DODS_INC="$(pkg-config --cflags libdap)",' configure.in
%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Geo/OSR/.packlist
# some doxygen trash
-%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/Geo/{GDAL.dox,GDAL/Const.dox,OGR.dox,OSR.dox}
-%{__rm} $RPM_BUILD_ROOT%{perl_vendorarch}/Geo/check_dox.pl
-%{__rm} $RPM_BUILD_ROOT%{_bindir}/gdal_{fillnodata,sieve}.dox
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/gdalmove.dox
+%{__rm} $RPM_BUILD_ROOT%{_bindir}/gdal_{edit,fillnodata,polygonize,proximity,sieve}.dox
%clean
rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/gcps2wld.py
%attr(755,root,root) %{_bindir}/gdal2tiles.py
%attr(755,root,root) %{_bindir}/gdal2xyz.py
+%attr(755,root,root) %{_bindir}/gdal_auth.py
%attr(755,root,root) %{_bindir}/gdal_contour
%attr(755,root,root) %{_bindir}/gdal_calc.py
+%attr(755,root,root) %{_bindir}/gdal_edit.py
%attr(755,root,root) %{_bindir}/gdal_fillnodata.py
%attr(755,root,root) %{_bindir}/gdal_grid
%attr(755,root,root) %{_bindir}/gdal_merge.py
%attr(755,root,root) %{_bindir}/gdalinfo
%attr(755,root,root) %{_bindir}/gdallocationinfo
%attr(755,root,root) %{_bindir}/gdalmanage
+%attr(755,root,root) %{_bindir}/gdalmove.py
+%attr(755,root,root) %{_bindir}/gdalserver
%attr(755,root,root) %{_bindir}/gdalsrsinfo
%attr(755,root,root) %{_bindir}/gdaltindex
%attr(755,root,root) %{_bindir}/gdaltransform
%{_datadir}/gdal
%{_mandir}/man1/gdal2tiles.1*
%{_mandir}/man1/gdal_contour.1*
+%{_mandir}/man1/gdal_edit.1*
%{_mandir}/man1/gdal_fillnodata.1*
%{_mandir}/man1/gdal_grid.1*
%{_mandir}/man1/gdal_merge.1*
+%{_mandir}/man1/gdal_polygonize.1*
+%{_mandir}/man1/gdal_proximity.1*
%{_mandir}/man1/gdal_rasterize.1*
%{_mandir}/man1/gdal_retile.1*
%{_mandir}/man1/gdal_sieve.1*
%{_mandir}/man1/gdaldem.1*
%{_mandir}/man1/gdalinfo.1*
%{_mandir}/man1/gdallocationinfo.1*
+%{_mandir}/man1/gdalmanage.1*
+%{_mandir}/man1/gdalmove.1*
%{_mandir}/man1/gdalsrsinfo.1*
%{_mandir}/man1/gdaltindex.1*
%{_mandir}/man1/gdaltransform.1*