summaryrefslogtreecommitdiff
path: root/debugger/program_loading.ml
diff options
context:
space:
mode:
Diffstat (limited to 'debugger/program_loading.ml')
-rw-r--r--debugger/program_loading.ml114
1 files changed, 0 insertions, 114 deletions
diff --git a/debugger/program_loading.ml b/debugger/program_loading.ml
deleted file mode 100644
index edcf3b1ed7..0000000000
--- a/debugger/program_loading.ml
+++ /dev/null
@@ -1,114 +0,0 @@
-(***********************************************************************)
-(* *)
-(* Objective Caml *)
-(* *)
-(* Jerome Vouillon, projet Cristal, INRIA Rocquencourt *)
-(* Objective Caml port by John Malecki and Xavier Leroy *)
-(* *)
-(* Copyright 1996 Institut National de Recherche en Informatique et *)
-(* en Automatique. All rights reserved. This file is distributed *)
-(* under the terms of the Q Public License version 1.0. *)
-(* *)
-(***********************************************************************)
-
-(* $Id$ *)
-
-(* Program loading *)
-
-open Unix
-open Misc
-open Debugger_config
-open Parameters
-open Input_handling
-
-(*** Debugging. ***)
-
-let debug_loading = ref false
-
-(*** Load a program. ***)
-
-(* Function used for launching the program. *)
-let launching_func = ref (function () -> ())
-
-let load_program () =
- !launching_func ();
- main_loop ()
-
-(*** Launching functions. ***)
-
-(* A generic function for launching the program *)
-let generic_exec cmdline = function () ->
- if !debug_loading then
- prerr_endline "Launching program...";
- let child =
- try
- fork ()
- with x ->
- Unix_tools.report_error x;
- raise Toplevel in
- match child with
- 0 ->
- begin try
- match fork () with
- 0 -> (* Try to detach the process from the controlling terminal,
- so that it does not receive SIGINT on ctrl-C. *)
- begin try ignore(setsid()) with Invalid_argument _ -> () end;
- execv shell [| shell; "-c"; cmdline() |]
- | _ -> exit 0
- with x ->
- Unix_tools.report_error x;
- exit 1
- end
- | _ ->
- match wait () with
- (_, WEXITED 0) -> ()
- | _ -> raise Toplevel
-
-(* Execute the program by calling the runtime explicitely *)
-let exec_with_runtime =
- generic_exec
- (function () ->
- Printf.sprintf "CAML_DEBUG_SOCKET=%s %s %s %s"
- !socket_name
- runtime_program
- !program_name
- !arguments)
-
-(* Excute the program directly *)
-let exec_direct =
- generic_exec
- (function () ->
- Printf.sprintf "CAML_DEBUG_SOCKET=%s %s %s"
- !socket_name
- !program_name
- !arguments)
-
-(* Ask the user. *)
-let exec_manual =
- function () ->
- print_newline ();
- print_string "Waiting for connection...";
- print_string ("(the socket is " ^ !socket_name ^ ")");
- print_newline ()
-
-(*** Selection of the launching function. ***)
-
-type launching_function = (unit -> unit)
-
-let loading_modes =
- ["direct", exec_direct;
- "runtime", exec_with_runtime;
- "manual", exec_manual]
-
-let set_launching_function func =
- launching_func := func
-
-(* Initialization *)
-
-let _ =
- set_launching_function exec_direct
-
-(*** Connection. ***)
-
-let connection = ref Primitives.std_io
-let connection_opened = ref false