<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/162cdffe36c1e767c4864f9b57cb41ddce09f1df">https://github.com/macports/macports-ports/commit/162cdffe36c1e767c4864f9b57cb41ddce09f1df</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 162cdffe36c1e767c4864f9b57cb41ddce09f1df
</span>Author: Nicklas Larsson <n_larsson@yahoo.com>
AuthorDate: Tue Oct 31 09:54:37 2023 +0100

<span style='display:block; white-space:pre;color:#404040;'>    qgis3{-ltr}: organize Portfile
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Collect 'configure.args' to one place and simplify (use back slash and remove quotes).
</span><span style='display:block; white-space:pre;color:#404040;'>    List args, dependants, PGs and variants alphabetically.
</span>---
 gis/qgis3/Portfile | 270 ++++++++++++++++++++++++-----------------------------
 1 file changed, 123 insertions(+), 147 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/gis/qgis3/Portfile b/gis/qgis3/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4ada9fc9957..f6ee5ffca70 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/gis/qgis3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/gis/qgis3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,22 +1,21 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 
 PortSystem          1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           legacysupport 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           active_variants 1.1
</span> PortGroup           cmake   1.1
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compiler_blacklist_versions 1.0
</span> PortGroup           github  1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           legacysupport 1.1
</span> PortGroup           qt5     1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           active_variants 1.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           compiler_blacklist_versions 1.0
</span> 
 name                qgis3
 categories          gis
 maintainers         {vince @Veence} {yahoo.com:n_larsson @nilason} openmaintainer
 description         QGIS 3 is a user-friendly GIS based on Qt 5
<span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description    QGIS is a full-featured, user-friendly, free-and-open-source\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    (FOSS) geographical information system (GIS) that runs on\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    QGIS is a full-featured, user-friendly, free-and-open-source \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    (FOSS) geographical information system (GIS) that runs on    \
</span>                     Unix platforms, Windows, and MacOS.
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms           darwin
</span> license             GPL-2+
 
 homepage            https://www.qgis.org/
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -69,37 +68,37 @@ compiler.cxx_standard \
</span> compiler.blacklist-append \
                     {clang < 1200}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append  port:libiconv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:bison \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:flex \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:ld64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append  port:exiv2 \
</span>                     port:expat \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gdal \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:geos \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:gsl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libiconv \
</span>                     port:libtasn1 \
                     port:libzip \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    path:lib/libssl.dylib:openssl \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:gsl \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:geos \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:gdal \
</span>                     port:pdal \
                     port:protobuf3-cpp \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:exiv2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:sqlite3 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:spatialite \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:spatialindex \
</span>                     port:qca-qt5 \
                     port:qca-qt5-ossl \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:qjson-qt5 \
</span>                     port:qtkeychain-qt5 \
                     port:qwt-qt5 \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:qjson-qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:spatialindex \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:spatialite \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:sqlite3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/libssl.dylib:openssl
</span> 
 qt5.depends_component \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    qtwebkit \
