Commit graph

24 commits

Author SHA1 Message Date
jaapb
6e2aeb9653 Updated package to latest version, 6.12. Package uses ocaml.mk.
Minor fixes for compatibility with ocaml 4.02.
2014-10-09 21:42:03 +00:00
jaapb
15a89b35db Revision bump associated with the update of lang/ocaml to version 4.01. 2013-11-01 11:30:21 +00:00
jaapb
59d067375d Updated lang/camlp5 to latest version, 6.11 (discussed with tonio@).
Changes from 6.07 are:
* Updated for ocaml version 4.01.0
* Added 'MLast.loc_of_with_constr'.
* Fixed bug toplevel with revised syntax; "= 'a" was missing
  in output in that example:
   # module type A = sig module type S = 'a; end;
     module type A = sig module type S; end
* Now accept lowercase ident for module types, like ocaml does.
  Accepted also in revised syntax.
* (experimental) Now, in revised syntax, a "." followed by
  a newline is interpreted as a ";", allowing to end phrases with ".".
  Drawback: will syntax error when writing a record/module access in two
  lines ending the first one with "." like:
    foo.
    bar
* Accept now "match with | | ... end" in revised syntax, with
  a required "|" in the first case, as alternative syntax for match.
* Added function 'Pcaml.value greek_ascii_equiv' giving
  an ascii equivalent to a greek (utf8) letter representing a type
  parameter. E.g. 'a' for 'α', 'b' for 'β', and so on.
* Fixed bug no locations built in some cases of constructors.
* Fixed bug: in toplevel, the highlighting of errors did not work.
* Added option '-dquot' to specify the default quotation name.
  and the ability to use "#option" directive with two parameters. Therefore,
  we can use either (e.g.):
    -dquot "expr"
  in the command line of camlp5 or
    #option "-dquot" "expr"
  inside a file.
* Now 'make' displays a message how to compile, instead
  of doing 'make out'. Old behaviour of 'make' must be now 'make out'.
* Now accept identifiers starting with a greek letter as variable names.
* Fixed bug: DEFINE FOO=32 while using pa_macro.cmo did not work
  due to a bad order in grammar insertion.
* Fixed bug: parsing greek letters as type variable in
  constructor declaration did not work when building Camlp5.
2013-08-22 15:25:01 +00:00
jaapb
12a69ba477 Updated camlp5 to 6.07, for compatibility with current ocaml version. Changes
include:

* [12 Sep 12] Added compatibility with OCaml 4.00.1.
* [06 Jun 12] Fixed bug: open record patterns {a=b;c=d;_} did not work.
2012-10-09 10:24:43 +00:00
kristerw
386f48956c Correct BUILDLINK_ABI_DEPENDS.camlp5 to say 6.06 instead of 6.06nb1. 2012-10-09 01:41:59 +00:00
jaapb
cd7c283db6 Updated lang/camlp5 to its latest version. Changes from the old version include:
Camlp5 Version 6.06:
--------------------

* [01 Jun 12] Added compatibility with OCaml 4.00.0 and (incoming) 4.01.0.
* [18 Mar 12] Fixed bug in pr_o: [(let module M = ... in x); y] was
  displayed without parentheses.
* [14 Mar 12] Added compatibility with OCaml 3.12.2.
* [02 Mar 12] Added compatibility with JoCaml 3.12.0 and 3.12.1.
* [02 Mar 12] Completed with all JoCaml statements in ocaml syntax.
  Todo: pretty print.

Camlp5 Version 6.05:
--------------------

* [02 Mar 12] Added compatibility with JoCaml trunk.
* [02 Mar 12] Added option -oname in configure to change ocaml
  command name. The bytecode compiler, native compiler and bytecode
  runtime are respectively <oname>c, <oname>opt and <oname>run.
  The default is 'ocaml', implying that the executables are ocamlc,
  ocamlopt and ocamlrun. Setting it to 'jocaml', fo example, use
  jocamlc, jocamlopt and jocamlrun.

Camlp5 Version 6.04:
--------------------

