List.iter (fun s -> require (compiled s)) sources;
let objects = List.map (change_file_extension "o") sources in
- sh "cc %s -o %s" (String.concat " " objects) program
+ sh "cd $builddir && cc %s -o %s" (String.concat " " objects) program
(* Goal: Make sure a C file is compiled (to an object file). *)
and compiled c_file =
let o_file = change_file_extension "o" c_file in
target (more_recent [o_file] [c_file]);
require (file_exists c_file);
- sh "cc -c %s -o %s" c_file o_file
-
-(* XXX IMPLICIT *)
-let () =
- try goal_all ()
- with
- | Goal_result (Goal_failed msg) ->
- prerr_endline ("error: " ^ msg);
- exit 1
- | exn ->
- prerr_endline (Printexc.to_string exn);
- exit 1
+ sh "cd $builddir && cc -c %s -o %s" c_file o_file