[144799] trunk/dports/textproc/gpsbabel/Portfile

mcalhoun at macports.org mcalhoun at macports.org
Mon Jan 18 10:24:26 PST 2016


Revision: 144799
          https://trac.macports.org/changeset/144799
Author:   mcalhoun at macports.org
Date:     2016-01-18 10:24:26 -0800 (Mon, 18 Jan 2016)
Log Message:
-----------
gpsbabel:
* remove dependency on zlib (not used as of r136417); system zlib does not seem to work
* return to configure instead of qmake (r136415) since it fits better with variants
* let user choose between Qt4 and Qt5 (see #50331)
* create variant to install GUI app (see #50321)

Revision Links:
--------------
    https://trac.macports.org/changeset/136417
    https://trac.macports.org/changeset/136415

Modified Paths:
--------------
    trunk/dports/textproc/gpsbabel/Portfile

Modified: trunk/dports/textproc/gpsbabel/Portfile
===================================================================
--- trunk/dports/textproc/gpsbabel/Portfile	2016-01-18 18:24:23 UTC (rev 144798)
+++ trunk/dports/textproc/gpsbabel/Portfile	2016-01-18 18:24:26 UTC (rev 144799)
@@ -3,11 +3,11 @@
 
 PortSystem          1.0
 PortGroup           github 1.0
-PortGroup           qmake5 1.0
 
 github.setup        gpsbabel gpsbabel 1_5_3 gpsbabel_
 # some tricks because version at github is x_y_z
 version             [join [lrange [split ${version} _] 0 2] .]
+revision            1
 
 categories          textproc comms
 license             GPL
@@ -22,20 +22,88 @@
 homepage            http://www.gpsbabel.org/
 
 depends_lib-append  port:expat \
-                    port:libusb-compat \
-                    port:zlib
+                    port:libusb-compat
 
 checksums           rmd160  b64e1bbd6906a027d232e097fb182e1ed770aff7 \
                     sha256  d8606e18a4d27a25739c443f0ced506e992fe0631c8365e3e0109f74224c6e59
 
 patchfiles          patch-delbin.cc.diff
 
-destroot {
-    if {[variant_isset universal]} {
-        system -W ${worksrcpath} "lipo -create ${worksrcpath}-x86_64/GPSbabel ${worksrcpath}-i386/GPSbabel -output ${worksrcpath}/gpsbabel"
+configure.universal_args-delete \
+    --disable-dependency-tracking
+
+variant qt4 description {build with Qt 4} conflicts qt5 {}
+
+variant qt5 description {build with Qt 5} conflicts qt4 {}
+
+variant gui description {build GUI App} {
+    if { [variant_isset qt5] } {
+        depends_lib-append  port:qt5-qtwebkit
     }
-    xinstall -m 755 ${worksrcpath}/gpsbabel ${destroot}${prefix}/bin
-    xinstall -m 755 -d ${destroot}${prefix}/share/doc/${name}
-    xinstall -m 644 -W ${worksrcpath} AUTHORS COPYING README.contrib README.igc \
-        README.mapconverter README.xmapwpt ${destroot}${prefix}/share/doc/${name}
+
+    build.target-append  mac-gui
+
+    post-destroot {
+        # do not keep two copies of gpsbabel
+        delete ${destroot}${applications_dir}/GPSBabelFE.app/Contents/MacOS/gpsbabel
+        ln -s ${prefix}/bin/gpsbabel ${destroot}${applications_dir}/GPSBabelFE.app/Contents/MacOS/gpsbabel
+    }
 }
+
+set just_want_qt5_version_info yes
+PortGroup           qt5 1.0
+unset just_want_qt5_version_info
+
+if {![variant_isset qt4] && ![variant_isset qt5]} {
+    if { ${os.major} < ${qt5_min_tested_version} } {
+        default_variants-append +qt4
+    } else {
+        default_variants-append +qt5
+    }
+}
+
+if { [variant_isset qt4] } {
+    PortGroup           qt4 1.0
+
+    # in ${prefix}/libexec/qt4/include/QtCore/qxmlstream.h,
+    # there seems to be some class renaming using preprocessor commands
+    #    but only if Q_OS_MAC32 is defined
+    # this seems to break gpsbabel
+    supported_archs     ppc64 x86_64
+
+} elseif { [variant_isset qt5] } {
+    PortGroup           qt5 1.0
+} else {
+    ui_error "\n\nYou must select either the +qt4 or +qt5 variant.\n"
+    return -code error "Invalid variant selection"
+}
+configure.env-append \
+    QMAKE=${qt_qmake_cmd} \
+    LRELEASE=${qt_lrelease_cmd} \
+    LUPDATE=${qt_lupdate_cmd}
+
+if { ![variant_isset universal] || [variant_isset qt4]} {
+    post-destroot {
+        if { [variant_isset gui] } {
+            copy ${worksrcpath}/gui/objects/GPSBabelFE.app ${destroot}${applications_dir}
+        }
+        xinstall -m 755 -d ${destroot}${prefix}/share/doc/${name}
+        xinstall -m 644 -W ${worksrcpath} \
+            AUTHORS COPYING README.contrib README.igc \
+            README.mapconverter README.xmapwpt \
+            ${destroot}${prefix}/share/doc/${name}
+    }
+} else {
+    merger-post-destroot {
+        foreach arch ${universal_archs_to_use} {
+            if { [variant_isset gui] } {
+                copy ${worksrcpath}-${arch}/gui/objects/GPSBabelFE.app ${destroot}-${arch}${applications_dir}
+            }
+            xinstall -m 755 -d ${destroot}-${arch}${prefix}/share/doc/${name}
+            xinstall -m 644 -W ${worksrcpath}-${arch} \
+                AUTHORS COPYING README.contrib README.igc \
+                README.mapconverter README.xmapwpt \
+                ${destroot}-${arch}${prefix}/share/doc/${name}
+        }
+    }
+}
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20160118/d8b47478/attachment.html>


More information about the macports-changes mailing list