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

Introduced llvm-libtool option #93629

Closed
wants to merge 1 commit into from
Closed

Conversation

catap
Copy link

@catap catap commented Feb 3, 2022

An idea to allow to control used libtool to build LLVM. Useful in attmept to build / bootsrap rust to old or wired systems.

@rust-highfive
Copy link
Collaborator

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @Mark-Simulacrum (or someone else) soon.

Please see the contribution instructions for more information.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 3, 2022
@Mark-Simulacrum
Copy link
Member

Is this environment variable standard (e.g., read by cmake itself or something?) -- otherwise, I would prefer that if it needs to be configured, we do so via config.toml rather than an ad-hoc environment variable.

@catap
Copy link
Author

catap commented Feb 3, 2022

@Mark-Simulacrum nope, it isn't a standard environment variable. Let me move to config when.

@catap catap changed the title Introduced CMAKE_LIBTOOL Introduced llvm-libtool option Feb 3, 2022
@catap
Copy link
Author

catap commented Feb 3, 2022

@Mark-Simulacrum like this?

An idea to allow to control used `libtool` to build LLVM. Useful in
attmept to build / bootsrap rust to old or wired systems.
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 4, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 4, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
@Mark-Simulacrum
Copy link
Member

Can you say more about the motivation for this? It looks like the intent is to use it to bootstrap on old (and no longer supported) systems, but there I would expect that you can place libtool in PATH and that should work well?

Since such systems will likely need a bunch of other patches applied to the rustc src tree anyway to enable successful builds, it's not clear to me this adds value -- and exposing an option generally not used seems like it adds complexity for all users, so I would prefer to avoid doing so.

catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 5, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
@catap
Copy link
Author

catap commented Feb 5, 2022

@Mark-Simulacrum yes, you're right that I'm trying to make rust works on old system. In my case it is macOS 10.6.

My goal is quite simple: bring rust to old macOS via MacPorts. MacPorts provides a lot of modern software to old system which includes modern clang :)

Why? Because rust is starting to be popular platform to write new software. For example mozjs.

Right now I've bring a bit old rust (1.42) to macOS 10.6 and I'm just bootstrapping it one-by-one, it requires some time :)

Patch? Yes, I needed it but it is releativle small. Differences with rustc-1.42.0-src is:

24 files changed, 125 insertions(+), 15 deletions(-)

@Mark-Simulacrum
Copy link
Member

My sense is that if you need to adjust a bunch of llvm building opts, it probably makes sense to build llvm out of tree and specify it with llvm-config - that'll let you configure more freely, and without as much pain trying to pipe options through here.

catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 6, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 6, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 6, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 6, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 6, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 7, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 7, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 7, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 8, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 8, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
@Mark-Simulacrum
Copy link
Member

I'm going to close this in favor of #93756. Thanks!

catap added a commit to catap/rust-legacy-bootstrap that referenced this pull request Feb 13, 2022
The better approach is backported to upstream as
rust-lang/rust#93629
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-review Status: Awaiting review from the assignee but also interested parties.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants