diff --git a/src/plugins/markdown-report/.gitignore b/src/plugins/markdown-report/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..b43cf1317bc5da2eca864bee0358f163ddae4ac4
--- /dev/null
+++ b/src/plugins/markdown-report/.gitignore
@@ -0,0 +1,10 @@
+*.cm*
+META.*
+*.o
+top/
+*.check_mli_exists
+.Makefile.plugin.generated
+.depend
+.merlin
+*~
+/mdr_version.ml
diff --git a/src/plugins/markdown-report/Makefile b/src/plugins/markdown-report/Makefile
index cd82c36f341e5c168982b0204beefc0256469358..217b85e5d9421b04f2d01050a1c294727709f7c8 100644
--- a/src/plugins/markdown-report/Makefile
+++ b/src/plugins/markdown-report/Makefile
@@ -2,15 +2,26 @@ ifndef FRAMAC_SHARE
   FRAMAC_SHARE:=$(shell frama-c -print-share-path)
 endif
 
+Report_markdown_VERSION:=0.1~alpha
+
 PLUGIN_NAME:=Report_markdown
+PLUGIN_GENERATED:=mdr_version.ml
 PLUGIN_CMO:=\
-  markdown sarif mdr_params parse_remarks eva_coverage sarif_gen md_gen
+  markdown sarif mdr_version mdr_params parse_remarks \
+  eva_coverage sarif_gen md_gen
 PLUGIN_NO_TEST:=true
 PLUGIN_REQUIRES:=ppx_deriving ppx_deriving_yojson yojson
+PLUGIN_VERSION:=$(Report_markdown_VERSION)
 PLUGIN_DISTRIB_EXTERNAL:=share/acsl.xml
 
 include $(FRAMAC_SHARE)/Makefile.dynamic
 
+$(Report_markdown_DIR)/mdr_version.ml: $(Report_markdown_DIR)/Makefile
+	$(PRINT_MAKING) $@
+	$(RM) $@
+	$(ECHO) "let version = \"$(Report_markdown_VERSION)\"" > $@
+	$(CHMOD_RO) $@
+
 $(Report_markdown_DIR)/Report_markdown.mli: \
   $(Report_markdown_DIR)/mdr_params.mli \
   $(Report_markdown_DIR)/markdown.mli \
diff --git a/src/plugins/markdown-report/Report_markdown.mli b/src/plugins/markdown-report/Report_markdown.mli
index 0c632a339710d55fcf6f82bcde6ad3c52fa54d15..f76e4200aa34102efb9a561f8a183ca253cddf23 100644
--- a/src/plugins/markdown-report/Report_markdown.mli
+++ b/src/plugins/markdown-report/Report_markdown.mli
@@ -21,9 +21,6 @@ module Title: Parameter_sig.String
 
 (** Value of [-mdr-stubs]. *)
 module Stubs: Parameter_sig.String_list
-
-(** version of mdr plugin itself *)
-val version: string
 end
 module Markdown: sig
 type align = Left | Center | Right
diff --git a/src/plugins/markdown-report/mdr_params.ml b/src/plugins/markdown-report/mdr_params.ml
index e7de9d876c360c57908221c2c933337f899b137b..be8ef4d1c14c119e9de9be2612e0a9140571c96c 100644
--- a/src/plugins/markdown-report/mdr_params.ml
+++ b/src/plugins/markdown-report/mdr_params.ml
@@ -70,5 +70,3 @@ module Stubs = String_list(
     let arg_name = "f1,...,fn"
     let help = "list of C files containing stub functions"
   end)
-
-let version = "0.1~alpha"
diff --git a/src/plugins/markdown-report/mdr_params.mli b/src/plugins/markdown-report/mdr_params.mli
index e6490396557091b378b0b87caa0bd70c1742b575..4affc377045b0b095f3c67beb02ebbe1601f698c 100644
--- a/src/plugins/markdown-report/mdr_params.mli
+++ b/src/plugins/markdown-report/mdr_params.mli
@@ -20,6 +20,3 @@ module Title: Parameter_sig.String
 
 (** Value of [-mdr-stubs]. *)
 module Stubs: Parameter_sig.String_list
-
-(** version of mdr plugin itself *)
-val version: string