about summary refs log tree commit diff
path: root/src/liblibc
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2014-04-02 18:27:12 -0700
committerAlex Crichton <alex@alexcrichton.com>2014-04-05 17:53:44 -0700
commit38f7a1b41b0ff9c1bcaec9a892c8ffb64ad6139f (patch)
treeddb952d1e048b97812493a3c8484e10f4353f8f4 /src/liblibc
parent0459ee77d0c764cc27950465cb19053e1456cc95 (diff)
downloadrust-38f7a1b41b0ff9c1bcaec9a892c8ffb64ad6139f.tar.gz
rust-38f7a1b41b0ff9c1bcaec9a892c8ffb64ad6139f.zip
rustc: Pass --enable-long-section-names to gcc
This was quite a curious bug on windows, and the details can be found in the
comment I added to src/librustc/back/link.rs
Diffstat (limited to 'src/liblibc')
-rw-r--r--src/liblibc/lib.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/liblibc/lib.rs b/src/liblibc/lib.rs
index 00aee1d17dc..fc7044ed88a 100644
--- a/src/liblibc/lib.rs
+++ b/src/liblibc/lib.rs
@@ -75,6 +75,8 @@
 #![allow(missing_doc)]
 #![allow(uppercase_variables)]
 
+#![feature(link_args)] // NOTE: remove after stage0
+
 #[cfg(test)] extern crate std;
 #[cfg(test)] extern crate test;
 #[cfg(test)] extern crate native;
@@ -197,6 +199,11 @@ pub use funcs::posix88::unistd::{rmdir, unlink, write};
 #[link(name = "m")]
 extern {}
 
+// NOTE: remove this after a stage0 snap
+#[cfg(stage0, windows)]
+#[link_args = "-Wl,--enable-long-section-names"]
+extern {}
+
 /// A wrapper for a nullable pointer. Don't use this except for interacting
 /// with libc. Basically Option, but without the dependance on libstd.
 // If/when libprim happens, this can be removed in favor of that