# -*- 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 cmake 1.1 PortGroup compiler_blacklist_versions 1.0 PortGroup conflicts_build 1.0 PortGroup legacysupport 1.1 # https://trac.macports.org/ticket/65314 # undefined vtable symbols, related to std::bad_variant_access # https://trac.macports.org/ticket/66697 # error: call to unavailable function 'get': introduced in macOS 10.14 legacysupport.newest_darwin_requires_legacy 17 legacysupport.use_mp_libcxx yes name doxygen-devel conflicts doxygen set my_name doxygen # please don't update doxygen without first checking the build status of doxygen-devel version 1.9.8 revision 0 epoch 0 checksums rmd160 28b49414adeaea5579436c32aa89a923680508f7 \ sha256 05e3d228e8384b5f3af9c8fd6246d22804acb731a3a24ce285c8986ed7e14f62 \ size 8087770 categories textproc devel license GPL-2 maintainers nomaintainer description Documentation system for several programming languages long_description It can generate an on-line documentation browser \ (in HTML) and/or an off-line reference manual \ from a set of documented source files. There is \ also support for generating output in RTF \ (MS-Word), PostScript, hyperlinked PDF, \ compressed HTML, and Unix man pages. The \ documentation is extracted directly from the \ sources, which makes it much easier to keep the \ documentation consistent with the source code. \ You can configure doxygen to extract the code \ structure from undocumented source files. This \ is very useful to quickly find your way in large \ source distributions. You can also visualize the \ relations between the various elements by means \ of include dependency graphs, inheritance \ diagrams, and collaboration diagrams, which are \ all generated automatically. homepage https://www.doxygen.nl master_sites ${homepage}/files distname ${my_name}-${version} dist_subdir ${my_name} distfiles ${distname}.src${extract.suffix} set py_ver 3.11 set py_ver_nodot [string map {. {}} ${py_ver}] configure.python ${prefix}/bin/python${py_ver} installs_libs no license_noconflict perl5 python${py_ver_nodot} # 59037 conflicts_build libmd patchfiles-append patch-src-portable_c.c.diff patchfiles-append patch-CMakeLists.txt.diff patchfiles-append patch-longtabu.diff # https://trac.macports.org/ticket/68581 patchfiles-append patch-pthread_threadid_np.diff depends_build-append \ port:bison \ port:flex \ path:bin/perl:perl5 \ port:python${py_ver_nodot} depends_lib-append \ port:libiconv compiler.cxx_standard 2017 # error: no matching constructor for initialization of 'value_type' # (aka 'pair, DotFilePatcher>') compiler.blacklist-append \ {clang < 900} compiler.thread_local_storage yes # see #50342 configure.args-append \ -DPython_ADDITIONAL_VERSIONS=${py_ver} \ -DICONV_INCLUDE_DIR=${prefix}/include \ -DICONV_LIBRARY=${prefix}/lib/libiconv.dylib # see #59552 if {${os.platform} eq "darwin" && ${os.major} < 13} { depends_build-append \ path:bin/git:git configure.args-append \ -DGIT_EXECUTABLE=${prefix}/bin/git } # cmake PortGroup sets arch flags # duplicate archflags can cause problems # see #50044 # see #48331 # see https://cmake.org/pipermail/cmake-developers/2015-September/thread.html#26586 configure.universal_cflags configure.universal_cxxflags configure.universal_objcflags configure.universal_objcxxflags configure.universal_ldflags configure.cc_archflags configure.cxx_archflags configure.objc_archflags configure.objcxx_archflags configure.ld_archflags post-extract { # Use our flex delete ${worksrcpath}/src/ce_lex.cpp delete ${worksrcpath}/src/code.cpp delete ${worksrcpath}/src/commentcnv.cpp delete ${worksrcpath}/src/commentscan.cpp delete ${worksrcpath}/src/config.cpp delete ${worksrcpath}/src/declinfo.cpp delete ${worksrcpath}/src/defargs.cpp delete ${worksrcpath}/src/doctokenizer.cpp delete ${worksrcpath}/src/fortrancode.cpp delete ${worksrcpath}/src/fortranscanner.cpp delete ${worksrcpath}/src/pre.cpp delete ${worksrcpath}/src/pycode.cpp delete ${worksrcpath}/src/pyscanner.cpp delete ${worksrcpath}/src/scanner.cpp delete ${worksrcpath}/src/tclscanner.cpp delete ${worksrcpath}/src/vhdlcode.cpp delete ${worksrcpath}/src/vhdlscanner.cpp # Use our bison delete ${worksrcpath}/src/ce_parse.cpp delete ${worksrcpath}/src/ce_parse.h delete ${worksrcpath}/src/vhdlparser.cpp delete ${worksrcpath}/src/vhdlparser.h } set cxx_stdlibflags {} if {[string match *clang* ${configure.cxx}] && ${configure.cxx_stdlib} ne ""} { set cxx_stdlibflags -stdlib=${configure.cxx_stdlib} } # build fails out of source :/ cmake.out_of_source no # https://trac.macports.org/ticket/65814 etc. legacysupport.redirect_bins doxygen test.run yes destroot.args \ INSTALL=${prefix} \ DOCDIR=${prefix}/share/doc/doxygen \ MAN1DIR=share/man/man1 variant docs description {Include the doxygen HTML and PDF documentation} { depends_build-append \ path:bin/gs:ghostscript \ path:bin/dot:graphviz \ port:texlive \ port:texlive-latex-extra configure.args-append \ -Dbuild_doc=YES \ -DEPSTOPDF=${prefix}/bin/epstopdf build.target-append docs use_parallel_build no } variant qt4 conflicts qt5 description {Include the GUI wizard based on Qt4} { # use the Qt4 PortGroup, which provides a bunch of variables # and defines for how Qt4 was installed PortGroup qt4 1.0 # tell configure to make the wizard app configure.args-append \ -Dbuild_wizard=YES \ -Dforce_qt4=YES } variant qt5 conflicts qt4 description {Include the GUI wizard based on Qt5} { # use the Qt5 PortGroup, which provides a bunch of variables # and defines for how Qt5 was installed PortGroup qt5 1.0 # tell configure to make the wizard app configure.args-append \ -Dbuild_wizard=ON \ -Dforce_qt=Qt5 } livecheck.type regex livecheck.name ${my_name} livecheck.url ${homepage}/download.html livecheck.regex {latest version of doxygen is (\d+(?:\.\d+)*)}