# -*- 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
# $Id: Portfile 119780 2014-05-06 19:17:39Z mf2k@macports.org $

PortSystem          1.0
name                logtalk-devel
conflicts           logtalk
version             3.00.0-b3

categories          lang
maintainers         logtalk.org:pmoura
license             GPL-3+
platforms           darwin freebsd linux
supported_archs     noarch

description         Logtalk - Open source object-oriented logic programming language

long_description    Logtalk is an object-oriented logic programming language that can use most   \
                    Prolog implementations as a back-end compiler. As a multi-paradigm language, \
                    it includes support for both prototypes and classes, protocols (interfaces), \
                    component-based programming through category-based composition, event-driven \
                    programming, and high-level multi-threading programming.

homepage            http://logtalk.org/

fetch.type          git
git.url             git://github.com/LogtalkDotOrg/logtalk3.git
git.branch          cfa9fc64a9f554c704a365e0712dc52115cda469

distname            logtalk-${version}

depends_lib         port:shared-mime-info

use_configure       no

build               {}

destroot {
    system "cd ${worksrcpath}/scripts && ./install.sh -p ${destroot}${prefix}"
}

post-destroot {
    delete ${destroot}${prefix}/share/mime
}

package.flat no

post-pkg {
    set resources ${workpath}/${name}-${version}.pkg/Contents/Resources/
    file copy -force -- ${workpath}/${worksrcdir}/scripts/macosx/License.html ${resources}
    file copy -force -- ${workpath}/${worksrcdir}/scripts/macosx/ReadMe.html ${resources}
    file copy -force -- ${workpath}/${worksrcdir}/scripts/macosx/Welcome.html ${resources}
    file copy -force -- ${workpath}/${worksrcdir}/scripts/macosx/postflight ${resources}
}

post-activate {
    ui_msg "****************************************************************************"
    ui_msg "* Integration scripts have been created for running Logtalk with selected"
    ui_msg "* back-end Prolog compilers (which must be properly installed for running"
    ui_msg "* the scripts!):"
    ui_msg "*"
    ui_msg "* B-Prolog (version 7.8 or later):         bplgt"
    ui_msg "* CxProlog (version 0.97.6 or later):      cxlgt"
    ui_msg "* ECLiPSe (version 6.1#143 or later):      eclipselgt"
    ui_msg "* GNU Prolog (version 1.4.1 or later):     gplgt"
    ui_msg "* Qu-Prolog (version 9.0 or later):        qplgt"
    ui_msg "* SICStus Prolog (version 4.1.0 or later): sicstuslgt"
    ui_msg "* SWI-Prolog (version 6.0.0 or later):     swilgt"
    ui_msg "* XSB (version 3.3 or later):              xsblgt     (first run must use sudo)"
    ui_msg "* XSB 64 bits (version 3.3 or later):      xsb64lgt   (first run must use sudo)"
    ui_msg "* XSB MT (version 3.3 or later):           xsbmtlgt   (first run must use sudo)"
    ui_msg "* XSB MT 64 bits (version 3.3 or later):   xsbmt64lgt (first run must use sudo)"
    ui_msg "* YAP (version 6.0.2 or later):            yaplgt"
    ui_msg "*"
    ui_msg "* Remember to set the environment variable LOGTALKHOME to the path to"
    ui_msg "* the Logtalk distribution: ${prefix}/share/logtalk"
    ui_msg "* and the environment variable LOGTALKUSER to your local configuration"
    ui_msg "* directory (usually ~/logtalk), which you must create by running the"
    ui_msg "* command logtalk_user_setup. See the file \$LOGTALKHOME/CUSTOMIZE.txt"
    ui_msg "* for details on how to customize your working environment."
    ui_msg "*"
    if {[file exists ${prefix}/share/mime/packages/logtalk.xml]} {
        delete ${prefix}/share/mime/packages/logtalk.xml
    }
    xinstall -d ${prefix}/share/mime/packages
    xinstall -m 644 ${prefix}/share/${distname}/scripts/freedesktop/logtalk.xml ${prefix}/share/mime/packages
    system "${prefix}/bin/update-mime-database ${prefix}/share/mime; true"
    ui_msg "* Added the Logtalk mime-type to the Shared MIME-info Database."
    ui_msg "****************************************************************************"
}
