comparison src/compiler.sml @ 832:249740301a0a

Fix pathmap bug; expose lower-level heap manipulation from C
author Adam Chlipala <adamc@hcoop.net>
date Sun, 31 May 2009 13:43:02 -0400
parents dc3fc3f3b834
children 74e9e7642f08
comparison
equal deleted inserted replaced
831:5e1a4b12c83a 832:249740301a0a
411 filterUrl = #filterUrl old @ #filterUrl new, 411 filterUrl = #filterUrl old @ #filterUrl new,
412 filterMime = #filterMime old @ #filterMime new, 412 filterMime = #filterMime old @ #filterMime new,
413 sources = #sources new @ #sources old 413 sources = #sources new @ #sources old
414 } 414 }
415 in 415 in
416 foldr (fn (fname, job) => merge (job, parseUrp' fname)) job (!libs) 416 foldr (fn (fname, job) => merge (job, pu fname)) job (!libs)
417 end 417 end
418 418
419 fun parsePkind s = 419 fun parsePkind s =
420 case s of 420 case s of
421 "all" => Settings.Any 421 "all" => Settings.Any
874 fun compileC {cname, oname, ename, libs, profile, debug, link = link'} = 874 fun compileC {cname, oname, ename, libs, profile, debug, link = link'} =
875 let 875 let
876 val urweb_o = clibFile "urweb.o" 876 val urweb_o = clibFile "urweb.o"
877 val driver_o = clibFile "driver.o" 877 val driver_o = clibFile "driver.o"
878 878
879 val compile = "gcc " ^ Config.gccArgs ^ " -Wstrict-prototypes -Werror -O3 -I include -c " ^ cname ^ " -o " ^ oname 879 val compile = "gcc " ^ Config.gccArgs ^ " -Wstrict-prototypes -Werror -O3 -I " ^ Config.includ
880 ^ " -c " ^ cname ^ " -o " ^ oname
880 val link = "gcc -Werror -O3 -lm -lmhash -pthread " ^ libs ^ " " ^ urweb_o ^ " " ^ oname ^ " " ^ driver_o ^ " -o " ^ ename 881 val link = "gcc -Werror -O3 -lm -lmhash -pthread " ^ libs ^ " " ^ urweb_o ^ " " ^ oname ^ " " ^ driver_o ^ " -o " ^ ename
881 882
882 val (compile, link) = 883 val (compile, link) =
883 if profile then 884 if profile then
884 (compile ^ " -pg", link ^ " -pg") 885 (compile ^ " -pg", link ^ " -pg")