# -*- 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

name                mdk
version             1.3.0
revision            1
checksums           rmd160  447574e37b62b5f224e57fd92f45b1f59bdd36eb \
                    sha256  8b1e5dd7f47b738cb966ef717be92a501494d9ba6d87038f09e8fa29101b132e \
                    size    1184722

categories          lang
license             GPL-3
platforms           darwin
maintainers         {ryandesign @ryandesign} openmaintainer

description         A set of utilities for developing programs using MIX and \
                    MIXAL

long_description    MDK stands for MIX Development Kit, and provides tools for \
                    developing and executing, in a MIX virtual machine, MIXAL \
                    programs. \
                    \n\
                    \nThe MIX is Donald Knuth's mythical computer, described \
                    in the first volume of The Art of Computer Programming, \
                    which is programmed using MIXAL, the MIX assembly \
                    language. \
                    \n\
                    \nMDK includes a MIXAL assembler (mixasm) and a MIX \
                    virtual machine (mixvm) with a command line interface. In \
                    addition, a GTK+ GUI to mixvm, called gmixvm, is provided. \
                    \n\
                    \nUsing these interfaces, you can debug your MIXAL \
                    programs at source code level, and read/modify the \
                    contents of all the components of the MIX computer \
                    (including block devices, which are simulated using the \
                    file system).

homepage            https://www.gnu.org/software/mdk/mdk.html
master_sites        gnu:mdk/v${version}/

depends_build       port:bison \
                    port:intltool \
                    port:pkgconfig

depends_lib         path:lib/pkgconfig/glib-2.0.pc:glib2 \
                    port:gmp \
                    port:gettext \
                    port:guile-3.0 \
                    port:libiconv \
                    port:readline \
                    port:ncurses \
                    port:libtool

# guile is not universal
universal_variant   no

configure.args      --disable-gui

build.type          gnu

variant gui description "Build the GTK+ user interface" {
    configure.args-delete \
                    --disable-gui

    depends_lib-append \
                    path:lib/pkgconfig/gtk+-2.0.pc:gtk2 \
                    port:libglade2
}

livecheck.regex     {v([0-9.]+)}
