mirror of
https://git.FreeBSD.org/ports.git
synced 2024-12-28 05:29:48 +00:00
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 us and others) for finding and fixing bugs in systems code. WWW: http://coccinelle.lip6.fr/ PR: ports/150472 Submitted by: Andriy Gapon <avg@icyb.net.ua>
This commit is contained in:
parent
518fe252c9
commit
359e4257ac
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=261140
@ -212,6 +212,7 @@
|
||||
SUBDIR += cmph
|
||||
SUBDIR += cmunge
|
||||
SUBDIR += cobf
|
||||
SUBDIR += coccinelle
|
||||
SUBDIR += cocktail
|
||||
SUBDIR += codeblocks
|
||||
SUBDIR += codeville
|
||||
|
23
devel/coccinelle/Makefile
Normal file
23
devel/coccinelle/Makefile
Normal file
@ -0,0 +1,23 @@
|
||||
# Ports collection makefile for: coccinnelle
|
||||
# Date created: Sep 10, 2010
|
||||
# Whom: Andriy Gapon
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= coccinelle
|
||||
DISTVERSION= 0.2.4rc2
|
||||
CATEGORIES= devel
|
||||
MASTER_SITES= http://coccinelle.lip6.fr/distrib/
|
||||
EXTRACT_SUFX= .tgz
|
||||
|
||||
MAINTAINER= avg@icyb.net.ua
|
||||
COMMENT= Coccinelle is a program matching and transformation engine
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
USE_GMAKE= yes
|
||||
USE_PERL5_BUILD=yes
|
||||
USE_PYTHON= 2.5+
|
||||
USE_OCAML= 3.0+
|
||||
|
||||
MAN1= spatch.1
|
||||
|
||||
.include <bsd.port.mk>
|
3
devel/coccinelle/distinfo
Normal file
3
devel/coccinelle/distinfo
Normal file
@ -0,0 +1,3 @@
|
||||
MD5 (coccinelle-0.2.4rc2.tgz) = cbf7f16205316bf929f3a37994c130f3
|
||||
SHA256 (coccinelle-0.2.4rc2.tgz) = 513cbc237761db5c41a7902ac691451c1ac5000a4d14031db8218ceccb04d515
|
||||
SIZE (coccinelle-0.2.4rc2.tgz) = 2217241
|
47
devel/coccinelle/files/patch-configure
Normal file
47
devel/coccinelle/files/patch-configure
Normal file
@ -0,0 +1,47 @@
|
||||
--- configure 2010-07-03 01:08:25.000000000 +0300
|
||||
+++ configure 2010-09-09 13:28:04.692352989 +0300
|
||||
@@ -176,6 +176,6 @@
|
||||
pr2 "";
|
||||
|
||||
$error += check_config(
|
||||
- "make -v 2>&1 |grep Make|",
|
||||
+ "gmake -v 2>&1 |grep Make|",
|
||||
"GNU Make [^0-9]*3\.[0-9]+.*", #version 3.79.1, 3.81
|
||||
"make (gnu version) is present.",
|
||||
@@ -255,17 +255,17 @@
|
||||
All seems fine for $project.
|
||||
|
||||
To compile $project type:
|
||||
- \$ make depend
|
||||
- \$ make all
|
||||
+ \$ gmake depend
|
||||
+ \$ gmake all
|
||||
|
||||
Or alternatively, for the optimized version:
|
||||
- \$ make all.opt
|
||||
+ \$ gmake all.opt
|
||||
If you want both, you could use:
|
||||
- \$ make world
|
||||
+ \$ gmake world
|
||||
|
||||
|
||||
To install type:
|
||||
- \$ make install
|
||||
+ \$ gmake install
|
||||
|
||||
Then, to test $project simply type:
|
||||
\$ $projectcmdline
|
||||
@@ -331,11 +331,11 @@
|
||||
my $pythonprefix = $python ? "yes" : "no";
|
||||
pr2 "Support for python scripting : $pythonprefix";
|
||||
`cd python; ln -sf ${pythonprefix}_pycocci.ml pycocci.ml; `;
|
||||
-`cd python; make depend`;
|
||||
+`cd python; gmake depend`;
|
||||
|
||||
pr2 "Support for ocaml scripting : $ocamlprefix";
|
||||
`cd ocaml; ln -sf ${ocamlprefix}_prepare_ocamlcocci.ml prepare_ocamlcocci.ml;`;
|
||||
-`cd ocaml; make depend`;
|
||||
+`cd ocaml; gmake depend`;
|
||||
|
||||
pr2 "Modifying globals/config.ml";
|
||||
my $command = "perl -p -e 's#Not_found.\*#Not_found->\\\"$src\\\"#' globals/config.ml.in > globals/config.ml";
|
11
devel/coccinelle/files/patch-pycaml-Makefile
Normal file
11
devel/coccinelle/files/patch-pycaml-Makefile
Normal file
@ -0,0 +1,11 @@
|
||||
--- pycaml/Makefile.orig 2009-04-06 12:59:15.000000000 +0200
|
||||
+++ pycaml/Makefile 2009-04-06 12:59:20.000000000 +0200
|
||||
@@ -3,7 +3,7 @@
|
||||
OCAMLMAKEFILE = OCamlMakefile
|
||||
PY_PREFIX = $(shell python getprefix.py)
|
||||
PY_VERSION = $(shell python getversion.py)
|
||||
-CLIBS = python$(PY_VERSION) pthread dl util m c
|
||||
+CLIBS = python$(PY_VERSION) pthread util m c
|
||||
|
||||
SOURCES = pycaml.ml pycaml_ml.c
|
||||
RESULT = pycaml
|
11
devel/coccinelle/pkg-descr
Normal file
11
devel/coccinelle/pkg-descr
Normal file
@ -0,0 +1,11 @@
|
||||
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 us
|
||||
and others) for finding and fixing bugs in systems code.
|
||||
|
||||
WWW: http://coccinelle.lip6.fr/
|
76
devel/coccinelle/pkg-plist
Normal file
76
devel/coccinelle/pkg-plist
Normal file
@ -0,0 +1,76 @@
|
||||
bin/spatch
|
||||
lib/dllpycaml_stubs.so
|
||||
share/coccinelle/commons/common.cmi
|
||||
share/coccinelle/commons/common_extra.cmi
|
||||
share/coccinelle/commons/glimpse.cmi
|
||||
share/coccinelle/commons/interfaces.cmi
|
||||
share/coccinelle/commons/oarray.cmi
|
||||
share/coccinelle/commons/oassoc.cmi
|
||||
share/coccinelle/commons/objet.cmi
|
||||
share/coccinelle/commons/ocollection.cmi
|
||||
share/coccinelle/commons/ofullcommon.cmi
|
||||
share/coccinelle/commons/ograph.cmi
|
||||
share/coccinelle/commons/ograph_extended.cmi
|
||||
share/coccinelle/commons/ograph_simple.cmi
|
||||
share/coccinelle/commons/osequence.cmi
|
||||
share/coccinelle/commons/oset.cmi
|
||||
share/coccinelle/commons/parser_combinators.cmi
|
||||
share/coccinelle/commons/seti.cmi
|
||||
share/coccinelle/commons/sexp_common.cmi
|
||||
share/coccinelle/ocaml/coccilib.cmi
|
||||
share/coccinelle/parsing_c/ast_c.cmi
|
||||
share/coccinelle/parsing_c/comment_annotater_c.cmi
|
||||
share/coccinelle/parsing_c/compare_c.cmi
|
||||
share/coccinelle/parsing_c/control_flow_c.cmi
|
||||
share/coccinelle/parsing_c/control_flow_c_build.cmi
|
||||
share/coccinelle/parsing_c/cpp_analysis_c.cmi
|
||||
share/coccinelle/parsing_c/cpp_ast_c.cmi
|
||||
share/coccinelle/parsing_c/cpp_token_c.cmi
|
||||
share/coccinelle/parsing_c/flag_parsing_c.cmi
|
||||
share/coccinelle/parsing_c/lexer_c.cmi
|
||||
share/coccinelle/parsing_c/lexer_parser.cmi
|
||||
share/coccinelle/parsing_c/lib_parsing_c.cmi
|
||||
share/coccinelle/parsing_c/parse_c.cmi
|
||||
share/coccinelle/parsing_c/parser_c.cmi
|
||||
share/coccinelle/parsing_c/parsing_consistency_c.cmi
|
||||
share/coccinelle/parsing_c/parsing_hacks.cmi
|
||||
share/coccinelle/parsing_c/parsing_recovery_c.cmi
|
||||
share/coccinelle/parsing_c/parsing_stat.cmi
|
||||
share/coccinelle/parsing_c/pretty_print_c.cmi
|
||||
share/coccinelle/parsing_c/semantic_c.cmi
|
||||
share/coccinelle/parsing_c/sexp_ast_c.cmi
|
||||
share/coccinelle/parsing_c/test_parsing_c.cmi
|
||||
share/coccinelle/parsing_c/token_c.cmi
|
||||
share/coccinelle/parsing_c/token_helpers.cmi
|
||||
share/coccinelle/parsing_c/token_views_c.cmi
|
||||
share/coccinelle/parsing_c/type_annoter_c.cmi
|
||||
share/coccinelle/parsing_c/type_c.cmi
|
||||
share/coccinelle/parsing_c/unparse_c.cmi
|
||||
share/coccinelle/parsing_c/unparse_cocci.cmi
|
||||
share/coccinelle/parsing_c/unparse_hrule.cmi
|
||||
share/coccinelle/parsing_c/visitor_c.cmi
|
||||
share/coccinelle/python/coccilib/__init__.py
|
||||
share/coccinelle/python/coccilib/coccigui/__init__.py
|
||||
share/coccinelle/python/coccilib/coccigui/coccigui.py
|
||||
share/coccinelle/python/coccilib/coccigui/pycoccimodel.py
|
||||
share/coccinelle/python/coccilib/coccigui/pygui.glade
|
||||
share/coccinelle/python/coccilib/coccigui/pygui.gladep
|
||||
share/coccinelle/python/coccilib/coccigui/vim.py
|
||||
share/coccinelle/python/coccilib/coccigui/vimcom.py
|
||||
share/coccinelle/python/coccilib/coccigui/vimeditor.py
|
||||
share/coccinelle/python/coccilib/coccigui/vimembed.py
|
||||
share/coccinelle/python/coccilib/elems.py
|
||||
share/coccinelle/python/coccilib/org.py
|
||||
share/coccinelle/python/coccilib/output.py
|
||||
share/coccinelle/python/coccilib/report.py
|
||||
share/coccinelle/python/coccilib/trac.py
|
||||
share/coccinelle/spatch
|
||||
share/coccinelle/standard.h
|
||||
share/coccinelle/standard.iso
|
||||
@dirrm share/coccinelle/python/coccilib/coccigui
|
||||
@dirrm share/coccinelle/python/coccilib
|
||||
@dirrm share/coccinelle/python
|
||||
@dirrm share/coccinelle/parsing_c
|
||||
@dirrm share/coccinelle/ocaml
|
||||
@dirrm share/coccinelle/commons
|
||||
@dirrm share/coccinelle
|
Loading…
Reference in New Issue
Block a user