Auto merge of #117328 - lqd:cranelift-rocket, r=Mark-Simulacrum
pass `CODEGEN_BACKENDS` to docker The backends to build are now defined in the `CODEGEN_BACKENDS` env var. It's correctly set in CI, but wasn't passed to docker, hence cg_clif wasn't actually built in #81746. r? `@Kobzol:` I locally tried `CODEGEN_BACKENDS="cranelift" DEPLOY=1 src/ci/docker/run.sh dist-x86_64-linux` and this change was enough for `ci/run.sh` to read the env var. So I'll try as-is and we'll see.
This commit is contained in:
commit
1dfb6b162b
@ -1298,6 +1298,10 @@ impl Step for CodegenBackend {
|
||||
}
|
||||
|
||||
fn run(self, builder: &Builder<'_>) -> Option<GeneratedTarball> {
|
||||
if builder.config.dry_run() {
|
||||
return None;
|
||||
}
|
||||
|
||||
// This prevents rustc_codegen_cranelift from being built for "dist"
|
||||
// or "install" on the stable/beta channels. It is not yet stable and
|
||||
// should not be included.
|
||||
@ -1305,6 +1309,10 @@ impl Step for CodegenBackend {
|
||||
return None;
|
||||
}
|
||||
|
||||
if !builder.config.rust_codegen_backends.contains(&self.backend) {
|
||||
return None;
|
||||
}
|
||||
|
||||
if self.backend == "cranelift" {
|
||||
if !target_supports_cranelift_backend(self.compiler.host) {
|
||||
builder.info("target not supported by rustc_codegen_cranelift. skipping");
|
||||
@ -1343,12 +1351,15 @@ impl Step for CodegenBackend {
|
||||
let backends_dst = PathBuf::from("lib").join(&backends_rel);
|
||||
|
||||
let backend_name = format!("rustc_codegen_{}", backend);
|
||||
let mut found_backend = false;
|
||||
for backend in fs::read_dir(&backends_src).unwrap() {
|
||||
let file_name = backend.unwrap().file_name();
|
||||
if file_name.to_str().unwrap().contains(&backend_name) {
|
||||
tarball.add_file(backends_src.join(file_name), &backends_dst, 0o644);
|
||||
found_backend = true;
|
||||
}
|
||||
}
|
||||
assert!(found_backend);
|
||||
|
||||
Some(tarball.generate())
|
||||
}
|
||||
|
@ -288,6 +288,7 @@ docker \
|
||||
--env DIST_TRY_BUILD \
|
||||
--env PR_CI_JOB \
|
||||
--env OBJDIR_ON_HOST="$objdir" \
|
||||
--env CODEGEN_BACKENDS \
|
||||
--init \
|
||||
--rm \
|
||||
rust-ci \
|
||||
|
Loading…
x
Reference in New Issue
Block a user