[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#612891: FTBFS with camlp5 6.02.1



On Fri, Feb 11, 2011 at 12:26:20PM +0100, Stéphane Glondu wrote:
> Matita currently fails to build from source with camlp5 6.02.1 [1]. It
> seems to be the only blocker to a transition to camlp5
> 6.02.1. Upstream is currently working on a new release but cannot give
> a timeframe on when it will be fixed. I suggest to have it removed
> from testing meanwhile. I submit this bug to keep matita out of
> testing.
> 
> [1] http://ocaml.debian.net/debian/ocaml-3.12.0/failures/matita_0.5.8-2_amd64.build

Oddly, we didn't have the same build failure symptoms in Ubuntu
(https://launchpadlibrarian.net/72109584/buildlog_ubuntu-oneiric-amd64.matita_0.5.8-2build3_FAILEDTOBUILD.txt.gz),
but backporting r11210 from upstream's Subversion repository was enough
to get matita to build for us.  Patch follows.

  * Apply r11210 from upstream SVN to account for changes in the signatures
    of Gramext.Slist0sep and Gramext.Slist1sep.

diff -u matita-0.5.8/debian/patches/00list matita-0.5.8/debian/patches/00list
--- matita-0.5.8/debian/patches/00list
+++ matita-0.5.8/debian/patches/00list
@@ -3,0 +4 @@
+slist-sep.dpatch
only in patch2:
unchanged:
--- matita-0.5.8.orig/debian/patches/slist-sep.dpatch
+++ matita-0.5.8/debian/patches/slist-sep.dpatch
@@ -0,0 +1,51 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## slist-sep.dpatch by Colin Watson <cjwatson@ubuntu.com>
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Port to current OCaml/CamlP5.  r11210 from upstream SVN.
+
+@DPATCH@
+diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' matita~/components/content_pres/cicNotationParser.ml matita/components/content_pres/cicNotationParser.ml
+--- matita~/components/content_pres/cicNotationParser.ml	2009-09-21 11:01:28.000000000 +0100
++++ matita/components/content_pres/cicNotationParser.ml	2011-05-21 09:18:45.000000000 +0100
+@@ -211,8 +211,8 @@
+           match magic with
+           | Ast.List0 (_, None) -> Gramext.Slist0 s
+           | Ast.List1 (_, None) -> Gramext.Slist1 s
+-          | Ast.List0 (_, Some l) -> Gramext.Slist0sep (s, gram_of_literal l)
+-          | Ast.List1 (_, Some l) -> Gramext.Slist1sep (s, gram_of_literal l)
++          | Ast.List0 (_, Some l) -> Gramext.Slist0sep (s, gram_of_literal l,false)
++          | Ast.List1 (_, Some l) -> Gramext.Slist1sep (s, gram_of_literal l,false)
+           | _ -> assert false
+         in
+         [ Env (List.map Env.list_declaration p_names),
+diff -urNad '--exclude=CVS' '--exclude=.svn' '--exclude=.git' '--exclude=.arch' '--exclude=.hg' '--exclude=_darcs' '--exclude=.bzr' matita~/components/grafite_parser/print_grammar.ml matita/components/grafite_parser/print_grammar.ml
+--- matita~/components/grafite_parser/print_grammar.ml	2009-05-25 16:39:26.000000000 +0100
++++ matita/components/grafite_parser/print_grammar.ml	2011-05-21 09:18:05.000000000 +0100
+@@ -87,7 +87,7 @@
+   | Smeta (_, lt, _) -> List.for_all is_symbol_dummy lt
+   | Snterm e | Snterml (e, _) -> is_entry_dummy e
+   | Slist1 x | Slist0 x -> is_symbol_dummy x
+-  | Slist1sep (x,y) | Slist0sep (x,y) -> is_symbol_dummy x && is_symbol_dummy y
++  | Slist1sep (x,y,false) | Slist0sep (x,y,false) -> is_symbol_dummy x && is_symbol_dummy y
+   | Sopt x -> is_symbol_dummy x
+   | Sself | Snext -> false
+   | Stree t -> is_tree_dummy t
+@@ -186,7 +186,7 @@
+         let todo = visit_symbol symbol todo is_son in
+         Format.fprintf fmt "@]} @ ";
+         todo
+-    | Slist0sep (symbol,sep) ->
++    | Slist0sep (symbol,sep,false) ->
+         Format.fprintf fmt "[@[<hov2> ";
+         let todo = visit_symbol symbol todo is_son in
+         Format.fprintf fmt "{@[<hov2> ";
+@@ -200,7 +200,7 @@
+         let todo = visit_symbol symbol todo is_son in
+         Format.fprintf fmt "@]}+ @ ";
+         todo 
+-    | Slist1sep (symbol,sep) ->
++    | Slist1sep (symbol,sep,false) ->
+         let todo = visit_symbol symbol todo is_son  in
+         Format.fprintf fmt "{@[<hov2> ";
+         let todo = visit_symbol sep todo is_son in

Thanks,

-- 
Colin Watson                                       [cjwatson@ubuntu.com]



Reply to: