aboutsummaryrefslogtreecommitdiff
path: root/devel/monotone-viz
diff options
context:
space:
mode:
authorMax Brazhnikov <makc@FreeBSD.org>2010-11-08 22:33:38 +0000
committerMax Brazhnikov <makc@FreeBSD.org>2010-11-08 22:33:38 +0000
commitb007198ee2bef57ebc341b709f2d3b278ff4ff02 (patch)
tree859ad776cd8f15c3630147e4caa358ad1ba4a407 /devel/monotone-viz
parent69d7de66c2c7c9f631f1ca3b4458974374bc60e9 (diff)
downloadports-b007198ee2bef57ebc341b709f2d3b278ff4ff02.tar.gz
ports-b007198ee2bef57ebc341b709f2d3b278ff4ff02.zip
Update to 1.0.2
Pass maintainership to submitter PR: ports/151961 Submitted by: Lapo Luchini <lapo at lapo.it>
Notes
Notes: svn path=/head/; revision=264279
Diffstat (limited to 'devel/monotone-viz')
-rw-r--r--devel/monotone-viz/Makefile25
-rw-r--r--devel/monotone-viz/distinfo5
-rw-r--r--devel/monotone-viz/files/patch-agraph.ml29
-rw-r--r--devel/monotone-viz/files/patch-automate.ml124
-rw-r--r--devel/monotone-viz/files/patch-lablgtk_src_gContainer.mli27
5 files changed, 170 insertions, 40 deletions
diff --git a/devel/monotone-viz/Makefile b/devel/monotone-viz/Makefile
index 3992a169d5e5..5e4b420edc7a 100644
--- a/devel/monotone-viz/Makefile
+++ b/devel/monotone-viz/Makefile
@@ -6,21 +6,27 @@
#
PORTNAME= monotone-viz
-PORTVERSION= 1.0.1
-PORTREVISION= 4
+PORTVERSION= 1.0.2
CATEGORIES= devel
MASTER_SITES= http://oandrieu.nerim.net/monotone-viz/
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= lapo@lapo.it
COMMENT= Visual interface for Monotone VCS with revision graphs
-BUILD_DEPENDS= ocamlc:${PORTSDIR}/lang/ocaml \
- dot:${PORTSDIR}/graphics/graphviz \
- mtn:${PORTSDIR}/devel/monotone \
- sqlite3:${PORTSDIR}/databases/sqlite3
+# BUILD_DEPENDS= lablgtk2:${PORTSDIR}/x11-toolkits/ocaml-lablgtk2
+RUN_DEPENDS+= dot:${PORTSDIR}/graphics/graphviz \
+ mtn:${PORTSDIR}/devel/monotone
+# lablgtk2:${PORTSDIR}/x11-toolkits/ocaml-lablgtk2
-GNU_CONFIGURE= YES
-USE_GMAKE= YES
+LICENSE= GPLv2
+LICENSE_FILE= ${WRKSRC}/COPYING
+
+USE_GMAKE= yes
+USE_OCAML= yes
+GNU_CONFIGURE= yes
+# following line can (and should) be used only after ports/149958 is closed
+#CONFIGURE_ARGS+= --without-local-lablgtk
+# Remove USE_GNOME and enable dependency on lablgtk2 when ports/149958 is fixed
USE_GNOME= gtk20 libgnomecanvas
ALL_TARGET=
@@ -29,4 +35,3 @@ MAKE_JOBS_UNSAFE= yes
PLIST_FILES= bin/monotone-viz
.include <bsd.port.mk>
-
diff --git a/devel/monotone-viz/distinfo b/devel/monotone-viz/distinfo
index 86c6883d007c..ab55244c6730 100644
--- a/devel/monotone-viz/distinfo
+++ b/devel/monotone-viz/distinfo
@@ -1,3 +1,2 @@
-MD5 (monotone-viz-1.0.1.tar.gz) = 7add0ae4cc5fdafa14a12aea23d3557f
-SHA256 (monotone-viz-1.0.1.tar.gz) = 02b9025dfa3107ab25df5485acba45d089a467abd336545975983075bbc6a4b5
-SIZE (monotone-viz-1.0.1.tar.gz) = 519352
+SHA256 (monotone-viz-1.0.2.tar.gz) = 404ee47378b144a62eb2dcdfb80430e68d193360216d120977a457cdbf85b7f6
+SIZE (monotone-viz-1.0.2.tar.gz) = 545631
diff --git a/devel/monotone-viz/files/patch-agraph.ml b/devel/monotone-viz/files/patch-agraph.ml
new file mode 100644
index 000000000000..9e732e7cecb8
--- /dev/null
+++ b/devel/monotone-viz/files/patch-agraph.ml
@@ -0,0 +1,29 @@
+--- agraph.ml.orig 2007-03-07 22:53:54.000000000 +0100
++++ agraph.ml 2010-08-25 13:13:33.000000000 +0200
+@@ -50,8 +50,9 @@ let dot_format params agraph =
+ agraph.nodes in
+
+ !+ "digraph \"monotone-viz\"\n{\n" ;
+- if params.lr_layout then
+- !+ " graph [rankdir=LR] ;\n" ;
++ if params.lr_layout
++ then !+ " graph [rankdir=LR] ;\n"
++ else !+ " graph [rankdir=BT] ;\n" ;
+ !+ " graph [ranksep=\"0.25\"] ;\n" ;
+ !+ " node [label=\"\"] ;\n" ;
+
+@@ -222,11 +223,11 @@ let spawn_dot graph status done_cb =
+ let dot_prg = graph.layout_params.dot_program in
+ let cmd =
+ if Viz_misc.debug "dot"
+- then [ "/bin/sh" ; "-c" ;
++ then [ "/usr/local/bin/bash" ; "-c" ;
+ Printf.sprintf
+ "set -o pipefail ; \
+- tee agraph.in.dot | %s -q -y -s%.0f | tee agraph.out.dot" dot_prg ppi ]
+- else [ dot_prg ; "-q" ; "-y" ; Printf.sprintf "-s%.0f" ppi ] in
++ tee agraph.in.dot | %s -q -s%.0f | tee agraph.out.dot" dot_prg ppi ]
++ else [ dot_prg ; "-q" ; Printf.sprintf "-s%.0f" ppi ] in
+ let error fmt =
+ Printf.kprintf (fun s -> done_cb (`LAYOUT_ERROR s)) fmt in
+ try
diff --git a/devel/monotone-viz/files/patch-automate.ml b/devel/monotone-viz/files/patch-automate.ml
new file mode 100644
index 000000000000..fb901dbf6fa2
--- /dev/null
+++ b/devel/monotone-viz/files/patch-automate.ml
@@ -0,0 +1,124 @@
+--- automate.ml.orig 2010-11-05 11:14:53.000000000 +0100
++++ automate.ml 2010-11-05 11:14:55.000000000 +0100
+@@ -44,7 +44,7 @@ type output = [
+ | `OUTPUT of string
+ | `ERROR of string
+ | `SYNTAX_ERROR of string]
+-type chunk = command_id * int * bool * string
++type chunk = command_id * bool * string
+ type process = {
+ p_in : in_watch ;
+ p_out : out_watch ;
+@@ -152,7 +152,7 @@ let _read_cb w conditions =
+ try
+ match Giochannel.read_chars w.out_w.w_chan w.out_sb with
+ | `NORMAL read ->
+- if debug then log "%s cb: read %d" w.out_w.w_name read ;
++ if debug then log "%s cb: read %d" w.out_w.w_name read;
+ Buffer.add_substring w.out_buffer w.out_sb 0 read ;
+ w.out_cb w.out_buffer
+ | `EOF ->
+@@ -258,8 +258,8 @@ let encode_stdio cmd =
+
+
+
+-let find_four_colon b =
+- let to_find = ref 4 in
++let find_three_colon b =
++ let to_find = ref 3 in
+ let i = ref 0 in
+ while !to_find > 0 do
+ let c = Buffer.nth b !i in
+@@ -277,22 +277,20 @@ let truncate_buffer b off len =
+
+ let decode_stdio_chunk b =
+ try
+- let header_len = find_four_colon b in
++ let header_len = find_three_colon b in
+ let h = Buffer.sub b 0 header_len in
+ let c1 = String.index_from h 0 ':' in
+ let number = int_of_string (string_slice ~e:c1 h) in
+- let code = int_of_char h.[c1 + 1] - int_of_char '0' in
+ let c2 = String.index_from h (c1 + 1) ':' in
+- let last = h.[c2 + 1] in
++ let last = h.[c1 + 1] in
+ let c3 = String.index_from h (c2 + 1) ':' in
+- let c4 = String.index_from h (c3 + 1) ':' in
+- let len = int_of_string (string_slice ~s:(c3 + 1) ~e:c4 h) in
++ let len = int_of_string (string_slice ~s:(c2 + 1) ~e:c3 h) in
+ if Buffer.length b < header_len + len
+ then
+ `INCOMPLETE
+ else
+ let data = truncate_buffer b header_len len in
+- `CHUNK (number, code, last = 'l', data)
++ `CHUNK (number, last = 'l', data)
+ with Invalid_argument _ ->
+ `INCOMPLETE
+
+@@ -305,11 +303,11 @@ let rec out_cb p b =
+ | `INCOMPLETE ->
+ ()
+
+- | `CHUNK (nb, _, _, _) when aborted_cmd p nb ->
++ | `CHUNK (nb, _, _) when aborted_cmd p nb ->
+ p.chunks <- List.remove_assoc nb p.chunks ;
+ out_cb p b
+
+- | `CHUNK ((nb, code, false, data) as chunk) ->
++ | `CHUNK ((nb, false, data) as chunk) ->
+ if debug then log "decoded a chunk" ;
+ let previous_chunks =
+ try List.assoc nb p.chunks
+@@ -320,7 +318,7 @@ let rec out_cb p b =
+ previous_chunks := chunk :: !previous_chunks ;
+ out_cb p b
+
+- | `CHUNK ((nb, code, true, data) as chunk) ->
++ | `CHUNK ((nb, true, data) as chunk) ->
+ if debug then log "decoded last chunk" ;
+ let chunks =
+ try
+@@ -333,14 +331,14 @@ let rec out_cb p b =
+ p.callbacks <- List.remove_assoc nb p.callbacks ;
+ let msg =
+ String.concat ""
+- (List.map (fun (_, _, _, d) -> d) chunks) in
+- let data =
+- match code with
+- | 0 -> `OUTPUT msg
+- | 1 -> `SYNTAX_ERROR msg
+- | 2 -> `ERROR msg
++ (List.map (function (_, false, d) -> d | (_, true, d) -> "") chunks) in
++ let code =
++ match data with
++ | "0" -> `OUTPUT msg
++ | "1" -> `SYNTAX_ERROR msg
++ | "2" -> `ERROR msg
+ | _ -> failwith "invalid_code in automate stdio output" in
+- ignore (Glib.Idle.add ~prio:0 (fun () -> cb data ; false)) ;
++ ignore (Glib.Idle.add ~prio:0 (fun () -> cb code ; false)) ;
+ out_cb p b
+
+
+@@ -409,6 +407,20 @@ let spawn mtn db =
+ chunks = [] ;
+ exit_cb = (fun _ -> assert false)
+ } in
++ let rec check_version buf =
++ if String.contains buf '\n' then
++ String.length buf >= 18 && String.sub buf 0 18 = "format-version: 2\n"
++ else
++ match Giochannel.read_chars p.p_out.out_w.w_chan p.p_out.out_sb with
++ | `NORMAL read -> check_version (buf ^ String.sub p.p_out.out_sb 0 read)
++ | `EOF ->
++ Giochannel.shutdown p.p_out.out_w.w_chan false;
++ Giochannel.shutdown p.p_err.out_w.w_chan false;
++ failwith "mtn version 0.46 or above is required";
++ | `AGAIN -> check_version buf
++ in
++ if not (check_version "")
++ then failwith "mtn stdio uses an unknown format-version";
+ let pid = some child.Gspawn.pid in
+ ignore (Gspawn.add_child_watch ~prio:50 pid (reap_cb p pid)) ;
+ p.p_out.out_cb <- out_cb p ;
diff --git a/devel/monotone-viz/files/patch-lablgtk_src_gContainer.mli b/devel/monotone-viz/files/patch-lablgtk_src_gContainer.mli
deleted file mode 100644
index 6d409d7f1599..000000000000
--- a/devel/monotone-viz/files/patch-lablgtk_src_gContainer.mli
+++ /dev/null
@@ -1,27 +0,0 @@
---- lablgtk/src/gContainer.mli.orig 2008-05-01 20:41:05.000000000 +0200
-+++ lablgtk/src/gContainer.mli 2008-05-01 20:41:09.000000000 +0200
-@@ -20,7 +20,7 @@
- (* *)
- (**************************************************************************)
-
--(* $Id: gContainer.mli 1347 2007-06-20 07:40:34Z guesdon $ *)
-+(* $Id: gContainer.mli 1397 2008-02-26 00:21:39Z garrigue $ *)
-
- open Gtk
- open GObj
-@@ -92,11 +92,12 @@ val cast_container : widget -> container
-
- (** @gtkdoc gtk GtkContainer *)
- val pack_container :
-- create:([> Gtk.container] Gobject.param list -> (#GObj.widget as 'a)) ->
-- [> Gtk.container] Gobject.param list ->
-+ create:(([> Gtk.container] as 'a) Gobject.param list ->
-+ (#GObj.widget as 'b)) ->
-+ 'a Gobject.param list ->
- ?border_width:int ->
- ?width:int ->
-- ?height:int -> ?packing:(GObj.widget -> unit) -> ?show:bool -> unit -> 'a
-+ ?height:int -> ?packing:(GObj.widget -> unit) -> ?show:bool -> unit -> 'b
-
- (** {3 GtkBin} *)
-