source: trunk/dports/graphics/graphviz-devel/Portfile @ 92218

Last change on this file since 92218 was 92218, checked in by ryandesign@…, 5 years ago

graphviz-devel, graphviz-gui-devel, gvedit-devel: update to 2.29.20120422.0452

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 13.3 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 92218 2012-04-22 08:06:57Z ryandesign@macports.org $
3
4PortSystem                      1.0
5PortGroup                       archcheck 1.0
6PortGroup                       xcodeversion 1.0
7
8# Keep relevant lines in sync between graphviz-devel, graphviz-gui-devel and gvedit-devel.
9
10name                            graphviz-devel
11conflicts                       graphviz
12set my_name                     graphviz
13version                         2.29.20120422.0452
14categories                      graphics
15maintainers                     ryandesign
16license                         EPL-1.0
17homepage                        http://www.graphviz.org/
18master_sites                    ${homepage}pub/graphviz/development/SOURCES/
19platforms                       darwin
20use_parallel_build              yes
21dist_subdir                     ${my_name}
22distname                        ${my_name}-${version}
23
24description                     Graph visualization software from AT&T and Bell Labs
25
26long_description                Graph Visualization Software from AT&T Laboratories and \
27                                Bell Laboratories (Lucent Technologies). \
28                                The package contains: \
29                                    dot    - batch program for drawing directed graphs as \
30                                     hierarchies \
31                                    neato  - batch program for drawing undirected graphs \
32                                     using Kamada-Kawai spring models. \
33                                Users wishing to have only the graph layout \
34                                programs (for non-interactive use) can use the +no_x11 \
35                                variant to build graphviz without its display routines.
36
37checksums                       rmd160  5451187e8db4854577c08f15460e0a8a13def1ac \
38                                sha256  e57011392d270019996e4594ddb38f6e3cdc029af3f8ac5e79d3504d8a04f7e5
39
40# graphviz needs Xcode 3.1+ to avoid the libGL error when building the smyrna variant
41# graphviz-gui needs Xcode 3.1.2+; see #18811
42minimum_xcodeversions           {9 3.1.2}
43
44depends_lib                     port:xorg-libXaw \
45                                path:lib/pkgconfig/pango.pc:pango \
46                                port:jpeg \
47                                port:libpng \
48                                port:webp \
49                                port:libLASi \
50                                port:fontconfig \
51                                port:freetype \
52                                port:expat \
53                                port:gd2 \
54                                port:gts \
55                                port:ghostscript \
56                                port:zlib \
57                                port:gettext
58
59archcheck.files                 lib/libXaw.dylib \
60                                lib/libpango-1.0.dylib \
61                                lib/libjpeg.dylib \
62                                lib/libpng.dylib \
63                                lib/libwebp.dylib \
64                                lib/libLASi.dylib \
65                                lib/libfontconfig.dylib \
66                                lib/libfreetype.dylib \
67                                lib/libexpat.dylib \
68                                lib/libgd.dylib \
69                                lib/libgts.dylib \
70                                lib/libgs.dylib \
71                                lib/libz.dylib \
72                                lib/libintl.dylib
73
74depends_build                   port:pkgconfig
75
76depends_run                     port:urw-fonts
77
78configure.args                  --with-codegens \
79                                --with-x \
80                                --without-devil \
81                                --without-smyrna \
82                                --with-digcola \
83                                --with-ipsepcola \
84                                --without-rsvg \
85                                --with-pangocairo \
86                                --with-webp \
87                                --without-glitz \
88                                --with-freetype2 \
89                                --with-fontconfig \
90                                --without-gdk-pixbuf \
91                                --without-gtk \
92                                --without-gtkgl \
93                                --without-gtkglext \
94                                --with-gts \
95                                --without-glade \
96                                --without-gnomeui \
97                                --without-ming \
98                                --without-qt \
99                                --without-quartz \
100                                --disable-swig \
101                                --disable-sharp \
102                                --disable-guile \
103                                --disable-io \
104                                --disable-java \
105                                --disable-lua \
106                                --disable-ocaml \
107                                --disable-perl \
108                                --disable-php \
109                                --disable-python \
110                                --disable-python23 \
111                                --disable-python24 \
112                                --disable-python25 \
113                                --disable-r \
114                                --disable-ruby \
115                                --disable-tcl
116
117platform macosx {
118    if {${os.major} > 8} {
119        configure.args-delete   --without-quartz
120        configure.args-append   --with-quartz
121    }
122}
123
124variant guile description {Include Guile language bindings} {
125    depends_lib-append          port:guile
126    depends_build-append        port:swig-guile
127    configure.args-delete       --disable-swig \
128                                --disable-guile
129    configure.args-append       --enable-guile
130}
131
132variant lua description {Include Lua language bindings} {
133    depends_lib-append          port:lua
134    depends_build-append        port:swig-lua
135    configure.args-delete       --disable-swig \
136                                --disable-lua
137    configure.args-append       --enable-lua
138    post-patch {
139        reinplace "s|/usr/lib\$LIBPOSTFIX/lua|${prefix}/lib\$LIBPOSTFIX/lua|g" ${worksrcpath}/configure
140    }
141}
142
143variant ocaml description {Include Objective Caml language bindings} {
144    depends_lib-append          port:ocaml
145    depends_build-append        port:swig-ocaml
146    configure.args-delete       --disable-swig \
147                                --disable-ocaml
148    configure.args-append       --enable-ocaml
149    configure.cppflags-append   -I${prefix}/lib/ocaml
150}
151
152variant perl description {Include PERL 5 language bindings} {
153    depends_lib-append          path:bin/perl:perl5
154    depends_build-append        port:swig-perl
155    configure.args-delete       --disable-swig \
156                                --disable-perl
157    configure.args-append       --enable-perl
158    configure.perl              ${prefix}/bin/perl
159}
160
161variant php description {Include PHP language bindings} {
162    depends_lib-append          path:bin/php:php5
163    depends_build-append        port:swig-php5
164    configure.args-delete       --disable-swig \
165                                --disable-php
166    configure.args-append       --enable-php
167    post-patch {
168        reinplace "s|/usr/include/php|${prefix}/include/php|g" ${worksrcpath}/configure
169        reinplace "s|/usr/lib\${LIBPOSTFIX}/php|${prefix}/lib\${LIBPOSTFIX}/php|g" ${worksrcpath}/configure
170        reinplace "s|/usr/share/php|${prefix}/share/php|g" ${worksrcpath}/configure
171    }
172}
173
174variant python24 description {Include Python 2.4 language bindings} conflicts python25 python26 {
175    depends_lib-append          port:python24
176    depends_build-append        port:swig-python
177    configure.args-delete       --disable-swig \
178                                --disable-python
179    configure.args-append       --enable-python
180    configure.python            ${prefix}/bin/python2.4
181    # The configure script asks python where to install
182    # This doesn't work for 2.4 and 2.5 (see #16334)
183    post-patch {
184        reinplace "s|PYTHON_INSTALL_DIR=.*|PYTHON_INSTALL_DIR=${prefix}/lib/python2.4|" ${worksrcpath}/configure
185    }
186}
187
188variant python25 description {Include Python 2.5 language bindings} conflicts python24 python26 {
189    depends_lib-append          port:python25
190    depends_build-append        port:swig-python
191    configure.args-delete       --disable-swig \
192                                --disable-python
193    configure.args-append       --enable-python
194    configure.python            ${prefix}/bin/python2.5
195    # The configure script asks python where to install
196    # This doesn't work for 2.4 and 2.5 (see #16334)
197    post-patch {
198        reinplace "s|PYTHON_INSTALL_DIR=.*|PYTHON_INSTALL_DIR=${prefix}/lib/python2.5|" ${worksrcpath}/configure
199    }
200}
201
202variant python26 description {Include Python 2.6 language bindings} conflicts python24 python25 {
203    depends_lib-append          port:python26
204    depends_build-append        port:swig-python
205    configure.args-delete       --disable-swig \
206                                --disable-python
207    configure.args-append       --enable-python
208    configure.python            ${prefix}/bin/python2.6
209}
210
211variant ruby description {Include Ruby language bindings} {
212    depends_lib-append          port:ruby
213    depends_build-append        port:swig-ruby
214    configure.args-delete       --disable-swig \
215                                --disable-ruby
216    configure.args-append       --enable-ruby
217}
218
219variant tcl description {Include Tcl language bindings} {
220    depends_lib-append          port:tcl
221    depends_build-append        port:swig-tcl
222    configure.args-delete       --disable-swig \
223                                --disable-tcl
224    configure.args-append       --enable-tcl
225}
226
227variant java description {Include Java language bindings} {
228    depends_build-append        port:swig-java
229    configure.args-delete       --disable-swig \
230                                --disable-java
231    configure.args-append       --enable-java
232}
233
234variant smyrna description {Include the Smyrna large graph viewer} {
235    configure.args-delete       --without-smyrna \
236                                --without-gtk \
237                                --without-gtkglext \
238                                --without-glade
239    configure.args-append       --with-smyrna \
240                                --with-gtk \
241                                --with-gtkglext \
242                                --with-glade
243    depends_lib-append          port:gtk2 \
244                                port:gtkglext \
245                                port:libglade2
246    archcheck.files-append      bin/gtk-demo \
247                                lib/libgtkglext-x11-1.0.dylib \
248                                lib/libglade-2.0.dylib
249}
250
251variant r description {Include R language bindings} {
252    depends_build-append        port:swig-r
253    configure.args-delete       --disable-swig \
254                                --disable-r
255    configure.args-append       --enable-r
256}
257
258variant rsvg description {enable the rsvg plugin} {
259    depends_lib-append          port:librsvg
260    archcheck.files-append      lib/librsvg-2.dylib
261    configure.args-delete       --without-rsvg
262    configure.args-append       --with-rsvg
263}
264
265variant gdk_pixbuf description {enable the gdk_pixbuf plugin} {
266    depends_lib-append          port:gtk2
267    archcheck.files-append      bin/gtk-demo
268    configure.args-delete       --without-gdk-pixbuf
269    configure.args-append       --with-gdk-pixbuf
270}
271
272variant glitz description {enable the incomplete glitz plugin} {
273    depends_lib-append          port:glitz
274    archcheck.files-append      lib/libglitz.dylib
275    configure.args-delete       --without-glitz
276    configure.args-append       --with-glitz
277}
278
279variant ming description {enable the incomplete ming plugin} {
280    depends_lib-append          port:ming
281    archcheck.files-append      lib/libming.dylib
282    configure.args-delete       --without-ming
283    configure.args-append       --with-ming
284}
285
286variant no_pangocairo description {Remove pangocairo support (no antialiased bitmapped output; no PDF output)} {
287    depends_lib-delete          path:lib/pkgconfig/pango.pc:pango
288    archcheck.files-delete      lib/libpango-1.0.dylib
289    configure.args-delete       --with-pangocairo
290    configure.args-append       --without-pangocairo
291}
292
293variant no_x11 requires no_pangocairo {
294    depends_lib-delete          port:xorg-libXaw
295    archcheck.files-delete      lib/libXaw.dylib
296    configure.args-append       --without-x
297}
298
299post-destroot {
300    set files "${prefix}/share/graphviz/doc/pdf/gvedit.1.pdf ${prefix}/share/man/man1/gvedit.1"
301    if {![variant_isset smyrna]} {
302        set files "${files} ${prefix}/share/graphviz/doc/pdf/smyrna.1.pdf ${prefix}/share/graphviz/doc/pdf/smyrna.pdf ${prefix}/share/man/man1/smyrna.1"
303    }
304    foreach f ${files} {
305        delete ${destroot}${f}
306    }
307   
308    # Make the configuration file that makes the plugins work.
309    system "GVBINDIR=${destroot}${prefix}/lib/graphviz DYLD_LIBRARY_PATH=${destroot}${prefix}/lib ${destroot}${prefix}/bin/dot -c"
310}
311
312livecheck.type                  regex
313livecheck.url                   ${homepage}Download_source.php
314livecheck.regex                 ${my_name}-(\[0-9\]+\\.\[0-9\]*\[13579\](\\.\[0-9\]+)*)\\.tar
Note: See TracBrowser for help on using the repository browser.