diff --git a/.gitignore b/.gitignore index 8e4977d..6e49fb4 100644 --- a/.gitignore +++ b/.gitignore @@ -110,3 +110,5 @@ gdalautotest-1.7.0.tar.gz /gdalautotest-3.8.2.tar.gz /gdal-3.8.3-fedora.tar.xz /gdalautotest-3.8.3.tar.gz +/gdal-3.10.3-fedora.tar.xz +/gdalautotest-3.10.3.tar.gz diff --git a/gating.yaml b/gating.yaml new file mode 100644 index 0000000..2ed4470 --- /dev/null +++ b/gating.yaml @@ -0,0 +1,7 @@ +--- !Policy +product_versions: + - rhel-10 + - rhel-9 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: osci.brew-build.installability.functional} diff --git a/gdal-3.10.2-integer-types.patch b/gdal-3.10.2-integer-types.patch new file mode 100644 index 0000000..dfad44c --- /dev/null +++ b/gdal-3.10.2-integer-types.patch @@ -0,0 +1,11 @@ +diff -rupN --no-dereference gdal-3.10.3-fedora/ogr/ogrsf_frmts/cad/libopencad/dwg/r2000.cpp gdal-3.10.3-fedora-new/ogr/ogrsf_frmts/cad/libopencad/dwg/r2000.cpp +--- gdal-3.10.3-fedora/ogr/ogrsf_frmts/cad/libopencad/dwg/r2000.cpp 2025-04-01 13:03:21.000000000 +0200 ++++ gdal-3.10.3-fedora-new/ogr/ogrsf_frmts/cad/libopencad/dwg/r2000.cpp 2025-04-07 13:39:47.674069257 +0200 +@@ -23,6 +23,7 @@ + #include + #include + #include ++#include + + #if ((defined(__sun__) || defined(__FreeBSD__)) && __GNUC__ == 4 && __GNUC_MINOR__ == 8) || defined(__ANDROID__) + // gcc 4.8 on Solaris 11.3 or FreeBSD 11 doesn't have std::string diff --git a/gdal-config b/gdal-config index 37a3f66..0a258a7 100755 --- a/gdal-config +++ b/gdal-config @@ -2,7 +2,7 @@ ARCH=$(uname -m) case $ARCH in -x86_64 | ppc64 | ppc64le | ia64 | s390x | sparc64 | alpha | alphaev6 | aarch64 ) +x86_64 | ppc64 | ppc64le | ia64 | s390x | sparc64 | alpha | alphaev6 | aarch64 | riscv64 ) gdal-config-64 ${*} ;; *) diff --git a/gdal.spec b/gdal.spec index 333750b..03e00f0 100644 --- a/gdal.spec +++ b/gdal.spec @@ -28,30 +28,26 @@ %global spatialite "--with-spatialite" %endif +%if 0%{?fedora} +%bcond_without mingw %bcond_without python3 -# No complete java yet in EL8 -%if 0%{?rhel} == 8 -%bcond_with java -%else %ifarch %{java_arches} %bcond_without java %else %bcond_with java %endif -%endif - -%if 0%{?fedora} -%bcond_without mingw %else %bcond_with mingw +%bcond_with python3 +%bcond_with java %endif #global pre rc1 Name: gdal -Version: 3.8.3 -Release: 5%{?dist} +Version: 3.10.3 +Release: 3%{?dist} Summary: GIS file format library License: MIT URL: http://www.gdal.org @@ -71,25 +67,48 @@ Source5: %{name}-cleaner.sh # Add some utils to the default install target Patch0: gdal_utils.patch +# Fix passing incompatible pointer type +Patch1: gdal_incompatible-pointer-types.patch +# Add definitions of missing int16_t and int32_t +Patch2: gdal-3.10.2-integer-types.patch BuildRequires: cmake BuildRequires: gcc-c++ -BuildRequires: armadillo-devel BuildRequires: bison -BuildRequires: cfitsio-devel -BuildRequires: CharLS-devel BuildRequires: curl-devel BuildRequires: expat-devel -BuildRequires: freexl-devel BuildRequires: geos-devel +BuildRequires: json-c-devel +BuildRequires: libarchive-devel +BuildRequires: libpng-devel +BuildRequires: libpq-devel +BuildRequires: libtiff-devel +BuildRequires: libtirpc-devel +BuildRequires: mariadb-connector-c-devel +BuildRequires: openjpeg2-devel +BuildRequires: pcre2-devel +BuildRequires: proj-devel >= 5.2.0 +BuildRequires: sqlite-devel +BuildRequires: swig +BuildRequires: unixODBC-devel +BuildRequires: xz-devel +BuildRequires: zlib-devel + +%if 0%{?fedora} +# Fedora dependencies +BuildRequires: armadillo-devel +BuildRequires: blosc-devel +BuildRequires: cfitsio-devel +BuildRequires: CharLS-devel +BuildRequires: freexl-devel BuildRequires: giflib-devel BuildRequires: gtest-devel BuildRequires: hdf-devel BuildRequires: hdf5-devel -BuildRequires: json-c-devel %ifnarch %{ix86} %{arm} BuildRequires: libarrow-devel +BuildRequires: libarrow-dataset-devel %endif BuildRequires: libdap-devel BuildRequires: libdeflate-devel @@ -98,13 +117,9 @@ BuildRequires: libgta-devel BuildRequires: libjpeg-devel BuildRequires: libkml-devel BuildRequires: liblerc-devel -BuildRequires: libpng-devel -BuildRequires: libpq-devel %if %{with_spatialite} BuildRequires: libspatialite-devel %endif -BuildRequires: libtiff-devel -BuildRequires: libtirpc-devel BuildRequires: libwebp-devel BuildRequires: libzstd-devel %if 0%{?with_mysql} @@ -113,22 +128,43 @@ BuildRequires: mariadb-connector-c-devel BuildRequires: netcdf-devel BuildRequires: ogdi-devel BuildRequires: openexr-devel -BuildRequires: openjpeg2-devel -BuildRequires: pcre2-devel +BuildRequires: openssl-devel-engine +%ifnarch %{ix86} %{arm} +BuildRequires: parquet-libs-devel +%endif %if 0%{?with_poppler} BuildRequires: poppler-devel %endif -BuildRequires: proj-devel >= 5.2.0 BuildRequires: qhull-devel -BuildRequires: sqlite-devel -BuildRequires: swig -BuildRequires: unixODBC-devel BuildRequires: xerces-c-devel -BuildRequires: xz-devel -BuildRequires: zlib-devel +%else +# RHEL dependencies +BuildRequires: libjpeg-turbo-devel +BuildRequires: openssl-devel +%endif +# Python +%if %{with python3} +BuildRequires: python3-devel +BuildRequires: python3-filelock +BuildRequires: python3-numpy +BuildRequires: python3-setuptools +BuildRequires: python3dist(pytest) >= 3.6 +BuildRequires: python3dist(lxml) >= 4.5.1 +%endif + +# Java +%if %{with java} +# For 'mvn_artifact' and 'mvn_install' +BuildRequires: ant +BuildRequires: java-devel >= 1:1.6.0 +BuildRequires: javapackages-local +BuildRequires: jpackage-utils +%endif + +# MinGW %if %{with mingw} -BuildRequires: mingw32-filesystem >= 102 +BuildRequires: mingw32-filesystem BuildRequires: mingw32-gcc-c++ BuildRequires: mingw32-cfitsio BuildRequires: mingw32-curl @@ -137,6 +173,7 @@ BuildRequires: mingw32-expat BuildRequires: mingw32-freexl BuildRequires: mingw32-geos BuildRequires: mingw32-giflib +BuildRequires: mingw32-libarchive BuildRequires: mingw32-libgeotiff BuildRequires: mingw32-libgta BuildRequires: mingw32-libjpeg-turbo @@ -157,8 +194,13 @@ BuildRequires: mingw32-xerces-c BuildRequires: mingw32-xz-libs BuildRequires: mingw32-zlib BuildRequires: mingw32-zstd +%if %{with python3} +BuildRequires: mingw32-python3 +BuildRequires: mingw32-python3-numpy +BuildRequires: mingw32-python3-setuptools +%endif -BuildRequires: mingw64-filesystem >= 102 +BuildRequires: mingw64-filesystem BuildRequires: mingw64-gcc-c++ BuildRequires: mingw64-cfitsio BuildRequires: mingw64-curl @@ -167,6 +209,7 @@ BuildRequires: mingw64-expat BuildRequires: mingw64-freexl BuildRequires: mingw64-geos BuildRequires: mingw64-giflib +BuildRequires: mingw64-libarchive BuildRequires: mingw64-libgeotiff BuildRequires: mingw64-libgta BuildRequires: mingw64-libjpeg-turbo @@ -187,38 +230,16 @@ BuildRequires: mingw64-xerces-c BuildRequires: mingw64-xz-libs BuildRequires: mingw64-zlib BuildRequires: mingw64-zstd -%endif - -# Python %if %{with python3} -BuildRequires: python3-devel -BuildRequires: python3-numpy -BuildRequires: python3-setuptools -BuildRequires: python3dist(pytest) >= 3.6 -BuildRequires: python3dist(lxml) >= 4.5.1 - -%if %{with mingw} -BuildRequires: mingw32-python3 -BuildRequires: mingw32-python3-numpy -BuildRequires: mingw32-python3-setuptools - BuildRequires: mingw64-python3 BuildRequires: mingw64-python3-numpy BuildRequires: mingw64-python3-setuptools %endif %endif -# Java -%if %{with java} -# For 'mvn_artifact' and 'mvn_install' -BuildRequires: ant -BuildRequires: java-devel >= 1:1.6.0 -BuildRequires: javapackages-local -BuildRequires: jpackage-utils -%endif - -# Run time dependency for gpsbabel driver +%if 0%{?fedora} Requires: gpsbabel +%endif Requires: %{name}-libs%{?_isa} = %{version}-%{release} @@ -250,48 +271,7 @@ Provides: bundled(degrib) = 2.14 %description libs This package contains the GDAL file format library. -%if %{with mingw} -%package -n mingw32-%{name} -Summary: MinGW Windows GDAL library -# GDAL bundles a modified copy of g2clib and degrib -# See frmts/grib/degrib/README.TXT -Provides: bundled(g2lib) = 1.6.0 -Provides: bundled(degrib) = 2.14 -BuildArch: noarch -%description -n mingw32-%{name} -MinGW Windows GDAL library. - - -%package -n mingw32-%{name}-tools -Summary: MinGW Windows GDAL library tools -BuildArch: noarch - -%description -n mingw32-%{name}-tools -MinGW Windows GDAL library tools. - - -%package -n mingw64-%{name} -Summary: MinGW Windows GDAL library -# GDAL bundles a modified copy of g2clib and degrib -# See frmts/grib/degrib/README.TXT -Provides: bundled(g2lib) = 1.6.0 -Provides: bundled(degrib) = 2.14 -BuildArch: noarch - -%description -n mingw64-%{name} -MinGW Windows GDAL library. - - -%package -n mingw64-%{name}-tools -Summary: MinGW Windows GDAL library tools -BuildArch: noarch - -%description -n mingw64-%{name}-tools -MinGW Windows GDAL library tools. -%endif - -# No complete java yet in EL8 %if %{with java} %package java Summary: Java modules for the GDAL file format library @@ -331,15 +311,62 @@ Requires: python3-gdal The GDAL Python package provides number of tools for programming and manipulating GDAL file format library +# We don't want to provide private Python extension libs +%global __provides_exclude_from ^%{python3_sitearch}/.*\.so$ +%endif + %if %{with mingw} +%package -n mingw32-%{name} +Summary: MinGW Windows GDAL library +# GDAL bundles a modified copy of g2clib and degrib +# See frmts/grib/degrib/README.TXT +Provides: bundled(g2lib) = 1.6.0 +Provides: bundled(degrib) = 2.14 +BuildArch: noarch + +%description -n mingw32-%{name} +MinGW Windows GDAL library. + + +%package -n mingw32-%{name}-tools +Summary: MinGW Windows GDAL library tools +BuildArch: noarch + +%description -n mingw32-%{name}-tools +MinGW Windows GDAL library tools. + + +%if %{with python3} %package -n mingw32-python3-%{name} Summary: MinGW Windows Python3 GDAL bindings %description -n mingw32-python3-%{name} MinGW Windows Python3 GDAL bindings. +%endif +%package -n mingw64-%{name} +Summary: MinGW Windows GDAL library +# GDAL bundles a modified copy of g2clib and degrib +# See frmts/grib/degrib/README.TXT +Provides: bundled(g2lib) = 1.6.0 +Provides: bundled(degrib) = 2.14 +BuildArch: noarch + +%description -n mingw64-%{name} +MinGW Windows GDAL library. + + +%package -n mingw64-%{name}-tools +Summary: MinGW Windows GDAL library tools +BuildArch: noarch + +%description -n mingw64-%{name}-tools +MinGW Windows GDAL library tools. + + +%if %{with python3} %package -n mingw64-python3-%{name} Summary: MinGW Windows Python3 GDAL bindings @@ -347,12 +374,6 @@ Summary: MinGW Windows Python3 GDAL bindings MinGW Windows Python3 GDAL bindings. %endif -# We don't want to provide private Python extension libs -%global __provides_exclude_from ^%{python3_sitearch}/.*\.so$ -%endif - - -%if %{with mingw} %{?mingw_debug_package} %endif @@ -384,8 +405,23 @@ cp -a %{SOURCE4} . %build %cmake \ -DCMAKE_INSTALL_INCLUDEDIR=include/gdal \ +%if %{with java} -DGDAL_JAVA_INSTALL_DIR=%{_jnidir}/%{name} \ -DGDAL_JAVA_JNI_INSTALL_DIR=%{_jnidir}/%{name} \ +%endif +%if ! 0%{?fedora} + -DGDAL_BUILD_OPTIONAL_DRIVERS=OFF \ + -DOGR_BUILD_OPTIONAL_DRIVERS=OFF \ + -DGDAL_USE_JPEG=ON \ + -DGDAL_USE_JPEG_INTERNAL=OFF \ + -DGDAL_USE_GOOGLETEST=OFF \ + -DGDAL_USE_LERC=OFF \ + -DGDAL_USE_LERC_INTERNAL=OFF \ + -DGDAL_USE_GEOTIFF=OFF \ + -DGDAL_USE_GEOTIFF_INTERNAL=OFF \ + -DBUILD_PYTHON_BINDINGS=OFF \ + -DBUILD_TESTING=OFF \ +%endif -DGDAL_USE_JPEG12_INTERNAL=OFF \ -DENABLE_DEFLATE64=OFF %cmake_build @@ -410,14 +446,6 @@ rm -r %{buildroot}%{mingw32_datadir} rm -r %{buildroot}%{mingw64_datadir} %endif -# List of manpages for python scripts -for file in %{buildroot}%{_bindir}/*.py; do - if [ -f %{buildroot}%{_mandir}/man1/`basename ${file/.py/.1*}` ]; then - echo "%{_mandir}/man1/`basename ${file/.py/.1*}`" >> gdal_python_manpages.txt - echo "%exclude %{_mandir}/man1/`basename ${file/.py/.1*}`" >> gdal_python_manpages_excludes.txt - fi -done - # Multilib # - cpl_config.h is arch-dependent (contains various SIZEOF defines) # - gdal-config stores arch-specific information @@ -426,6 +454,18 @@ cp -a %{SOURCE2} %{buildroot}%{_includedir}/%{name}/cpl_config.h mv %{buildroot}%{_bindir}/%{name}-config %{buildroot}%{_bindir}/%{name}-config-%{cpuarch} cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config +# FIXME Fix shebangs +find %{buildroot} -name '*.py' -exec sed -i 's|^#!python$|#!/usr/bin/python3|g' {} \; + +%if %{without python3} +# completions and manpages for python scripts regardless of BUILD_PYTHON_BINDINGS +for p in gdal2tiles gdal2xyz gdal_calc gdal_edit gdal_fillnodata gdal_merge gdal_pansharpen \ + gdal_polygonize gdal_proximity gdal_retile gdal_sieve gdalchksum gdalcompare \ + gdalident gdalimport gdalmove ogr_layer_algebra ogrmerge pct2rgb rgb2pct ; do + rm -f %{buildroot}%{_datadir}/bash-completion/completions/${p}.py + rm -f %{buildroot}%{_mandir}/man1/${p}.1* +done +%endif %if %{with mingw} %mingw_debug_install_post @@ -438,10 +478,10 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %endif -%files -f gdal_python_manpages_excludes.txt -%{_bindir}/8211* +%files %{_bindir}/gdal_contour %{_bindir}/gdal_create +%{_bindir}/gdal_footprint %{_bindir}/gdal_grid %{_bindir}/gdal_rasterize %{_bindir}/gdal_translate @@ -450,7 +490,6 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %{_bindir}/gdalbuildvrt %{_bindir}/gdaldem %{_bindir}/gdalenhance -%{_bindir}/gdal_footprint %{_bindir}/gdalinfo %{_bindir}/gdallocationinfo %{_bindir}/gdalmanage @@ -467,19 +506,67 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %{_bindir}/ogrinfo %{_bindir}/ogrlineref %{_bindir}/ogrtindex -%{_bindir}/s57dump %{_bindir}/sozip -%{_datadir}/bash-completion/completions/* -%exclude %{_datadir}/bash-completion/completions/*.py -%{_mandir}/man1/* -%exclude %{_mandir}/man1/gdal-config.1* -# Python manpages excluded in -f gdal_python_manpages_excludes.txt +%if 0%{?fedora} +%{_bindir}/8211* +%{_bindir}/s57dump +%endif +%{_datadir}/bash-completion/completions/gdal-config +%{_datadir}/bash-completion/completions/gdal_contour +%{_datadir}/bash-completion/completions/gdal_create +%{_datadir}/bash-completion/completions/gdal_grid +%{_datadir}/bash-completion/completions/gdal_rasterize +%{_datadir}/bash-completion/completions/gdal_translate +%{_datadir}/bash-completion/completions/gdal_viewshed +%{_datadir}/bash-completion/completions/gdaladdo +%{_datadir}/bash-completion/completions/gdalbuildvrt +%{_datadir}/bash-completion/completions/gdaldem +%{_datadir}/bash-completion/completions/gdalenhance +%{_datadir}/bash-completion/completions/gdalinfo +%{_datadir}/bash-completion/completions/gdallocationinfo +%{_datadir}/bash-completion/completions/gdalmanage +%{_datadir}/bash-completion/completions/gdalsrsinfo +%{_datadir}/bash-completion/completions/gdaltindex +%{_datadir}/bash-completion/completions/gdaltransform +%{_datadir}/bash-completion/completions/gdalwarp +%{_datadir}/bash-completion/completions/ogr2ogr +%{_datadir}/bash-completion/completions/ogrinfo +%{_datadir}/bash-completion/completions/ogrlineref +%{_datadir}/bash-completion/completions/ogrtindex +%{_mandir}/man1/gdaladdo.1.* +%{_mandir}/man1/gdalbuildvrt.1.* +%{_mandir}/man1/gdal-config.1.* +%{_mandir}/man1/gdal_contour.1.* +%{_mandir}/man1/gdal_create.1.* +%{_mandir}/man1/gdaldem.1.* +%{_mandir}/man1/gdal_footprint.1.* +%{_mandir}/man1/gdal_grid.1.* +%{_mandir}/man1/gdalinfo.1.* +%{_mandir}/man1/gdallocationinfo.1.* +%{_mandir}/man1/gdalmanage.1.* +%{_mandir}/man1/gdalmdiminfo.1.* +%{_mandir}/man1/gdalmdimtranslate.1.* +%{_mandir}/man1/gdal_rasterize.1.* +%{_mandir}/man1/gdalsrsinfo.1.* +%{_mandir}/man1/gdaltindex.1.* +%{_mandir}/man1/gdaltransform.1.* +%{_mandir}/man1/gdal_translate.1.* +%{_mandir}/man1/gdal_viewshed.1.* +%{_mandir}/man1/gdalwarp.1.* +%{_mandir}/man1/gnmanalyse.1.* +%{_mandir}/man1/gnmmanage.1.* +%{_mandir}/man1/nearblack.1.* +%{_mandir}/man1/ogr2ogr.1.* +%{_mandir}/man1/ogrinfo.1.* +%{_mandir}/man1/ogrlineref.1.* +%{_mandir}/man1/ogrtindex.1.* +%{_mandir}/man1/sozip.1.* %files libs %license LICENSE.TXT %doc NEWS.md PROVENANCE.TXT COMMITTERS PROVENANCE.TXT-fedora -%{_libdir}/libgdal.so.34 -%{_libdir}/libgdal.so.34.* +%{_libdir}/libgdal.so.36 +%{_libdir}/libgdal.so.36.* %{_datadir}/%{name}/ %{_libdir}/gdalplugins/ @@ -492,10 +579,99 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %{_libdir}/pkgconfig/%{name}.pc %{_mandir}/man1/gdal-config.1* +%if %{with java} +%files java +%{_jnidir}/%{name}/gdal-%{version}-sources.jar +%{_jnidir}/%{name}/gdal-%{version}.jar +%{_jnidir}/%{name}/gdal-%{version}.pom +%{_jnidir}/%{name}/libgdalalljni.so + +%files javadoc +%{_jnidir}/%{name}/gdal-%{version}-javadoc.jar +%endif + +%if %{with python3} +%files -n python3-gdal +%doc swig/python/README.rst +%{python3_sitearch}/GDAL-%{version}-py*.egg-info/ +%{python3_sitearch}/osgeo/ +%{python3_sitearch}/osgeo_utils/ + +%files python-tools +%{_bindir}/gdal2tiles +%{_bindir}/gdal2tiles.py +%{_bindir}/gdal2xyz +%{_bindir}/gdal2xyz.py +%{_bindir}/gdalattachpct +%{_bindir}/gdalattachpct.py +%{_bindir}/gdal_calc +%{_bindir}/gdal_calc.py +%{_bindir}/gdalcompare +%{_bindir}/gdalcompare.py +%{_bindir}/gdal_edit +%{_bindir}/gdal_edit.py +%{_bindir}/gdal_fillnodata +%{_bindir}/gdal_fillnodata.py +%{_bindir}/gdal_merge +%{_bindir}/gdal_merge.py +%{_bindir}/gdalmove +%{_bindir}/gdalmove.py +%{_bindir}/gdal_pansharpen +%{_bindir}/gdal_pansharpen.py +%{_bindir}/gdal_polygonize +%{_bindir}/gdal_polygonize.py +%{_bindir}/gdal_proximity +%{_bindir}/gdal_proximity.py +%{_bindir}/gdal_retile +%{_bindir}/gdal_retile.py +%{_bindir}/gdal_sieve +%{_bindir}/gdal_sieve.py +%{_bindir}/ogr_layer_algebra +%{_bindir}/ogr_layer_algebra.py +%{_bindir}/ogrmerge +%{_bindir}/ogrmerge.py +%{_bindir}/pct2rgb +%{_bindir}/pct2rgb.py +%{_bindir}/rgb2pct +%{_bindir}/rgb2pct.py +%{_datadir}/bash-completion/completions/gdal2tiles.py +%{_datadir}/bash-completion/completions/gdal2xyz.py +%{_datadir}/bash-completion/completions/gdal_calc.py +%{_datadir}/bash-completion/completions/gdal_edit.py +%{_datadir}/bash-completion/completions/gdal_fillnodata.py +%{_datadir}/bash-completion/completions/gdal_merge.py +%{_datadir}/bash-completion/completions/gdal_polygonize.py +%{_datadir}/bash-completion/completions/gdal_proximity.py +%{_datadir}/bash-completion/completions/gdal_retile.py +%{_datadir}/bash-completion/completions/gdal_sieve.py +%{_datadir}/bash-completion/completions/gdalchksum.py +%{_datadir}/bash-completion/completions/gdalcompare.py +%{_datadir}/bash-completion/completions/gdalident.py +%{_datadir}/bash-completion/completions/gdalimport.py +%{_datadir}/bash-completion/completions/gdalmove.py +%{_datadir}/bash-completion/completions/ogrmerge.py +%{_mandir}/man1/gdal2tiles.1* +%{_mandir}/man1/gdal_calc.1* +%{_mandir}/man1/gdalcompare.1* +%{_mandir}/man1/gdal_edit.1* +%{_mandir}/man1/gdal_fillnodata.1* +%{_mandir}/man1/gdal_merge.1* +%{_mandir}/man1/gdalmove.1* +%{_mandir}/man1/gdal_pansharpen.1* +%{_mandir}/man1/gdal_polygonize.1* +%{_mandir}/man1/gdal_proximity.1* +%{_mandir}/man1/gdal_retile.1* +%{_mandir}/man1/gdal_sieve.1* +%{_mandir}/man1/ogr_layer_algebra.1* +%{_mandir}/man1/ogrmerge.1* +%{_mandir}/man1/pct2rgb.1* +%{_mandir}/man1/rgb2pct.1* +%endif + %if %{with mingw} %files -n mingw32-%{name} %license LICENSE.TXT -%{mingw32_bindir}/libgdal-34.dll +%{mingw32_bindir}/libgdal-36.dll %{mingw32_bindir}/gdal-config %{mingw32_libdir}/libgdal.dll.a %{mingw32_libdir}/cmake/gdal/ @@ -506,9 +682,52 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %files -n mingw32-%{name}-tools %{mingw32_bindir}/*.exe +%if %{with python3} +%files -n mingw32-python3-%{name} +%{mingw32_bindir}/gdal2tiles +%{mingw32_bindir}/gdal2tiles.py +%{mingw32_bindir}/gdal2xyz +%{mingw32_bindir}/gdal2xyz.py +%{mingw32_bindir}/gdal_calc +%{mingw32_bindir}/gdal_calc.py +%{mingw32_bindir}/gdal_edit +%{mingw32_bindir}/gdal_edit.py +%{mingw32_bindir}/gdal_fillnodata +%{mingw32_bindir}/gdal_fillnodata.py +%{mingw32_bindir}/gdal_merge +%{mingw32_bindir}/gdal_merge.py +%{mingw32_bindir}/gdal_pansharpen +%{mingw32_bindir}/gdal_pansharpen.py +%{mingw32_bindir}/gdal_polygonize +%{mingw32_bindir}/gdal_polygonize.py +%{mingw32_bindir}/gdal_proximity +%{mingw32_bindir}/gdal_proximity.py +%{mingw32_bindir}/gdal_retile +%{mingw32_bindir}/gdal_retile.py +%{mingw32_bindir}/gdal_sieve +%{mingw32_bindir}/gdal_sieve.py +%{mingw32_bindir}/gdalattachpct +%{mingw32_bindir}/gdalattachpct.py +%{mingw32_bindir}/gdalcompare +%{mingw32_bindir}/gdalcompare.py +%{mingw32_bindir}/gdalmove +%{mingw32_bindir}/gdalmove.py +%{mingw32_bindir}/ogr_layer_algebra +%{mingw32_bindir}/ogr_layer_algebra.py +%{mingw32_bindir}/ogrmerge +%{mingw32_bindir}/ogrmerge.py +%{mingw32_bindir}/pct2rgb +%{mingw32_bindir}/pct2rgb.py +%{mingw32_bindir}/rgb2pct +%{mingw32_bindir}/rgb2pct.py +%{mingw32_python3_sitearch}/GDAL-%{version}-py%{mingw32_python3_version}.egg-info/ +%{mingw32_python3_sitearch}/osgeo/ +%{mingw32_python3_sitearch}/osgeo_utils/ +%endif + %files -n mingw64-%{name} %license LICENSE.TXT -%{mingw64_bindir}/libgdal-34.dll +%{mingw64_bindir}/libgdal-36.dll %{mingw64_bindir}/gdal-config %{mingw64_libdir}/libgdal.dll.a %{mingw64_libdir}/cmake/gdal/ @@ -518,45 +737,45 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %files -n mingw64-%{name}-tools %{mingw64_bindir}/*.exe -%endif %if %{with python3} -%files -n python3-gdal -%doc swig/python/README.rst -%{python3_sitearch}/GDAL-%{version}-py*.egg-info/ -%{python3_sitearch}/osgeo/ -%{python3_sitearch}/osgeo_utils/ - -%files python-tools -f gdal_python_manpages.txt -%{_bindir}/gdal_calc.py -%{_bindir}/gdal_edit.py -%{_bindir}/gdal_fillnodata.py -%{_bindir}/gdal_merge.py -%{_bindir}/gdal_pansharpen.py -%{_bindir}/gdal_polygonize.py -%{_bindir}/gdal_proximity.py -%{_bindir}/gdal_retile.py -%{_bindir}/gdal_sieve.py -%{_bindir}/gdal2tiles.py -%{_bindir}/gdal2xyz.py -%{_bindir}/gdalattachpct.py -%{_bindir}/gdalcompare.py -%{_bindir}/gdalmove.py -%{_bindir}/ogr_layer_algebra.py -%{_bindir}/ogrmerge.py -%{_bindir}/pct2rgb.py -%{_bindir}/rgb2pct.py -%{_datadir}/bash-completion/completions/*.py - -%if %{with mingw} -%files -n mingw32-python3-%{name} -%{mingw32_bindir}/*.py -%{mingw32_python3_sitearch}/GDAL-%{version}-py%{mingw32_python3_version}.egg-info/ -%{mingw32_python3_sitearch}/osgeo/ -%{mingw32_python3_sitearch}/osgeo_utils/ - %files -n mingw64-python3-%{name} -%{mingw64_bindir}/*.py +%{mingw64_bindir}/gdal2tiles +%{mingw64_bindir}/gdal2tiles.py +%{mingw64_bindir}/gdal2xyz +%{mingw64_bindir}/gdal2xyz.py +%{mingw64_bindir}/gdal_calc +%{mingw64_bindir}/gdal_calc.py +%{mingw64_bindir}/gdal_edit +%{mingw64_bindir}/gdal_edit.py +%{mingw64_bindir}/gdal_fillnodata +%{mingw64_bindir}/gdal_fillnodata.py +%{mingw64_bindir}/gdal_merge +%{mingw64_bindir}/gdal_merge.py +%{mingw64_bindir}/gdal_pansharpen +%{mingw64_bindir}/gdal_pansharpen.py +%{mingw64_bindir}/gdal_polygonize +%{mingw64_bindir}/gdal_polygonize.py +%{mingw64_bindir}/gdal_proximity +%{mingw64_bindir}/gdal_proximity.py +%{mingw64_bindir}/gdal_retile +%{mingw64_bindir}/gdal_retile.py +%{mingw64_bindir}/gdal_sieve +%{mingw64_bindir}/gdal_sieve.py +%{mingw64_bindir}/gdalattachpct +%{mingw64_bindir}/gdalattachpct.py +%{mingw64_bindir}/gdalcompare +%{mingw64_bindir}/gdalcompare.py +%{mingw64_bindir}/gdalmove +%{mingw64_bindir}/gdalmove.py +%{mingw64_bindir}/ogr_layer_algebra +%{mingw64_bindir}/ogr_layer_algebra.py +%{mingw64_bindir}/ogrmerge +%{mingw64_bindir}/ogrmerge.py +%{mingw64_bindir}/pct2rgb +%{mingw64_bindir}/pct2rgb.py +%{mingw64_bindir}/rgb2pct +%{mingw64_bindir}/rgb2pct.py %{mingw64_python3_sitearch}/GDAL-%{version}-py%{mingw32_python3_version}.egg-info/ %{mingw64_python3_sitearch}/osgeo/ %{mingw64_python3_sitearch}/osgeo_utils/ @@ -576,6 +795,126 @@ cp -a %{SOURCE3} %{buildroot}%{_bindir}/%{name}-config %changelog +* Tue Jun 03 2025 Python Maint - 3.10.3-3 +- Rebuilt for Python 3.14 + +* Fri May 16 2025 Sandro Mani - 3.10.3-2 +- Fix *.py scripts packaging + +* Mon Apr 07 2025 Sandro Mani - 3.10.3-1 +- Update to 3.10.3 + +* Thu Feb 27 2025 Laurențiu Nicola - 3.10.2-5 +- Enable blosc + +* Wed Feb 26 2025 Sandro Mani - 3.10.2-4 +- Rebuild (poppler) + +* Thu Feb 20 2025 Marek Kasik - 3.10.2-3 +- Add definitions of missing int16_t and int32_t + +* Thu Feb 20 2025 Marek Kasik - 3.10.2-2 +- Rebuild for libarrow 19 in poppler's sidetag + +* Sat Feb 15 2025 Sandro Mani - 3.10.2-1 +- Update to 3.10.2 + +* Fri Feb 14 2025 Benjamin A. Beasley - 3.10.1-4 +- Rebuilt for libarrow 19 + +* Tue Feb 11 2025 Sandro Mani - 3.10.1-3 +- Rebuild (poppler) + +* Thu Jan 16 2025 Fedora Release Engineering - 3.10.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Tue Jan 14 2025 Sandro Mani - 3.10.1-1 +- Update to 3.10.1 + +* Wed Nov 27 2024 Richard W.M. Jones - 3.10.0-4 +- Rebuild for libarrow 18 + +* Wed Nov 20 2024 Sandro Mani - 3.10.0-3 +- Drop fedora conditional for gpsbabel requires + +* Tue Nov 19 2024 Sandro Mani - 3.10.0-2 +- Require gpsbabel only on Fedora + +* Wed Nov 06 2024 Sandro Mani - 3.10.0-1 +- Update to 3.10.0 + +* Fri Oct 25 2024 Orion Poplawski - 3.9.3-5 +- Rebuild for hdf5 1.14.5 + +* Tue Oct 22 2024 Sandro Mani - 3.9.3-4 +- Rebuild (mingw-xerces-c) + +* Mon Oct 21 2024 Pete Walter - 3.9.3-3 +- Rebuild for xerces-c 3.3 + +* Fri Oct 18 2024 Pete Walter - 3.9.3-2 +- Rebuild for xerces-c 3.3 + +* Tue Oct 15 2024 Sandro Mani - 3.9.3-1 +- Update to 3.9.3 + +* Mon Sep 16 2024 Sandro Mani - 3.9.2-4 +- Rebuild (proj) + +* Fri Aug 23 2024 Sandro Mani - 3.9.2-3 +- Rebuild (mingw-poppler) + +* Thu Aug 22 2024 Marek Kasik - 3.9.2-2 +- Rebuild for poppler 24.08.0 + +* Sat Aug 17 2024 Sandro Mani - 3.9.2-1 +- Update to 3.9.2 + +* Thu Jul 18 2024 Fedora Release Engineering - 3.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Wed Jun 26 2024 Sandro Mani - 3.9.1-1 +- Update to 3.9.1 + +* Sun Jun 09 2024 Python Maint - 3.9.0-4 +- Rebuilt for Python 3.13 + +* Wed May 15 2024 Sandro Mani - 3.9.0-3 +- Rebuild (libarrow) + +* Tue May 14 2024 Sandro Mani - 3.9.0-2 +- BR: libarrow-dataset-devel + +* Sat May 11 2024 Sandro Mani - 3.9.0-1 +- Update to 3.9.0 + +* Wed Apr 24 2024 Benjamin A. Beasley - 3.8.5-4 +- Rebuilt for openexr 3.2.4 + +* Tue Apr 23 2024 Sandro Mani - 3.8.5-3 +- Rebuild (libarrow) + +* Sun Apr 14 2024 Sandro Mani - 3.8.5-2 +- BR: parquet-libs-devel + +* Mon Apr 08 2024 Sandro Mani - 3.8.5-1 +- Update to 3.8.5 + +* Thu Mar 21 2024 Sandro Mani - 3.8.4-5 +- Rebuild (libarrow) + +* Tue Mar 19 2024 Sandro Mani - 3.8.4-4 +- Rebuild (libarrow) + +* Tue Mar 05 2024 Sandro Mani - 3.8.4-3 +- Rebuild (proj) + +* Mon Feb 26 2024 Sandro Mani - 3.8.4-2 +- BR: libarchive + +* Sun Feb 18 2024 Sandro Mani - 3.8.4-1 +- Update to 3.8.4 + * Fri Feb 02 2024 Sandro Mani - 3.8.3-5 - Rebuild (poppler) diff --git a/gdal_incompatible-pointer-types.patch b/gdal_incompatible-pointer-types.patch new file mode 100644 index 0000000..f70e12e --- /dev/null +++ b/gdal_incompatible-pointer-types.patch @@ -0,0 +1,21 @@ +diff -rupN --no-dereference gdal-3.10.3-fedora/port/cpl_vsil_win32.cpp gdal-3.10.3-fedora-new/port/cpl_vsil_win32.cpp +--- gdal-3.10.3-fedora/port/cpl_vsil_win32.cpp 2025-04-01 13:03:22.000000000 +0200 ++++ gdal-3.10.3-fedora-new/port/cpl_vsil_win32.cpp 2025-04-07 13:39:47.318116680 +0200 +@@ -896,7 +896,7 @@ int VSIWin32FilesystemHandler::Stat(cons + pwszFilename[nLen - 1] = 0; + #endif + +- int nResult = _wstat64(pwszFilename, pStatBuf); ++ int nResult = _wstat64(pwszFilename, reinterpret_cast(pStatBuf)); + + // If _wstat64() fails and the original name is not an extended one, + // then retry with an extended filename +@@ -907,7 +907,7 @@ int VSIWin32FilesystemHandler::Stat(cons + nLastError == ERROR_FILENAME_EXCED_RANGE) + { + VSIWin32TryLongFilename(pwszFilename); +- nResult = _wstat64(pwszFilename, pStatBuf); ++ nResult = _wstat64(pwszFilename, reinterpret_cast(pStatBuf)); + } + } + diff --git a/gdal_utils.patch b/gdal_utils.patch index c776178..3128eba 100644 --- a/gdal_utils.patch +++ b/gdal_utils.patch @@ -1,39 +1,37 @@ -diff -rupN --no-dereference gdal-3.8.3-fedora/frmts/iso8211/CMakeLists.txt gdal-3.8.3-fedora-new/frmts/iso8211/CMakeLists.txt ---- gdal-3.8.3-fedora/frmts/iso8211/CMakeLists.txt 2024-01-04 19:08:59.000000000 +0100 -+++ gdal-3.8.3-fedora-new/frmts/iso8211/CMakeLists.txt 2024-01-08 22:30:01.000874184 +0100 -@@ -15,15 +15,18 @@ gdal_standard_includes(gdal_iso8211) +diff -rupN --no-dereference gdal-3.10.3-fedora/frmts/iso8211/CMakeLists.txt gdal-3.10.3-fedora-new/frmts/iso8211/CMakeLists.txt +--- gdal-3.10.3-fedora/frmts/iso8211/CMakeLists.txt 2025-04-01 13:03:21.000000000 +0200 ++++ gdal-3.10.3-fedora-new/frmts/iso8211/CMakeLists.txt 2025-04-07 13:39:46.951980413 +0200 +@@ -14,14 +14,17 @@ target_sources(${GDAL_LIB_TARGET_NAME} P + gdal_standard_includes(gdal_iso8211) # Because linking an OBJECT library - if (CMAKE_VERSION VERSION_GREATER_EQUAL 3.12) -- add_executable(8211dump EXCLUDE_FROM_ALL 8211dump.cpp) -+ add_executable(8211dump 8211dump.cpp) - target_include_directories(8211dump PRIVATE $) - target_link_libraries(8211dump PRIVATE $ gdal_iso8211) -+ install(TARGETS 8211dump RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +-add_executable(8211dump EXCLUDE_FROM_ALL 8211dump.cpp) ++add_executable(8211dump 8211dump.cpp) + target_include_directories(8211dump PRIVATE $) + target_link_libraries(8211dump PRIVATE $ gdal_iso8211) ++install(TARGETS 8211dump RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) -- add_executable(8211view EXCLUDE_FROM_ALL 8211view.cpp) -+ add_executable(8211view 8211view.cpp) - target_include_directories(8211view PRIVATE $) - target_link_libraries(8211view PRIVATE $ gdal_iso8211) -+ install(TARGETS 8211view RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +-add_executable(8211view EXCLUDE_FROM_ALL 8211view.cpp) ++add_executable(8211view 8211view.cpp) + target_include_directories(8211view PRIVATE $) + target_link_libraries(8211view PRIVATE $ gdal_iso8211) ++install(TARGETS 8211view RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) -- add_executable(8211createfromxml EXCLUDE_FROM_ALL 8211createfromxml.cpp) -+ add_executable(8211createfromxml 8211createfromxml.cpp) - target_include_directories(8211createfromxml PRIVATE $) - target_link_libraries(8211createfromxml PRIVATE $ gdal_iso8211) -+ install(TARGETS 8211createfromxml RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) - endif () -diff -rupN --no-dereference gdal-3.8.3-fedora/ogr/ogrsf_frmts/s57/CMakeLists.txt gdal-3.8.3-fedora-new/ogr/ogrsf_frmts/s57/CMakeLists.txt ---- gdal-3.8.3-fedora/ogr/ogrsf_frmts/s57/CMakeLists.txt 2024-01-04 19:08:59.000000000 +0100 -+++ gdal-3.8.3-fedora-new/ogr/ogrsf_frmts/s57/CMakeLists.txt 2024-01-08 22:30:01.005874179 +0100 -@@ -17,8 +17,9 @@ target_include_directories(ogr_S57 PRIVA - gdal_standard_includes(ogr_S57) +-add_executable(8211createfromxml EXCLUDE_FROM_ALL 8211createfromxml.cpp) ++add_executable(8211createfromxml 8211createfromxml.cpp) + target_include_directories(8211createfromxml PRIVATE $) + target_link_libraries(8211createfromxml PRIVATE $ gdal_iso8211) ++install(TARGETS 8211createfromxml RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) +diff -rupN --no-dereference gdal-3.10.3-fedora/ogr/ogrsf_frmts/s57/CMakeLists.txt gdal-3.10.3-fedora-new/ogr/ogrsf_frmts/s57/CMakeLists.txt +--- gdal-3.10.3-fedora/ogr/ogrsf_frmts/s57/CMakeLists.txt 2025-04-01 13:03:22.000000000 +0200 ++++ gdal-3.10.3-fedora-new/ogr/ogrsf_frmts/s57/CMakeLists.txt 2025-04-07 13:39:46.952461833 +0200 +@@ -27,7 +27,8 @@ set_property( + APPEND + PROPERTY RESOURCE "${GDAL_DATA_FILES}") - if (CMAKE_VERSION VERSION_GREATER_EQUAL 3.12) -- add_executable(s57dump EXCLUDE_FROM_ALL s57dump.cpp) -+ add_executable(s57dump s57dump.cpp) - gdal_standard_includes(s57dump) - target_include_directories(s57dump PRIVATE $) - target_link_libraries(s57dump PRIVATE $ ogr_S57 gdal_iso8211) -+ install(TARGETS s57dump RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) - endif () +-add_executable(s57dump EXCLUDE_FROM_ALL s57dump.cpp) ++add_executable(s57dump s57dump.cpp) + gdal_standard_includes(s57dump) + target_include_directories(s57dump PRIVATE $) + target_link_libraries(s57dump PRIVATE $ ogr_S57 gdal_iso8211) ++install(TARGETS s57dump RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) diff --git a/sources b/sources index 417256b..0ddc2fd 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (gdal-3.8.3-fedora.tar.xz) = ccd8682a2ab837f23923281a4ff2c539b359dfcf91f3def1f08b2c4267545e3cb72bb1818f9bfc972e3ec2db3e0124a648a29f7317b1637129a27ce58b018d19 -SHA512 (gdalautotest-3.8.3.tar.gz) = 02f80acac170ab46878875dd5ee5d9956c940defcdad9fca14a38781ad7696d0117e63baefc36de370780999ae7ec3ff2ec4cb4a2c37c202365a852c7d01ebc3 +SHA512 (gdal-3.10.3-fedora.tar.xz) = 1dced4c7a62ce74323e26d859b4fe82b67f660ab65c2a44f8de35771b7d9dca73b2d1d8c0497588b686bd3b5ea05045caa9558e19618e4c2b2bea3bf03781483 +SHA512 (gdalautotest-3.10.3.tar.gz) = af8637944498adfbc33b26f747bab0ad6b46216c58a994248ad8e252c90c6050709bef1b0c15986edfb6a87ee7d09bac8fd837266b5deb8980409bb018037c60