-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Pass -fPIC to native compiles on 32-bit #39523
Conversation
This is apparently a regression from 1.14.0 to 1.15.0. Previously we passed `-fPIC` to C compilers on i686 targets, but the `gcc` crate apparently [explicitly] didn't do this. I don't recall why that was avoided but it was [previously passed by the makefiles][mk] and this seems to have [caused a regression][regression] in Firefox, so this commit reverts back to passing `-fPIC`. [explicitly]: rust-lang/cc-rs@362bdf20 [mk]: https://github.com/rust-lang/rust/blob/c781fc4a/mk/cfg/i686-unknown-linux-gnu.mk#L11 [regression]: https://bugzilla.mozilla.org/show_bug.cgi?id=1336155
r? @aturon (rust_highfive has picked a reviewer for you, use r? to override) |
@bors: r+ |
📌 Commit f98f6c7 has been approved by |
Pass -fPIC to native compiles on 32-bit This is apparently a regression from 1.14.0 to 1.15.0. Previously we passed `-fPIC` to C compilers on i686 targets, but the `gcc` crate apparently [explicitly] didn't do this. I don't recall why that was avoided but it was [previously passed by the makefiles][mk] and this seems to have [caused a regression][regression] in Firefox, so this commit reverts back to passing `-fPIC`. [explicitly]: rust-lang/cc-rs@362bdf20 [mk]: https://github.com/rust-lang/rust/blob/c781fc4a/mk/cfg/i686-unknown-linux-gnu.mk#L11 [regression]: https://bugzilla.mozilla.org/show_bug.cgi?id=1336155
Pass -fPIC to native compiles on 32-bit This is apparently a regression from 1.14.0 to 1.15.0. Previously we passed `-fPIC` to C compilers on i686 targets, but the `gcc` crate apparently [explicitly] didn't do this. I don't recall why that was avoided but it was [previously passed by the makefiles][mk] and this seems to have [caused a regression][regression] in Firefox, so this commit reverts back to passing `-fPIC`. [explicitly]: rust-lang/cc-rs@362bdf20 [mk]: https://github.com/rust-lang/rust/blob/c781fc4a/mk/cfg/i686-unknown-linux-gnu.mk#L11 [regression]: https://bugzilla.mozilla.org/show_bug.cgi?id=1336155
@brson @alexcrichton Can we get this in 1.15.1? |
@bors p=1 (nominated for beta) |
⌛ Testing commit f98f6c7 with merge a20e288... |
💔 Test failed - status-travis |
|
… On Wed, Feb 8, 2017 at 7:39 AM Ms2ger ***@***.***> wrote:
---- [run-pass] run-pass/issue-24227.rs stdout ----
error: compilation failed!
status: exit code: 101
command: /Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/stage2/bin/rustc /Users/travis/build/rust-lang/rust/src/test/run-pass/issue-24227.rs -L /Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass --target=x86_64-apple-darwin --error-format json -L /Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass/issue-24227.stage2-x86_64-apple-darwin.run-pass.libaux -C prefer-dynamic -o /Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass/issue-24227.stage2-x86_64-apple-darwin -Crpath -O -Lnative=/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/native/rust-test-helpers
stdout:
------------------------------------------
------------------------------------------
stderr:
------------------------------------------
{"message":"linking with `cc` failed: exit code: 254","code":null,"level":"error","spans":[],"children":[{"message":"\"cc\" \"-m64\" \"-L\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/stage2/lib/rustlib/x86_64-apple-darwin/lib\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass/issue-24227.0.o\" \"-o\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass/issue-24227.stage2-x86_64-apple-darwin\" \"-Wl,-dead_strip\" \"-nodefaultlibs\" \"-L\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass\" \"-L\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass/issue-24227.stage2-x86_64-apple-darwin.run-pass.libaux\" \"-L\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/native/rust-test-helpers\" \"-L\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/stage2/lib/rustlib/x86_64-apple-darwin/lib\" \"-L\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/stage2/lib/rustlib/x86_64-apple-darwin/lib\" \"-l\" \"std-babe254b64e6389b\" \"/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/stage2/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-a156453e4a4418dc.rlib\" \"-l\" \"System\" \"-l\" \"pthread\" \"-l\" \"c\" \"-l\" \"m\" ***@***.***_path/../../stage2/lib/rustlib/x86_64-apple-darwin/lib\" \"-Wl,-rpath,/usr/local/lib/rustlib/x86_64-apple-darwin/lib\"","code":null,"level":"note","spans":[],"children":[],"rendered":null},{"message":"ld: warning: directory not found for option '-L/Users/travis/build/rust-lang/rust/build/x86_64-apple-darwin/test/run-pass/issue-24227.stage2-x86_64-apple-darwin.run-pass.libaux'\nclang: error: unable to execute command: Segmentation fault: 11\nclang: error: linker command failed due to signal (use -v to see invocation)\n","code":null,"level":"note","spans":[],"children":[],"rendered":null}],"rendered":null}
{"message":"aborting due to previous error","code":null,"level":"error","spans":[],"children":[],"rendered":null}
------------------------------------------
thread '[run-pass] run-pass/issue-24227.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:2575
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39523 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAD95EqSMsKcsoTfhakguUcwRQ8TX2hBks5raeG0gaJpZM4L3Dub>
.
|
⌛ Testing commit f98f6c7 with merge 14bc58f... |
💔 Test failed - status-travis |
… On Wed, Feb 8, 2017 at 10:11 AM, bors ***@***.***> wrote:
💔 Test failed - status-travis
<https://travis-ci.org/rust-lang/rust/builds/199665906>
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#39523 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/AAD95G1INOCucFT2p0hs-kdZ-dqd8M8zks5ragU6gaJpZM4L3Dub>
.
|
Pass -fPIC to native compiles on 32-bit This is apparently a regression from 1.14.0 to 1.15.0. Previously we passed `-fPIC` to C compilers on i686 targets, but the `gcc` crate apparently [explicitly] didn't do this. I don't recall why that was avoided but it was [previously passed by the makefiles][mk] and this seems to have [caused a regression][regression] in Firefox, so this commit reverts back to passing `-fPIC`. [explicitly]: rust-lang/cc-rs@362bdf20 [mk]: https://github.com/rust-lang/rust/blob/c781fc4a/mk/cfg/i686-unknown-linux-gnu.mk#L11 [regression]: https://bugzilla.mozilla.org/show_bug.cgi?id=1336155
☀️ Test successful - status-appveyor, status-travis |
This is a smaller and more targeted backport of rust-lang#39523 which drives to the heart of the issue, just passing `-fPIC` on 32-bit platforms. More rationale for this commit can be found in rust-lang#39523 itself.
Backported in #39667 |
This is a smaller and more targeted backport of rust-lang#39523 which drives to the heart of the issue, just passing `-fPIC` on 32-bit platforms. More rationale for this commit can be found in rust-lang#39523 itself.
Use a custom build of rust 1.15.1 with an additional bump of the gcc crate to 0.3.43 to pass -fPIC to the C compiler on i686-linux. While 1.15.1 was tagged today, there's some question as to whether it would be released from the tag or if the tag would be moved to incorporate this fix. This works around the issue with text segment relocations with the 1.15.0 stable release. For more information see the upstream issue at rust-lang/rust#39523 MozReview-Commit-ID: 83IxtJeJxlh --HG-- extra : rebase_source : 8deda9058c77a98c65a46949768702c56296d9d4
Use a custom build of rust 1.15.1 with an additional bump of the gcc crate to 0.3.43 to pass -fPIC to the C compiler on i686-linux. While 1.15.1 was tagged today, there's some question as to whether it would be released from the tag or if the tag would be moved to incorporate this fix. This works around the issue with text segment relocations with the 1.15.0 stable release. For more information see the upstream issue at rust-lang/rust#39523 MozReview-Commit-ID: 83IxtJeJxlh
Use a custom build of rust 1.15.1 with an additional bump of the gcc crate to 0.3.43 to pass -fPIC to the C compiler on i686-linux. While 1.15.1 was tagged today, there's some question as to whether it would be released from the tag or if the tag would be moved to incorporate this fix. This works around the issue with text segment relocations with the 1.15.0 stable release. For more information see the upstream issue at rust-lang/rust#39523 MozReview-Commit-ID: 83IxtJeJxlh UltraBlame original commit: 62adf4084bae5e2f6d49cd3c4c6cbfbc2691a2aa
Use a custom build of rust 1.15.1 with an additional bump of the gcc crate to 0.3.43 to pass -fPIC to the C compiler on i686-linux. While 1.15.1 was tagged today, there's some question as to whether it would be released from the tag or if the tag would be moved to incorporate this fix. This works around the issue with text segment relocations with the 1.15.0 stable release. For more information see the upstream issue at rust-lang/rust#39523 MozReview-Commit-ID: 83IxtJeJxlh UltraBlame original commit: 62adf4084bae5e2f6d49cd3c4c6cbfbc2691a2aa
Use a custom build of rust 1.15.1 with an additional bump of the gcc crate to 0.3.43 to pass -fPIC to the C compiler on i686-linux. While 1.15.1 was tagged today, there's some question as to whether it would be released from the tag or if the tag would be moved to incorporate this fix. This works around the issue with text segment relocations with the 1.15.0 stable release. For more information see the upstream issue at rust-lang/rust#39523 MozReview-Commit-ID: 83IxtJeJxlh UltraBlame original commit: 62adf4084bae5e2f6d49cd3c4c6cbfbc2691a2aa
This is apparently a regression from 1.14.0 to 1.15.0. Previously we
passed
-fPIC
to C compilers on i686 targets, but thegcc
crateapparently explicitly didn't do this. I don't recall why that was
avoided but it was previously passed by the makefiles and this
seems to have caused a regression in Firefox, so this
commit reverts back to passing
-fPIC
.