* [01 Mar 12] Added option -name in configure to change command name
  useful to have transitional and strict versions installed with
  different names. Default: camlp5.
* [01 Mar 12] The default mode at configuration time is now 'strict'.

Camlp5 Version 6.03:
--------------------

* [09 Jan 12] Updated compatibility with OCaml trunk version (3.13.0).

Camlp5 Version 6.02.3:
----------------------

* [20 Oct 11] Updated compatibility with OCaml current version 3.13.0.
* [20 Sep 11] Added missing syntax "_" in ending patt records (rev: "_ = _").
ep 11] Fixed bug pattern -1L was refused in normal syntax.
* [21 May 11] Fixed bug impacting files using q_ast.cmo extension (bad ast).
* [03 May 11] Fixed bug: lexeme errors in revised syntax + utf8.
* [24 Mar 11] Fixed bug: M.(a+b) was refused in normal syntax.
* [16 Mar 11] Fixed bug: incorrect compilation of label patterns of the
  form ~a:b (or ~{a = b} in revised syntax) in class declarations.
* [16 Mar 11] Fixed bug: error while printing label patterns ~a:b with
  pr_o.cmo (error message "labels not pretty printed (in patt)").

Camlp5 Version 6.02.2:
----------------------

* [15 Mar 11] Fixed bug: bad AST generated for class identifier prefixed
  by a module.
* [15 Mar 11] Fixed differences of locations between OCaml and camlp5o (e.g.
  in .annot files)
* [17 Feb 11] Pretty module now considers strings as utf8 encoded (impacts
  computation of strings lengths).
* [04 Feb 11] Revised syntax: completed syntax multi labels, ~{x=y; z=t}
  (equivalent to ~{x=y} ~{z=t}) in patterns (in 6.02.1 was implemented
  only in expressions).
* [28 Jan 11] Added installed module 'Reloc': relocations and equalities
  over syntax trees.
* [26 Jan 11] Fixed bug in camlp5o.opt: did not accept '$' as token.
* [18 Jan 11] Fixed bug: private flags in type manifest were not correctly
  treated.
* [06 Dec 10] Fixed bug in pr_o.cmo: label expressions were not correctly
  pretty printed: f ~a gave f a.

Camlp5 Version 6.02.1:
----------------------

* [05 Dec 10] In module Grammar.Entry.print, added extra parameter ppf
  to print in other formatter than (the default) stdout.
* [21 Nov 10] Revised syntax: added syntax multi labels, ~{x=y; z=t}
  equivalent to ~{x=y} ~{z=t}
* [16 Nov 10] Updated compatibility with OCaml version 3.13.0-gadt.

Camlp5 Version 6.02:
--------------------

* [12 Nov 10] Added compatibility with OCaml GADT version.
* [12 Nov 10] pa_macro: added ability to use ELSIFDEF in match cases (the
  ending ELSE part being still optional).
* [08 Nov 10] Fixed bugs 1/ in pa_o: !Foo.bar was interpreted as (!Foo).bar
  instead of !(Foo.bar) 2/ in top/camlp5_top.cma: the file ast2pt.cmo was
  missing.

Camlp5 Version 6.01:
--------------------

* [03 Nov 10] Added in revised syntax for labels ~{lab x = y} as shortcut
  for ~{lab = fun x -> y}.
* [30 Oct 10] Fixed bug in 'configure': option -libdir did not work.

Camlp5 Version 6.00:
--------------------

* [28 Oct 10] Updated compatibility with OCaml trunk version (3.13.0).
* [01 Oct 10] Make compilation with "make -j" (parallel make) work.
* [29 Sep 10] Fixed bug when using constructors named 'True' and 'False'.
* [24 Sep 10] Fixed many bugs of parsing comments (typically about quotes).
* [23 Sep 10] Fixed bug in pretty printing comments containing '"'.
* [22 Sep 10] Fixed bug bad result of unary minus functions.
* [22 Sep 10] Fixed bug in printing parameters of types of 'with constraint'.
* [22 Sep 10] Fixed bug in revised syntax for class_types. Now application.
  does not need parenthesis any more (like for other entries of that kind).
