about summary refs log tree commit diff
diff options
context:
space:
mode:
authorTim Chevalier <catamorphism@gmail.com>2012-06-07 09:25:34 -0700
committerTim Chevalier <catamorphism@gmail.com>2012-06-07 09:25:34 -0700
commitd8c16df153a236edf047fe60bf76b98e95611655 (patch)
tree90b38d4df05e0b2906d937419d9c163ffe7318a3
parent3cbd1e221ec9625e7879adb3fe406efd082cb60d (diff)
parent8f5f45bfe143b667a4d3bb41963ed130b13fdb7f (diff)
downloadrust-d8c16df153a236edf047fe60bf76b98e95611655.tar.gz
rust-d8c16df153a236edf047fe60bf76b98e95611655.zip
Merge pull request #2523 from crabtw/freebsd
fix compiletest deadlock on freebsd
-rw-r--r--mk/platform.mk6
-rw-r--r--src/rustc/back/link.rs13
2 files changed, 7 insertions, 12 deletions
diff --git a/mk/platform.mk b/mk/platform.mk
index 7d2039acdea..6208cb54638 100644
--- a/mk/platform.mk
+++ b/mk/platform.mk
@@ -33,12 +33,6 @@ ifneq ($(findstring freebsd,$(CFG_OSTYPE)),)
   CFG_DEF_SUFFIX := .bsd.def
   CFG_INSTALL_NAME =
   CFG_PERF_TOOL := /usr/bin/time
-
-  # FIXME (1825): We're deadlocking on FreeBSD
-  ifndef RUST_THREADS
-    RUST_THREADS=1
-    export RUST_THREADS
-  endif
 endif
 
 ifneq ($(findstring linux,$(CFG_OSTYPE)),)
diff --git a/src/rustc/back/link.rs b/src/rustc/back/link.rs
index c3e1b4da772..c9f1b706893 100644
--- a/src/rustc/back/link.rs
+++ b/src/rustc/back/link.rs
@@ -645,12 +645,13 @@ fn link_binary(sess: session,
     }
 
     if sess.targ_cfg.os == session::os_freebsd {
-        cc_args += ["-lrt", "-L/usr/local/lib", "-lexecinfo",
-                     "-L/usr/local/lib/gcc46",
-                     "-L/usr/local/lib/gcc44", "-lstdc++",
-                     "-Wl,-z,origin",
-                     "-Wl,-rpath,/usr/local/lib/gcc46",
-                     "-Wl,-rpath,/usr/local/lib/gcc44"];
+        cc_args += ["-pthread", "-lrt",
+                    "-L/usr/local/lib", "-lexecinfo",
+                    "-L/usr/local/lib/gcc46",
+                    "-L/usr/local/lib/gcc44", "-lstdc++",
+                    "-Wl,-z,origin",
+                    "-Wl,-rpath,/usr/local/lib/gcc46",
+                    "-Wl,-rpath,/usr/local/lib/gcc44"];
     }
 
     // OS X 10.6 introduced 'compact unwind info', which is produced by the