rustc: Simplify getting sysroot library directory by petrochenkov · Pull Request #129418 · rust-lang/rust (original) (raw)
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters
[ Show hidden characters]({{ revealButtonHref }})
rustbot added S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.
Relevant to the compiler team, which will review and decide on the PR/issue.
labels
bors added S-waiting-on-bors
Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
and removed S-waiting-on-review
Status: Awaiting review from the assignee but also interested parties.
labels
jieyouxu added a commit to jieyouxu/rust that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
bors added a commit to rust-lang-ci/rust that referenced this pull request
Rollup of 7 pull requests
Successful merges:
- rust-lang#126985 (Implement
-Z embed-source
(DWARFv5 source code embedding extension)) - rust-lang#128507 (Migrate
libtest-thread-limit
run-make
test to rmake) - rust-lang#128935 (More work on
zstd
compression) - rust-lang#129190 (Add f16 and f128 to tests/ui/consts/const-float-bits-conv.rs)
- rust-lang#129295 (Build
library/profiler_builtins
fromci-llvm
if appropriate) - rust-lang#129416 (library: Move unstable API of new_uninit to new features)
- rust-lang#129418 (rustc: Simplify getting sysroot library directory)
r? @ghost
@rustbot
modify labels: rollup
jieyouxu added a commit to jieyouxu/rust that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
bors added a commit to rust-lang-ci/rust that referenced this pull request
Rollup of 5 pull requests
Successful merges:
- rust-lang#126985 (Implement
-Z embed-source
(DWARFv5 source code embedding extension)) - rust-lang#128935 (More work on
zstd
compression) - rust-lang#129190 (Add f16 and f128 to tests/ui/consts/const-float-bits-conv.rs)
- rust-lang#129416 (library: Move unstable API of new_uninit to new features)
- rust-lang#129418 (rustc: Simplify getting sysroot library directory)
r? @ghost
@rustbot
modify labels: rollup
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
bors added a commit to rust-lang-ci/rust that referenced this pull request
…kingjubilee
Rollup of 10 pull requests
Successful merges:
- rust-lang#127021 (Add target support for RTEMS Arm)
- rust-lang#128467 (Detect
*
operator on!Sized
expression) - rust-lang#128735 (Add a special case for
CStr
/CString
in theimproper_ctypes
lint) - rust-lang#129416 (library: Move unstable API of new_uninit to new features)
- rust-lang#129418 (rustc: Simplify getting sysroot library directory)
- rust-lang#129429 (Print the generic parameter along with the variance in dumps.)
- rust-lang#129430 (rustdoc: show exact case-sensitive matches first)
- rust-lang#129449 (Put Pin::as_deref_mut in impl Pin / rearrange Pin methods)
- rust-lang#129481 (Update
compiler_builtins
to0.1.121
) - rust-lang#129482 (Add myself to the review rotation for libs)
r? @ghost
@rustbot
modify labels: rollup
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
bors added a commit to rust-lang-ci/rust that referenced this pull request
tgross35 added a commit to tgross35/rust that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
bors added a commit to rust-lang-ci/rust that referenced this pull request
Rollup of 8 pull requests
Successful merges:
- rust-lang#126985 (Implement
-Z embed-source
(DWARFv5 source code embedding extension)) - rust-lang#128935 (More work on
zstd
compression) - rust-lang#129134 (bootstrap: improve error recovery flags to curl)
- rust-lang#129190 (Add f16 and f128 to tests/ui/consts/const-float-bits-conv.rs)
- rust-lang#129416 (library: Move unstable API of new_uninit to new features)
- rust-lang#129418 (rustc: Simplify getting sysroot library directory)
- rust-lang#129459 (handle stage0
cargo
andrustc
separately) - rust-lang#129511 (Update minifier to 0.3.1)
r? @ghost
@rustbot
modify labels: rollup
workingjubilee added a commit to workingjubilee/rustc that referenced this pull request
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.
bors added a commit to rust-lang-ci/rust that referenced this pull request
…kingjubilee
Rollup of 9 pull requests
Successful merges:
- rust-lang#126985 (Implement
-Z embed-source
(DWARFv5 source code embedding extension)) - rust-lang#127922 (Add unsafe to extern blocks in style guide)
- rust-lang#128731 (simd_shuffle intrinsic: allow argument to be passed as vector)
- rust-lang#128935 (More work on
zstd
compression) - rust-lang#128942 (miri weak memory emulation: put previous value into initial store buffer)
- rust-lang#129418 (rustc: Simplify getting sysroot library directory)
- rust-lang#129490 (Add Trusty OS as tier 3 target)
- rust-lang#129559 (float types: document NaN bit pattern guarantees)
- rust-lang#129642 (Bump backtrace to rust-lang/backtrace@fc37b22)
r? @ghost
@rustbot
modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request
Rollup of 9 pull requests
Successful merges:
- rust-lang#126985 (Implement
-Z embed-source
(DWARFv5 source code embedding extension)) - rust-lang#127922 (Add unsafe to extern blocks in style guide)
- rust-lang#128731 (simd_shuffle intrinsic: allow argument to be passed as vector)
- rust-lang#128935 (More work on
zstd
compression) - rust-lang#128942 (miri weak memory emulation: put previous value into initial store buffer)
- rust-lang#129418 (rustc: Simplify getting sysroot library directory)
- rust-lang#129490 (Add Trusty OS as tier 3 target)
- rust-lang#129536 (Add
f16
andf128
inline ASM support foraarch64
) - rust-lang#129559 (float types: document NaN bit pattern guarantees)
r? @ghost
@rustbot
modify labels: rollup
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request
Rollup merge of rust-lang#129418 - petrochenkov:libsearch2, r=jieyouxu
rustc: Simplify getting sysroot library directory
It was very non-obvious that sess.target_tlib_path
, make_target_lib_path(...)
, and sess.target_filesearch(...).search_paths()
result in the same sysroot library directory paths.
They are however, indeed the same, because sess.target_tlib_path
is initialized to make_target_lib_path(...)
on Session
creation, and they are used interchangeably.
There are still some redundant calls to make_target_lib_path
and other inconsistent ways to obtain sysroot directories, but fixing that requires some behavior changes, while this PR is a pure refactoring.
Some places in the compiler even disagree on the number of sysroots - 1 (explicit --sysroot
or default sysroot), 2 (explicit --sysroot
and default sysroot), or an unclear number of sysroot_candidates
every of which is considered.
The logic currently using sess.target_tlib_path
or equivalents assumes one sysroot.