* [19 Sep 10] In grammars, added list with separator with optional ending
  separator (LIST0 .. SEP OPT_SEP and LIST1 .. SEP OPT_SEP).
* [19 Sep 10] Completed missing statements in particular in objects,
  classes, and first class modules.
* [08 Sep 10] Added option '-flag O' of pr_r.cmo and pr_o.cmo which
  add location comments in the output.
* [08 Sep 10] Added new chapters in the documentation:
     - Directives
     - Redefining OCaml syntax
* [08 Sep 10] Fixed option '-flag E' (equilibrate cases) of pr_r.cmo and
  pr_o.cmo which did not work.
* [06 Sep 10] Changed revised syntax of 'inherit something [params]'
  into 'inherit [params] something' (like in normal syntax).
* [06 Sep 10] Added missing statements:
    - 'module type of' as module type,
    - '(module ... : ...)' as expression,
    - '(val ...)' ('value' in revised syntax) as module expression.
* [02 Sep 10] Added directive "#option" (in files, not in toplevel).
* [02 Sep 10] pa_macro.cmo: phrases inside IFDEF statements now are
  implementation or interface items, which means:
    - ability to use directives which are, therefore, conditional.
    - in revised syntax must end with semicolon (incompatibility with
      previous versions of Camlp5 where these semicolons are syntax
      errors).
    - in revised syntax, ability to put several phrases without having
      to use "declare .. end".
* [30 Aug 10] pa_macro.cmo: added ability to use ELSIFDEF and ELSIFNDEF
  in expressions, structure items and signature items.
* [27 Aug 10] Fixed bug in pa_macro.cmo A AND B computed B AND B.
* [26 Aug 10] Fixed wrong behaviour: char '"' was printed '\"'.
* [25 Aug 10] Added option -no-opt in configure, not to use .opt versions
  of OCaml compilers.
* [20 Aug 10] Added compatibility for OCaml version 3.11.3.
* [18 Aug 10] Added function "get" in library module "Ploc", and a
  statement "lprintf" similar to "pprintf" added by the syntax
  extension kit "pa_pprintf.cmo".
2012-10-08 15:31:14 +00:00
wiz
8b5d49eb78 Bump all packages that use perl, or depend on a p5-* package, or
are called p5-*.

I hope that's all of them.
2012-10-03 21:53:53 +00:00
asau
88feb4ac62 Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days. 2012-10-02 20:11:34 +00:00
dholland
7e751949e4 Set BUILDLINK_ABI_DEPENDS correctly (with +=, not ?=)
It turns out there were a lot of these.
2012-05-07 01:53:12 +00:00
sbd
8eca42f859 Recursive bump for lang/ocaml buildlink addition. 2011-12-06 00:19:21 +00:00
tonio
726df381bd Update lang/camlp5 to 5.15
This version is compatible with the ocaml 3.12.0 in tree

Fix pkg/43956 and pkg/43957

Changes:
Camlp5 Version 5.15:
* [09 Aug 10] Updated compatibility for OCaml current version 3.12.1.
* [09 Aug 10] Upgraded compatibility for OCaml released version 3.12.0.
* [29 Jul 10] Added ability to write AST quotations with a colon before
  the '<' (e.g. "<:expr:< foo >>") which, in pattern position, generates
  a binding of the variable "loc" at the top node:
    1/ normal usage (still working):
         "fun [ <:expr< x >> -> 0 ]"
       which is equivalent to:
         "fun [ MLast.ExLid _ (Ploc.VaVal "x") -> 0 ]
    2/ new usage:
         "fun [ <:expr:< x >> -> 0 ]"
       which is equivalent to:
        "fun [ MLast.ExLid loc (Ploc.VaVal "x") -> 0 ]
* [21 Jun 10] Added compatibility for OCaml trunk version 3.13.0.
* [29 Apr 10] Fixed bug in pr_depend.cmo: a.B.c did not add module B.

