about summary refs log tree commit diff
path: root/src/libsync/lib.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2014-07-05 22:51:38 +0000
committerbors <bors@rust-lang.org>2014-07-05 22:51:38 +0000
commitc3ef04be5589901e7f3d9428ebe8f1eb2bdca7e4 (patch)
tree38550cd6dbb5daa27969c3f05b3e46c01ba4f2d0 /src/libsync/lib.rs
parentb8ef5cf1310a7b1e31d0993885d867a6804597ad (diff)
parent56f71015515490b65b5fbb46ff0bbc7d7af82450 (diff)
downloadrust-c3ef04be5589901e7f3d9428ebe8f1eb2bdca7e4.tar.gz
rust-c3ef04be5589901e7f3d9428ebe8f1eb2bdca7e4.zip
auto merge of #15319 : alexcrichton/rust/no-crate-id, r=brson
This is an implementation of [RFC 35](https://github.com/rust-lang/rfcs/blob/master/active/0035-remove-crate-id.md).

The summary for this PR is the same as that of the RFC, with one addendum:


* Removes the `#[crate_id]` attribute and knowledge of versions from rustc.
* Added a `#[crate_name]` attribute similar to the old `#[crate_id]` attribute
* Output filenames no longer have versions or hashes
* Symbols no longer have versions (they still have hashes)
* A new flag, `--extern`, is used to override searching for external crates
* A new flag, `-C metadata=foo`, used when hashing symbols
* [added] An old flag, `--crate-name`, was re purposed to specify the crate name from the command line.

I tried to maintain backwards compatibility wherever possible (with warnings being printed). If I missed anywhere, however, please let me know!

[breaking-change]

Closes #14468
Closes #14469
Closes #14470
Closes #14471
Diffstat (limited to 'src/libsync/lib.rs')
-rw-r--r--src/libsync/lib.rs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libsync/lib.rs b/src/libsync/lib.rs
index 4f6d1a261c4..c0d62caaa6b 100644
--- a/src/libsync/lib.rs
+++ b/src/libsync/lib.rs
@@ -17,7 +17,8 @@
 //! use this crate specifically. Instead, its functionality is reexported
 //! through `std::sync`.
 
-#![crate_id = "sync#0.11.0"]
+#![crate_id = "sync#0.11.0"] // NOTE: remove after stage0 snap
+#![crate_name = "sync"]
 #![experimental]
 #![crate_type = "rlib"]
 #![crate_type = "dylib"]
@@ -30,6 +31,7 @@
 #![feature(phase, globs, macro_rules, unsafe_destructor)]
 #![deny(missing_doc)]
 #![no_std]
+#![allow(unused_attribute)] // NOTE: remove after stage0
 
 #[phase(plugin, link)] extern crate core;
 extern crate alloc;