From: Stephane Glondu <steph@glondu.net>
Date: Thu, 3 Sep 2020 15:21:10 +0200
Subject: Trigger -output-complete-exe on -custom with an environment variable

---
 driver/main_args.ml | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/driver/main_args.ml b/driver/main_args.ml
index ea07d15..7972427 100644
--- a/driver/main_args.ml
+++ b/driver/main_args.ml
@@ -1920,7 +1920,6 @@ third-party libraries such as Lwt, but with a different API."
     include Core
     include Compiler
     let _compat_32 = set bytecode_compatible_32
-    let _custom = set custom_runtime
     let _dcamlprimc = set keep_camlprimc_file
     let _dinstr = set dump_instr
     let _dllib s = Compenv.defer (ProcessDLLs (Misc.rev_split_words s))
@@ -1939,6 +1938,15 @@ third-party libraries such as Lwt, but with a different API."
     let _use_runtime s = use_runtime := s
     let _v () = Compenv.print_version_and_library "compiler"
     let _vmthread () = Compenv.fatal vmthread_removed_message
+    let _custom () =
+      if
+        match Sys.getenv_opt "OCAML_CUSTOM_USE_OUTPUT_COMPLETE_EXE" with
+        | None | Some "" -> false
+        | Some _ -> true
+      then
+        _output_complete_exe ()
+      else
+        set custom_runtime ()
   end
 
 end
