Date: Tuesday, October 8, 2013 @ 22:03:28 Author: schiv Revision: 98343
upgpkg: flowcanvas 0.7.1-4 graphviz TODO adapted FreeBSD patch needs testing with patchage Added: flowcanvas/trunk/graphviz-2.30.patch Modified: flowcanvas/trunk/PKGBUILD ---------------------+ PKGBUILD | 21 +++++++++++++++--- graphviz-2.30.patch | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+), 4 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2013-10-08 19:42:24 UTC (rev 98342) +++ PKGBUILD 2013-10-08 20:03:28 UTC (rev 98343) @@ -5,17 +5,30 @@ pkgname=flowcanvas pkgver=0.7.1 -pkgrel=3 +pkgrel=4 pkgdesc="Gtkmm/Gnomecanvasmm widget for boxes-and-lines style environments" arch=('i686' 'x86_64') url="http://drobilla.net/software/flowcanvas/" -depends=('libgnomecanvasmm' 'graphviz') +depends=('libgnomecanvasmm' 'graphviz>=2.34') makedepends=('boost' 'python2') license=('GPL') install=$pkgname.install -source=(http://download.drobilla.net/$pkgname-$pkgver.tar.bz2) -md5sums=('a4908f6385ce9fd2ce97c8caa823f053') +source=("http://download.drobilla.net/$pkgname-$pkgver.tar.bz2" + "graphviz-2.30.patch") +md5sums=('a4908f6385ce9fd2ce97c8caa823f053' + 'e5b2b23d8be0c9fa14b8b52379a15155') +prepare() { + cd "$srcdir/$pkgname-$pkgver" + + # graphviz 2.30 compatibility + # see http://dev.drobilla.net/ticket/888 + # adapted from FreeBSD patch (just stripped their stuff) + # potentially unstable (nothing committed by developer yet) + # may have to incorporate proposed patch for ganv (successor to this lib) + patch -Np0 -i "$srcdir/graphviz-2.30.patch" +} + build() { cd "$srcdir/$pkgname-$pkgver" Added: graphviz-2.30.patch =================================================================== --- graphviz-2.30.patch (rev 0) +++ graphviz-2.30.patch 2013-10-08 20:03:28 UTC (rev 98343) @@ -0,0 +1,56 @@ +--- src/Canvas.cpp.orig 2011-01-10 00:19:58.000000000 +0100 ++++ src/Canvas.cpp 2013-03-16 13:45:17.797462753 +0100 +@@ -1253,21 +1253,21 @@ + */ + + GVC_t* gvc = gvContext(); +- Agraph_t* G = agopen((char*)"g", AGDIGRAPH); ++ Agraph_t* G = agopen((char*)"g", Agdirected, NULL); + + nodes.gvc = gvc; + nodes.G = G; + + if (_direction == HORIZONTAL) +- agraphattr(G, (char*)"rankdir", (char*)"LR"); ++ agattr(G, AGRAPH, (char*)"rankdir", (char*)"LR"); + else +- agraphattr(G, (char*)"rankdir", (char*)"TD"); ++ agattr(G, AGRAPH, (char*)"rankdir", (char*)"TD"); + + unsigned id = 0; + for (ItemList::const_iterator i = _items.begin(); i != _items.end(); ++i) { + std::ostringstream ss; + ss << "n" << id++; +- Agnode_t* node = agnode(G, strdup(ss.str().c_str())); ++ Agnode_t* node = agnode(G, strdup(ss.str().c_str()), true); + if (boost::dynamic_pointer_cast<Module>(*i)) { + ss.str(""); + ss << (*i)->width() / 96.0; +@@ -1310,7 +1310,7 @@ + + assert(src_node && dst_node); + +- Agedge_t* edge = agedge(G, src_node, dst_node); ++ Agedge_t* edge = agedge(G, src_node, dst_node, NULL, true); + + if (use_length_hints && c->length_hint() != 0) { + std::ostringstream len_ss; +@@ -1325,7 +1325,7 @@ + if (partner) { + GVNodes::iterator p = nodes.find(partner); + if (p != nodes.end()) +- agedge(G, i->second, p->second); ++ agedge(G, i->second, p->second, NULL, true); + } + } + +--- wscript.orig 2011-01-12 00:09:31.000000000 +0100 ++++ wscript 2013-03-16 14:19:43.577462602 +0100 +@@ -41,6 +41,7 @@ + conf.check_tool('compiler_cxx') + autowaf.check_pkg(conf, 'libgvc', uselib_store='AGRAPH', + atleast_version='2.8', mandatory=False) ++ conf.env['LIB_AGRAPH'] = ['cgraph' if l == 'graph' else l for l in conf.env['LIB_AGRAPH']] + autowaf.check_pkg(conf, 'gtkmm-2.4', uselib_store='GLIBMM', + atleast_version='2.10.0', mandatory=True) + autowaf.check_pkg(conf, 'libgnomecanvasmm-2.6', uselib_store='GNOMECANVASMM',