at master 2.0 kB view raw
1diff --git a/Makefile b/Makefile 2index 894e94d..9adc44b 100644 3--- a/Makefile 4+++ b/Makefile 5@@ -17,7 +17,7 @@ ifndef BINDIR 6 endif 7 export BINDIR 8 9-PACKS = unix str 10+PACKS = unix str findlib 11 # PP = camlp4o -I . -parser pa_opt.cmo 12 # export PP 13 14diff --git a/main.ml b/main.ml 15index 288526a..b67c5e9 100644 16--- a/main.ml 17+++ b/main.ml 18@@ -247,6 +247,11 @@ let write_header ~pos ~source ~source_option ~verbose ~prog_file lines = 19 Sys.getcwd ()) 20 | `File script_name -> "", get_dir script_name in 21 22+ let findlibdir = 23+ Filename.( 24+ concat (Findlib.package_directory "findlib") parent_dir_name 25+ ) in 26+ 27 let file, oc = Filename.open_temp_file "meta" ".ml" in 28 fprintf oc "\ 29 #%i %S;; 30@@ -255,6 +260,7 @@ let () = 31 try Topdirs.dir_directory (Sys.getenv \"OCAML_TOPLEVEL_PATH\") 32 with Not_found -> () 33 ;; 34+#directory \"%s\";; 35 #use \"topfind\";; 36 #require \"ocamlscript\";; 37 Ocamlscript.Common.verbose := %s;; 38@@ -263,7 +269,7 @@ Ocamlscript.Common.script_dir := %S;; 39 open Ocamlscript;; 40 open Utils;; 41 #%i %S;;\n" 42- pos source verbose script_dir extra_args trash pos source; 43+ pos source findlibdir verbose script_dir extra_args trash pos source; 44 45 List.iter (output_line oc) lines; 46 47@@ -550,6 +556,7 @@ let main () = 48 exit compilation_status 49 50 let _ = 51+ Findlib.init (); 52 try main () 53 with Failure s -> 54 eprintf "ocamlscript: %s\n%!" s; 55diff --git a/ocaml.ml b/ocaml.ml 56index a1824c6..b8f287e 100644 57--- a/ocaml.ml 58+++ b/ocaml.ml 59@@ -14,7 +14,7 @@ let ocamlfind = ref "ocamlfind" 60 let packs = ref [] (* findlib packages *) 61 let sources = ref [] (* extra sources *) 62 let use_ocamllex = ref false (* preprocess with ocamllex before camlp4 *) 63-let use_camlp4 = ref true (* by default camlp4 is used *) 64+let use_camlp4 = ref false (* by default camlp4 is not used *) 65 let use_ocamlc = ref false (* by default we want native code *) 66 let use_ocamlfind = ref false (* used only if necessary *) 67 let revised = ref false (* use this to use the revised syntax *)