about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPatrick Walton <pcwalton@mimiga.net>2010-08-02 13:26:35 -0700
committerPatrick Walton <pcwalton@mimiga.net>2010-08-02 13:26:35 -0700
commit559e1e7e01cd5ecf42a0157b1a2bf0ef53ad312c (patch)
tree63a525f03ce1e69d2dd2728fdb3b454c32b411b6
parente85f6ca4d39dbca8e3c43a58d41254199af238e6 (diff)
downloadrust-559e1e7e01cd5ecf42a0157b1a2bf0ef53ad312c.tar.gz
rust-559e1e7e01cd5ecf42a0157b1a2bf0ef53ad312c.zip
Use a better heuristic to determine whether we're on a Mac, issue 69
-rw-r--r--src/boot/driver/main.ml8
1 files changed, 3 insertions, 5 deletions
diff --git a/src/boot/driver/main.ml b/src/boot/driver/main.ml
index 9af7ee0b7a7..9049546cca7 100644
--- a/src/boot/driver/main.ml
+++ b/src/boot/driver/main.ml
@@ -8,11 +8,9 @@ let _ =
 
 let (targ:Common.target) =
   match Sys.os_type with
-      "Unix" ->
-        (* FIXME (issue #69): this is an absurd heuristic. *)
-        if Sys.file_exists "/System/Library"
-        then MacOS_x86_macho
-        else Linux_x86_elf
+      "Unix" when Unix.system "test `uname -s` = 'Darwin'" = Unix.WEXITED 0 ->
+        MacOS_x86_macho
+    | "Unix" -> Linux_x86_elf
     | "Win32" -> Win32_x86_pe
     | "Cygwin" -> Win32_x86_pe
     | _ -> Linux_x86_elf