about summary refs log tree commit diff
path: root/src/rustllvm/ExecutionEngineWrapper.cpp
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2014-07-01 07:57:07 -0700
committerAlex Crichton <alex@alexcrichton.com>2014-07-05 12:45:42 -0700
commitdf4ea9c39a355e4cff425cca7d58e7758cb3461c (patch)
treed42b697e0fe9752583051193a4b72d4237182fbc /src/rustllvm/ExecutionEngineWrapper.cpp
parente44c2b9bbcb3ca7a7ca9e987b6727fd011f7b91a (diff)
downloadrust-df4ea9c39a355e4cff425cca7d58e7758cb3461c.tar.gz
rust-df4ea9c39a355e4cff425cca7d58e7758cb3461c.zip
rustc: Stop putting hashes in filenames by default
The compiler will no longer insert a hash or version into a filename by default.
Instead, all output is simply based off the crate name being compiled. For
example, a crate name of `foo` would produce the following outputs:

* bin => foo
* rlib => libfoo.rlib
* dylib => libfoo.{so,dylib} or foo.dll
* staticlib => libfoo.a

The old behavior has been moved behind a new codegen flag,
`-C extra-filename=<hash>`. For example, with the "extra filename" of `bar` and
a crate name of `foo`, the following outputs would be generated:

* bin => foo (same old behavior)
* rlib => libfoobar.rlib
* dylib => libfoobar.{so,dylib} or foobar.dll
* staticlib => libfoobar.a

The makefiles have been altered to pass a hash by default to invocations of
`rustc` so all installed rust libraries will have a hash in their filename. This
is done because the standard libraries are intended to be installed into
privileged directories such as /usr/local. Additionally, it involves very few
build system changes!

RFC: 0035-remove-crate-id
[breaking-change]
Diffstat (limited to 'src/rustllvm/ExecutionEngineWrapper.cpp')
0 files changed, 0 insertions, 0 deletions