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

x build lives blissfully assuming llvm does not exist #110692

Open
BoxyUwU opened this issue Apr 22, 2023 · 3 comments
Open

x build lives blissfully assuming llvm does not exist #110692

BoxyUwU opened this issue Apr 22, 2023 · 3 comments
Labels
C-bug Category: This is a bug. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)

Comments

@BoxyUwU
Copy link
Member

BoxyUwU commented Apr 22, 2023

When running x b I get the following output:
Warning: no codegen-backends config matched the requested path to build a codegen backend. Help: add backend to codegen-backends in config.toml.
after building stage1 library artifacts.
for reference here is my config.toml:

# Includes one of the default files in src/bootstrap/defaults
profile = "compiler"
changelog-seen = 2

[rust]
debug = true
deny-warnings = false
incremental = false

cc @jyn514

@BoxyUwU BoxyUwU added T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) C-bug Category: This is a bug. labels Apr 22, 2023
@jyn514
Copy link
Member

jyn514 commented Apr 22, 2023

cc #109610, #109642, @lenko-d. I am not sure the fix in #109642 was correct, but if you want to keep that approach, you should count LLVM as one of the possible codegen backends.

@KittyBorgX
Copy link
Member

I'd be happy to work on this but does #109642 have to be reverted before working on this? I'm just waiting on that one thing, else I can work on this along with those changes

@jyn514
Copy link
Member

jyn514 commented Jun 2, 2023

so, there are two parts to this issue. one is that codegen-backends acts as a hard-off switch: #109610
whereas i'd prefer it were a default, the same way that build.docs works. because it's a hard switch, the warning is necessary to tell people to enable it in config.toml.

the second part is that the warning is wrong for LLVM, which is built by default and not handled by codegen-backends; Steps which call ensure(CodegenBackends) or the default x build shouldn't give a warning, only explicitly calling x build rustc-codegen-cranelift from the command line. you could use something like the existing is_explicitly_invoked function to determine if that's the case; i think i might have deleted it recently, but you can dig it out of the git history.

i'd prefer to change the option from a hard off to a default, but i'd be okay with just fixing the warning too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Category: This is a bug. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Projects
None yet
Development

No branches or pull requests

3 participants