From 0fd8cd32df2e45f5aada64055b91a57e5715b176 Mon Sep 17 00:00:00 2001
From: Allan Blanchard <allan.blanchard@cea.fr>
Date: Thu, 21 Jul 2022 15:53:31 +0200
Subject: [PATCH] [kernel] restore plugin path

---
 src/kernel_internals/runtime/fc_config.ml.in  | 3 +++
 src/kernel_internals/runtime/fc_config.mli    | 4 ++++
 src/kernel_internals/runtime/special_hooks.ml | 4 ++++
 3 files changed, 11 insertions(+)

diff --git a/src/kernel_internals/runtime/fc_config.ml.in b/src/kernel_internals/runtime/fc_config.ml.in
index 46be5ea3cfe..87f0704a7d1 100644
--- a/src/kernel_internals/runtime/fc_config.ml.in
+++ b/src/kernel_internals/runtime/fc_config.ml.in
@@ -37,6 +37,9 @@ let datadir = List.hd (List.rev datadirs)
 
 let plugin_dir = List.map Filepath.Normalized.of_string Config_data.Sites.plugins
 
+let plugin_path =
+  String.concat ":" (Filepath.Normalized.to_string_list plugin_dir)
+
 let framac_libc = Filepath.Normalized.concat datadir "libc"
 
 let () = Filepath.add_symbolic_dir_list "FRAMAC_SHARE" datadirs
diff --git a/src/kernel_internals/runtime/fc_config.mli b/src/kernel_internals/runtime/fc_config.mli
index ad676f2371e..8be24f24b75 100644
--- a/src/kernel_internals/runtime/fc_config.mli
+++ b/src/kernel_internals/runtime/fc_config.mli
@@ -64,6 +64,10 @@ val framac_libc: Filepath.Normalized.t
 val plugin_dir: Filepath.Normalized.t list
 (** Directory where the Frama-C dynamic plug-ins are. *)
 
+val plugin_path: string
+(** The colon-separated concatenation of [plugin_dir].
+    @since Magnesium-20151001 *)
+
 val preprocessor: string
 (** Name of the default command to call the preprocessor.
     If the CPP environment variable is set, use it
diff --git a/src/kernel_internals/runtime/special_hooks.ml b/src/kernel_internals/runtime/special_hooks.ml
index d700d9d07fe..8aa896f86a2 100644
--- a/src/kernel_internals/runtime/special_hooks.ml
+++ b/src/kernel_internals/runtime/special_hooks.ml
@@ -70,6 +70,10 @@ let () = Cmdline.run_after_early_stage print_sharepath
 let print_libpath = print_configl Kernel.PrintLib.get Fc_config.plugin_dir
 let () = Cmdline.run_after_early_stage print_libpath
 
+let print_pluginpath =
+  print_config Kernel.PrintPluginPath.get Fc_config.plugin_path
+let () = Cmdline.run_after_early_stage print_pluginpath
+
 (**************************************************************************)
 (* Hooks run after loading plug-ins *)
 (**************************************************************************)
-- 
GitLab