source: trunk/dports/textproc/doxygen/Portfile @ 143539

Last change on this file since 143539 was 143539, checked in by cal@…, 4 years ago

doxygen: Update to 1.8.10, openmaintainer, #48231

Maintainer timeout. Additionally backport patch to fix build against flex 2.6.

Closes #48231, #49881

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 5.0 KB
Line 
1# -*- 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
2# $Id: Portfile 143539 2015-12-14 22:14:18Z cal@macports.org $
3
4PortSystem              1.0
5PortGroup               cmake 1.0
6
7name                    doxygen
8version                 1.8.10
9categories              textproc devel
10maintainers             css openmaintainer
11license                 GPL-2
12description             Documentation system for several programming languages
13long_description        It can generate an on-line documentation browser \
14                        (in HTML) and/or an off-line reference manual \
15                        from a set of documented source files. There is \
16                        also support for generating output in RTF \
17                        (MS-Word), PostScript, hyperlinked PDF, \
18                        compressed HTML, and Unix man pages. The \
19                        documentation is extracted directly from the \
20                        sources, which makes it much easier to keep the \
21                        documentation consistent with the source code. \
22                        You can configure doxygen to extract the code \
23                        structure from undocumented source files. This \
24                        is very useful to quickly find your way in large \
25                        source distributions. You can also visualize the \
26                        relations between the various elements by means \
27                        of include dependency graphs, inheritance \
28                        diagrams, and collaboration diagrams, which are \
29                        all generated automatically.
30
31platforms               darwin
32
33homepage                http://www.doxygen.org/
34master_sites            http://ftp.stack.nl/pub/users/dimitri/ \
35                        ftp://ftp.stack.nl/pub/users/dimitri/
36distfiles               ${distname}.src${extract.suffix}
37
38checksums               ${distname}.src${extract.suffix} \
39                        rmd160  be064f0e8f00e6e20ed7c128f595e7010be1f23a \
40                        sha256  cedf78f6d213226464784ecb999b54515c97eab8a2f9b82514292f837cf88b93
41
42depends_build-append    bin:perl:perl5 \
43                        bin:python2.7:python27 \
44                        port:flex \
45                        port:bison
46license_noconflict      perl5 python27
47
48depends_lib             port:libpng
49
50patchfiles              patch-src-portable_c.c.diff \
51                        cf936efb8ae99dd297b6afb9c6a06beb81f5b0fb.patch \
52                        8c51120ad55b440b738ef0b96f8169d84a7ae88a.patch \
53                        a8c73cdbe37cc53c398002d20e94037552a8fb55.patch
54
55post-extract {
56    # Use our flex
57    delete ${worksrcpath}/src/ce_lex.cpp
58    delete ${worksrcpath}/src/code.cpp
59    delete ${worksrcpath}/src/commentcnv.cpp
60    delete ${worksrcpath}/src/commentscan.cpp
61    delete ${worksrcpath}/src/config.cpp
62    delete ${worksrcpath}/src/declinfo.cpp
63    delete ${worksrcpath}/src/defargs.cpp
64    delete ${worksrcpath}/src/doctokenizer.cpp
65    delete ${worksrcpath}/src/fortrancode.cpp
66    delete ${worksrcpath}/src/fortranscanner.cpp
67    delete ${worksrcpath}/src/pre.cpp
68    delete ${worksrcpath}/src/pycode.cpp
69    delete ${worksrcpath}/src/pyscanner.cpp
70    delete ${worksrcpath}/src/scanner.cpp
71    delete ${worksrcpath}/src/tclscanner.cpp
72    delete ${worksrcpath}/src/vhdlcode.cpp
73    delete ${worksrcpath}/src/vhdlscanner.cpp
74
75    # Use our bison
76    delete ${worksrcpath}/src/ce_parse.cpp
77    delete ${worksrcpath}/src/ce_parse.h
78    delete ${worksrcpath}/src/vhdlparser.cpp
79    delete ${worksrcpath}/src/vhdlparser.h
80}
81
82set cxx_stdlibflags {}
83if {[string match *clang* ${configure.cxx}]} {
84    set cxx_stdlibflags -stdlib=${configure.cxx_stdlib}
85}
86
87# build fails out of source :/
88cmake.out_of_source     no
89
90destroot.args           INSTALL=${prefix} \
91                        DOCDIR=${prefix}/share/doc/doxygen \
92                        MAN1DIR=share/man/man1
93
94variant docs description {Include the doxygen HTML and PDF documentation} {
95    configure.args-append   -Dbuild_doc=YES \
96                            -EPSTOPDF=${prefix}/bin/epstopdf
97
98    patchfiles-append       patch-doc-CMakeLists.txt.diff \
99                            patch-doc-CMakeLists.txt-man-to-share-man.diff \
100                            patch-examples-CMakeLists.txt.diff
101
102    depends_build-append    path:bin/dot:graphviz \
103                            bin:gs:ghostscript \
104                            port:texlive \
105                            port:texlive-latex-extra
106
107    build.target-append     docs
108    use_parallel_build      no
109}
110
111variant wizard description {Include the GUI wizard based on Qt4} {
112    # use the Qt4 PortGroup, which provides a bunch of variables
113    # and defines for how Qt4 was installed
114    PortGroup qt4 1.0
115
116    # tell configure to make the wizard app
117    configure.args-append   -Dbuild_wizard=YES
118}
119
120livecheck.type          regex
121livecheck.url           http://www.stack.nl/~dimitri/doxygen/download.html
122livecheck.regex         {latest version of doxygen is (\d+(?:\.\d+)*)}
Note: See TracBrowser for help on using the repository browser.