Uh oh!
There was an error while loading. Please reload this page.
mk: Stop using cmake for compiler-rt - #34873
Conversation
rust-highfive
commented
Jul 17, 2016
r? @brson (rust_highfive has picked a reviewer for you, use r? to override) |
bors
commented
Jul 17, 2016
☔ The latest upstream changes (presumably #34606) made this pull request unmergeable. Please resolve the merge conflicts. |
c881d84 to
d6c0fc2Comparebrson
commented
Jul 18, 2016
@bors r+ |
bors
commented
Jul 18, 2016
📌 Commit d6c0fc2 has been approved by |
There was a problem hiding this comment.
rustc will fail to compile here. That argument to join there should be src, right?
d6c0fc2 to
c0ccbf1Comparealexcrichton
commented
Jul 18, 2016
@bors: r=brson c0ccbf1 |
bors
commented
Jul 19, 2016
⌛ Testing commit c0ccbf1 with merge 0ab82ae... |
bors
commented
Jul 19, 2016
💔 Test failed - auto-mac-32-opt |
c0ccbf1 to
7b68f17Comparealexcrichton
commented
Jul 19, 2016
@bors: r=brson |
bors
commented
Jul 19, 2016
📌 Commit 7b68f17 has been approved by |
alexcrichton
commented
Jul 19, 2016
@bors: p=1 Blocking the LLVM upgrade which is blocking MIR |
bors
commented
Jul 19, 2016
⌛ Testing commit 7b68f17 with merge c97c785... |
bors
commented
Jul 19, 2016
💔 Test failed - auto-win-msvc-64-opt |
We're not writing C code, so there's not really much of a reason for us to get warnings and errors from code we haven't written!
fb25076 to
f168d17Comparealexcrichton
commented
Jul 19, 2016
@bors: r=brson |
bors
commented
Jul 19, 2016
📌 Commit f168d17 has been approved by |
bors
commented
Jul 19, 2016
⌛ Testing commit f168d17 with merge c2d81d5... |
bors
commented
Jul 19, 2016
💔 Test failed - auto-linux-64-cross-freebsd |
bors
commented
Jul 20, 2016
⌛ Testing commit 0a66ae3 with merge 22abe50... |
bors
commented
Jul 20, 2016
💔 Test failed - auto-linux-64-x-android-t |
The compiler-rt build system has been a never ending cause of pain for Rust unfortunately: * The build system is very difficult to invoke and configure to only build compiler-rt, especially across platforms. * The standard build system doesn't actually do what we want, not working for some of our platforms and requiring a significant number of patches on our end which are difficult to apply when updating compiler-rt. * Compiling compiler-rt requires LLVM to be compiled, which... is a big dependency! This also means that over time compiler-rt is not guaranteed to build against older versions of LLVM (or newer versions), and we often want to work with multiple versions of LLVM simultaneously. The makefiles and rustbuild already know how to compile C code, the code here is far from the *only* C code we're compiling. This patch jettisons all logic to work with compiler-rt's build system and just goes straight to the source. We just list all files manually (copied from compiler-rt's lib/builtins/CMakeLists.txt) and compile them into an archive. It's likely that this means we'll fail to pick up new files when we upgrade compiler-rt, but that seems like a much less significant cost to pay than what we're currently paying. cc rust-lang#34400, first steps towards that
0a66ae3 to
ee6011fComparealexcrichton
commented
Jul 20, 2016
@bors: r=brson |
bors
commented
Jul 20, 2016
📌 Commit ee6011f has been approved by |
bors
commented
Jul 20, 2016
⌛ Testing commit ee6011f with merge cc548ca... |
bors
commented
Jul 20, 2016
💔 Test failed - auto-win-msvc-64-opt-rustbuild |
alexcrichton
commented
Jul 20, 2016
@bors: retry
|
bors
commented
Jul 21, 2016
⌛ Testing commit ee6011f with merge a33622c... |
bors
commented
Jul 21, 2016
💔 Test failed - auto-win-gnu-32-opt-rustbuild |
alexcrichton
commented
Jul 21, 2016
bors
commented
Jul 21, 2016
⌛ Testing commit ee6011f with merge e7c822c... |
…=brson mk: Stop using cmake for compiler-rt The compiler-rt build system has been a never ending cause of pain for Rust unfortunately: * The build system is very difficult to invoke and configure to only build compiler-rt, especially across platforms. * The standard build system doesn't actually do what we want, not working for some of our platforms and requiring a significant number of patches on our end which are difficult to apply when updating compiler-rt. * Compiling compiler-rt requires LLVM to be compiled, which... is a big dependency! This also means that over time compiler-rt is not guaranteed to build against older versions of LLVM (or newer versions), and we often want to work with multiple versions of LLVM simultaneously. The makefiles and rustbuild already know how to compile C code, the code here is far from the *only* C code we're compiling. This patch jettisons all logic to work with compiler-rt's build system and just goes straight to the source. We just list all files manually (copied from compiler-rt's lib/builtins/CMakeLists.txt) and compile them into an archive. It's likely that this means we'll fail to pick up new files when we upgrade compiler-rt, but that seems like a much less significant cost to pay than what we're currently paying. cc #34400, first steps towards that
bors
commented
Jul 21, 2016
💔 Test failed - auto-win-gnu-32-opt |
alexcrichton
commented
Jul 21, 2016
bors
commented
Jul 21, 2016
bors
commented
Jul 21, 2016
badboy
commented
Jul 21, 2016
\o/ That took quite some time |
eminence
commented
Jul 21, 2016
@alexcrichton wins another epic battle with @bors 🎉 |
Ms2ger
commented
Jul 23, 2016
What's up with the two gcc crates in Cargo.lock? |
alexcrichton
commented
Jul 23, 2016
@Ms2ger one's from git and one's from crates.io |
Remove CMake workaround This isn't needed anymore as we aren't using CMake to build compiler-rt since rust-lang#34873.
The compiler-rt build system has been a never ending cause of pain for Rust
unfortunately:
compiler-rt, especially across platforms.
some of our platforms and requiring a significant number of patches on our end
which are difficult to apply when updating compiler-rt.
dependency! This also means that over time compiler-rt is not guaranteed to
build against older versions of LLVM (or newer versions), and we often want to
work with multiple versions of LLVM simultaneously.
The makefiles and rustbuild already know how to compile C code, the code here is
far from the only C code we're compiling. This patch jettisons all logic to
work with compiler-rt's build system and just goes straight to the source. We
just list all files manually (copied from compiler-rt's
lib/builtins/CMakeLists.txt) and compile them into an archive.
It's likely that this means we'll fail to pick up new files when we upgrade
compiler-rt, but that seems like a much less significant cost to pay than what
we're currently paying.
cc #34400, first steps towards that