# ChangeLog for dev-util/coccinelle
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-util/coccinelle/ChangeLog,v 1.11 2011/10/05 19:01:26 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-util/coccinelle/ChangeLog,v 1.12 2011/11/04 08:07:40 radhermit Exp $
+
+*coccinelle-1.0.0_rc7 (04 Nov 2011)
+
+ 04 Nov 2011; Tim Harder <radhermit@gentoo.org> +coccinelle-1.0.0_rc7.ebuild,
+ +files/coccinelle-1.0.0_rc7-parallel-make.patch,
+ +files/coccinelle-1.0.0_rc7-pcre.patch,
+ +files/coccinelle-1.0.0_rc7-pcre-linking.patch:
+ Version bump (fixes bug #369343). Update to EAPI 4 and improve python support
+ (bug #324381).
05 Oct 2011; Alexis Ballier <aballier@gentoo.org> coccinelle-0.2.5-r2.ebuild:
remove ptex dep as it is going away
-----BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
+Hash: SHA512
+AUX coccinelle-1.0.0_rc7-parallel-make.patch 192 RMD160 54c44bc377ee6aab1906424b94969db2f7defcb3 SHA1 3284b714e134cb3a749f4b5db5cbcf19aca471e8 SHA256 a497f4f24985a609e9f9845192b912253d8351e63703707eed7700c18e1ec8ed
+AUX coccinelle-1.0.0_rc7-pcre-linking.patch 736 RMD160 d159a9e2135c1642d5d197eee283ae6e05cf0eb9 SHA1 e12323cc52971c020bbc18fbc7039860435d0c0f SHA256 a56f00fd839a289800280ab5c6b8b8ddf056b2662a667307a09b33349ba86c2f
+AUX coccinelle-1.0.0_rc7-pcre.patch 1127 RMD160 e1020264de12f81f20490e2930828b19b18d0887 SHA1 78e961458cf4e5bbae6e09fa11fababa02eee5dd SHA256 432bedf758407089ebc9fd453b2dc197c9de3602671ae5dddd2d57cdef680e51
DIST coccinelle-0.2.5.tgz 2295665 RMD160 a0811ba0a2c50b70fc52155cc062af6ba383d0d2 SHA1 fa9aed17ee23a253cf01a8571b61d1320082751b SHA256 b80360d8106be90aff4801330f0400525c980409dadf3eb6a1079a7e43c5d017
+DIST coccinelle-1.0.0-rc7.tgz 2337344 RMD160 5a999e751e55232015c2741a25ea4f9835a9197c SHA1 42544ba5b5597793620b17b331612388609ef9fa SHA256 b74ab606938cd481bd4515b77f330e66e21ec6340b100a6f6dcfd9267aae53ba
EBUILD coccinelle-0.2.5-r2.ebuild 1890 RMD160 6b1cb608a2a22796075db9a837138bdbdc39d96c SHA1 d89b93694e3cf94884205acd52cc974144ffb419 SHA256 3bf25cd7f660fa96e8f19b454bc853a5dd5cb1fef79e98b9219d279594d80146
-MISC ChangeLog 1947 RMD160 8f773f88063795900f21fc29fafc8d5fd129c4b5 SHA1 89161601c5c7efac608daf89f33ce418b12e75d8 SHA256 add179f8000715a96a8a17791ad41dcfdc007687f36efcb2c7ebcb6e6abcb831
+EBUILD coccinelle-1.0.0_rc7.ebuild 2486 RMD160 1463d3f45731793dbc0c38448226539abc44586f SHA1 8f7ccaf34f32e676365c609ecd18f21c75103d3c SHA256 bdb68c64b45752161ad92895112730bd7b100a020cfe0e9047cd06f9d0661f54
+MISC ChangeLog 2305 RMD160 a9d3ad6e4a69555f3e21478db2d1a13655b3053b SHA1 6ed5d2732798301294cd723c9d9b9079485374b8 SHA256 a8ceae6297aa95c68c257fec3be311869d8d65430746be6959f922674f799599
MISC metadata.xml 155 RMD160 dfaa057e679b01302a807c75a32a910098b26809 SHA1 94024f83dcacbb53e92be090dd0f994ec93dc90d SHA256 118048376ebb76f57628b0819f3de4856e73959c2578c88715d37ea2d1e0af81
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.18 (GNU/Linux)
-iEYEARECAAYFAk6MqYwACgkQvFcC4BYPU0qTpgCeJZ5DsroCIQnuBhH7ABsonOaB
-pN0AnjhtJB03iJKExRcH0ASkBr2S2cLi
-=UnNK
+iQEcBAEBCgAGBQJOs51VAAoJEEqz6FtPBkyjDasH/R+Hu7bWnuimPAoBZgxGJVQL
+gMT1cH6FEDjFF+e5hg4OO6Qct6ObkGhL2DaZExdckw6r7LJMr7/WDqin3OkIU1yy
+bVWyY9/WPmYIVu6h7ra2Py84F78GJEmYTSI70T1BT7sLVgUHTtbvgmYvSfeXpdg2
+G5Yy2bNOFRTEp6/ij0x42D2zLPfdzj5f5n0cgeLvxxwZMW4gvDQizgVbkx/SdGJ6
+9oH00Xm8/CAzCg0CeKx86rqHmNSCelfBD2D7JqCRAyaYAKNhWDYPFYJGwuRx/IrW
+w4diK/pMrvwpj4UrodQgvGwP1kFbbESrQ9TXBJKsmFb7/FrX621yyujDb4/Fwns=
+=Oqkq
-----END PGP SIGNATURE-----
--- /dev/null
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-util/coccinelle/coccinelle-1.0.0_rc7.ebuild,v 1.1 2011/11/04 08:07:40 radhermit Exp $
+
+EAPI="4"
+PYTHON_DEPEND="python? 2"
+
+inherit multilib eutils python bash-completion-r1
+
+MY_P="${P/_/-}"
+DESCRIPTION="Program matching and transformation engine"
+HOMEPAGE="http://coccinelle.lip6.fr/"
+SRC_URI="http://coccinelle.lip6.fr/distrib/${MY_P}.tgz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc ocaml +ocamlopt pcre python test"
+
+# ocaml enables ocaml scripting (uses findlib)
+RDEPEND=">=dev-lang/ocaml-3.10[ocamlopt?]
+ dev-ml/sexplib
+ ocaml? ( dev-ml/findlib )
+ pcre? ( dev-ml/pcre-ocaml )"
+
+# dev-texlive/texlive-fontsextra contains 'ifsym.sty'
+DEPEND="${RDEPEND}
+ doc? ( virtual/latex-base
+ dev-texlive/texlive-latexextra
+ dev-texlive/texlive-fontsextra )"
+
+REQUIRED_USE="test? ( ocaml python )"
+
+DOCS=( authors.txt bugs.txt changes.txt credits.txt readme.txt )
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-pcre.patch
+ epatch "${FILESDIR}"/${P}-pcre-linking.patch
+ epatch "${FILESDIR}"/${P}-parallel-make.patch
+
+ # Fix python install location
+ sed -i -e "s:\$(SHAREDIR)/python:$(python_get_sitedir):" Makefile || die
+ sed -i -e "/export PYTHONPATH/s:\$COCCINELLE_HOME/python:$(python_get_sitedir):" \
+ scripts/spatch.sh || die
+}
+
+src_configure() {
+ # non-autoconf
+ ./configure \
+ --prefix=/usr \
+ $(use ocamlopt || echo "--no-opt") \
+ $(use_with python) \
+ $(use_with ocaml) \
+ $(use_with pcre) \
+ || die
+
+ sed -i -e "s:^LIBDIR=.*:LIBDIR=/usr/$(get_libdir)/ocaml/stublibs/:" \
+ -e "s:^SHAREDIR=.*:SHAREDIR=/usr/$(get_libdir)/ocaml/${PN}/:" \
+ -e "s:^MANDIR=.*:MANDIR=/usr/share/man/:" \
+ Makefile.config || die
+}
+
+src_compile() {
+ emake depend
+ emake
+ if use doc ; then
+ VARTEXFONTS="${T}"/fonts emake docs
+ fi
+ if use ocamlopt ; then
+ emake opt
+ fi
+}
+
+src_test() {
+ source env.sh # needed for built in-place python plugin
+ ./spatch standard.h -parse_c -dir tests/ || die
+ yes | ./spatch -iso_file standard.iso -macro_file_builtins standard.h -testall || die
+ if use ocamlopt ; then
+ ./spatch.opt -iso_file standard.iso -macro_file_builtins standard.h -testall || die
+ fi
+}
+
+src_install() {
+ default
+ use doc && dodoc docs/manual/*.pdf
+ newbashcomp scripts/spatch.bash_completion spatch
+ export STRIP_MASK='*/coccinelle/spatch'
+}
--- /dev/null
+--- coccinelle-1.0.0-rc7/docs/Makefile.orig
++++ coccinelle-1.0.0-rc7/docs/Makefile
+@@ -13,4 +13,4 @@
+ rm -f spatch.1
+
+ all clean distclean::
+- make -C $(SUBDIR) $@
++ $(MAKE) -C $(SUBDIR) $@
--- /dev/null
+--- coccinelle-1.0.0-rc7/Makefile.orig
++++ coccinelle-1.0.0-rc7/Makefile
+@@ -225,13 +225,13 @@
+ $(OPTOBJS):$(LIBS:.cma=.cmxa)
+
+ $(EXEC): $(LIBS) $(OBJS)
+- $(OCAMLC) $(BYTECODE_STATIC) -o $@ $(SYSLIBS) $(SEXPLIB) $^
++ $(OCAMLC) $(BYTECODE_STATIC) -o $@ $(SYSLIBS) $(SEXPLIB) $^ $(PCRELIB)
+
+ $(EXEC).opt: $(LIBS:.cma=.cmxa) $(OPTOBJS)
+- $(OCAMLOPT) $(STATIC) -o $@ $(SYSLIBS:.cma=.cmxa) $(OPTSEXPLIB) $(OPTLIBFLAGS) $^
++ $(OCAMLOPT) $(STATIC) -o $@ $(SYSLIBS:.cma=.cmxa) $(OPTSEXPLIB) $(OPTLIBFLAGS) $^ $(PCRELIB:.cma=.cmxa)
+
+ $(EXEC).top: $(LIBS) $(OBJS)
+- $(OCAMLMKTOP) -custom -o $@ $(SYSLIBS) $(SEXPLIB) $^
++ $(OCAMLMKTOP) -custom -o $@ $(SYSLIBS) $(SEXPLIB) $^ $(PCRELIB)
+
+ clean::
+ rm -f $(TARGET) $(TARGET).opt $(TARGET).top
--- /dev/null
+http://www.mail-archive.com/cocci@diku.dk/msg01695.html
+
+diff --git a/parsing_cocci/function_prototypes.ml b/parsing_cocci/function_prototypes.ml
+index 2f2225a..257e0ca 100644
+--- a/parsing_cocci/function_prototypes.ml
++++ b/parsing_cocci/function_prototypes.ml
+@@ -153,18 +153,19 @@ and strip =
+ ref [],-1) in
+
+ (* need a case for everything that has an unvisited component and can be in
+- a function prototype *)
++ a function prototype. Also get rid of constraints because pcre
++ constraints cannot be compared. *)
+
+ let ident r k e =
+ donothing r k
+ (Ast0.rewrap e
+ (match Ast0.unwrap e with
+ Ast0.MetaId(nm,constraints,seed,pure) ->
+- Ast0.MetaId(nm,constraints,seed,Ast0.Pure)
++ Ast0.MetaId(nm,Ast.IdNoConstraint,seed,Ast0.Pure)
+ | Ast0.MetaFunc(nm,constraints,pure) ->
+- Ast0.MetaFunc(nm,constraints,Ast0.Pure)
++ Ast0.MetaFunc(nm,Ast.IdNoConstraint,Ast0.Pure)
+ | Ast0.MetaLocalFunc(nm,constraints,pure) ->
+- Ast0.MetaLocalFunc(nm,constraints,Ast0.Pure)
++ Ast0.MetaLocalFunc(nm,Ast.IdNoConstraint,Ast0.Pure)
+ | e -> e)) in
+
+ let typeC r k e =