<pre style='margin:0'>
MarcusCalhoun-Lopez pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/d1509f4a680e5873f3d5bb80b49ce0813dbf269a">https://github.com/macports/macports-ports/commit/d1509f4a680e5873f3d5bb80b49ce0813dbf269a</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new d1509f4  qt5-1.0.tcl: begin building infrastructure to support different versions of Qt 5
</span>d1509f4 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit d1509f4a680e5873f3d5bb80b49ce0813dbf269a
</span>Author: Marcus Calhoun-Lopez <mcalhoun@macports.org>
AuthorDate: Sun Nov 13 15:09:25 2016 -0700

<span style='display:block; white-space:pre;color:#404040;'>    qt5-1.0.tcl: begin building infrastructure to support
</span><span style='display:block; white-space:pre;color:#404040;'>    different versions of Qt 5
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Qt can make major functionality changes between minor version changes.
</span><span style='display:block; white-space:pre;color:#404040;'>    see https://github.com/Homebrew/homebrew-versions/pull/1191
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Qt 5.6 is a long term support release which means MacPorts may
</span><span style='display:block; white-space:pre;color:#404040;'>        want to keep it around for a while.
</span><span style='display:block; white-space:pre;color:#404040;'>    see https://blog.qt.io/blog/2015/12/18/introducing-long-term-support/
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    If possible, we want to support as many versions of macOS as we can.
</span><span style='display:block; white-space:pre;color:#404040;'>    This sometimes means installing an older version of Qt.
</span><span style='display:block; white-space:pre;color:#404040;'>    see https://trac.macports.org/ticket/51801
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Finally, Qt requires substantial patches to KDE Frameworks 5, which
</span><span style='display:block; white-space:pre;color:#404040;'>        necessitates a separate port.
</span><span style='display:block; white-space:pre;color:#404040;'>    see https://trac.macports.org/ticket/48967
</span>---
 _resources/port1.0/group/qt5-1.0.tcl | 103 ++++++++++++++++++++++++++++++++---
 1 file changed, 94 insertions(+), 9 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/qt5-1.0.tcl b/_resources/port1.0/group/qt5-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index e78cd77..8640930 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/qt5-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/qt5-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,6 +35,79 @@
</span> # Usage:
 # PortGroup     qt5 1.0
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+global available_qt_versions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set available_qt_versions {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    qt5
</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;'>+# standard Qt5 name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+global qt_name
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if { ![info exists qt_name] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if { ${os.major} <= 7 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5 does not support ppc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # see http://doc.qt.io/qt-5/osx-requirements.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif { ${os.major} <= 9 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Mac OS X Tiger (10.4)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Mac OS X Leopard (10.5)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # never supported by Qt 5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif { ${os.major} == 10 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Mac OS X Snow Leopard (10.6)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #     Qt 5.3: Deployment only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5.0-5.2: Occasionally tested
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif { ${os.major} == 11 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Mac OS X Lion (10.7)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5.6: Deployment only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5.5: Occasionally tested
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5.4: Supported
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif { ${os.major} <= 12 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # OS X Mountain Lion (10.8)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # OS X Mavericks (10.9)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # OS X Yosemite (10.10)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # OS X El Capitan (10.11)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5.7: Supported
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Qt 5.6: Supported
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } elseif { ${os.major} <= 16 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # macOS Sierra (10.12)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # as of Qt version 5.7, there is no official support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        # macOS ??? (???)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt_name qt5
</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;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # Qt has what is calls reference configurations, which are said to be thoroughly tested
 # Qt also has configurations which are "occasionally tested" or are "[d]eployment only"
 # see http://doc.qt.io/qt-5/supported-platforms.html#reference-configurations
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -42,19 +115,21 @@ global qt5_min_tested_version
</span> global qt5_max_tested_version
 global qt5_min_reference_version
 global qt5_max_reference_version
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set qt5_min_tested_version     11
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set qt5_max_tested_version     14
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set qt5_min_reference_version  12
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set qt5_max_reference_version  14
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see http://doc.qt.io/qt-5/supported-platforms-and-configurations.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+switch ${qt_name} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    qt5 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt5_min_tested_version     12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt5_max_tested_version     15
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt5_min_reference_version  12
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set qt5_max_reference_version  15
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span> 
 if {[tbool just_want_qt5_version_info]} {
     return
 }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# standard Qt5 name
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-global qt_name
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set qt_name             qt5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> # standard install directory
 global qt_dir
 set qt_dir               ${prefix}/libexec/qt5
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -158,6 +233,10 @@ set qt_lupdate_cmd     ${qt_dir}/bin/lupdate
</span> global qt_pkg_config_dir
 set qt_pkg_config_dir   ${qt_libs_dir}/pkgconfig
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[tbool just_want_qt5_variables]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    return
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> # no universal binary support in Qt 5
 #     see http://lists.qt-project.org/pipermail/interest/2012-December/005038.html
 #     and https://bugreports.qt.io/browse/QTBUG-24952
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -213,8 +292,14 @@ if { ${os.major} < ${qt5_min_tested_version} } {
</span>     }
 }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+if { ${qt_name} ne "qt5" } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    pre-fetch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_warn "Qt dependency is not the latest version but may be the latest supported on your OS"
</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;'>+
</span> if {![info exists building_qt5]} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    depends_lib-append port:qt5-qtbase
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    depends_lib-append path:lib/pkgconfig/Qt5Core.pc:${qt_name}-qtbase
</span> }
 
 # use PKGCONFIG for Qt discovery in configure scripts
</pre><pre style='margin:0'>

</pre>