New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use lld directly for Fuchsia target #55106

Merged
merged 1 commit into from Nov 6, 2018

Conversation

Projects
None yet
7 participants
@petrhosek
Contributor

petrhosek commented Oct 16, 2018

Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Oct 16, 2018

r? @matthewjasper

(rust_highfive has picked a reviewer for you, use r? to override)

@cramertj

This comment has been minimized.

Member

cramertj commented Oct 16, 2018

@bors r+

@bors

This comment has been minimized.

Contributor

bors commented Oct 16, 2018

📌 Commit 1ce8118 has been approved by cramertj

@cramertj cramertj requested a review from alexcrichton Oct 16, 2018

kennytm added a commit to kennytm/rust that referenced this pull request Oct 18, 2018

Rollup merge of rust-lang#55106 - petrhosek:fuchsia-lld, r=cramertj
Use lld directly for Fuchsia target

Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.

bors added a commit that referenced this pull request Oct 18, 2018

Auto merge of #55171 - kennytm:rollup, r=kennytm
Rollup of 19 pull requests

Successful merges:

 - #54349 ([rustdoc] Add lint for doc without codeblocks)
 - #54646 (improve documentation on std::thread::sleep)
 - #54933 (Cleanup the rest of codegen_llvm)
 - #54964 (Run both lldb and gdb tests)
 - #55016 (Deduplicate some code and compile-time values around vtables)
 - #55031 (Improve verify_llvm_ir config option)
 - #55050 (doc std::fmt: the Python inspiration is already mentioned in precedin…)
 - #55077 (rustdoc: Use dyn keyword when rendering dynamic traits)
 - #55080 (Detect if access to localStorage is forbidden by the user's browser)
 - #55090 (regression test for move out of borrow via pattern)
 - #55102 (resolve: Do not skip extern prelude during speculative resolution)
 - #55104 (Add test for #34229)
 - #55106 (Use lld directly for Fuchsia target)
 - #55122 (Cleanup mir/borrowck)
 - #55127 (Remove HybridBitSet::dummy)
 - #55128 (Fix LLVMRustInlineAsmVerify return type mismatch)
 - #55142 (miri: layout should not affect CTFE checks (outside of validation))
 - #55151 (Cleanup nll)
 - #55161 ([librustdoc] Disable spellcheck for search field)

Failed merges:

r? @ghost
@kennytm

This comment has been minimized.

Member

kennytm commented Oct 18, 2018

@bors r-

Failed in rollup #55171 (comment):

[00:45:56] warning: redundant linker flag specified for library `zircon`
[00:45:56] 
[00:46:04] error: linker `rust-lld` not found
[00:46:04]   = note: No such file or directory (os error 2)
[00:46:04] 
[00:46:04] error: aborting due to previous error

@petrhosek petrhosek force-pushed the petrhosek:fuchsia-lld branch from 1ce8118 to 544675f Oct 25, 2018

@cramertj

This comment has been minimized.

Member

cramertj commented Oct 26, 2018

@bors r+

@bors

This comment has been minimized.

Contributor

bors commented Oct 26, 2018

📌 Commit 544675f has been approved by cramertj

@bors

This comment has been minimized.

Contributor

bors commented Oct 27, 2018

⌛️ Testing commit 544675f with merge 3fc4261...

bors added a commit that referenced this pull request Oct 27, 2018

Auto merge of #55106 - petrhosek:fuchsia-lld, r=cramertj
Use lld directly for Fuchsia target

Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.
@bors

This comment has been minimized.

Contributor

bors commented Oct 27, 2018

💔 Test failed - status-travis

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Oct 27, 2018

The job dist-various-2 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:02:25] Removing intermediate container b9872184686c
[00:02:25] Step 5/27 : RUN apt-key adv --batch --yes --keyserver keyserver.ubuntu.com --recv-keys 74DA7924C5513486
[00:02:25]  ---> Running in 4ed48fc81ddc
[00:02:25] Warning: apt-key output should not be parsed (stdout is not a terminal)
[00:02:26] Executing: /tmp/apt-key-gpghome.NbDMdPQ4fx/gpg.1.sh --batch --yes --keyserver keyserver.ubuntu.com --recv-keys 74DA7924C5513486
[00:02:28] gpg: Total number processed: 1
[00:02:28] gpg:               imported: 1
[00:02:28]  ---> f2a1d559c2c2
[00:02:28] Removing intermediate container 4ed48fc81ddc
---
travis_time:end:075ee977:start=1540614972451610527,finish=1540614972461279292,duration=9668765
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:1d21293c
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:00594d36
travis_time:start:00594d36
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:19480533
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@kennytm

This comment has been minimized.

Member

kennytm commented Oct 27, 2018

[00:31:18] configure: error: Option '--enable-lld' is not recognized

@petrhosek petrhosek force-pushed the petrhosek:fuchsia-lld branch from 544675f to 8e2b70e Oct 27, 2018

@cramertj

This comment has been minimized.

Member

cramertj commented Oct 29, 2018

@bors r+

@bors

This comment has been minimized.

Contributor

bors commented Oct 29, 2018

📌 Commit 8e2b70e has been approved by cramertj

@petrhosek

This comment has been minimized.

Contributor

petrhosek commented Oct 29, 2018

This is still failing for me locally when building the container but I'm looking into it.

@cramertj

This comment has been minimized.

Member

cramertj commented Oct 29, 2018

@bors r-

Use lld directly for Fuchsia target
Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.

@petrhosek petrhosek force-pushed the petrhosek:fuchsia-lld branch from 8e2b70e to 3d27aca Nov 5, 2018

@petrhosek

This comment has been minimized.

Contributor

petrhosek commented Nov 5, 2018

This should be working now.

@alexcrichton

This comment has been minimized.

Member

alexcrichton commented Nov 5, 2018

@bors: r+ delegate+

@bors

This comment has been minimized.

Contributor

bors commented Nov 5, 2018

✌️ @petrhosek can now approve this pull request

@bors

This comment has been minimized.

Contributor

bors commented Nov 5, 2018

📌 Commit 3d27aca has been approved by alexcrichton

@bors

This comment has been minimized.

Contributor

bors commented Nov 6, 2018

⌛️ Testing commit 3d27aca with merge 8aa9267...

bors added a commit that referenced this pull request Nov 6, 2018

Auto merge of #55106 - petrhosek:fuchsia-lld, r=alexcrichton
Use lld directly for Fuchsia target

Fuchsia already uses lld as the default linker, so there's no reason
to always invoke it through Clang, instead we can simply invoke lld
directly and pass the set of flags that matches Clang.
@bors

This comment has been minimized.

Contributor

bors commented Nov 6, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 8aa9267 to master...

@bors bors merged commit 3d27aca into rust-lang:master Nov 6, 2018

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
homu Test successful
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment