From 9c4b6dae18a0c11b32548834041c35a3515030d3 Mon Sep 17 00:00:00 2001 From: Alex38Lyon <55714436+Alex38Lyon@users.noreply.github.com> Date: Mon, 31 Aug 2026 22:46:03 +0200 Subject: [PATCH] Improve structure and comments in build-gdal.yml Refactor GDAL package creation script for clarity and organization. --- .github/workflows/build-gdal.yml | 166 +++++++++++++++++++++++-------- 1 file changed, 126 insertions(+), 40 deletions(-) diff --git a/.github/workflows/build-gdal.yml b/.github/workflows/build-gdal.yml index f7c71a1..df29d18 100644 --- a/.github/workflows/build-gdal.yml +++ b/.github/workflows/build-gdal.yml @@ -293,11 +293,8 @@ jobs: print() print("SFCGAL accessible par OGR : OK") - PY - - - # ============================================================ - # 12. Création du package GDAL + PY # ============================================================ + # 12. Création du package GDAL + SFCGAL # ============================================================ - name: Create GDAL package @@ -318,54 +315,117 @@ jobs: echo "========================================" - # -------------------------------------------------------- + # ======================================================== + # Structure du package + # ======================================================== + + mkdir -p "$PACKAGE_DIR/bin" + mkdir -p "$PACKAGE_DIR/lib" + mkdir -p "$PACKAGE_DIR/lib/python3.12/site-packages" + mkdir -p "$PACKAGE_DIR/share" + + + # ======================================================== # GDAL executables - # -------------------------------------------------------- + # ======================================================== - cp -a \ - "$CONDA_PREFIX"/bin/gdal* \ - "$PACKAGE_DIR/" + echo "Copie des exécutables GDAL..." + + find "$CONDA_PREFIX/bin" \ + -maxdepth 1 \ + -type f \ + -name "gdal*" \ + -exec cp -a {} "$PACKAGE_DIR/bin/" \; - # -------------------------------------------------------- + # ======================================================== # GDAL library - # -------------------------------------------------------- + # ======================================================== + + echo "Copie de libgdal..." cp -a \ "$CONDA_PREFIX"/lib/libgdal.so* \ - "$PACKAGE_DIR/" + "$PACKAGE_DIR/lib/" - # -------------------------------------------------------- + # ======================================================== # Python bindings - # -------------------------------------------------------- + # ======================================================== + + echo "Copie des bindings Python..." + + if [ ! -d "$CONDA_PREFIX/lib/python3.12/site-packages/osgeo" ]; then + + echo "ERREUR : bindings Python osgeo absents" + + find "$CONDA_PREFIX/lib" \ + -maxdepth 4 \ + -type d \ + -name osgeo \ + -print + + exit 1 + + fi + cp -a \ - "$CONDA_PREFIX"/lib/python${PYTHON_VERSION}/site-packages/osgeo \ - "$PACKAGE_DIR/" + "$CONDA_PREFIX/lib/python3.12/site-packages/osgeo" \ + "$PACKAGE_DIR/lib/python3.12/site-packages/" - # -------------------------------------------------------- - # GDAL headers - # -------------------------------------------------------- - - cp -a \ - "$CONDA_PREFIX"/include/gdal \ - "$PACKAGE_DIR/" - - - # -------------------------------------------------------- + # ======================================================== # GDAL data - # -------------------------------------------------------- + # ======================================================== - cp -a \ - "$CONDA_PREFIX"/share/gdal \ - "$PACKAGE_DIR/" + echo "Recherche des données GDAL..." + + if [ -d "$CONDA_PREFIX/share/gdal" ]; then + + cp -a \ + "$CONDA_PREFIX/share/gdal" \ + "$PACKAGE_DIR/share/" + + else + + echo "ATTENTION : share/gdal absent" + + fi - # -------------------------------------------------------- - # Informations package - # -------------------------------------------------------- + # ======================================================== + # Bibliothèques SFCGAL + # ======================================================== + + echo "Copie des bibliothèques SFCGAL..." + + find "$CONDA_PREFIX/lib" \ + -maxdepth 1 \ + \( \ + -name "libSFCGAL.so*" \ + \) \ + -exec cp -a {} "$PACKAGE_DIR/lib/" \; + + + # ======================================================== + # Bibliothèques GEOS + # ======================================================== + + echo "Copie des bibliothèques GEOS..." + + find "$CONDA_PREFIX/lib" \ + -maxdepth 1 \ + \( \ + -name "libgeos.so*" \ + -o -name "libgeos_c.so*" \ + \) \ + -exec cp -a {} "$PACKAGE_DIR/lib/" \; + + + # ======================================================== + # Informations + # ======================================================== cat > "$PACKAGE_DIR/VERSION.txt" <> "$GITHUB_ENV" + + + # ============================================================ # 13. Test du package # ============================================================