# -*- 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               cmake 1.1
PortGroup               qt6 1.0
PortGroup               legacysupport 1.1

github.setup            xaos-project XaoS 4.3.5 release-
revision                0
github.tarball_from     archive

name                    xaos
categories              graphics math
license                 GPL-2+
maintainers             nomaintainer

homepage                https://xaos-project.github.io/

description             Real-time interactive fractal zoomer

long_description        XaoS is a fast portable real-time interactive \
                        fractal zoomer. It displays the Mandelbrot set \
                        (among other escape time fractals) and allows you to \
                        zoom smoothly into the fractal. Various coloring \
                        modes are provided for both the points inside and \
                        outside the selected set. In addition, switching \
                        between Julia and Mandelbrot fractal types and \
                        on-the-fly plane switching is provided. The first \
                        version was a minimal X Window Mandelbrot viewer \
                        by Thomas later modified by Jan to support high \
                        frame-rate zooming. Other additions were later \
                        made by both Thomas and Jan including autopilot \
                        (for those of you without drivers licenses), \
                        palette changing, GIF saving, and fractal inversion.

checksums               rmd160  4df6188b34e72ff21ac1843242ddae10b757aa97 \
                        sha256  2c37ec26dbdf12246d443742297764199a1b7d46eabfb79c0e7afae225e7382c \
                        size    21615693

# XaoS does not link to Qt Network, which is the only component of Qt that uses OpenSSL.
license_noconflict      openssl

qt6.depends_build       qttools

compiler.thread_local_storage yes

compiler.cxx_standard   2017

# Same as qt6
compiler.blacklist-append   {clang < 1100}

destroot {
    # See tools/deploy-mac for the origin of the following four steps:
    file mkdir ${build.dir}/XaoS.app/Contents/Resources/examples/
    copy {*}[glob ${worksrcpath}/examples/*/*] ${build.dir}/XaoS.app/Contents/Resources/examples/
    copy ${worksrcpath}/catalogs ${build.dir}/XaoS.app/Contents/Resources/
    copy ${worksrcpath}/tutorial ${build.dir}/XaoS.app/Contents/Resources/

    move ${build.dir}/XaoS.app ${destroot}${applications_dir}
}
