On Fri, Aug 23, 2019 at 10:25:44PM +0200, Christopher Zimmermann wrote:
> Hi,
>
> this Frama-C release is compatible with OCaml 4.08. It builds and runs
> fine on amd64. I cannot build a bytecode-only version on amd64.
> I would welcome OKs and tests on real bytecode-only archs and i386,
> which is currently broken.
>
> Christopher
>
>
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/devel/frama-c/Makefile,v
> retrieving revision 1.18
> diff -u -p -r1.18 Makefile
> --- Makefile 12 Jul 2019 20:44:08 -0000 1.18
> +++ Makefile 23 Aug 2019 20:20:13 -0000
> @@ -6,37 +6,33 @@ FIX_EXTRACT_PERMISSIONS = Yes
>
> COMMENT = an extensible platform for analysis of C software
While here, drop the 'an' ;-)
>
> -DISTNAME = frama-c-18.0-Argon
> -PKGNAME = frama-c-18.0
> -REVISION = 1
> CATEGORIES = devel
> +GH_ACCOUNT = Frama-C
> +GH_PROJECT = Frama-C-snapshot
> +GH_TAGNAME = 19.0
> +DISTNAME = frama-c-${GH_TAGNAME}-Potassium
> +PKGNAME = frama-c-${GH_TAGNAME}
> +
> HOMEPAGE = https://frama-c.com/
>
> # LGPLv2
> PERMIT_PACKAGE = Yes
>
> -WANTLIB = X11 Xcomposite Xcursor Xdamage Xext Xfixes Xi Xinerama Xrandr
> -WANTLIB += Xrender art_lgpl_2 atk-1.0 c cairo fontconfig freetype
> -WANTLIB += gdk-x11-2.0 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gnomecanvas-2
> -WANTLIB += gobject-2.0 gtk-x11-2.0 gtksourceview-2.0 intl m gmp
> -WANTLIB += pango-1.0 pangocairo-1.0 pangoft2-1.0 pthread z
> -
> -MASTER_SITES = https://frama-c.com/download/
> +WANTLIB += atk-1.0 c cairo cairo-gobject fontconfig freetype gdk-3
> +WANTLIB += gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmp gobject-2.0 gtk-3
> +WANTLIB += gtksourceview-3.0 intl m pango-1.0 pangocairo-1.0 pthread
> +WANTLIB += z
>
> MODULES = lang/ocaml
>
> -BUILD_DEPENDS = x11/lablgtk2 \
> +RUN_DEPENDS = x11/lablgtk3 \
> devel/ocaml-graph \
> math/graphviz \
> math/ocaml-zarith \
> - sysutils/findlib
> -RUN_DEPENDS = x11/lablgtk2 \
> - math/graphviz \
> - math/ocaml-zarith \
> - sysutils/findlib
> + devel/ocaml-yojson
>
> -LIB_DEPENDS = x11/gnome/libgnomecanvas \
> - x11/gtksourceview
> +BUILD_DEPENDS = ${RUN_DEPENDS} \
> + sysutils/findlib
>
> USE_GMAKE = Yes
> TEST_TARGET = oracles tests
> Index: distinfo
> ===================================================================
> RCS file: /cvs/ports/devel/frama-c/distinfo,v
> retrieving revision 1.3
> diff -u -p -r1.3 distinfo
> --- distinfo 4 Mar 2019 12:51:12 -0000 1.3
> +++ distinfo 23 Aug 2019 20:20:13 -0000
> @@ -1,2 +1,2 @@
> -SHA256 (frama-c-18.0-Argon.tar.gz) = QrElQMYI879swlimvO3t88WWWJ5Yv9/Gv0c6BauYCCk=
> -SIZE (frama-c-18.0-Argon.tar.gz) = 5358960
> +SHA256 (frama-c-19.0-Potassium.tar.gz) = JQLGITrB+V4E0qaPszAhcvpa9hV0+jD9gpWWI+SwgyY=
> +SIZE (frama-c-19.0-Potassium.tar.gz) = 5615479
> Index: patches/patch-Makefile
> ===================================================================
> RCS file: patches/patch-Makefile
> diff -N patches/patch-Makefile
> --- patches/patch-Makefile 4 Mar 2019 12:51:12 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,26 +0,0 @@
> -$OpenBSD: patch-Makefile,v 1.1 2019/03/04 12:51:12 chrisz Exp $
> -
> -don't try to install cmx* files on bytecode builds.
> -
> -Index: Makefile
> ---- Makefile.orig
> -+++ Makefile
> -@@ -1863,14 +1863,16 @@ install:: install-lib
> - if [ -d "$(FRAMAC_PLUGIN)" ]; then \
> - $(CP) $(PLUGIN_DYN_CMI_LIST) $(PLUGIN_META_LIST) \
> - $(FRAMAC_PLUGINDIR); \
> -- $(CP) $(PLUGIN_DYN_CMO_LIST) $(PLUGIN_DYN_CMX_LIST) \
> -+ $(CP) $(PLUGIN_DYN_CMO_LIST) \
> -+ $(if $(filter opt, $(OCAMLBEST)), $(PLUGIN_DYN_CMX_LIST),) \
> - $(FRAMAC_PLUGINDIR)/top; \
> - fi
> - $(PRINT_INSTALL) gui plug-ins
> - if [ -d "$(FRAMAC_PLUGIN_GUI)" -a "$(PLUGIN_DYN_GUI_EXISTS)" = "yes" ]; \
> - then \
> - $(CP) $(patsubst %.cma,%.cmi,$(PLUGIN_DYN_GUI_CMO_LIST:.cmo=.cmi)) \
> -- $(PLUGIN_DYN_GUI_CMO_LIST) $(PLUGIN_DYN_GUI_CMX_LIST) \
> -+ $(PLUGIN_DYN_GUI_CMO_LIST) \
> -+ $(if $(filter opt, $(OCAMLBEST)), $(PLUGIN_DYN_GUI_CMX_LIST),) \
> - $(FRAMAC_PLUGINDIR)/gui; \
> - fi
> - $(PRINT_INSTALL) man pages
> Index: patches/patch-configure_in
> ===================================================================
> RCS file: patches/patch-configure_in
> diff -N patches/patch-configure_in
> --- patches/patch-configure_in 4 Mar 2019 12:51:12 -0000 1.1
> +++ /dev/null 1 Jan 1970 00:00:00 -0000
> @@ -1,47 +0,0 @@
> -$OpenBSD: patch-configure_in,v 1.1 2019/03/04 12:51:12 chrisz Exp $
> -
> -Use system threads if available - even on bytecode builds.
> -Vmthreads are broken and deprecated.
> -
> -Index: configure.in
> ---- configure.in.orig
> -+++ configure.in
> -@@ -436,23 +436,23 @@ else
> - EXE=
> - fi
> -
> -- if test "$OCAMLBEST" = opt; then
> -- # OCaml native threads
> -- AC_MSG_CHECKING([OCaml native threads])
> -- echo "let f = Thread.create (fun () -> ())" > test_native_threads.ml
> -- if ($OCAMLOPT -thread -o test_native_threads unix.cmxa threads.cmxa \
> -- test_native_threads.ml) 2> /dev/null ;
> -- then
> -- HAS_NATIVE_THREADS=yes
> -- AC_MSG_RESULT([ok.]);
> -- else
> -- HAS_NATIVE_THREADS=no
> -- AC_MSG_WARN([unsupported.]);
> -- fi
> -- rm -f test_native_threads*;
> -+ # OCaml native threads
> -+ AC_MSG_CHECKING([OCaml native threads])
> -+ echo "let f = Thread.create (fun () -> ())" > test_native_threads.ml
> -+ if
> -+ test "$OCAMLBEST" = opt &&
> -+ ($OCAMLOPT -thread -o test_native_threads unix.cma threads.cma \
> -+ test_native_threads.ml) 2> /dev/null ||
> -+ ($OCAMLC -thread -o test_native_threads unix.cma threads.cma \
> -+ test_native_threads.ml) 2> /dev/null
> -+ then
> -+ HAS_NATIVE_THREADS=yes
> -+ AC_MSG_RESULT([ok.]);
> - else
> -- HAS_NATIVE_THREADS=no; # no native compilation anyway
> -+ HAS_NATIVE_THREADS=no
> -+ AC_MSG_WARN([unsupported.]);
> - fi
> -+ rm -f test_native_threads*;
> - fi
> -
> - # C and POSIX standard headers used by C bindings.
> Index: pkg/PFRAG.dynlink-native
> ===================================================================
> RCS file: /cvs/ports/devel/frama-c/pkg/PFRAG.dynlink-native,v
> retrieving revision 1.3
> diff -u -p -r1.3 PFRAG.dynlink-native
> --- pkg/PFRAG.dynlink-native 4 Mar 2019 12:51:12 -0000 1.3
> +++ pkg/PFRAG.dynlink-native 23 Aug 2019 20:20:13 -0000
> @@ -1,5 +1,4 @@
> @comment $OpenBSD: PFRAG.dynlink-native,v 1.3 2019/03/04 12:51:12 chrisz Exp $
> -@bin lib/frama-c/plugins/gui/Callgraph.cmxs
> @bin lib/frama-c/plugins/gui/Eva.cmxs
> @bin lib/frama-c/plugins/gui/From.cmxs
> @bin lib/frama-c/plugins/gui/Impact.cmxs
> Index: pkg/PFRAG.native
> ===================================================================
> RCS file: /cvs/ports/devel/frama-c/pkg/PFRAG.native,v
> retrieving revision 1.4
> diff -u -p -r1.4 PFRAG.native
> --- pkg/PFRAG.native 4 Mar 2019 12:51:12 -0000 1.4
> +++ pkg/PFRAG.native 23 Aug 2019 20:20:13 -0000
> @@ -9,6 +9,8 @@ lib/frama-c/FCMap.cmx
> lib/frama-c/FCMap.o
> lib/frama-c/FCSet.cmx
> lib/frama-c/FCSet.o
> +lib/frama-c/GSourceView.cmx
> +lib/frama-c/GSourceView.o
> lib/frama-c/abstract_interp.cmx
> lib/frama-c/abstract_interp.o
> lib/frama-c/alarms.cmx
> @@ -107,6 +109,8 @@ lib/frama-c/design.cmx
> lib/frama-c/design.o
> lib/frama-c/destructors.cmx
> lib/frama-c/destructors.o
> +lib/frama-c/dgraph.cmx
> +lib/frama-c/dgraph.o
> lib/frama-c/dominators.cmx
> lib/frama-c/dominators.o
> lib/frama-c/dynamic.cmx
> @@ -139,6 +143,8 @@ lib/frama-c/float_interval.cmx
> lib/frama-c/float_interval.o
> lib/frama-c/floating_point.cmx
> lib/frama-c/floating_point.o
> +lib/frama-c/frama-c.a
> +lib/frama-c/frama-c.cmxa
> lib/frama-c/frama_c_init.cmx
> lib/frama-c/frama_c_init.o
> lib/frama-c/frontc.cmx
> @@ -149,6 +155,8 @@ lib/frama-c/fval.cmx
> lib/frama-c/fval.o
> lib/frama-c/globals.cmx
> lib/frama-c/globals.o
> +lib/frama-c/gtk_compat.cmx
> +lib/frama-c/gtk_compat.o
> lib/frama-c/gtk_form.cmx
> lib/frama-c/gtk_form.o
> lib/frama-c/gtk_helper.cmx
> @@ -304,6 +312,8 @@ lib/frama-c/printer.cmx
> lib/frama-c/printer.o
> lib/frama-c/printer_builder.cmx
> lib/frama-c/printer_builder.o
> +lib/frama-c/printer_tag.cmx
> +lib/frama-c/printer_tag.o
> lib/frama-c/project.cmx
> lib/frama-c/project.o
> lib/frama-c/project_manager.cmx
> @@ -328,6 +338,8 @@ lib/frama-c/rich_text.cmx
> lib/frama-c/rich_text.o
> lib/frama-c/rmtmps.cmx
> lib/frama-c/rmtmps.o
> +lib/frama-c/sanitizer.cmx
> +lib/frama-c/sanitizer.o
> lib/frama-c/service_graph.cmx
> lib/frama-c/service_graph.o
> lib/frama-c/source_manager.cmx
> @@ -406,3 +418,5 @@ lib/frama-c/wto_statement.cmx
> lib/frama-c/wto_statement.o
> lib/frama-c/wutil.cmx
> lib/frama-c/wutil.o
> +lib/frama-c/wutil_once.cmx
> +lib/frama-c/wutil_once.o
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/devel/frama-c/pkg/PLIST,v
> retrieving revision 1.4
> diff -u -p -r1.4 PLIST
> --- pkg/PLIST 4 Mar 2019 12:51:12 -0000 1.4
> +++ pkg/PLIST 23 Aug 2019 20:20:14 -0000
> @@ -16,6 +16,9 @@ lib/frama-c/FCMap.cmi
> lib/frama-c/FCMap.cmo
> lib/frama-c/FCSet.cmi
> lib/frama-c/FCSet.cmo
> +lib/frama-c/GSourceView.cmi
> +lib/frama-c/GSourceView.cmo
> +lib/frama-c/META.frama-c
> lib/frama-c/abstract_interp.cmi
> lib/frama-c/abstract_interp.cmo
> lib/frama-c/alarms.cmi
> @@ -116,6 +119,9 @@ lib/frama-c/design.cmi
> lib/frama-c/design.cmo
> lib/frama-c/destructors.cmi
> lib/frama-c/destructors.cmo
> +lib/frama-c/dgraph.cmi
> +lib/frama-c/dgraph.cmo
> +lib/frama-c/dllframa-c.so
> lib/frama-c/dominators.cmi
> lib/frama-c/dominators.cmo
> lib/frama-c/dynamic.cmi
> @@ -150,6 +156,7 @@ lib/frama-c/float_interval_sig.cmi
> lib/frama-c/float_sig.cmi
> lib/frama-c/floating_point.cmi
> lib/frama-c/floating_point.cmo
> +lib/frama-c/frama-c.cma
> lib/frama-c/frama_c_init.cmi
> lib/frama-c/frama_c_init.cmo
> lib/frama-c/frontc.cmi
> @@ -160,6 +167,8 @@ lib/frama-c/fval.cmi
> lib/frama-c/fval.cmo
> lib/frama-c/globals.cmi
> lib/frama-c/globals.cmo
> +lib/frama-c/gtk_compat.cmi
> +lib/frama-c/gtk_compat.cmo
> lib/frama-c/gtk_form.cmi
> lib/frama-c/gtk_form.cmo
> lib/frama-c/gtk_helper.cmi
> @@ -217,6 +226,7 @@ lib/frama-c/leftistheap.cmi
> lib/frama-c/leftistheap.cmo
> lib/frama-c/lexerhack.cmi
> lib/frama-c/lexerhack.cmo
> +lib/frama-c/libframa-c.a
> lib/frama-c/lmap.cmi
> lib/frama-c/lmap.cmo
> lib/frama-c/lmap_bitwise.cmi
> @@ -343,8 +353,6 @@ lib/frama-c/plugins/Users.cmi
> lib/frama-c/plugins/Variadic.cmi
> lib/frama-c/plugins/Wp.cmi
> lib/frama-c/plugins/gui/
> -lib/frama-c/plugins/gui/Callgraph.cmi
> -lib/frama-c/plugins/gui/Callgraph.cmo
> lib/frama-c/plugins/gui/Eva.cmi
> lib/frama-c/plugins/gui/Eva.cmo
> lib/frama-c/plugins/gui/From.cmi
> @@ -406,6 +414,8 @@ lib/frama-c/printer.cmo
> lib/frama-c/printer_api.cmi
> lib/frama-c/printer_builder.cmi
> lib/frama-c/printer_builder.cmo
> +lib/frama-c/printer_tag.cmi
> +lib/frama-c/printer_tag.cmo
> lib/frama-c/project.cmi
> lib/frama-c/project.cmo
> lib/frama-c/project_manager.cmi
> @@ -429,6 +439,8 @@ lib/frama-c/rich_text.cmi
> lib/frama-c/rich_text.cmo
> lib/frama-c/rmtmps.cmi
> lib/frama-c/rmtmps.cmo
> +lib/frama-c/sanitizer.cmi
> +lib/frama-c/sanitizer.cmo
> lib/frama-c/service_graph.cmi
> lib/frama-c/service_graph.cmo
> lib/frama-c/source_manager.cmi
> @@ -508,6 +520,8 @@ lib/frama-c/wto_statement.cmi
> lib/frama-c/wto_statement.cmo
> lib/frama-c/wutil.cmi
> lib/frama-c/wutil.cmo
> +lib/frama-c/wutil_once.cmi
> +lib/frama-c/wutil_once.cmo
> lib/libeacsl-dlmalloc.a
> lib/libeacsl-gmp.a
> @man man/man1/e-acsl-gcc.sh.1
> @@ -523,6 +537,8 @@ share/frama-c/Makefile.plugin.template
> share/frama-c/_frama-c
> share/frama-c/analysis-scripts/
> share/frama-c/analysis-scripts/README.md
> +share/frama-c/analysis-scripts/benchmark_database.py
> +share/frama-c/analysis-scripts/clone.sh
> share/frama-c/analysis-scripts/cmd-dep.sh
> share/frama-c/analysis-scripts/concat-csv.sh
> share/frama-c/analysis-scripts/examples/
> @@ -531,11 +547,17 @@ share/frama-c/analysis-scripts/examples/
> share/frama-c/analysis-scripts/examples/example-slevel.mk
> share/frama-c/analysis-scripts/examples/example.c
> share/frama-c/analysis-scripts/examples/example.mk
> +share/frama-c/analysis-scripts/fc_stubs.c
> +share/frama-c/analysis-scripts/find_fun.py
> share/frama-c/analysis-scripts/flamegraph.pl
> share/frama-c/analysis-scripts/frama-c.mk
> +share/frama-c/analysis-scripts/frama_c_results.py
> +share/frama-c/analysis-scripts/git_utils.py
> share/frama-c/analysis-scripts/list_files.py
> +share/frama-c/analysis-scripts/make_wrapper.py
> share/frama-c/analysis-scripts/parse-coverage.sh
> -share/frama-c/analysis-scripts/summary.sh
> +share/frama-c/analysis-scripts/results_display.py
> +share/frama-c/analysis-scripts/summary.py
> share/frama-c/analysis-scripts/template.mk
> share/frama-c/autocomplete_frama-c
> share/frama-c/builtin.h
> @@ -624,9 +646,11 @@ share/frama-c/libc/__fc_define_uid_and_g
> share/frama-c/libc/__fc_define_useconds_t.h
> share/frama-c/libc/__fc_define_wchar_t.h
> share/frama-c/libc/__fc_define_wint_t.h
> +share/frama-c/libc/__fc_gcc_builtins.h
> share/frama-c/libc/__fc_inet.h
> share/frama-c/libc/__fc_machdep.h
> -share/frama-c/libc/__fc_machdep_linux_gcc_shared.h
> +share/frama-c/libc/__fc_machdep_linux_shared.h
> +share/frama-c/libc/__fc_runtime.c
> share/frama-c/libc/__fc_select.h
> share/frama-c/libc/__fc_string_axiomatic.h
> share/frama-c/libc/alloca.h
> @@ -643,7 +667,6 @@ share/frama-c/libc/dlfcn.h
> share/frama-c/libc/endian.h
> share/frama-c/libc/errno.c
> share/frama-c/libc/errno.h
> -share/frama-c/libc/fc_runtime.c
> share/frama-c/libc/fcntl.h
> share/frama-c/libc/features.h
> share/frama-c/libc/fenv.c
> @@ -661,14 +684,7 @@ share/frama-c/libc/inttypes.c
> share/frama-c/libc/inttypes.h
> share/frama-c/libc/iso646.h
> share/frama-c/libc/libgen.h
> -share/frama-c/libc/libintl.h
> share/frama-c/libc/limits.h
> -share/frama-c/libc/linux/
> -share/frama-c/libc/linux/fs.h
> -share/frama-c/libc/linux/if_addr.h
> -share/frama-c/libc/linux/if_netlink.h
> -share/frama-c/libc/linux/netlink.h
> -share/frama-c/libc/linux/rtnetlink.h
> share/frama-c/libc/locale.c
> share/frama-c/libc/locale.h
> share/frama-c/libc/malloc.h
> @@ -681,9 +697,6 @@ share/frama-c/libc/netdb.c
> share/frama-c/libc/netdb.h
> share/frama-c/libc/netinet/
> share/frama-c/libc/netinet/in.h
> -share/frama-c/libc/netinet/in_systm.h
> -share/frama-c/libc/netinet/ip.h
> -share/frama-c/libc/netinet/ip_icmp.h
> share/frama-c/libc/netinet/tcp.h
> share/frama-c/libc/nl_types.h
> share/frama-c/libc/poll.h
> @@ -694,6 +707,7 @@ share/frama-c/libc/resolv.h
> share/frama-c/libc/sched.h
> share/frama-c/libc/semaphore.h
> share/frama-c/libc/setjmp.h
> +share/frama-c/libc/signal.c
> share/frama-c/libc/signal.h
> share/frama-c/libc/stdarg.h
> share/frama-c/libc/stdbool.h
> @@ -712,7 +726,6 @@ share/frama-c/libc/sys/file.h
> share/frama-c/libc/sys/ioctl.h
> share/frama-c/libc/sys/ipc.h
> share/frama-c/libc/sys/mman.h
> -share/frama-c/libc/sys/param.h
> share/frama-c/libc/sys/random.h
> share/frama-c/libc/sys/resource.h
> share/frama-c/libc/sys/select.h
> @@ -720,7 +733,6 @@ share/frama-c/libc/sys/shm.h
> share/frama-c/libc/sys/signal.h
> share/frama-c/libc/sys/socket.h
> share/frama-c/libc/sys/stat.h
> -share/frama-c/libc/sys/sysctl.h
> share/frama-c/libc/sys/time.h
> share/frama-c/libc/sys/times.h
> share/frama-c/libc/sys/timex.h
> @@ -732,8 +744,8 @@ share/frama-c/libc/sys/wait.h
> share/frama-c/libc/syslog.h
> share/frama-c/libc/termios.h
> share/frama-c/libc/tgmath.h
> +share/frama-c/libc/time.c
> share/frama-c/libc/time.h
> -share/frama-c/libc/uchar.h
> share/frama-c/libc/unistd.h
> share/frama-c/libc/utime.h
> share/frama-c/libc/utmpx.h
> @@ -797,6 +809,7 @@ share/frama-c/wp/coqwp/Cfloat.v
> share/frama-c/wp/coqwp/Cint.v
> share/frama-c/wp/coqwp/Cmath.v
> share/frama-c/wp/coqwp/ExpLog.v
> +share/frama-c/wp/coqwp/HighOrd.v
> share/frama-c/wp/coqwp/Memory.v
> share/frama-c/wp/coqwp/Qed.v
> share/frama-c/wp/coqwp/Qedlib.v
> @@ -809,8 +822,10 @@ share/frama-c/wp/coqwp/bool/Bool.v
> share/frama-c/wp/coqwp/int/
> share/frama-c/wp/coqwp/int/Abs.v
> share/frama-c/wp/coqwp/int/ComputerDivision.v
> +share/frama-c/wp/coqwp/int/Exponentiation.v
> share/frama-c/wp/coqwp/int/Int.v
> share/frama-c/wp/coqwp/int/MinMax.v
> +share/frama-c/wp/coqwp/int/Power.v
> share/frama-c/wp/coqwp/map/
> share/frama-c/wp/coqwp/map/Const.v
> share/frama-c/wp/coqwp/map/Map.v
>
>
> --
> http://gmerlin.de
> OpenPGP: http://gmerlin.de/christopher.pub
> CB07 DA40 B0B6 571D 35E2 0DEF 87E2 92A7 13E5 DEE1
--
Antoine
No comments:
Post a Comment