From 55fc8f078c461a19ea8fa15cc843c1db61c0faf0 Mon Sep 17 00:00:00 2001 From: Leonardo Taccari Date: Mon, 29 Jun 2020 17:58:18 +0200 Subject: [PATCH] coccinelle: non-working update to 1.08 The build fails due: ocamlfind ocamlc -c -package result -package seq -package uchar -bin-annot -no-alias-deps -I . stdcompat__buffer.ml -o stdcompat__buffer.cmo File "stdcompat__buffer.ml", line 1: Error: The implementation stdcompat__buffer.ml does not match the interface stdcompat__buffer.cmi: Values do not match: val to_seq : t -> char Stdlib.Seq.t is not included in val to_seq : t -> char Seq/1.t File "stdcompat__buffer_s.mli", line 48, characters 0-28: Expected declaration File "buffer.mli", line 163, characters 0-28: Actual declaration File "_none_", line 1: Definition of module Seq/1 Any help fixing that is welcomed! --- coccinelle/Makefile | 17 ++++------- coccinelle/TODO | 18 ++++++++++++ coccinelle/distinfo | 12 ++++---- coccinelle/patches/patch-Makefile | 28 ++++++++++--------- .../patch-bundles_pyml_pyml-current_py.ml | 24 ---------------- coccinelle/patches/patch-configure.ac | 19 +++++++++++++ 6 files changed, 64 insertions(+), 54 deletions(-) delete mode 100644 coccinelle/patches/patch-bundles_pyml_pyml-current_py.ml create mode 100644 coccinelle/patches/patch-configure.ac diff --git a/coccinelle/Makefile b/coccinelle/Makefile index cf64d448da..9efba4bc88 100644 --- a/coccinelle/Makefile +++ b/coccinelle/Makefile @@ -1,9 +1,8 @@ # $NetBSD: Makefile,v 1.29 2016/12/30 11:16:58 jaapb Exp $ -DISTNAME= coccinelle-1.0.6 +DISTNAME= coccinelle-1.0.8 CATEGORIES= devel -MASTER_SITES= http://coccinelle.lip6.fr/distrib/ -EXTRACT_SUFX= .tgz +MASTER_SITES= ${MASTER_SITE_GITHUB:=coccinelle/} MAINTAINER= pkgsrc-users@NetBSD.org HOMEPAGE= http://coccinelle.lip6.fr/ @@ -20,7 +19,7 @@ CONFIGURE_ARGS+= --disable-pyml MAKE_JOBS_SAFE= no GNU_CONFIGURE= yes -USE_TOOLS+= gmake pkg-config +USE_TOOLS+= aclocal autoconf automake gmake pkg-config BUILD_TARGET= all all.opt REPLACE_PYTHON= tools/pycocci @@ -31,14 +30,11 @@ SUBST_SED.man+= -e "s,$${prefix}/man,$${prefix}/${PKGMANDIR},g" SUBST_STAGE.man= pre-configure SUBST_MESSAGE.man= Fixing manpath. -SUBST_CLASSES+= python -SUBST_FILES.python+= bundles/pyml/pyml-current/py.ml -SUBST_VARS.python+= PYVERSSUFFIX -SUBST_STAGE.python= pre-configure -SUBST_MESSAGE.python= Fixing python command invokation. - TEST_TARGET= test +pre-configure: + cd ${WRKSRC} && ${SH} ./autogen + .include "../../lang/python/tool.mk" .include "../../mk/dlopen.buildlink3.mk" @@ -48,6 +44,5 @@ BUILDLINK_TRANSFORM+= opt:-ldl:${BUILDLINK_LDADD.dl:M*} .include "../../devel/pcre-ocaml/buildlink3.mk" BUILDLINK_API_DEPENDS.ocaml+= ocaml>=3.11 .include "../../lang/ocaml/buildlink3.mk" -.include "../../lang/camlp4/buildlink3.mk" .include "../../lang/python/application.mk" .include "../../mk/bsd.pkg.mk" diff --git a/coccinelle/TODO b/coccinelle/TODO index ed191503dc..27ed0f8241 100644 --- a/coccinelle/TODO +++ b/coccinelle/TODO @@ -1,6 +1,24 @@ Still not ready for using it to update devel/coccinelle. The following issues should be investigated further and if possible fixed: + - Build fails with: + + ocamlfind ocamlc -c -package result -package seq -package uchar -bin-annot -no-alias-deps -I . stdcompat__buffer.ml -o stdcompat__buffer.cmo + File "stdcompat__buffer.ml", line 1: + Error: The implementation stdcompat__buffer.ml + does not match the interface stdcompat__buffer.cmi: + Values do not match: + val to_seq : t -> char Stdlib.Seq.t + is not included in + val to_seq : t -> char Seq/1.t + File "stdcompat__buffer_s.mli", line 48, characters 0-28: + Expected declaration + File "buffer.mli", line 163, characters 0-28: Actual declaration + File "_none_", line 1: + Definition of module Seq/1 + + -- leot (2020/06/29) + - Update to coccinelle-1.0.6 breaks textproc/coccigrep XXXleot: provide a simple command to test that. diff --git a/coccinelle/distinfo b/coccinelle/distinfo index bbed64403c..d25e33d5f4 100644 --- a/coccinelle/distinfo +++ b/coccinelle/distinfo @@ -1,8 +1,8 @@ $NetBSD: distinfo,v 1.12 2015/11/03 03:27:19 agc Exp $ -SHA1 (coccinelle-1.0.6.tgz) = a1c06d8acc7a34a943b3d72e0773cdf54e533bca -RMD160 (coccinelle-1.0.6.tgz) = f3cd1de8566936d867c1fab31f52071ec3b80d9c -SHA512 (coccinelle-1.0.6.tgz) = b667762ddf5ad30b126e93572cd8a8b3ffc21a790cd9d6df586e421c5db0a8d049af9587c6e5cb8f7a13f2c090ab2a9cca59ecba69069f9d3fe67b6f75dfe539 -Size (coccinelle-1.0.6.tgz) = 6684278 bytes -SHA1 (patch-Makefile) = 799c488aaaa9111b7a1104b621c2ea61894d5365 -SHA1 (patch-bundles_pyml_pyml-current_py.ml) = 7389c0b3f93871f8653516a1eb7ac6134fa7016a +SHA1 (coccinelle-1.0.8.tar.gz) = 5eb00adab241eb8388088248f08fe455b35b849a +RMD160 (coccinelle-1.0.8.tar.gz) = 2c7676dc5c0bdb6839b665e78cc7ca65db0c15f0 +SHA512 (coccinelle-1.0.8.tar.gz) = 496b1632c92cc026fbe28f784f56d4cd78f89a8ccd28dc7db1069c0c6b2b239675a10da305e37ed2a03c605668ecd3399aeed522f12ec3fbbf3ca07277ab7bce +Size (coccinelle-1.0.8.tar.gz) = 2670961 bytes +SHA1 (patch-Makefile) = 834190a7229cfd4c5942c31cb59e9b77cda16a30 +SHA1 (patch-configure.ac) = b250b9ca24e778e48a1d2d9112d1df3f4a7cc8d8 diff --git a/coccinelle/patches/patch-Makefile b/coccinelle/patches/patch-Makefile index 4b330b538d..d5a852a440 100644 --- a/coccinelle/patches/patch-Makefile +++ b/coccinelle/patches/patch-Makefile @@ -4,23 +4,25 @@ $NetBSD: patch-Makefile,v 1.1 2012/11/17 11:50:14 ryoon Exp $ `cocci' suffix) - Do not install pyml bundle ---- Makefile.orig 2016-09-27 20:47:06.000000000 +0000 +--- Makefile.orig 2019-09-25 09:19:54.000000000 +0000 +++ Makefile -@@ -347,7 +347,7 @@ install-man: +@@ -297,10 +297,6 @@ install-bash: + install-spatch : spatch$(TOOLS_SUFFIX) + $(MKDIR_P) $(DESTDIR)$(BINDIR) $(DESTDIR)$(LIBDIR) + $(MKDIR_P) $(DESTDIR)$(LIBDIR)/ocaml +- if test -f bundles/pyml/dllpyml_stubs.so; then \ +- $(INSTALL_PROGRAM) bundles/pyml/dllpyml_stubs.so \ +- $(DESTDIR)$(LIBDIR); \ +- fi + if test -f bundles/pcre/dllpcre_stubs.so; then \ + $(INSTALL_PROGRAM) bundles/pcre/dllpcre_stubs.so \ + $(DESTDIR)$(LIBDIR); \ +@@ -318,7 +314,7 @@ install-man : $(INSTALL_DATA) docs/spatch.1 $(DESTDIR)$(MANDIR)/man1/ $(INSTALL_DATA) docs/pycocci.1 $(DESTDIR)$(MANDIR)/man1/ $(INSTALL_DATA) docs/spgen.1 $(DESTDIR)$(MANDIR)/man1/ - $(INSTALL_DATA) docs/Coccilib.3cocci $(DESTDIR)$(MANDIR)/man3/ + $(INSTALL_DATA) docs/Coccilib.3cocci $(DESTDIR)$(MANDIR)/man3/Coccilib.3 - install-bash: - @$(ECHO) "Installing bash completion in: ${DESTDIR}${BASH_COMPLETION_DIR}" -@@ -377,8 +377,6 @@ install-python: - - install-stubs: - $(MKDIR_P) $(DESTDIR)$(LIBDIR) -- @if test -f ./bundles/pyml/dllpyml_stubs.so; then \ -- cp -fv ./bundles/pyml/dllpyml_stubs.so $(DESTDIR)$(LIBDIR); fi - @if test -f ./bundles/pcre/dllpcre_stubs.so; then \ - cp -fv ./bundles/pcre/dllpcre_stubs.so $(DESTDIR)$(LIBDIR); fi - + .PHONY : install-spgen + install-spgen : tools/spgen/source/spgen$(TOOLS_SUFFIX) diff --git a/coccinelle/patches/patch-bundles_pyml_pyml-current_py.ml b/coccinelle/patches/patch-bundles_pyml_pyml-current_py.ml deleted file mode 100644 index f882c5a994..0000000000 --- a/coccinelle/patches/patch-bundles_pyml_pyml-current_py.ml +++ /dev/null @@ -1,24 +0,0 @@ -$NetBSD$ - -Make python command SUBST_VARSible. - ---- bundles/pyml/pyml-current/py.ml.orig 2016-09-27 20:47:06.000000000 +0000 -+++ bundles/pyml/pyml-current/py.ml -@@ -145,7 +145,7 @@ let find_library_path version_major vers - None -> - let library_paths = - try -- [Filename.concat (Filename.dirname (run_command "which python" false)) -+ [Filename.concat (Filename.dirname (run_command "which python@PYVERSSUFFIX@" false)) - "../lib"] - with Failure _ -> [] in - let library_filenames = -@@ -178,7 +178,7 @@ let find_library_path version_major vers - (library_paths, [library_filename]) - - let initialize_version_value () = -- let version_line = run_command "python --version" true in -+ let version_line = run_command "python@PYVERSSUFFIX@ --version" true in - let version = extract_version version_line in - let (version_major, version_minor) = extract_version_major_minor version in - version_value := version; diff --git a/coccinelle/patches/patch-configure.ac b/coccinelle/patches/patch-configure.ac new file mode 100644 index 0000000000..a8fecdc180 --- /dev/null +++ b/coccinelle/patches/patch-configure.ac @@ -0,0 +1,19 @@ +$NetBSD$ + +Do not use non-standard `==' test(1) operator. + +--- configure.ac.orig 2019-09-25 09:19:54.000000000 +0000 ++++ configure.ac +@@ -331,10 +331,10 @@ AS_IF([test "x$enable_pcre_syntax" != "x + ], + [dnl + AC_CHECK_COCCI_EXTPKG([pcre]) dnl will set $enable_pcre to 'yes', 'no', or 'local' +- AS_IF([test "x$enable_pcre" == "xyes"], ++ AS_IF([test "x$enable_pcre" = "xyes"], + [dnl + AC_MSG_CHECKING([if pcre depends on bytes]) +- AS_IF([test "x`$OCAMLFIND query -r -format '%p' pcre 2>/dev/null | grep bytes`" == "xbytes"], ++ AS_IF([test "x`$OCAMLFIND query -r -format '%p' pcre 2>/dev/null | grep bytes`" = "xbytes"], + [dnl + AC_MSG_RESULT([yes]) + AC_MSG_CHECKING([if bytes is an actual module])