Make runtime_events optional
authorStéphane Glondu <glondu@debian.org>
Thu, 20 Jun 2024 01:00:37 +0000 (03:00 +0200)
committerStéphane Glondu <glondu@debian.org>
Thu, 20 Jun 2024 02:26:30 +0000 (04:26 +0200)
debian/patches/0010-Make-runtime_events-optional.patch [new file with mode: 0644]
debian/patches/series

diff --git a/debian/patches/0010-Make-runtime_events-optional.patch b/debian/patches/0010-Make-runtime_events-optional.patch
new file mode 100644 (file)
index 0000000..3d99b25
--- /dev/null
@@ -0,0 +1,349 @@
+From: =?utf-8?q?St=C3=A9phane_Glondu?= <glondu@debian.org>
+Date: Thu, 20 Jun 2024 03:00:07 +0200
+Subject: Make runtime_events optional
+
+Bug: https://github.com/ocaml/ocaml/issues/13234
+---
+ configure.ac                                              | 15 ++++++++++++---
+ ocamltest/builtin_actions.ml                              |  8 ++++++++
+ ocamltest/ocamltest_config.ml.in                          |  2 ++
+ ocamltest/ocamltest_config.mli                            |  3 +++
+ testsuite/tests/lib-runtime-events/test.ml                |  1 +
+ testsuite/tests/lib-runtime-events/test_caml.ml           |  1 +
+ testsuite/tests/lib-runtime-events/test_caml_counters.ml  |  1 +
+ testsuite/tests/lib-runtime-events/test_caml_exception.ml |  1 +
+ testsuite/tests/lib-runtime-events/test_caml_parallel.ml  |  1 +
+ testsuite/tests/lib-runtime-events/test_caml_reentry.ml   |  1 +
+ testsuite/tests/lib-runtime-events/test_caml_runparams.ml |  1 +
+ .../tests/lib-runtime-events/test_caml_slot_reuse.ml      |  1 +
+ testsuite/tests/lib-runtime-events/test_caml_stubs_gc.ml  |  1 +
+ testsuite/tests/lib-runtime-events/test_compact.ml        |  1 +
+ testsuite/tests/lib-runtime-events/test_dropped_events.ml |  1 +
+ testsuite/tests/lib-runtime-events/test_env_start.ml      |  1 +
+ testsuite/tests/lib-runtime-events/test_external.ml       |  1 +
+ .../tests/lib-runtime-events/test_external_preserve.ml    |  1 +
+ testsuite/tests/lib-runtime-events/test_fork.ml           |  1 +
+ testsuite/tests/lib-runtime-events/test_instrumented.ml   |  1 +
+ testsuite/tests/lib-runtime-events/test_user_event.ml     |  1 +
+ .../tests/lib-runtime-events/test_user_event_signal.ml    |  1 +
+ .../tests/lib-runtime-events/test_user_event_unknown.ml   |  1 +
+ 23 files changed, 44 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index a8e4222..f29d25e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -74,6 +74,7 @@ bootstrapping_flexdll=false
+ flexdll_dir=
+ lib_dynlink=false
+ lib_str=false
++lib_runtime_events=false
+ lib_systhreads=false
+ lib_unix=false
+ optional_libraries=''
+@@ -266,7 +267,6 @@ AC_CONFIG_HEADERS([runtime/caml/s.h])
+ AC_CONFIG_HEADERS([runtime/caml/version.h])
+ AC_CONFIG_FILES([compilerlibs/META])
+ AC_CONFIG_FILES([otherlibs/dynlink/META])
+-AC_CONFIG_FILES([otherlibs/runtime_events/META])
+ AC_CONFIG_FILES([stdlib/META])
+ # Definitions related to the version of OCaml
+@@ -412,6 +412,10 @@ AC_ARG_ENABLE([unix-lib],
+   [AS_HELP_STRING([--disable-unix-lib],
+     [do not build the unix library])])
++AC_ARG_ENABLE([runtime-events-lib],
++  [AS_HELP_STRING([--disable-runtime-events-lib],
++    [do not build the runtime_events library])])
++
+ AC_ARG_ENABLE([bigarray-lib], [],
+   [AS_IF([test "x$enableval" != 'xno'],
+     [AC_MSG_ERROR(m4_normalize([The bigarray-lib option was deleted in OCaml
+@@ -716,9 +720,9 @@ AS_CASE([$host],
+     [exeext=".exe"],
+   [exeext=''])
+-otherlibraries="dynlink runtime_events"
++otherlibraries="dynlink"
+ lib_dynlink=true
+-lib_runtime_events=true
++
+ AS_IF([test x"$enable_unix_lib" != "xno"],
+   [enable_unix_lib=yes
+   AC_CONFIG_FILES([otherlibs/unix/META])
+@@ -737,6 +741,11 @@ AS_IF([test x"$enable_str_lib" != "xno"],
+   lib_str=true
+   AC_CONFIG_FILES([otherlibs/str/META])])
++AS_IF([test x"$enable_runtime_events_lib" != "xno"],
++  [otherlibraries="$otherlibraries runtime_events"
++  lib_runtime_events=true
++  AC_CONFIG_FILES([otherlibs/runtime_events/META])])
++
+ # Checks for system services
+ ## Test whether #! scripts are supported
+diff --git a/ocamltest/builtin_actions.ml b/ocamltest/builtin_actions.ml
+index 1af3b08..6667f36 100644
+--- a/ocamltest/builtin_actions.ml
++++ b/ocamltest/builtin_actions.ml
+@@ -102,6 +102,13 @@ let hasstr = make
+     "str library available"
+     "str library not available")
++let hasruntime_events = make
++  ~name:"hasruntime_events"
++  ~description:"Pass if the runtime_events library is available"
++  (Actions_helpers.pass_or_skip Ocamltest_config.runtime_events
++    "runtime_events library available"
++    "runtime_events library not available")
++
+ let windows_OS = "Windows_NT"
+ let get_OS () = Sys.safe_getenv "OS"
+@@ -336,6 +343,7 @@ let _ =
+     hasunix;
+     hassysthreads;
+     hasstr;
++    hasruntime_events;
+     libunix;
+     libwin32unix;
+     windows;
+diff --git a/ocamltest/ocamltest_config.ml.in b/ocamltest/ocamltest_config.ml.in
+index 7bffd55..d8529ce 100644
+--- a/ocamltest/ocamltest_config.ml.in
++++ b/ocamltest/ocamltest_config.ml.in
+@@ -44,6 +44,8 @@ let systhreads = @lib_systhreads@
+ let str = @lib_str@
++let runtime_events = @lib_runtime_events@
++
+ let objext = {@QS@|@OBJEXT@|@QS@}
+ let libext = {@QS@|@libext@|@QS@}
+diff --git a/ocamltest/ocamltest_config.mli b/ocamltest/ocamltest_config.mli
+index d75ae87..2d7014e 100644
+--- a/ocamltest/ocamltest_config.mli
++++ b/ocamltest/ocamltest_config.mli
+@@ -58,6 +58,9 @@ val systhreads : bool
+ val str : bool
+ (** Indicates whether str is available. *)
++val runtime_events : bool
++(** Indicates whether runtime_events is available. *)
++
+ val objext : string
+ (** Extension of object files *)
+diff --git a/testsuite/tests/lib-runtime-events/test.ml b/testsuite/tests/lib-runtime-events/test.ml
+index 4eb61ae..7fe5ae2 100644
+--- a/testsuite/tests/lib-runtime-events/test.ml
++++ b/testsuite/tests/lib-runtime-events/test.ml
+@@ -1,6 +1,7 @@
+ (* TEST
+  modules = "stubs.c";
+  include runtime_events;
++ hasruntime_events;
+ *)
+ external start_runtime_events : unit -> unit = "start_runtime_events"
+diff --git a/testsuite/tests/lib-runtime-events/test_caml.ml b/testsuite/tests/lib-runtime-events/test_caml.ml
+index f25013b..f2359e0 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ (* Tests that:
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_counters.ml b/testsuite/tests/lib-runtime-events/test_caml_counters.ml
+index 75fa993..40743b7 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_counters.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_counters.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_exception.ml b/testsuite/tests/lib-runtime-events/test_caml_exception.ml
+index 59adfe3..1d29dd2 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_exception.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_exception.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_parallel.ml b/testsuite/tests/lib-runtime-events/test_caml_parallel.ml
+index 4394355..7947922 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_parallel.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_parallel.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_reentry.ml b/testsuite/tests/lib-runtime-events/test_caml_reentry.ml
+index 81e38e2..5bf8201 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_reentry.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_reentry.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_runparams.ml b/testsuite/tests/lib-runtime-events/test_caml_runparams.ml
+index 19612a5..0353a84 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_runparams.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_runparams.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  ocamlrunparam += ",e=4";
+ *)
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_slot_reuse.ml b/testsuite/tests/lib-runtime-events/test_caml_slot_reuse.ml
+index cbbfa9a..7317de9 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_slot_reuse.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_slot_reuse.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_caml_stubs_gc.ml b/testsuite/tests/lib-runtime-events/test_caml_stubs_gc.ml
+index 6ea181f..9e6e403 100644
+--- a/testsuite/tests/lib-runtime-events/test_caml_stubs_gc.ml
++++ b/testsuite/tests/lib-runtime-events/test_caml_stubs_gc.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_compact.ml b/testsuite/tests/lib-runtime-events/test_compact.ml
+index 890a289..1de9df3 100644
+--- a/testsuite/tests/lib-runtime-events/test_compact.ml
++++ b/testsuite/tests/lib-runtime-events/test_compact.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_dropped_events.ml b/testsuite/tests/lib-runtime-events/test_dropped_events.ml
+index 3dcf6fc..2c70205 100644
+--- a/testsuite/tests/lib-runtime-events/test_dropped_events.ml
++++ b/testsuite/tests/lib-runtime-events/test_dropped_events.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  include unix;
+  set OCAMLRUNPARAM = "e=6";
+  hasunix;
+diff --git a/testsuite/tests/lib-runtime-events/test_env_start.ml b/testsuite/tests/lib-runtime-events/test_env_start.ml
+index 5562d26..1e60053 100644
+--- a/testsuite/tests/lib-runtime-events/test_env_start.ml
++++ b/testsuite/tests/lib-runtime-events/test_env_start.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  set OCAML_RUNTIME_EVENTS_START = "1";
+ *)
+diff --git a/testsuite/tests/lib-runtime-events/test_external.ml b/testsuite/tests/lib-runtime-events/test_external.ml
+index df285e7..125752c 100644
+--- a/testsuite/tests/lib-runtime-events/test_external.ml
++++ b/testsuite/tests/lib-runtime-events/test_external.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  include unix;
+  libunix;
+  {
+diff --git a/testsuite/tests/lib-runtime-events/test_external_preserve.ml b/testsuite/tests/lib-runtime-events/test_external_preserve.ml
+index d5dd87c..b736e5e 100644
+--- a/testsuite/tests/lib-runtime-events/test_external_preserve.ml
++++ b/testsuite/tests/lib-runtime-events/test_external_preserve.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  include unix;
+  set OCAML_RUNTIME_EVENTS_PRESERVE = "1";
+  libunix;
+diff --git a/testsuite/tests/lib-runtime-events/test_fork.ml b/testsuite/tests/lib-runtime-events/test_fork.ml
+index 6d6ca1e..792854e 100644
+--- a/testsuite/tests/lib-runtime-events/test_fork.ml
++++ b/testsuite/tests/lib-runtime-events/test_fork.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  include unix;
+  libunix;
+  {
+diff --git a/testsuite/tests/lib-runtime-events/test_instrumented.ml b/testsuite/tests/lib-runtime-events/test_instrumented.ml
+index b82217d..11562fc 100644
+--- a/testsuite/tests/lib-runtime-events/test_instrumented.ml
++++ b/testsuite/tests/lib-runtime-events/test_instrumented.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  flags = "-runtime-variant=i";
+  instrumented-runtime;
+  native;
+diff --git a/testsuite/tests/lib-runtime-events/test_user_event.ml b/testsuite/tests/lib-runtime-events/test_user_event.ml
+index 4c9e90c..e25b7cc 100644
+--- a/testsuite/tests/lib-runtime-events/test_user_event.ml
++++ b/testsuite/tests/lib-runtime-events/test_user_event.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+ *)
+ open Runtime_events
+diff --git a/testsuite/tests/lib-runtime-events/test_user_event_signal.ml b/testsuite/tests/lib-runtime-events/test_user_event_signal.ml
+index 6837a88..26beb9e 100644
+--- a/testsuite/tests/lib-runtime-events/test_user_event_signal.ml
++++ b/testsuite/tests/lib-runtime-events/test_user_event_signal.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  include unix;
+  hasunix;
+  not-windows;
+diff --git a/testsuite/tests/lib-runtime-events/test_user_event_unknown.ml b/testsuite/tests/lib-runtime-events/test_user_event_unknown.ml
+index 447b7b5..84a304f 100644
+--- a/testsuite/tests/lib-runtime-events/test_user_event_unknown.ml
++++ b/testsuite/tests/lib-runtime-events/test_user_event_unknown.ml
+@@ -1,5 +1,6 @@
+ (* TEST
+  include runtime_events;
++ hasruntime_events;
+  include unix;
+  set OCAML_RUNTIME_EVENTS_PRESERVE = "1";
+  libunix;
index 65399d578f83bef64528bd55c5dd696a66fbc555..0e8d5a56a4cedb97333db1af1890ea6169f0d438 100644 (file)
@@ -7,3 +7,4 @@
 0008-Filter-out-f-debug-file-prefix-map-from-ocamlc_cflag.patch
 0008-Fix-call-to-test-in-configure.ac.patch
 0009-Remove-fixed-register-assignments-on-m68k.patch
+0010-Make-runtime_events-optional.patch