Camlp5 Version 5.14:
* [28 Apr 10] Updated compatibility for OCaml current version 3.12.0.
* [31 Mar 10] Fixed bug in pr_o.cmo: error message when using "#use"
2010-10-11 21:27:54 +00:00
tonio
5aa30513bc Update lang/camlp5 to 5.13
The update lets camlp5 and what depends on it work with the updated ocaml.

Changes:
* Added compatibility with OCaml 3.11.2.
* Updated compatibility with OCaml 3.12.0.
* Added 'lazy' patterns (added in OCaml version 3.11).
* Fixed bug in pr_r.cmo: did not always break after "in" (in
  "let..in" statements) even with -flag l.
* Fixed bug in pr_r.cmo: missing case "#use" for structure and
  signature items.
2010-04-24 18:40:43 +00:00
tonio
77c84b6a78 Update lang/camlp5 to 5.12
Changes are:
- compatibility with recent versions of ocaml
- possible use of IFDEF and IFNDEF in record labels declarations
- addition of Plexer.utf8_lexing
2009-09-03 17:29:37 +00:00
joerg
62d1ba2bac Remove @dirrm entries from PLISTs 2009-06-14 18:03:28 +00:00
joerg
2d1ba244e9 Simply and speed up buildlink3.mk files and processing.
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
2009-03-20 19:23:50 +00:00
epg
97863de349 Oops, undo r1.8, committed by accident. 2008-11-14 19:30:54 +00:00
epg
94fc4bd912 blank line before PLIST_SRC 2008-11-14 19:28:39 +00:00
tonio
97472fceea Update lang/camlp5 to 5.09
Changes:
* [05 Jun 08] Changed all '#!/bin/bash" in shells scripts into '#!/bin/sh'
  and changed all $(...) into `...` because there are compatibilities
  problems according to Unix versions.
* [31 Mar 08] Fixed bug: "let f ~_x () = ()" generated syntax error.
* [31 Mar 08] Fixed bug: "x $ y" generated syntax error (normal syntax).
* [02 Jan 08] Added compatibility with OCaml 3.10.3.
2008-06-21 06:37:52 +00:00
joerg
3b0d97b0de Add DESTDIR support. 2008-06-20 01:09:05 +00:00
joerg
f5b01e0d08 Fix PLIST. Bump revision. 2008-06-16 14:08:07 +00:00
degroote
5f3bef2e79 camlp5 doesn't compile with MAKE_JOBS > 1. Mark it as not MAKE_JOBS_SAFE 2008-05-03 18:12:13 +00:00
tonio
2bebb49bac Update lang/camlp5 to 5.08
Camlp5 Version 5.08:
--------------------

* [08 Feb 08] Fixed bug in normal syntax: a.{x,y} (access to big array) was
  interpreted as a.{(x,y)}.
* [22 Jan 08] Added missing cases in printers pr_o and pr_r which displayed
  the message "unable to print ...".
* [02 Jan 08] Added compatibility with OCaml 3.09.4 and 3.10.2.
* [21 Jan 08] Fixed bug under windows: the file META could not be build
  if the library path name contained colons.
* [13 Jan 08] Added missing man page for camlp5sch (link to the same man
  page as camlp5).
* [05 Jan 08] Added "pr_extprint.cmo", printer rebuilding EXTEND_PRINTER
  statements in their original syntax.
* [05 Jan 08] Fixed bug in EXTEND_PRINTER statement: the match cases with
  "when" did not work.

Camlp5 Version 5.07:
--------------------

* [02 Jan 08] Added "pprintf" statement to use the Camlp5 pretty print
  system more easily and shortly.
* [27 Dec 07] Added function [Grammar.Entry.parse_all] returning the
  list of all solutions when using the parsing algorithm [Backtracking].

Camlp5 Version 5.06:
--------------------

* [19 Dec 07] Upgraded to add compatibilitly with OCaml version 3.10.1.

Camlp5 Version 5.05:
--------------------

