Skip to content
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

Update backtrace-sys #71719

Merged
merged 1 commit into from
May 1, 2020
Merged

Update backtrace-sys #71719

merged 1 commit into from
May 1, 2020

Conversation

tmandry
Copy link
Member

@tmandry tmandry commented Apr 30, 2020

Diff:

This fixes an issue of libbacktrace never being built with debuginfo.

r? @Mark-Simulacrum
cc @alexcrichton

Diff:

- Don't look for old RUSTC_DEBUGINFO vars (rust-lang/backtrace-rs#313)
@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 30, 2020
@Mark-Simulacrum
Copy link
Member

Just to be sure, we didn't accidentally regress something here? i.e. we didn't stop putting debuginfo in unintentionally?

Regardless these are unused so @bors r+ rollup (can't make the situation worse)

@bors
Copy link
Contributor

bors commented Apr 30, 2020

📌 Commit 2bafb1b has been approved by Mark-Simulacrum

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 30, 2020
@tmandry
Copy link
Member Author

tmandry commented Apr 30, 2020

Just to be sure, we didn't accidentally regress something here? i.e. we didn't stop putting debuginfo in unintentionally?

It seems like we probably did regress at some point.

I'm not sure of the history myself, but from the code it looks like backtrace-sys's build was coupled with some details of how bootstrap works (which then got removed). This removes the coupling and makes it behave like any other crate, which bootstrap now supports.

@Mark-Simulacrum
Copy link
Member

Hm, well, we did switch away from custom handling via the rustc shim to proper setting of Cargo's environment variables I believe for the debuginfo, so we may not have regressed?

I don't personally care too much, I suspect it doesn't matter in practice.

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 30, 2020
Rollup of 8 pull requests

Successful merges:

 - rust-lang#71148 (Vec drop and truncate: drop using raw slice *mut [T])
 - rust-lang#71465 (Add a convenience method on `TyCtxt` for checking for thread locals)
 - rust-lang#71567 (Handle build completion message from Cargo)
 - rust-lang#71590 (MIR dump: print pointers consistently with Miri output)
 - rust-lang#71682 (Bump pulldown-cmark)
 - rust-lang#71688 (Allow `Downcast` projections unconditionally in const-checking)
 - rust-lang#71691 (Allow `Unreachable` terminators unconditionally in const-checking)
 - rust-lang#71719 (Update backtrace-sys)

Failed merges:

r? @ghost
@tmandry
Copy link
Member Author

tmandry commented Apr 30, 2020

I made the fix in rust-lang/backtrace-rs#313 because I noticed missing debuginfo for libbacktrace, and this fixes that. Whether it was always missing, I don't know.

@mati865
Copy link
Contributor

mati865 commented Apr 30, 2020

It seems like we probably did regress at some point.

Could #71060 be related to that?

@alexcrichton
Copy link
Member

I believe this is fixing a regression from #64316 that wasn't noticed until recently. Before that PR we used custom env vars to specify debuginfo to our wrapper script, and the build script in backtrace-sys, which was extracted long ago, tried to mirror this and respect the debuginfo choices of libstd. In #64316 we switched to using recently-added Cargo features to specify things like debuginfo, which causes Cargo to pass vars to build scripts conventionally rather than in a custom manner.

Basically 1.39.0 (first release with 7fdea7a) I think libbacktrace hasn't had debuginfo when it should (since libstd has line-tables debuginfo). This I believe fixes that regression where libbacktrace should have debuginfo again.

FWIW #71060 looks like debuginfo is just missing completely and/or something about symbolication is totally busted. That's probably a MinGW-specific (or Windows-specific?) issue about either finding debuginfo or dealing with maybe something like ASLR incorrectly.

@bors bors merged commit 59abc2a into rust-lang:master May 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants