# -*- 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
PortGroup               github 1.0
PortGroup               common_lisp 1.0

github.setup            sharplispers cl-cffi-gtk 1700fe672c65455c1fc33061ec92a3df84287ec7
# Change github.tarball_from to 'releases' or 'archive' next update
github.tarball_from     tarball
version                 20230202
revision                1

checksums               rmd160  362d3c12fb3350cf9bbe56ebc1832c1997280ffb \
                        sha256  1cac5def70716d78154c2e7591590388ea49383d59abbdb7057f33efd0854254 \
                        size    6309517

categories-append       devel graphics
maintainers             nomaintainer
license                 LLGPL

description             A Lisp binding to GTK 3

long_description        {*}${description}

# test system requires X11, maybe use Xvfb one day?
test.run                no
common_lisp.systems     {cairo/*.asd} \
                        {gdk-pixbuf/*.asd} \
                        {gdk/*.asd} \
                        {gio/*.asd} \
                        {glib/*.asd} \
                        {gobject/*asd} \
                        {gtk/*.asd} \
                        {pango/*.asd}

# I may split it into subports but all that dependency from one cluster
depends_lib-append      path:lib/pkgconfig/cairo.pc:cairo \
                        port:cl-alexandria \
                        port:cl-bordeaux-threads \
                        port:cl-cffi \
                        port:cl-closer-mop \
                        port:cl-iterate \
                        port:cl-trivial-features \
                        port:cl-trivial-garbage \
                        path:lib/pkgconfig/gdk-pixbuf-2.0.pc:gdk-pixbuf2 \
                        path:lib/pkgconfig/glib-2.0.pc:glib2 \
                        path:lib/pkgconfig/gtk+-3.0.pc:gtk3

common_lisp.ffi         yes
common_lisp.threads     yes

# ECL detects such machines as arm,  not arm64 that leads to
#    Can not define 'G-SIZE', unknown CPU architectureAn error occurred during initialization:
# See: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/713
if {${build_arch} eq "arm64"} {
    common_lisp.ecl     no
}