* [17 Dec 07] Added function [Pcaml.quotation_location] returning the
  location of the quotation in the source in the context of a quotation
  expander.
* [04 Dec 07] Added generation of file META for ocamlfind in directory
  etc (built but not installed).
* [28 Nov 07] Upgraded to reflect changes done in parse tree in current
  OCaml (version 3.11+dev6).
* [27 Nov 07] Fixed bug in installation. Some files where installed in
  the bin directory instead of lib directory.
* [27 Nov 07] Fixed bug in parsing comments: comments containing '\' where
  incorrectly parsed.

Camlp5 Version 5.04:
--------------------

* [24 Nov 07] Fixed bug in install under MSVC Windows: object and library
  files were not installed (using wrong extensions).
* [24 Nov 07] Fixed bug under Windows: line numbers in error messages were
  wrong (twice the normal value).
* [24 Nov 07] Added ability to change the parsing algorithm of extensible
  grammars, with the function "Grammar.set_algorithm" whose parameter can
  be "predictive" or "backtracking".
* [22 Nov 07] Added backtracking parsers. Functions defined in the module
  Fstream (already containing functional streams and parsers). Syntax
  added in pa_fstream.cmo (already containing syntax for functinal streams
  and parsers). The new syntax uses "bparser" instead of "fparser" and
  a backtracking parser returns, together with its result and its
  remaining stream, the continuation to compute the next solution.

Camlp5 Version 5.03:
--------------------

* [20 Nov 07] Added commands mkcamlp5 and mkcamlp5.opt to build camlp5
  executables with predefined loaded modules. Added installation of ocpp
  with name ocpp5, instead of just ocpp.
* [19 Nov 07] Added more installed cmx and cmxa files to allow building
  native code linking of all combinations of Camlp5.
* [14 Nov 07] Fixed bug in pr_o.cmo: failed with printing "{a.(i) with ...}".
* [14 Nov 07] Fixed bug under Windows for the printers (pr_o.cmo, pr_r.cmo
  and pr_scheme.cmo): extra return character '\r' was added at end of
  lines.
* [09 Nov 07] Fixed bug in camlp5o.opt in strict mode: did not parse
  correctly, in particular type expression (the version "camlp5o" without
  ".opt" however worked).
* [29 Oct 07] Added [Pcaml.inter_phrases], a way to set, by program,
  the value of the "-sep" option of the printers kits.
* [28 Oct 07] Fixed bug in pa_fstream.cmo (functional parsers): the
  keyword after "match with" was "parser" instead of "fparser" and
  its code was wrong.
* [27 Oct 07] Added a default lexing buffer (in module [Plexing]) for
  pa_lexer.cmo: then, the programmer does not need to write it any
  more.

Camlp5 Version 5.02:
--------------------

* [14 Oct 07] Changed 'pa_lex.cmo' into 'pa_lexer.cmo' with a different
  syntax (see the documentation).
* [14 Oct 07] In the EXTEND statement, added "LIKE s" as possible
  level position to specify a level containing a rule containing "s"
  in its keywords or tokens.
* [11 Oct 07] Rewritten parsers and printers in Scheme syntax. Deleted
  old module Spretty.
2008-04-27 10:44:28 +00:00
joerg
1ff8a16303 Needs a real C compiler for the optimised build. 2007-12-27 14:00:38 +00:00
tonio
95ffab1e95 Add lang/camlp5 version 5.01
Camlp5 is a preprocessor and pretty-printer for OCaml programs. It also
provides parsing and printing tools.

As a preprocessor, it allows to:
- extend the syntax of OCaml,
- redefine the whole syntax of the language.
As a pretty printer, it allows to:
- display OCaml programs in an elegant way,
- convert from one syntax to another,
- check the results of syntax extensions.
Camlp5 also provides some parsing and pretty printing tools:
- extensible grammars
- extensible printers
- stream parsers and lexers
- pretty print module
It works as a shell command and can also be used in the OCaml toplevel.
2007-12-01 12:56:04 +00:00