let native () =
List.iter (lablgl_mls @ togl_mls @ glut_mls) ~f:
(fun file -> exe !ocamlopt ["-c"; file^".ml"]);
List.iter ["lablgl", lablgl_mls, "";
"togl", togl_mls, tk_libs;
"lablglut", glut_mls, glut_libs]
~f:begin fun (lib, mls,libs) ->
let cmxs = List.map mls ~f:(fun nm -> nm ^".cmx") in
exe !ocamlopt (["-a -o"; lib^".cmxa"; "-cclib -l"^lib;
"-cclib \""^libs^" "^gl_libs^"\""] @ cmxs);
List.iter mls ~f:(fun nm -> may_remove (nm ^ ".obj"); may_remove (nm ^ ".o"))
end