flitter/commons_core/features.ml.in
Joey Yakimowich-Payne fa600b98f7 Add poc files
2018-05-26 10:55:38 +09:00

81 lines
1.6 KiB
OCaml

(* yes sometimes cpp is useful *)
(* old:
note: in addition to Makefile.config, globals/config.ml is also modified
by configure
features.ml: features.ml.cpp Makefile.config
cpp -DFEATURE_GUI=$(FEATURE_GUI) \
-DFEATURE_MPI=$(FEATURE_MPI) \
-DFEATURE_PCRE=$(FEATURE_PCRE) \
features.ml.cpp > features.ml
clean::
rm -f features.ml
beforedepend:: features.ml
*)
#if FEATURE_MPI==1
module Distribution = struct
let map_reduce ?timeout ~fmap ~freduce c xs =
Distribution.map_reduce ?timeout ~fmap ~freduce c xs
let map_reduce_lazy ?timeout ~fmap ~freduce c fxs =
Distribution.map_reduce_lazy ?timeout ~fmap ~freduce c fxs
let under_mpirun () =
Distribution.under_mpirun()
let set_debug_mpi () =
Distribution.debug_mpi := true
(* was only when use mpich and the ch4 module. with openmpi, no need.
let mpi_adjust_argv argv =
Distribution.mpi_adjust_argv argv
*)
end
#else
module Distribution = struct
let map_reduce ?timeout ~fmap:map_ex ~freduce:reduce_ex acc xs =
let not_done = [] in
List.fold_left reduce_ex acc (List.map map_ex xs), not_done
let map_reduce_lazy ?timeout ~fmap:map_ex ~freduce:reduce_ex acc fxs =
let xs = fxs() in (* changed code *)
let not_done = [] in
List.fold_left reduce_ex acc (List.map map_ex xs), not_done
let under_mpirun () =
false
let set_debug_mpi () =
()
end
#endif
#if FEATURE_REGEXP_PCRE==1
#else
#endif
#if FEATURE_BACKTRACE==1
module Backtrace = struct
let print () =
Backtrace.print ()
end
#else
module Backtrace = struct
let print () =
print_string "no backtrace support, use configure --with-backtrace\n"
end
#endif