</span>                     qtscript \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sqlite-plugin \
</span>                     qtscxml \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    qtxmlpatterns
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_build-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:bison \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:ld64 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:flex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    qtwebkit \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    qtxmlpatterns \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sqlite-plugin
</span> 
 patchfiles          patch-app_info_plist_in.diff \
                     patch-CMakelists_txt.diff \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -139,59 +138,87 @@ pre-configure {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Plug-ins
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_GRASS7=OFF"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_GRASS8=OFF"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_QSPATIALITE=OFF"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#configure.args-append   "--trace-expand"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#configure.args-append   "--debug-output"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.ldflags       "-Wl,-rpath,${prefix}/libexec/qt5/lib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_3D=ON"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_PDAL=ON"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DLIBZIP_CONF_INCLUDE_DIR=${prefix}/lib/pkgconfig"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_BINDINGS=FALSE"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQCA_INCLUDE_DIR=${prefix}/libexec/qt5/include/QtCrypto"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQCA_LIBRARY=${prefix}/libexec/qt5/lib/libqca-qt5.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQSCINTILLA_INCLUDE_DIR=${prefix}/libexec/qt5/include"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQSCINTILLA_LIBRARY=${prefix}/libexec/qt5/lib/libqscintilla2_qt5.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQWT_LIBRARY=${prefix}/libexec/qt5/lib/qwt.framework/Versions/Current/qwt"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQWT_INCLUDE_DIR=${prefix}/libexec/qt5/lib/qwt.framework/Versions/Current/Headers"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_QWTPOLAR=ON"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_INTERNAL_QWTPOLAR=ON"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DQT_LRELEASE_EXECUTABLE=${prefix}/libexec/qt5/bin/lrelease"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DAPPLE_APPKIT_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/AppKit.framework"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DAPPLE_APPLICATIONSERVICES_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/ApplicationServices.framework"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DAPPLE_COREFOUNDATION_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/CoreFoundation.framework"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DAPPLE_IOKIT_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/IOKit.framework"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DWITH_SERVER=OFF"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append   "-DUSE_OPENCL=OFF"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant server description "Builds with the server (FCGI) option" {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_lib-append      port:fcgi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DAPPLE_APPKIT_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/AppKit.framework \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DAPPLE_APPLICATIONSERVICES_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/ApplicationServices.framework \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DAPPLE_COREFOUNDATION_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/CoreFoundation.framework \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DAPPLE_IOKIT_LIBRARY=${configure.sdkroot}/System/Library/Frameworks/IOKit.framework \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DEXPAT_INCLUDE_DIR=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DEXPAT_LIBRARY=${prefix}/lib/libexpat.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGDAL_CONFIG=${prefix}/bin/gdal-config \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGDAL_INCLUDE_DIR=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGDAL_LIBRARY=${prefix}/lib/libgdal.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGEOS_CONFIG=${prefix}/bin/geos-config \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGEOS_INCLUDE_DIR=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGEOS_LIBRARY=${prefix}/lib/libgeos_c.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DGSL_CONFIG=${prefix}/bin/gsl-config \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DLIBZIP_CONF_INCLUDE_DIR=${prefix}/lib/pkgconfig \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQCA_INCLUDE_DIR=${prefix}/libexec/qt5/include/QtCrypto \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQCA_LIBRARY=${prefix}/libexec/qt5/lib/libqca-qt5.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQGIS_MACAPP_BUNDLE=0 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQSCINTILLA_INCLUDE_DIR=${prefix}/libexec/qt5/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQSCINTILLA_LIBRARY=${prefix}/libexec/qt5/lib/libqscintilla2_qt5.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQT_LRELEASE_EXECUTABLE=${prefix}/libexec/qt5/bin/lrelease \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQWT_INCLUDE_DIR=${prefix}/libexec/qt5/lib/qwt.framework/Versions/Current/Headers \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DQWT_LIBRARY=${prefix}/libexec/qt5/lib/qwt.framework/Versions/Current/qwt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DSPATIALINDEX_LIBRARY=${prefix}/lib/libspatialindex.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DSPATIALITE_INCLUDE_DIR=${prefix}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DSPATIALITE_LIBRARY=${prefix}/lib/libspatialite.dylib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DUSE_OPENCL=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_3D=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_BINDINGS=FALSE \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_GRASS7=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_GRASS8=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_INTERNAL_QWTPOLAR=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_PDAL=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_QSPATIALITE=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_QWTPOLAR=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DWITH_SERVER=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.ldflags   "-Wl,-rpath,${prefix}/libexec/qt5/lib"
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# GRASS variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant grass7 conflicts grass description "Build GRASS 7 plugin" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:grass7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global grass_version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set grass_version       78
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global grass_gis_base
</span>     pre-configure {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        return -code error "The +server option is currently broken (doesn’t link properly)"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-replace  -DWITH_GRASS7=OFF -DWITH_GRASS7=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append   -DGRASS_PREFIX7=${grass_gis_base}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|command = None|command = '${prefix}/bin/grass${grass_version}'|g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${worksrcpath}/python/plugins/grassprovider/Grass7Utils.py
</span>     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    configure.args-replace  -DWITH_SERVER=OFF -DWITH_SERVER=ON
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# PostgreSQL variants (from the GDAL port)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set postgresql_suffixes {15 14 13 12 11 10 95 96}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set postgresql_variants {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach suffix ${postgresql_suffixes} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    lappend postgresql_variants postgresql${suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant grass conflicts grass7 description "Build GRASS (latest) plugin" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:grass
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    global grass_gis_base
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set grass_gis_base      [exec ${prefix}/bin/grass --config path]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-replace  -DWITH_GRASS8=OFF -DWITH_GRASS8=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append   -DGRASS_PREFIX8=${grass_gis_base}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        reinplace "s|command = None|command = '${prefix}/bin/grass'|g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${worksrcpath}/python/plugins/grassprovider/Grass7Utils.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach suffix ${postgresql_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# PostgreSQL variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set pg_suffixes {15 14 13 12 11 10 95 96}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set pg_variants {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach suffix ${pg_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    lappend pg_variants postgresql${suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach suffix ${pg_suffixes} {
</span>     set vrt postgresql${suffix}
     set dot [expr {[string index ${suffix} 0] eq "9"} ? {"."} : {""}]
     set pgversion [string index ${suffix} 0]${dot}[string index ${suffix} 1]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    set index [lsearch -exact ${postgresql_variants} ${vrt}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set conf [lreplace ${postgresql_variants} ${index} ${index}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set index [lsearch -exact ${pg_variants} ${vrt}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set conf [lreplace ${pg_variants} ${index} ${index}]
</span>     variant ${vrt} description "Use PostgreSQL ${pgversion}" conflicts {*}${conf} "
         depends_lib-append      port:${vrt}
         configure.args-append   -DPostgreSQL_ROOT=${prefix}/lib/${vrt} \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -199,30 +226,46 @@ foreach suffix ${postgresql_suffixes} {
</span>         configure.env-append    PostgreSQL_ADDITIONAL_VERSIONS=15
     "
 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# PostgreSQL default
</span> set pgdefault "if {"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach suffix ${postgresql_suffixes} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach suffix ${pg_suffixes} {
</span>     set pgdefault "${pgdefault}!\[variant_isset postgresql${suffix}\] && "
 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> set pgdefault [string range ${pgdefault} 0 end-4]
 set pgdefault "${pgdefault}} { default_variants +postgresql15 }"
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> eval ${pgdefault}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Python variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# PROJ variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set proj_versions {6 7 8 9}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set proj_variants {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach pjver ${proj_versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    lappend proj_variants proj${pjver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach proj_ver ${proj_versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set index [lsearch -exact ${proj_variants} proj${proj_ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cflcts [lreplace ${proj_variants} ${index} ${index}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    variant proj${proj_ver} description "Use Proj${proj_ver}" conflicts {*}${cflcts} "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        depends_lib-append      port:proj${proj_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configure.args-append   -DPROJ_INCLUDE_DIR=${prefix}/lib/proj${proj_ver}/include \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                                -DPROJ_LIBRARY=${prefix}/lib/proj${proj_ver}/lib/libproj.dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set projdf "if {"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+foreach pv ${proj_versions} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set projdf "${projdf}!\[variant_isset proj${pv}\] && "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set projdf [string range ${projdf} 0 end-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set projdf "${projdf}} { default_variants +proj${pv} }"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+eval ${projdf}
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# Python variants
</span> set python_suffixes {37 38 39 310 311}
 set python_variants {}
 set plugin_variants {}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> foreach pyver ${python_suffixes} {
     lappend python_variants python${pyver}
     lappend plugin_variants plugin_support${pyver}
 }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> foreach pyver ${python_suffixes} {
     set vrt python${pyver}
     set pyversion [string index ${pyver} 0].[string range ${pyver} 1 end]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -345,81 +388,14 @@ if { [expr ([llength $supp_py_list] > 0) && ([llength $pyth_py_list] > 0)] &&
</span>          return -code error "Try running `port install ${subport} +python${pyv} +plugin_support${pyv}`"
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# PROJ variants
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set proj_versions {6 7 8 9}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set proj_variants {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach pjver ${proj_versions} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    lappend proj_variants proj${pjver}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach proj_ver ${proj_versions} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set index [lsearch -exact ${proj_variants} proj${proj_ver}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set cflcts [lreplace ${proj_variants} ${index} ${index}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    variant proj${proj_ver} description "Use Proj${proj_ver}" conflicts {*}${cflcts} "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        depends_lib-append      port:proj${proj_ver}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-append   -DPROJ_INCLUDE_DIR=${prefix}/lib/proj${proj_ver}/include \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                -DPROJ_LIBRARY=${prefix}/lib/proj${proj_ver}/lib/libproj.dylib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set projdf "if {"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach pv ${proj_versions} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set projdf "${projdf}!\[variant_isset proj${pv}\] && "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set projdf [string range ${projdf} 0 end-4]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set projdf "${projdf}} { default_variants +proj${pv} }"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-eval ${projdf}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# GRASS variants
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant grass7 conflicts grass description "Build GRASS 7 plugin" {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_lib-append      port:grass7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    global grass_version
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    set grass_version       78
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    global grass_gis_base
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    pre-configure {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-replace  -DWITH_GRASS7=OFF -DWITH_GRASS7=ON
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-append   -DGRASS_PREFIX7=${grass_gis_base}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|command = None|command = '${prefix}/bin/grass${grass_version}'|g" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${worksrcpath}/python/plugins/grassprovider/Grass7Utils.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-variant grass conflicts grass7 description "Build GRASS (latest) plugin" {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_lib-append      port:grass
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    global grass_gis_base
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant server description "Builds with the server (FCGI) option" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append      port:fcgi
</span>     pre-configure {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        set grass_gis_base      [exec ${prefix}/bin/grass --config path]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-replace  -DWITH_GRASS8=OFF -DWITH_GRASS8=ON
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        configure.args-append   -DGRASS_PREFIX8=${grass_gis_base}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        reinplace "s|command = None|command = '${prefix}/bin/grass'|g" \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            ${worksrcpath}/python/plugins/grassprovider/Grass7Utils.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        return -code error "The +server option is currently broken (doesn’t link properly)"
</span>     }
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    configure.args-replace  -DWITH_SERVER=OFF -DWITH_SERVER=ON
</span> }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Configure steps
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DEXPAT_INCLUDE_DIR=${prefix}/include"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DEXPAT_LIBRARY=${prefix}/lib/libexpat.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DQGIS_MACAPP_BUNDLE=0"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGDAL_CONFIG=${prefix}/bin/gdal-config"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGDAL_INCLUDE_DIR=${prefix}/include"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGDAL_LIBRARY=${prefix}/lib/libgdal.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGEOS_CONFIG=${prefix}/bin/geos-config"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGEOS_INCLUDE_DIR=${prefix}/include"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGEOS_LIBRARY=${prefix}/lib/libgeos_c.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DGSL_CONFIG=${prefix}/bin/gsl-config"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DSPATIALITE_LIBRARY=${prefix}/lib/libspatialite.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DSPATIALITE_INCLUDE_DIR=${prefix}/include"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append  "-DSPATIALINDEX_LIBRARY=${prefix}/lib/libspatialindex.dylib"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> post-configure {
     # Workaround a bug in cmake???
     touch ${cmake.build_dir}/src/core/CMakeFiles/qgis_core.dir/build.make
</pre><pre style='margin:0'>

</pre>