them all compiling.
Tweaks include updating
ocaml-batteries 2.3.1 -> 2.5.0
ocaml-lwt 2.4.8 -> 2.5.2
ocaml-ppx-tools 0.99.2 -> 4.03.0
ocaml-camlp4 4.02+6 -> 4.03+1
utop 1.15 -> 1.19.2
and fixes to coccinelle and wyrd to let them build on bytecode archs.
Other necessary tweaks from the various homes of the projects.
Everything still builds on amd64 (native and bytecode) and sparc64 (bytecode).
ok anil@ sthen@ so final 4.3.0 tweaks can be done in-tree.
add / change BUILD_DEPENDS for all ports using camlp4.
Findlib is changed because it won't use camlp4 and doesn't install
the Bytes module anymore, which is now included in OCaml 4.02.
ok avsm@
- Better handling of the case of a matched declaration that should only
be replaced by other top level things.
- Improved filtering of result of matching atomic patterns
- Drop positions before creating function prototype rules
- Adjust position of { introduced by adding multiple statements in a
single-statement position
- Drop newline after function call ( when all arguments on that line are
eliminated
- Accept removal of a single declaration, replaced by arbitrary,
non-declaration code
- smpl_spacing takes into account newlines, indentation
to use this where dynlib is available
- on native-code arch, only build the native version and install this
to be used by default - it's about 5x faster
tweak & ok mk@.
Coccinelle is a program matching and transformation engine which
provides the language SmPL (Semantic Patch Language) for specifying
desired matches and transformations in C code.
Coccinelle was initially targeted towards performing collateral
evolutions in Linux. Such evolutions comprise the changes that are
needed in client code in response to evolutions in library APIs, and may
include modifications such as renaming a function, adding a function
argument whose value is somehow context-dependent, and reorganizing a
data structure.
Beyond collateral evolutions, Coccinelle is successfully used (by INRIA
and others) for finding and fixing bugs in systems code.