# -*- 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 compiler_blacklist_versions 1.0 PortGroup legacysupport 1.1 PortGroup texlive 1.0 name asymptote version 2.94 revision 0 categories graphics maintainers {mojca @mojca} openmaintainer description A vector graphics language long_description Asymptote is a powerful descriptive \ vector graphics language that provides a natural \ coordinate-based framework for technical drawing. \ Labels and equations are typeset with LaTeX, for \ high-quality PostScript output. homepage https://asymptote.sourceforge.net license LGPL-3+ # libpaper is a dependency of ghostscript that's only used at runtime license_noconflict libpaper set python.branch 3.11 set python.version [join [split ${python.branch} "."] ""] set python.bin ${prefix}/bin/python${python.branch} master_sites sourceforge:project/${name}/${version}/ extract.suffix .src.tgz checksums rmd160 3b04426cd292d93a894a745719d7b1f28c94b86d \ sha256 76f00f916a189fea0beb83b4ac3f86217dac910771e69ef95971979f8654bf67 \ size 6933989 # Drop with the next release: patchfiles-append 2696886e8fbd49af2ca113fdb29b46169366f58b.patch \ cbbcfd2335a02654acd333f5ff89302586960720.patch # FileNotFoundError: [Errno 2] No such file or directory: 'ccache /opt/local/bin/g++-mp-14' configure.ccache no # On Lion the default clang fails with # ../base/graph_splinetype.asy: 13.10: arrays have different lengths: 24 != 25 compiler.blacklist {clang < 500} # error: invalid use of template-name 'std::unordered_set' without an argument list compiler.cxx_standard 2017 configure.args-append \ --enable-gc=system \ --with-latex=${texlive_texmfports}/tex/latex \ --with-context=${texlive_texmfports}/tex/context/third \ --mandir=${prefix}/share/man \ --disable-offscreen \ --disable-lsp configure.cxxflags-append \ -std=c++17 build.env-append PYTHON=${python.bin} #build.env-append PYRCC5=${prefix}/bin/pyrcc5-${python.branch} \ # PYUIC5=${prefix}/bin/pyuic5-${python.branch} #destroot.env-append PYRCC5=${prefix}/bin/pyrcc5-${python.branch} \ # PYUIC5=${prefix}/bin/pyuic5-${python.branch} # texlive-latex-recommended and texinfo are only used for building the docs # other relevant packages are: # - texlive-common # - texlive-bin # - texlive-basic # - texlive-latex # but they are already a dependency of latex-recommended # # one day we could split that into a separate +docs variant # or fetch the PDF from somewhere depends_build-append \ port:ghostscript \ path:bin/pkg-config:pkgconfig \ port:texinfo \ port:texlive-fonts-recommended \ port:texlive-latex-recommended \ port:texlive-latex-extra # port:py${python.version}-pyqt5 depends_lib-append port:boehmgc \ port:fftw-3 \ port:glm \ port:gsl \ port:libsigsegv \ port:ncurses \ port:readline # Runtime dependencies really depend on user preferences. # Asy can draw graphics without any TeX or without LaTeX, # so one might just as well remove all deps (or add more) # # The hierarchy of dependencies goes as: # - texlive-latex-recommended [common, bin, basic, latex] # - texlive-latex [common, bin, basic] # - texlive-basic [common, bin] # # But then asy also supports luatex, context, etc. depends_run port:ghostscript \ port:texlive-basic \ port:py${python.version}-pycson # port:py${python.version}-pyqt5 # TODO: python dependencies for xasy should be optional depends_skip_archcheck-append \ port:ghostscript \ port:texinfo \ port:texlive-basic \ port:texlive-bin \ port:texlive-latex-recommended post-destroot { reinplace "s|#!/usr/bin/env python.*|#!${python.bin}|" \ {*}[glob -directory ${destroot}${prefix}/share/${name}/GUI *.py] } post-activate { # run `mktexlsr` to make sure the asymptote files are found: system "mktexlsr" } post-deactivate { system "mktexlsr" } notes "If you want to use xasy, install py${python.version}-pyqt5."