Skip to content

Conversation

if [[ " \${ARGS[@]} " == *'--target'* ]]; then
if ! [[ " \${ARGS[@]} " =~ --target(=| )$(map_rust_target(p)) ]]; then
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected $(map_rust_target(p)))" >&2
if ! [[ " \${ARGS[@]} " =~ --target(=| )\${CARGO_BUILD_TARGET} ]]; then
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also below

@ericphanson
Copy link
Author

hm, I'm getting

[00:11:46]   error: Error loading target specification: Could not find specification for target "${CARGO_BUILD_TARGET}". Run `rustc --print target-list` for a list of built-in targets

in https://buildkite.com/julialang/yggdrasil/builds/19293#019612bb-7055-4dd9-b309-95acdc4cdd2c/684-846 using this PR, is it somehow passing that literal string instead of interpolating?

src/Runner.jl Outdated
if ! [[ " \${ARGS[@]} " =~ --target(=| )$(map_rust_target(p)) ]]; then
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected $(map_rust_target(p)))" >&2
if ! [[ " \${ARGS[@]} " =~ --target(=| )\${CARGO_BUILD_TARGET} ]]; then
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected \${CARGO_BUILD_TARGET}, which is `CARGO_BUILD_TARGET`)" >&2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't use backticks, they're doing command substitution inside double quotes

@ericphanson
Copy link
Author

ah figured it out with the help of shell syntax highlighting (copied the snippet into a new textfile..). Single quotes don't allow env interpolation.

if ! [[ " \${ARGS[@]} " =~ --target(=| )$(map_rust_target(p)) ]]; then
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected $(map_rust_target(p)))" >&2
if ! [[ " \${ARGS[@]} " =~ --target(=| )\${CARGO_BUILD_TARGET} ]]; then
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected \${CARGO_BUILD_TARGET}, which is CARGO_BUILD_TARGET)" >&2
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But I don't understand this message now. It'd read something like

(Expected x86_64-unknown-linux-gnu, which is CARGO_BUILD_TARGET)

Copy link
Author

@ericphanson ericphanson Apr 8, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wanted to say why it expects that. Would this be better?

Suggested change
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected \${CARGO_BUILD_TARGET}, which is CARGO_BUILD_TARGET)" >&2
echo "Attempting to invoke targeted 'rustc' wrapper with a different target! (Expected CARGO_BUILD_TARGET=\${CARGO_BUILD_TARGET})" >&2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants