From 72ec8b81fed877b2484a79cdfd25078649c0eec0 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Tue, 11 Feb 2025 18:09:24 +0100 Subject: [PATCH 01/11] CI: no longer use Ubuntu 20.04 github images that will be sunsetted April 1st --- .github/workflows/cmake_builds.yml | 28 ++++++++++++++-------------- .github/workflows/code_checks.yml | 7 ++++--- autotest/gdrivers/pdf.py | 4 +++- 3 files changed, 21 insertions(+), 18 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index 9d453c6cd453..a06b7788cca9 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -28,11 +28,12 @@ permissions: jobs: - build-linux-ubuntu-focal: - runs-on: ubuntu-20.04 + build-linux-ubuntu-jammy: + runs-on: ubuntu-22.04 env: - CMAKE_OPTIONS: -DPython_LOOKUP_VERSION=3.8 -DUSE_CCACHE=ON -DSWIG_REGENERATE_PYTHON=ON - cache-name: cmake-ubuntu-focal + BUILD_NAME: cmake-ubuntu-jammy + CMAKE_OPTIONS: -DPython_LOOKUP_VERSION=3.10 -DUSE_CCACHE=ON -DSWIG_REGENERATE_PYTHON=ON + cache-name: cmake-ubuntu-jammy steps: - name: Checkout GDAL uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 @@ -52,16 +53,16 @@ jobs: sudo apt-get install -y -q bison libaec-dev libjpeg-dev libgif-dev liblzma-dev libzstd-dev libgeos-dev git \ libcurl4-gnutls-dev libproj-dev libxml2-dev libxerces-c-dev libnetcdf-dev netcdf-bin \ libpoppler-dev libpoppler-private-dev gpsbabel libhdf4-alt-dev libhdf5-serial-dev libpodofo-dev poppler-utils \ - libfreexl-dev unixodbc-dev libwebp-dev libepsilon-dev liblcms2-2 libcrypto++-dev libkml-dev \ + libfreexl-dev unixodbc-dev libwebp-dev liblcms2-2 libcrypto++-dev libkml-dev \ libmysqlclient-dev libarmadillo-dev wget libfyba-dev libjsoncpp-dev libexpat1-dev \ libclc-dev ocl-icd-opencl-dev libsqlite3-dev sqlite3-pcre libpcre3-dev libspatialite-dev libsfcgal-dev fossil libcairo2-dev libjson-c-dev libdeflate-dev liblz4-dev libblosc-dev libarchive-dev \ libqhull-dev libcfitsio-dev libogdi-dev libopenjp2-7-dev libheif-dev \ - python3-dev libpython3-dev libpython3.8-dev python3.8-dev python3-numpy python3-lxml pyflakes python3-setuptools python3-pip python3-venv \ + python3-dev libpython3-dev libpython3.10-dev python3.10-dev python3-numpy python3-lxml python3-pyflakes python3-setuptools python3-pip python3-venv \ python3-pytest swig doxygen texlive-latex-base make cppcheck ccache g++ \ - libpq-dev libpqtypes-dev postgresql-12 postgresql-12-postgis-3 postgresql-client-12 postgresql-12-postgis-3-scripts + libpq-dev libpqtypes-dev postgresql-14 postgresql-14-postgis-3 postgresql-client-14 postgresql-14-postgis-3-scripts # MSSQL: client side curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - - curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list + curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list sudo apt-get update sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17 unixodbc-dev # HANA: client side @@ -97,7 +98,6 @@ jobs: # Workaround bug in ogdi packaging sudo ln -s /usr/lib/ogdi/libvrf.so /usr/lib # - PYTHON_CMD=python3 && $PYTHON_CMD -m pip install -U pip wheel setuptools numpy importlib_metadata PYTHON_CMD=python3 && $PYTHON_CMD -m pip install -r $GITHUB_WORKSPACE/autotest/requirements.txt - name: Build libjxl @@ -217,17 +217,17 @@ jobs: test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdaladdo.1 export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib $GITHUB_WORKSPACE/install-gdal/bin/gdalinfo --version - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.8/site-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" # Test fix for https://github.com/conda-forge/gdal-feedstock/issues/995 - PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.8/site-packages python3 -c "from osgeo import gdal" - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.8/site-packages python3 $GITHUB_WORKSPACE/scripts/check_doc.py + PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 -c "from osgeo import gdal" + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 $GITHUB_WORKSPACE/scripts/check_doc.py - name: CMake with rpath run: | export PATH=$CMAKE_DIR:/usr/local/bin:/usr/bin:/bin # Avoid CMake config from brew etc. (cd $GITHUB_WORKSPACE/superbuild/build; cmake .. "-DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/install-gdal-with-rpath" "-DCMAKE_INSTALL_RPATH=$GITHUB_WORKSPACE/install-gdal-with-rpath/lib") cmake --build $GITHUB_WORKSPACE/superbuild/build --target install -- -j$(nproc) # For some reason, during the install phase of above invocation, the Python bindings are rebuilt after the build phase, and without the rpath... Can't reproduce that locally - # PYTHONPATH=$GITHUB_WORKSPACE/install-gdal-with-rpath/lib/python3.8/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" + # PYTHONPATH=$GITHUB_WORKSPACE/install-gdal-with-rpath/lib/python3.10/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" - name: Rerun using Mono run: | export PATH=$CMAKE_DIR:/usr/local/bin:/usr/bin:/bin # Avoid CMake config from brew etc. @@ -249,7 +249,7 @@ jobs: LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib python -c "from osgeo import gdal_array" which gdal_edit cp $GITHUB_WORKSPACE/autotest/gcore/data/byte.tif . - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib ldd myvenv/lib/python3.8/site-packages/osgeo/_gdal.cpython-38-x86_64-linux-gnu.so + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib ldd myvenv/lib/python3.10/site-packages/osgeo/_gdal.cpython-310-x86_64-linux-gnu.so LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib gdal_edit byte.tif -mo FOO=BAR rm -f myvenv/bin/gdal_edit rm -f myvenv/bin/gdal_edit.py diff --git a/.github/workflows/code_checks.yml b/.github/workflows/code_checks.yml index 3c00044a4bc0..8c1a78699ff3 100644 --- a/.github/workflows/code_checks.yml +++ b/.github/workflows/code_checks.yml @@ -21,15 +21,16 @@ permissions: jobs: cppcheck_2004: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest + container: ubuntu:20.04 steps: - name: Checkout uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 - name: Install Requirements run: | - sudo apt update - sudo apt install -y cppcheck libsqlite3-dev ccache sqlite3 libproj-dev cmake + apt update + apt install -y cppcheck libsqlite3-dev ccache sqlite3 libproj-dev cmake g++ make - name: Run cmake run: | diff --git a/autotest/gdrivers/pdf.py b/autotest/gdrivers/pdf.py index a0b52465ff43..e51046ecc54b 100755 --- a/autotest/gdrivers/pdf.py +++ b/autotest/gdrivers/pdf.py @@ -1649,7 +1649,9 @@ def test_pdf_overviews(poppler_or_pdfium): def test_pdf_password(poppler_or_pdfium_or_podofo): - if gdaltest.is_travis_branch("alpine_32bit"): + if gdaltest.is_travis_branch("alpine_32bit") or gdaltest.is_travis_branch( + "cmake-ubuntu-jammy" + ): pytest.skip() # User password of this test file is user_password and owner password is From a74b8cc171067c9b26acaf5c4d7e91151e56b08f Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Thu, 13 Feb 2025 13:09:24 +0100 Subject: [PATCH 02/11] try with local/lib --- .github/workflows/cmake_builds.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index a06b7788cca9..43286e13d802 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -217,10 +217,10 @@ jobs: test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdaladdo.1 export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib $GITHUB_WORKSPACE/install-gdal/bin/gdalinfo --version - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" # Test fix for https://github.com/conda-forge/gdal-feedstock/issues/995 PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 -c "from osgeo import gdal" - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 $GITHUB_WORKSPACE/scripts/check_doc.py + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 $GITHUB_WORKSPACE/scripts/check_doc.py - name: CMake with rpath run: | export PATH=$CMAKE_DIR:/usr/local/bin:/usr/bin:/bin # Avoid CMake config from brew etc. From 9cbf499781e843fa8e65d8928e0df7dad9d5a7bf Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Thu, 13 Feb 2025 13:50:40 +0100 Subject: [PATCH 03/11] missing one local --- .github/workflows/cmake_builds.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index 43286e13d802..9a6ad4f46cf7 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -219,7 +219,7 @@ jobs: $GITHUB_WORKSPACE/install-gdal/bin/gdalinfo --version PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" # Test fix for https://github.com/conda-forge/gdal-feedstock/issues/995 - PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/python3.10/dist-packages python3 -c "from osgeo import gdal" + PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 $GITHUB_WORKSPACE/scripts/check_doc.py - name: CMake with rpath run: | From e45525cf6755e8228b32e73ce7ef34e91c757ee6 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Thu, 13 Feb 2025 14:55:17 +0100 Subject: [PATCH 04/11] Skip "AVIF_HEIF" in check docs --- scripts/check_doc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/check_doc.py b/scripts/check_doc.py index c4e1608cc67a..cc3b04f8fec6 100755 --- a/scripts/check_doc.py +++ b/scripts/check_doc.py @@ -38,7 +38,7 @@ for i in range(gdal.GetDriverCount()): drv = gdal.GetDriver(i) shortname = drv.ShortName - if shortname in ("BIGGIF", "GTX", "NULL", "GNMFile", "GNMDatabase", "HTTP"): + if shortname in ("BIGGIF", "GTX", "NULL", "GNMFile", "GNMDatabase", "HTTP", "AVIF_HEIF"): continue if shortname == "OGR_GMT": shortname = "GMT" From d2319b0b9a41fc1db687ef9338eda30b6ab56f89 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Thu, 13 Feb 2025 15:04:36 +0100 Subject: [PATCH 05/11] lint --- scripts/check_doc.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/scripts/check_doc.py b/scripts/check_doc.py index cc3b04f8fec6..e963a19da634 100755 --- a/scripts/check_doc.py +++ b/scripts/check_doc.py @@ -38,7 +38,15 @@ for i in range(gdal.GetDriverCount()): drv = gdal.GetDriver(i) shortname = drv.ShortName - if shortname in ("BIGGIF", "GTX", "NULL", "GNMFile", "GNMDatabase", "HTTP", "AVIF_HEIF"): + if shortname in ( + "BIGGIF", + "GTX", + "NULL", + "GNMFile", + "GNMDatabase", + "HTTP", + "AVIF_HEIF", + ): continue if shortname == "OGR_GMT": shortname = "GMT" From a9bb2aed01d52f108f90d52c424335fd6e0a1cd9 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Thu, 13 Feb 2025 16:04:50 +0100 Subject: [PATCH 06/11] Further 'local' insertions --- .github/workflows/cmake_builds.yml | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index 9a6ad4f46cf7..f30f29357012 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -215,8 +215,8 @@ jobs: cmake --build $GITHUB_WORKSPACE/superbuild/build --target install -- -j$(nproc) test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdalinfo.1 test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdaladdo.1 - export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib - $GITHUB_WORKSPACE/install-gdal/bin/gdalinfo --version + export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib + $GITHUB_WORKSPACE/install-gdal/local/bin/gdalinfo --version PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" # Test fix for https://github.com/conda-forge/gdal-feedstock/issues/995 PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal" @@ -245,12 +245,12 @@ jobs: python3 -m venv myvenv source myvenv/bin/activate # Set PATH so that gdal-config is found - PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH $PYTHON_CMD -m pip install gdal-python.tar.gz[numpy] - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib python -c "from osgeo import gdal_array" + PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH $PYTHON_CMD -m pip install gdal-python.tar.gz[numpy] + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib python -c "from osgeo import gdal_array" which gdal_edit cp $GITHUB_WORKSPACE/autotest/gcore/data/byte.tif . - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib ldd myvenv/lib/python3.10/site-packages/osgeo/_gdal.cpython-310-x86_64-linux-gnu.so - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib gdal_edit byte.tif -mo FOO=BAR + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib ldd myvenv/lib/python3.10/site-packages/osgeo/_gdal.cpython-310-x86_64-linux-gnu.so + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib gdal_edit byte.tif -mo FOO=BAR rm -f myvenv/bin/gdal_edit rm -f myvenv/bin/gdal_edit.py - name: Standalone gdal-utils package from wheel @@ -262,10 +262,10 @@ jobs: python3 -m venv myvenv source myvenv/bin/activate # Set PATH so that gdal-config is found - PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH $PYTHON_CMD -m pip install gdal_utils-X.Y.Z.T-py3-none-any.whl + PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH $PYTHON_CMD -m pip install gdal_utils-X.Y.Z.T-py3-none-any.whl which gdal_edit cp $GITHUB_WORKSPACE/autotest/gcore/data/byte.tif . - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib gdal_edit byte.tif -mo FOO=BAR + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib gdal_edit byte.tif -mo FOO=BAR pip uninstall -y gdal-utils - name: Test post-install usage (with pkg-config) run: | @@ -484,16 +484,16 @@ jobs: shell: bash -l {0} run: | cmake --build $GITHUB_WORKSPACE/build --config Release --target install - export PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH + export PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH gdalinfo --version python -VV - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" export PATH=$GITHUB_WORKSPACE/install-gdal/Scripts:$PATH - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/site-packages gdal_edit --version + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/site-packages gdal_edit --version - name: Check the build includes the expected drivers shell: bash -l {0} run: | - export PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH + export PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH gdalinfo --formats > found_formats.txt ogrinfo --formats >> found_formats.txt cat found_formats.txt From f8f12629f2293c05d5816173df501f4efebfa022 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Fri, 14 Feb 2025 08:26:08 +0100 Subject: [PATCH 07/11] Update cmake_builds.yml These is an inconsistency in 'bin' paths with/without 'local' for gdalinfo and probably other utilities... I cannot understan why. --- .github/workflows/cmake_builds.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index f30f29357012..bb61d7277d45 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -216,7 +216,7 @@ jobs: test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdalinfo.1 test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdaladdo.1 export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib - $GITHUB_WORKSPACE/install-gdal/local/bin/gdalinfo --version + $GITHUB_WORKSPACE/install-gdal/bin/gdalinfo --version PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" # Test fix for https://github.com/conda-forge/gdal-feedstock/issues/995 PYTHONWARNINGS="error" PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal" @@ -484,7 +484,7 @@ jobs: shell: bash -l {0} run: | cmake --build $GITHUB_WORKSPACE/build --config Release --target install - export PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH + export PATH=$GITHUB_WORKSPACE/install-gdal/bin:$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH gdalinfo --version python -VV PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" From 9de8e3095656fdb53ccd694c3e4169a3358440c6 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Fri, 14 Feb 2025 08:27:19 +0100 Subject: [PATCH 08/11] Update cmake_builds.yml paths again --- .github/workflows/cmake_builds.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index bb61d7277d45..c20d50d55fb2 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -493,7 +493,7 @@ jobs: - name: Check the build includes the expected drivers shell: bash -l {0} run: | - export PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH + export PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$GITHUB_WORKSPACE/install-gdal/bin:$PATH gdalinfo --formats > found_formats.txt ogrinfo --formats >> found_formats.txt cat found_formats.txt From 918ab7c25a52fcfec8c38f21585b6d6c320687a7 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Fri, 14 Feb 2025 10:33:00 +0100 Subject: [PATCH 09/11] fix ld library path --- .github/workflows/cmake_builds.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index c20d50d55fb2..1a3cf33f8524 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -215,7 +215,7 @@ jobs: cmake --build $GITHUB_WORKSPACE/superbuild/build --target install -- -j$(nproc) test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdalinfo.1 test -f $GITHUB_WORKSPACE/install-gdal/share/man/man1/gdaladdo.1 - export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib + export LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib $GITHUB_WORKSPACE/install-gdal/bin/gdalinfo --version PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/python3.10/dist-packages python3 -c "from osgeo import gdal;print(gdal.VersionInfo(None))" # Test fix for https://github.com/conda-forge/gdal-feedstock/issues/995 @@ -246,11 +246,11 @@ jobs: source myvenv/bin/activate # Set PATH so that gdal-config is found PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH $PYTHON_CMD -m pip install gdal-python.tar.gz[numpy] - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib python -c "from osgeo import gdal_array" + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib python -c "from osgeo import gdal_array" which gdal_edit cp $GITHUB_WORKSPACE/autotest/gcore/data/byte.tif . - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib ldd myvenv/lib/python3.10/site-packages/osgeo/_gdal.cpython-310-x86_64-linux-gnu.so - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib gdal_edit byte.tif -mo FOO=BAR + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib ldd myvenv/lib/python3.10/site-packages/osgeo/_gdal.cpython-310-x86_64-linux-gnu.so + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib gdal_edit byte.tif -mo FOO=BAR rm -f myvenv/bin/gdal_edit rm -f myvenv/bin/gdal_edit.py - name: Standalone gdal-utils package from wheel @@ -265,7 +265,7 @@ jobs: PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH $PYTHON_CMD -m pip install gdal_utils-X.Y.Z.T-py3-none-any.whl which gdal_edit cp $GITHUB_WORKSPACE/autotest/gcore/data/byte.tif . - LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/local/lib gdal_edit byte.tif -mo FOO=BAR + LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib gdal_edit byte.tif -mo FOO=BAR pip uninstall -y gdal-utils - name: Test post-install usage (with pkg-config) run: | From c183af03d6800280477d325d31f4217be14ab2ba Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Fri, 14 Feb 2025 11:54:19 +0100 Subject: [PATCH 10/11] Update cmake_builds.yml --- .github/workflows/cmake_builds.yml | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index 1a3cf33f8524..dde25103863f 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -240,12 +240,14 @@ jobs: - name: Standalone Python bindings build from source run: | (cd $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python && python setup.py sdist) - mv $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python/dist/gdal-*.tar.gz gdal-python.tar.gz + mv $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python/dist/GDAL-*.tar.gz gdal-python.tar.gz mv $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python gdal-swig-python python3 -m venv myvenv source myvenv/bin/activate # Set PATH so that gdal-config is found - PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH $PYTHON_CMD -m pip install gdal-python.tar.gz[numpy] + PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH $PYTHON_CMD -m pip uninstall numpy + PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH $PYTHON_CMD -m pip install numpy==1.26.4 + PYTHON_CMD=python3 && PATH=$GITHUB_WORKSPACE/install-gdal/bin:$PATH $PYTHON_CMD -m pip install gdal-python.tar.gz[numpy] LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install-gdal/lib python -c "from osgeo import gdal_array" which gdal_edit cp $GITHUB_WORKSPACE/autotest/gcore/data/byte.tif . @@ -256,7 +258,7 @@ jobs: - name: Standalone gdal-utils package from wheel run: | mv gdal-swig-python $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python - (cd $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python/gdal-utils && python setup.py bdist_wheel) + (cd $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python/gdal-utils && python3 setup.py bdist_wheel) mv $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python/gdal-utils/dist/*.whl gdal_utils-X.Y.Z.T-py3-none-any.whl rm -rf $GITHUB_WORKSPACE/superbuild/build/gdal/swig/python python3 -m venv myvenv From 28c2ecbbbbc00cd26fc6cb878bfce08a6912cbb5 Mon Sep 17 00:00:00 2001 From: Alessandro Pasotti Date: Fri, 14 Feb 2025 13:27:42 +0100 Subject: [PATCH 11/11] Update cmake_builds.yml --- .github/workflows/cmake_builds.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/cmake_builds.yml b/.github/workflows/cmake_builds.yml index dde25103863f..c5ab1a4e25a5 100644 --- a/.github/workflows/cmake_builds.yml +++ b/.github/workflows/cmake_builds.yml @@ -489,9 +489,9 @@ jobs: export PATH=$GITHUB_WORKSPACE/install-gdal/bin:$GITHUB_WORKSPACE/install-gdal/local/bin:$PATH gdalinfo --version python -VV - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/site-packages python -c "from osgeo import gdal;print(gdal.VersionInfo(None))" export PATH=$GITHUB_WORKSPACE/install-gdal/Scripts:$PATH - PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/local/lib/site-packages gdal_edit --version + PYTHONPATH=$GITHUB_WORKSPACE/install-gdal/lib/site-packages gdal_edit --version - name: Check the build includes the expected drivers shell: bash -l {0} run: |