From d79477f78cd7e49112e787fc1efc35069c534213 Mon Sep 17 00:00:00 2001
From: Britney Fransen <brfransen@gmail.com>
Date: Thu, 9 Feb 2017 15:31:37 +0000
Subject: graphviz: update to 2.40

---
 abs/extra/graphviz/PKGBUILD             | 27 ++++++++++++++++-----------
 abs/extra/graphviz/format-string.patch  | 21 ---------------------
 abs/extra/graphviz/ghostscript918.patch | 18 ++++++++++++++++++
 3 files changed, 34 insertions(+), 32 deletions(-)
 delete mode 100644 abs/extra/graphviz/format-string.patch
 create mode 100644 abs/extra/graphviz/ghostscript918.patch

diff --git a/abs/extra/graphviz/PKGBUILD b/abs/extra/graphviz/PKGBUILD
index 0ee8e34..2eb0135 100644
--- a/abs/extra/graphviz/PKGBUILD
+++ b/abs/extra/graphviz/PKGBUILD
@@ -4,39 +4,40 @@
 # Contributor: John Proctor <jproctor@prium.net>
 
 pkgname=graphviz
-pkgver=2.38.0
-pkgrel=3
+pkgver=2.40.1
+pkgrel=1
 pkgdesc='Graph visualization software'
 url='http://www.graphviz.org/'
 license=('CPL')
 arch=('i686' 'x86_64')
 depends=('libltdl' 'gd' 'librsvg' 'libxaw' 'ghostscript' 'pango' 'gts')
-makedepends=('swig' 'mono' 'guile' 'lua51' 'ocaml' 'perl' 'php' 'python2' 'r' 'tk' 'qt4' 'gtk2')
+makedepends=('swig' 'mono' 'guile' 'lua51' 'ocaml' 'perl' 'python2' 'r' 'tk' 'qt4' 'gtk2')
 optdepends=('mono: sharp bindings'
             'guile: guile bindings'
             'lua51: lua bindings'
             'ocaml: ocaml bindings'
             'perl: perl bindings'
-            'php: php bindings'
             'python2: python bindings'
             'r: r bindings'
             'tcl: tcl bindings'
             'qt4: gvedit'
-            'gtk2: gtk output plugin')
+            'gtk2: gtk output plugin'
+            'xterm: vimdot')
 source=("${url}/pub/${pkgname}/stable/SOURCES/${pkgname}-${pkgver}.tar.gz"
-        'format-string.patch')
-sha1sums=('053c771278909160916ca5464a0a98ebf034c6ef'
-          '271d116bc022596a64b6ee061f3d2e50fa2e6025')
+        'ghostscript918.patch')
+sha1sums=('8a44d19bcdb50df1bd8e649de472ebf868468888'
+          'bcce75a535c277556e196638e59ea019b0a63fa1')
 
 install=install
 
 prepare() {
 	cd "${srcdir}/${pkgname}-${pkgver}"
-	patch -p1 -i ../format-string.patch # FS#42983
+	patch -p1 -i ../ghostscript918.patch
 }
 
 build() {
 	cd "${srcdir}/${pkgname}-${pkgver}"
+	export CXXFLAGS+=' -Dint64=int64_t' # for ocaml
 	export LIBPOSTFIX=/
 	export PYTHON=python2
 	export LUA=lua5.1
@@ -49,9 +50,13 @@ package() {
 	cd "${srcdir}/${pkgname}-${pkgver}"
 	make DESTDIR="${pkgdir}" install
 
+	cd "${pkgdir}/usr/lib"
+	install -d lua/5.1
+	mv lua/gv.so lua/5.1
+
 	# Workaround symlink upgrade bug (fixed in pacman trunk)
 	# Also deduplicates the tcl libraries (upstream bug?)
 	# Might have been this commit: https://github.com/ellson/graphviz/commit/f11aead
-	rm -r "${pkgdir}/usr/lib/tcl8.6/graphviz"
-	ln -s ../graphviz/tcl "$pkgdir/usr/lib/tcl8.6/graphviz"
+	rm -r tcl8.6/graphviz
+	ln -s ../graphviz/tcl tcl8.6/graphviz
 }
diff --git a/abs/extra/graphviz/format-string.patch b/abs/extra/graphviz/format-string.patch
deleted file mode 100644
index 1cc5867..0000000
--- a/abs/extra/graphviz/format-string.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -Naur old/lib/cgraph/scan.l new/lib/cgraph/scan.l
---- old/lib/cgraph/scan.l	2014-04-13 10:40:25.000000000 -1000
-+++ new/lib/cgraph/scan.l	2014-12-02 08:54:21.285050735 -1000
-@@ -149,7 +149,7 @@
- 	agxbput(&xb,buf);
- 	agxbput(&xb,fname);
- 	agxbput(&xb, " splits into two tokens\n");
--	agerr(AGWARN,agxbuse(&xb));
-+	agerr(AGWARN, "%s", agxbuse(&xb));
- 
- 	agxbfree(&xb);
- 	return 1;
-@@ -225,7 +225,7 @@
- 	agxbput (&xb, buf);
- 	agxbput (&xb, yytext);
- 	agxbput (&xb,"'\n");
--	agerr(AGERR,agxbuse(&xb));
-+	agerr(AGERR, "%s", agxbuse(&xb));
- 	agxbfree(&xb);
- }
- /* must be here to see flex's macro defns */
diff --git a/abs/extra/graphviz/ghostscript918.patch b/abs/extra/graphviz/ghostscript918.patch
new file mode 100644
index 0000000..189c513
--- /dev/null
+++ b/abs/extra/graphviz/ghostscript918.patch
@@ -0,0 +1,18 @@
+diff -uprb graphviz-2.38.0.orig/plugin/gs/gvloadimage_gs.c graphviz-2.38.0/plugin/gs/gvloadimage_gs.c
+--- graphviz-2.38.0.orig/plugin/gs/gvloadimage_gs.c	2014-04-13 23:40:25.000000000 +0300
++++ graphviz-2.38.0/plugin/gs/gvloadimage_gs.c	2015-11-11 00:08:32.916123704 +0200
+@@ -72,11 +72,11 @@ static void gs_error(GVJ_t * job, const
+ 
+     assert (err < 0);
+ 
+-    if (err >= e_VMerror) 
++    if (err >= gs_error_VMerror)
+ 	errsrc = "PostScript Level 1"; 
+-    else if (err >= e_unregistered)
++    else if (err >= gs_error_unregistered)
+ 	errsrc = "PostScript Level 2";
+-    else if (err >= e_invalidid)
++    else if (err >= gs_error_invalidid)
+ 	errsrc = "DPS error";
+     else
+ 	errsrc = "Ghostscript internal error";
-- 
cgit v0.12

