# $Id$ PortSystem 1.0 PortGroup archcheck 1.0 PortGroup xcodeversion 1.0 name graphviz conflicts graphviz-devel set my_name graphviz # keep version in sync between graphviz and graphviz-gui version 2.26.3 revision 1 categories graphics maintainers ryandesign license CPLv1.0 homepage http://www.graphviz.org/ master_sites ${homepage}pub/graphviz/stable/SOURCES/ platforms darwin use_parallel_build yes dist_subdir ${my_name} distname ${my_name}-${version} description Graph visualization software from AT&T and Bell Labs long_description Graph Visualization Software from AT&T Laboratories and \ Bell Laboratories (Lucent Technologies). \ The package contains: \ dot - batch program for drawing directed graphs as \ hierarchies \ neato - batch program for drawing undirected graphs \ using Kamada-Kawai spring models. \ Users wishing to have only the graph layout \ programs (for non-interactive use) can use the +no_x11 \ variant to build graphviz without its display routines. checksums md5 6f45946fa622770c45609778c0a982ee \ sha1 04503ac5a9eaa579859f0d017811fa245717edec \ rmd160 b2fbaf03b2006b43ed70e2a710363d7efbcfda77 # graphviz needs Xcode 3.1+ to avoid the libGL error when building the smyrna variant # graphviz-gui needs Xcode 3.1.2+; see #18811 minimum_xcodeversions {9 3.1.2} depends_lib port:xorg-libXaw \ path:lib/pkgconfig/pango.pc:pango \ port:jpeg \ port:libpng \ port:fontconfig \ port:freetype \ port:expat \ port:gd2 \ port:ghostscript \ port:zlib \ port:gettext # Ghostscript is not included here because Graphviz uses the gs executable, # not the libgs library. archcheck.files lib/libXaw.dylib \ lib/libpango-1.0.dylib \ lib/libjpeg.dylib \ lib/libpng.dylib \ lib/libfontconfig.dylib \ lib/libfreetype.dylib \ lib/libexpat.dylib \ lib/libgd.dylib \ lib/libz.dylib \ lib/libintl.dylib depends_build port:pkgconfig depends_run port:urw-fonts configure.args --with-codegens \ --with-x \ --without-devil \ --without-smyrna \ --with-digcola \ --with-ipsepcola \ --without-rsvg \ --with-pangocairo \ --without-glitz \ --with-freetype2 \ --with-fontconfig \ --without-gdk-pixbuf \ --without-gtk \ --without-gtkgl \ --without-gtkglext \ --without-glade \ --without-gnomeui \ --without-ming \ --without-quartz \ --disable-swig \ --disable-sharp \ --disable-guile \ --disable-io \ --disable-java \ --disable-lua \ --disable-ocaml \ --disable-perl \ --disable-php \ --disable-python \ --disable-python23 \ --disable-python24 \ --disable-python25 \ --disable-r \ --disable-ruby \ --disable-tcl platform macosx { if {${os.major} > 8} { configure.args-delete --without-quartz configure.args-append --with-quartz } } variant guile description {Include Guile language bindings} { depends_lib-append port:guile depends_build-append port:swig-guile configure.args-delete --disable-swig \ --disable-guile configure.args-append --enable-guile } variant lua description {Include Lua language bindings} { depends_lib-append port:lua depends_build-append port:swig-lua configure.args-delete --disable-swig \ --disable-lua configure.args-append --enable-lua post-patch { reinplace "s|/usr/lib\$LIBPOSTFIX/lua|${prefix}/lib\$LIBPOSTFIX/lua|g" ${worksrcpath}/configure } } variant ocaml description {Include Objective Caml language bindings} { depends_lib-append port:ocaml depends_build-append port:swig-ocaml configure.args-delete --disable-swig \ --disable-ocaml configure.args-append --enable-ocaml configure.cppflags-append -I${prefix}/lib/ocaml } variant perl description {Include PERL 5 language bindings} { depends_lib-append path:bin/perl:perl5 depends_build-append port:swig-perl configure.args-delete --disable-swig \ --disable-perl configure.args-append --enable-perl configure.perl ${prefix}/bin/perl } variant php description {Include PHP language bindings} { depends_lib-append path:bin/php:php5 depends_build-append port:swig-php5 configure.args-delete --disable-swig \ --disable-php configure.args-append --enable-php post-patch { reinplace "s|/usr/include/php|${prefix}/include/php|g" ${worksrcpath}/configure reinplace "s|/usr/lib\${LIBPOSTFIX}/php|${prefix}/lib\${LIBPOSTFIX}/php|g" ${worksrcpath}/configure reinplace "s|/usr/share/php|${prefix}/share/php|g" ${worksrcpath}/configure } } variant python24 description {Include Python 2.4 language bindings} conflicts python25 python26 { depends_lib-append port:python24 depends_build-append port:swig-python configure.args-delete --disable-swig \ --disable-python configure.args-append --enable-python configure.python ${prefix}/bin/python2.4 # The configure script asks python where to install # This doesn't work for 2.4 and 2.5 (see #16334) post-patch { reinplace "s|PYTHON_INSTALL_DIR=.*|PYTHON_INSTALL_DIR=${prefix}/lib/python2.4|" ${worksrcpath}/configure } } variant python25 description {Include Python 2.5 language bindings} conflicts python24 python26 { depends_lib-append port:python25 depends_build-append port:swig-python configure.args-delete --disable-swig \ --disable-python configure.args-append --enable-python configure.python ${prefix}/bin/python2.5 # The configure script asks python where to install # This doesn't work for 2.4 and 2.5 (see #16334) post-patch { reinplace "s|PYTHON_INSTALL_DIR=.*|PYTHON_INSTALL_DIR=${prefix}/lib/python2.5|" ${worksrcpath}/configure } } variant python26 description {Include Python 2.6 language bindings} conflicts python24 python25 { depends_lib-append port:python26 depends_build-append port:swig-python configure.args-delete --disable-swig \ --disable-python configure.args-append --enable-python configure.python ${prefix}/bin/python2.6 } variant ruby description {Include Ruby language bindings} { depends_lib-append port:ruby depends_build-append port:swig-ruby configure.args-delete --disable-swig \ --disable-ruby configure.args-append --enable-ruby } variant tcl description {Include Tcl language bindings} { depends_lib-append port:tcl depends_build-append port:swig-tcl configure.args-delete --disable-swig \ --disable-tcl configure.args-append --enable-tcl } variant java description {Include Java language bindings} { depends_build-append port:swig-java configure.args-delete --disable-swig \ --disable-java configure.args-append --enable-java } variant smyrna description {Include the Smyrna large graph viewer} { configure.args-delete --without-smyrna \ --without-gtk \ --without-gtkglext \ --without-glade configure.args-append --with-smyrna \ --with-gtk \ --with-gtkglext \ --with-glade depends_lib-append port:gtk2 \ port:gtkglext \ port:libglade2 \ port:gts archcheck.files-append bin/gtk-demo \ lib/libgtkglext-x11-1.0.dylib \ lib/libglade-2.0.dylib \ lib/libgts.dylib } variant r description {Include R language bindings} { depends_build-append port:swig-r configure.args-delete --disable-swig \ --disable-r configure.args-append --enable-r } variant rsvg description {enable the rsvg plugin} { depends_lib-append port:librsvg archcheck.files-append lib/librsvg-2.dylib configure.args-delete --without-rsvg configure.args-append --with-rsvg } variant gdk_pixbuf description {enable the gdk_pixbuf plugin} { depends_lib-append port:gtk2 archcheck.files-append bin/gtk-demo configure.args-delete --without-gdk-pixbuf configure.args-append --with-gdk-pixbuf } variant glitz description {enable the incomplete glitz plugin} { depends_lib-append port:glitz archcheck.files-append lib/libglitz.dylib configure.args-delete --without-glitz configure.args-append --with-glitz } variant ming description {enable the incomplete ming plugin} { depends_lib-append port:ming archcheck.files-append lib/libming.dylib configure.args-delete --without-ming configure.args-append --with-ming } variant no_pangocairo description {Remove pangocairo support (no antialiased bitmapped output; no PDF output)} { depends_lib-delete path:lib/pkgconfig/pango.pc:pango archcheck.files-delete lib/libpango-1.0.dylib configure.args-delete --with-pangocairo configure.args-append --without-pangocairo } variant no_x11 requires no_pangocairo { depends_lib-delete port:xorg-libXaw archcheck.files-delete lib/libXaw.dylib configure.args-append --without-x } post-destroot { # Make the configuration file that makes the plugins work. system "GVBINDIR=${destroot}${prefix}/lib/graphviz DYLD_LIBRARY_PATH=${destroot}${prefix}/lib ${destroot}${prefix}/bin/dot -c" } pre-install { # Remove old configuration files left behind by old versions of this port. foreach file [glob -nocomplain -directory ${prefix}/lib/graphviz config*] { delete ${file} } } # keep livecheck in sync between graphviz and graphviz-gui livecheck.type regex livecheck.url ${homepage}Download_source.php livecheck.regex ${my_name}-(\[0-9\]+\\.\[0-9\]*\[02468\](\\.\[0-9\]+)*)\\.tar