Skip to content

rustc: Re-jigger -L and -l for MSYS compatibility #20382

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

Merged
merged 1 commit into from
Jan 2, 2015

Conversation

alexcrichton
Copy link
Member

As discovered in #20376, the MSYS shell will silently rewrite arguemnts that
look like unix paths into their windows path counterparts for compatibility, but
the recently added :kind syntax added to the -L flag does not allow for this
form of rewriting. This means that the syntax can be difficult to use at an MSYS
prompt, as well as causing tests to fail when run manuall right now.

This commit takes the other option presented in the original issue to prefix the
path with kind= instead of suffixing it with :kind. For consistence, the
-l flag is also now migrating to kind=name.

This is a breaking change due to the removal of behavior with -L. All code
using :kind should now pass kind= for -L arguments. This is not currently,
but will become, a breaking change for -l flags. The old name:kind syntax is
still accepted, but all code should update to kind=name.

[breaking-change]
Closes #20376

As discovered in rust-lang#20376, the MSYS shell will silently rewrite arguemnts that
look like unix paths into their windows path counterparts for compatibility, but
the recently added `:kind` syntax added to the `-L` flag does not allow for this
form of rewriting. This means that the syntax can be difficult to use at an MSYS
prompt, as well as causing tests to fail when run manuall right now.

This commit takes the other option presented in the original issue to prefix the
path with `kind=` instead of suffixing it with `:kind`. For consistence, the
`-l` flag is also now migrating to `kind=name`.

This is a breaking change due to the *removal* of behavior with `-L`. All code
using `:kind` should now pass `kind=` for `-L` arguments. This is not currently,
but will become, a breaking change for `-l` flags. The old `name:kind` syntax is
still accepted, but all code should update to `kind=name`.

[breaking-change]
Closes rust-lang#20376
@rust-highfive
Copy link
Contributor

r? @nick29581

(rust_highfive has picked a reviewer for you, use r? to override)

@alexcrichton
Copy link
Member Author

r? @brson

@rust-highfive rust-highfive assigned brson and unassigned nrc Jan 1, 2015
alexcrichton added a commit to alexcrichton/rust that referenced this pull request Jan 2, 2015
@bors bors merged commit a6f5b98 into rust-lang:master Jan 2, 2015
@alexcrichton alexcrichton deleted the isuse-20376 branch January 3, 2015 00:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Test failure: maketest: compiler-lookup-paths
5 participants