Bug ID 1192695
Summary coccinelle version bump to 1.1.1, support ocaml scripting
Classification openSUSE
Product openSUSE Tumbleweed
Version Current
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Development
Assignee jengelh@inai.de
Reporter vbabka@suse.com
QA Contact qa-bugs@suse.de
CC luis.chamberlain@suse.com, ohering@suse.com
Found By ---
Blocker ---

Hi,

I would like to request a version bump, and installing ocaml scripting support
files. As my packaging foo is lacking to prepare send a proper OBS request
(especially for the ocaml support part).

The motivation is that I've been working on a kernel semantic patch where
coccinelle 1.1.0 breaks whitespace and it's fixed already in 1.1.1, but that
only exists as a git tag so far: https://github.com/coccinelle/coccinelle/tags

Furthermore, my semantic patch needs ocaml scripting, here's the relevant part:

    // build list of functions for applying the next rule
    @initialize:ocaml@
    @@

    let ok_function p =
      not (List.mem (List.hd p).current_element
["kmem_getpages";"kmem_freepages"])

    // convert the type in selected functions
    @@
    position p : script:ocaml() { ok_function p };
    @@

    - struct page@p
    + struct slab

With the current coccinelle package in Tumbleweed this will fail as coccilib
ocaml files are not installed.

That's because the .spec file contains:
%make_install
# Remove coccilib, don't have the deps
rm -Rf "$b/%_libdir/%name"/{commons,globals,ocaml,parsing_c} \
    "$b/%_mandir/man3"/Coccilib*

So I just removed those lines, which made rmplint complain about files that
should be in a -devel package. I'm not so sure about that, because using ocaml
scripts as part of a semantic patch is just running coccinelle to do its job,
not developing against it. But it's also why I fill a bug instead of submitting
my changes. Maybe we could split out packages such as cocinelle-scripting-ocaml
(and coccinelle-scripting-python) instead of calling it -devel, or something?

And yeah as the comment says, this needs extra deps for work. Had to install
ocaml, ocaml-findlib, ocaml-ocamldoc.

The result is here:
https://build.opensuse.org/package/show/home:vbabka:branches:openSUSE:Factory/coccinelle


You are receiving this mail because: