--- xen-4.15.0/tools/ocaml/libs/xc/xenctrl_stubs.c.orig 2021-04-06 18:14:18.000000000 +0100
+++ xen-4.15.0/tools/ocaml/libs/xc/xenctrl_stubs.c 2021-04-11 21:38:22.684624663 +0100
@@ -43,7 +43,9 @@
#define _H(__h) ((xc_interface *)(__h))
#define _D(__d) ((uint32_t)Int_val(__d))
+#ifndef Val_none
#define Val_none (Val_int(0))
+#endif
#define string_of_option_array(array, index) \
((Field(array, index) == Val_none) ? NULL : String_val(Field(Field(array, index), 0)))
--- xen-4.15.0/tools/ocaml/libs/xl/xenlight_stubs.c.orig 2021-04-06 18:14:18.000000000 +0100
+++ xen-4.15.0/tools/ocaml/libs/xl/xenlight_stubs.c 2021-04-11 21:40:41.651115504 +0100
@@ -227,8 +227,12 @@
}
/* Option type support as per http://www.linux-nantes.org/~fmonnier/ocaml/ocaml-wrapping-c.php */
+#ifndef Val_none
#define Val_none Val_int(0)
+#endif
+#ifndef Some_val
#define Some_val(v) Field(v,0)
+#endif
static value Val_some(value v)
{
--- xen-4.15.0/tools/ocaml/libs/xentoollog/xentoollog_stubs.c.orig 2021-04-06 18:14:18.000000000 +0100
+++ xen-4.15.0/tools/ocaml/libs/xentoollog/xentoollog_stubs.c 2021-04-11 21:44:26.659529408 +0100
@@ -53,8 +53,12 @@
#include "_xtl_levels.inc"
/* Option type support as per http://www.linux-nantes.org/~fmonnier/ocaml/ocaml-wrapping-c.php */
+#ifndef Val_none
#define Val_none Val_int(0)
+#endif
+#ifndef Some_val
#define Some_val(v) Field(v,0)
+#endif
static value Val_some(value v)
{