From owner-svn-ports-all@FreeBSD.ORG Fri Jun 14 05:12:35 2013 Return-Path: Delivered-To: svn-ports-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 96B1BB97; Fri, 14 Jun 2013 05:12:35 +0000 (UTC) (envelope-from johans@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 874661083; Fri, 14 Jun 2013 05:12:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5E5CZiE071090; Fri, 14 Jun 2013 05:12:35 GMT (envelope-from johans@svn.freebsd.org) Received: (from johans@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5E5CY9f071084; Fri, 14 Jun 2013 05:12:34 GMT (envelope-from johans@svn.freebsd.org) Message-Id: <201306140512.r5E5CY9f071084@svn.freebsd.org> From: Johan van Selst Date: Fri, 14 Jun 2013 05:12:34 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r320883 - in head/math/ocaml-ocamlgraph: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Jun 2013 05:12:35 -0000 Author: johans Date: Fri Jun 14 05:12:34 2013 New Revision: 320883 URL: http://svnweb.freebsd.org/changeset/ports/320883 Log: - Update ocamlgraph to 1.8.3 - This includes two patches from upstream, (will be included in the next release) Submitted by: bf Added: head/math/ocaml-ocamlgraph/files/ head/math/ocaml-ocamlgraph/files/patch-20130523 (contents, props changed) Modified: head/math/ocaml-ocamlgraph/Makefile head/math/ocaml-ocamlgraph/distinfo head/math/ocaml-ocamlgraph/pkg-plist Modified: head/math/ocaml-ocamlgraph/Makefile ============================================================================== --- head/math/ocaml-ocamlgraph/Makefile Fri Jun 14 03:23:32 2013 (r320882) +++ head/math/ocaml-ocamlgraph/Makefile Fri Jun 14 05:12:34 2013 (r320883) @@ -2,10 +2,10 @@ # $FreeBSD$ PORTNAME= ocamlgraph -PORTVERSION= 1.8.2 -PORTREVISION= 1 +PORTVERSION= 1.8.3 CATEGORIES= math -MASTER_SITES= http://ocamlgraph.lri.fr/download/ +MASTER_SITES= http://ocamlgraph.lri.fr/download/ \ + ftp://ftp.stack.nl/pub/users/johans/ocamlgraph/ PKGNAMEPREFIX= ocaml- MAINTAINER= johans@FreeBSD.org @@ -51,10 +51,6 @@ post-patch: .if empty(PORT_OPTIONS:MGUI) # Override auto-detection @${REINPLACE_CMD} -Ee 's/(LABLGTK2)=yes/\1=no/' ${WRKSRC}/configure -.else - @${REINPLACE_CMD} -Ee 's@(\+|/)(lablgtk2)@\1site-lib/\2@' \ - ${WRKSRC}/configure \ - ${WRKSRC}/view_graph/Makefile .endif post-install: Modified: head/math/ocaml-ocamlgraph/distinfo ============================================================================== --- head/math/ocaml-ocamlgraph/distinfo Fri Jun 14 03:23:32 2013 (r320882) +++ head/math/ocaml-ocamlgraph/distinfo Fri Jun 14 05:12:34 2013 (r320883) @@ -1,2 +1,2 @@ -SHA256 (ocamlgraph-1.8.2.tar.gz) = e54ae60cd977a032854166dad56348d0fb76c6cd8e03e960af455268f0c8b5a6 -SIZE (ocamlgraph-1.8.2.tar.gz) = 249253 +SHA256 (ocamlgraph-1.8.3.tar.gz) = 0df7114b6b6a57125b9c998cc08870b6595fcfd6f2376a0e84cb666c1fd345bd +SIZE (ocamlgraph-1.8.3.tar.gz) = 262876 Added: head/math/ocaml-ocamlgraph/files/patch-20130523 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/math/ocaml-ocamlgraph/files/patch-20130523 Fri Jun 14 05:12:34 2013 (r320883) @@ -0,0 +1,100 @@ +diff --git CHANGES CHANGES +index 5a8db64..8b53839 100644 +--- CHANGES ++++ CHANGES +@@ -1,7 +1,10 @@ + ++ o Merge: fixed bug with vertices with no incoming nor outcoming edge. ++ o fixed compilation issue with OCaml 3.12.1 ++ + version 1.8.3, April 17, 2013 + --------------------------- +- o new module Merge implementing several different of merges of vertices and ++ o new module Merge implementing several different merges of vertices and + edges into a graph (contributed by Emmanuel Haucourt) + o fixed DOT parser (contributed by Alex Reece) + o Topological: fixed bug in presence of disjoint cycles; new implementation +diff --git src/merge.ml src/merge.ml +index c8581e3..563ab77 100644 +--- src/merge.ml ++++ src/merge.ml +@@ -57,12 +57,26 @@ module B(B: Builder.S) = struct + in + B.G.fold_edges_e f g [] + ++ (* – former buggy version – the case where v is neither the source nor the ++ destination of some arrow was not taken into account, so that vertices were ++ just removed ++ ++ let merge_vertex g vl = match vl with ++ | [] -> g ++ | _ :: vl' -> ++ let to_be_added = identify_extremities g vl in ++ let g = List.fold_left B.remove_vertex g vl' in ++ List.fold_left B.add_edge_e g to_be_added ++ *) ++ + let merge_vertex g vl = match vl with + | [] -> g +- | _ :: vl' -> ++ | v :: vl' -> + let to_be_added = identify_extremities g vl in + let g = List.fold_left B.remove_vertex g vl' in +- List.fold_left B.add_edge_e g to_be_added ++ if to_be_added = [] ++ then B.add_vertex g v ++ else List.fold_left B.add_edge_e g to_be_added + + let merge_edges_e ?src ?dst g el = match el with + | e :: el' -> +@@ -108,13 +122,32 @@ module B(B: Builder.S) = struct + in + let edges_to_be_merged = B.G.fold_edges_e collect_edge g [] in + merge_edges_e ?src ?dst g edges_to_be_merged ++ ++ (* To deduce a comparison function on labels from a comparison function on ++ edges *) ++ ++ let compare_label g = ++ try ++ let default_vertex = ++ let a_vertex_of_g = ref None in ++ (try B.G.iter_vertex (fun v -> a_vertex_of_g := Some v ; raise Exit) g ++ with Exit -> ()); ++ match !a_vertex_of_g with ++ | Some v -> v ++ | None -> raise Exit (*hence g is empty*) in ++ fun l1 l2 -> ++ let e1 = B.G.E.create default_vertex l1 default_vertex in ++ let e2 = B.G.E.create default_vertex l2 default_vertex in ++ B.G.E.compare e1 e2 ++ with Exit -> (fun l1 l2 -> 0) + + let merge_isolabelled_edges g = + let module S = Set.Make(B.G.V) in + let do_meet s1 s2 = S.exists (fun x -> S.mem x s2) s1 in + let module M = +- (* TODO: using [compare] here is really suspicious *) +- Map.Make(struct type t = B.G.E.label let compare = compare end) ++ (* TODO: using [compare] here is really suspicious ... ++ DONE – yet not so clean *) ++ Map.Make(struct type t = B.G.E.label let compare = compare_label g end) + in + let accumulating e accu = + let l = B.G.E.label e in +diff --git src/merge.mli src/merge.mli +index 3b13413..8e574ae 100644 +--- src/merge.mli ++++ src/merge.mli +@@ -133,10 +133,7 @@ module I(G: Sig.I): sig + ?loop_killer:bool -> ?specified_vertex:(vertex list -> vertex) -> graph -> + unit + +-end with type graph = G.t +- and type vertex := G.vertex +- and type edge := G.edge +- and type edge_label = G.E.label ++end + + (* + Local Variables: Modified: head/math/ocaml-ocamlgraph/pkg-plist ============================================================================== --- head/math/ocaml-ocamlgraph/pkg-plist Fri Jun 14 03:23:32 2013 (r320882) +++ head/math/ocaml-ocamlgraph/pkg-plist Fri Jun 14 05:12:34 2013 (r320883) @@ -11,6 +11,7 @@ %%OCAMLGRAPHDIR%%/components.mli %%OCAMLGRAPHDIR%%/contraction.mli %%OCAMLGRAPHDIR%%/delaunay.mli +%%OCAMLGRAPHDIR%%/dominator.mli %%OCAMLGRAPHDIR%%/dot.mli %%OCAMLGRAPHDIR%%/dot_ast.mli %%OCAMLGRAPHDIR%%/dot_parser.mli @@ -24,12 +25,14 @@ %%OCAMLGRAPHDIR%%/graph.cmo %%OCAMLGRAPHDIR%%/graph.cmx %%OCAMLGRAPHDIR%%/graph.cmxa +%%OCAMLGRAPHDIR%%/graphml.mli %%OCAMLGRAPHDIR%%/graphviz.mli %%OCAMLGRAPHDIR%%/imperative.mli %%OCAMLGRAPHDIR%%/kruskal.mli %%OCAMLGRAPHDIR%%/leaderlist.mli %%OCAMLGRAPHDIR%%/mcs_m.mli %%OCAMLGRAPHDIR%%/md.mli +%%OCAMLGRAPHDIR%%/merge.mli %%OCAMLGRAPHDIR%%/minsep.mli %%OCAMLGRAPHDIR%%/nonnegative.mli %%OCAMLGRAPHDIR%%/oper.mli