# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; truncate-lines: t -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4

PortSystem              1.0
PortGroup               qmake5 1.0

name                    qwt-qt5
categories              graphics science
# actually a little more permissive than the standard LGPL, but the
# distinction doesn't matter to us.
license                 LGPL-2.1
maintainers             {mcalhoun @MarcusCalhoun-Lopez} openmaintainer
homepage                http://qwt.sourceforge.net

master_sites            sourceforge:qwt
use_bzip2               yes

platforms               darwin

version                 6.1.6
distname                qwt-${version}
checksums               rmd160  d85320b3fbe2df75d0c8eee993d101fa18ba300e \
                        sha256  99460d31c115ee4117b0175d885f47c2c590d784206f09815dc058fbe5ede1f6 \
                        size    4306402

description             Qt Widgets for Technical Applications

long_description        The Qwt library contains GUI Components and utility classes \
                        which are primarily useful for programs with a technical background. \
                        Beside a framework for 2D plots it provides \
                        scales, sliders, dials, compasses, thermometers, wheels and knobs \
                        to control or display values, arrays, or ranges of type double.

patchfiles-append       patch-disable-silent-rules.diff

#install in the correct locations
patchfiles-append       patch-qwtconfig.pri.diff

# have correct install_name in libraries
# install pkgconfig files
# enable MathML support in Qwt
# ${worksrcpath}/textengines/mathml/mathml.pro does not define QMAKE_PKGCONFIG_DESTDIR
configure.args-append   CONFIG+=absolute_library_soname \
                        QWT_CONFIG+=QwtPkgConfig \
                        QWT_CONFIG+=QwtMathML \
                        QMAKE_PKGCONFIG_DESTDIR=pkgconfig

if {${subport} eq ${name}} {
    revision 0

    qt5.depends_component qtsvg qttools

    # put link to pkgconfig files in place where pkgconfig will find it
    post-destroot {
        if { ${qt_libs_dir} ne "${prefix}/lib" } {
            xinstall -d -m 0755 ${destroot}${prefix}/lib/pkgconfig
            foreach pcfile [glob -nocomplain -tails -directory ${destroot}${qt_libs_dir}/pkgconfig *.pc] {
                ln -s ${qt_libs_dir}/pkgconfig/${pcfile} ${destroot}${prefix}/lib/pkgconfig
            }
        }
    }
}

subport ${name}-examples {
    revision 0

    depends_lib-append port:${name}

    patch.dir  ${worksrcpath}
    worksrcdir ${worksrcdir}/examples

    # muniversal PG requires Makefile
    post-extract {
        set plist [open "${worksrcpath}/makefile_macports_install" w 0644]
        puts ${plist} "install:"
        puts ${plist} "\t/usr/bin/install -d -m 0755 \$(INSTALL_ROOT)${qt_examples_dir}/${name}"
        foreach example [glob -tails -directory ${worksrcpath} *] {
            if {[file isdirectory ${worksrcpath}/${example}]} {
                puts ${plist} "\t/usr/bin/install -d -m 0755 \$(INSTALL_ROOT)${qt_examples_dir}/${name}/${example}"
                if {${example} ne "stylesheets"} {
                    puts ${plist} "\t/bin/cp -R bin/${example}.app \$(INSTALL_ROOT)${qt_examples_dir}/${name}/${example}"
                    puts ${plist} "\t/usr/bin/make --directory=${example} distclean"
                    puts ${plist} "\t/bin/rm -rf ${example}/moc ${example}/obj"
                }
                puts ${plist} "\t/usr/bin/install -m 0644 ${example}/* \$(INSTALL_ROOT)${qt_examples_dir}/${name}/${example}"
            }
        }
        close ${plist}
    }
    destroot.cmd /usr/bin/make
    destroot.args \
        -f makefile_macports_install
}

livecheck.url   http://sourceforge.net/api/file/index/project-id/13693/mtime/desc/rss
livecheck.regex \\/qwt\\/(\\d+\\.\\d+\\.\\d+)\\/
