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

Build with --disable-elf-tls doesn't disable tls #32047

Closed
rillian opened this issue Mar 4, 2016 · 5 comments
Closed

Build with --disable-elf-tls doesn't disable tls #32047

rillian opened this issue Mar 4, 2016 · 5 comments
Labels
O-macos Operating system: macOS

Comments

@rillian
Copy link
Contributor

rillian commented Mar 4, 2016

Sorry for not testing this earlier, but the no-tls builds we were doing for gecko seem to be broken in 1.7.0.

If I set MACOSX_DEPLOYMENT_TARGET=10.7 and configure --disable-elf-tls as before, the resulting build uses thread-local storage:

 15:57:48 INFO - ld: targeted OS version does not support use of thread local variables in __ZN10sys_common11thread_info14current_thread20h4ec593d7ee7ff5477SsE for architecture x86_64

So it seems like --disable-elf-tls is broken. The target_thread_local changes in #30417 added MACOSX_DEPLOYMENT_TARGET-based detection. However, it seems building against a 10.6 target also doesn't work:

$ MACOSX_DEPLOYMENT_TARGET=10.6 ./configure --prefix=_dist/rustc --target=x86_64-apple-darwin,i686-apple-darwin --disable-docs
[...]
$ MACOSX_DEPLOYMENT_TARGET=10.6 make -j8
[...]
clang: error: invalid deployment target for -stdlib=libc++ (requires OS X 10.7 or later)

Is there an sdk I'm missing or has llvm dropped 10.6 support?

@rillian
Copy link
Contributor Author

rillian commented Mar 4, 2016

Building with MACOSX_DEPLOYMENT_TARGET=10.6 doesn't work in rust 1.6 either, so the issue is just that --disable-elf-tls doesn't work any more.

@alexcrichton
Copy link
Member

Yeah with #30417 the --disable-elf-tls option was basically obsoleted as the environment variable is the way to control it now. We may need to change how we compile/link LLVM to work with 10.6, however.

@rillian
Copy link
Contributor Author

rillian commented Mar 10, 2016

There's another proposal to stop supporting MacOS X 10.6 is Firefox this year, with a timeframe which should let us stay on rustc 1.6 for supporting those builds, so we may not need to address this.

https://groups.google.com/forum/#!topic/mozilla.dev.platform/gXZj0rQWEfI

Is anyone besides gecko supporting this target?

@alexcrichton
Copy link
Member

I don't believe so, no

@Mark-Simulacrum
Copy link
Member

configure still accepts this, but I don't think it's read anywhere else within Rust, since ripgrep doesn't return any results... I'm going to close this, but please do reopen if this is still a problem.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
O-macos Operating system: macOS
Projects
None yet
Development

No branches or pull requests

4 participants