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

fix: AIX searches dynamic libraries in LIBPATH. #11968

Merged
merged 1 commit into from
May 25, 2023

Conversation

bzEq
Copy link
Contributor

@bzEq bzEq commented Apr 13, 2023

What does this PR try to resolve?

On IBM AIX machines people have encountered issues in compiletest and rustc's bootstrap builder. They haven't encountered any in cargo. This PR is made for avoiding potential failures in the future in cargo.

It's documented in https://www.ibm.com/support/pages/libpath-environment-variables-aix-platforms:

The LIBPATH environment variable tells AIX applications where to find shared libraries when located in a different directories than those specified in the header section of the executable.

See also the counterpart in rust-lang/rust#109526

How to verify and test this in Cargo's CI?

This is indeed an issue. At IBM people are maintaining a buildbot since GitHub Action doesn't support AIX yet.

@rustbot
Copy link
Collaborator

rustbot commented Apr 13, 2023

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @weihanglo (or someone else) soon.

Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (S-waiting-on-review and S-waiting-on-author) stays updated, invoking these commands when appropriate:

  • @rustbot author: the review is finished, PR author should check the comments and take action accordingly
  • @rustbot review: the author is ready for a review, this PR will be queued again in the reviewer's queue

@rustbot rustbot added A-documenting-cargo-itself Area: Cargo's documentation S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 13, 2023
Copy link
Member

@weihanglo weihanglo left a comment

Choose a reason for hiding this comment

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

Thank you for posting this pull request. However, I am not familiar with AIX operating system and have got some questions.

  • Where did this change come from? I haven't seen any related issue in our issue tracker. We also encourage people to open an issue before filing a pull request. It would be easier to follow if we could have a discussion first.
  • How to verify and test this in our CI? We don't have any IBM AIX machine at this moment. powerpc64-ibm-aix is in tier-3 support only. That implies no guarantee of host tool availability at all. I am not sure how to move forward under this circumstance.

@weihanglo weihanglo added S-waiting-on-author Status: The marked PR is awaiting some action (such as code changes) from the PR author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 17, 2023
@bzEq
Copy link
Contributor Author

bzEq commented May 25, 2023

Hi @weihanglo

Where did this change come from?

Currently, we haven't encountered an issue in cargo without this change. But we indeed have encountered issue in compiletest and rustc's bootstrap builder. So we want to avoid potential failures in the future in cargo.

How to verify and test this in our CI? We don't have any IBM AIX machine at this moment.

This is indeed an issue for us. We are maintaining a buildbot in IBM internally since current github action doesn't support AIX yet.

I am not sure how to move forward under this circumstance.

I think this change is rather trivial, and we have already posted some similar PRs, see rust-lang/rust#109526.

Copy link
Member

@weihanglo weihanglo left a comment

Choose a reason for hiding this comment

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

Thanks for the clarification!

This is indeed the information I want, and pardon my asking many questions. I tend to leave breadcrumbs even for a trivial patch like this one. That helps a lot when tracing back for a change.

Let me modify the PR description a bit and I'll merge it. Thanks again!

@weihanglo weihanglo changed the title AIX searches dynamic libraries in LIBPATH. fix: AIX searches dynamic libraries in LIBPATH. May 25, 2023
@weihanglo
Copy link
Member

@bors r+

@bors
Copy link
Collaborator

bors commented May 25, 2023

📌 Commit c5ed776 has been approved by weihanglo

It is now in the queue for this repository.

@bors 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-author Status: The marked PR is awaiting some action (such as code changes) from the PR author. labels May 25, 2023
@bors
Copy link
Collaborator

bors commented May 25, 2023

⌛ Testing commit c5ed776 with merge d90ff55...

@bors
Copy link
Collaborator

bors commented May 25, 2023

☀️ Test successful - checks-actions
Approved by: weihanglo
Pushing d90ff55 to master...

@bors bors merged commit d90ff55 into rust-lang:master May 25, 2023
bors added a commit to rust-lang-ci/rust that referenced this pull request May 31, 2023
Update cargo

17 commits in 64fb38c97ac4d3a327fc9032c862dd28c8833b17..f7b95e31642e09c2b6eabb18ed75007dda6677a0
2023-05-23 18:53:23 +0000 to 2023-05-30 19:25:02 +0000
- chore: detect the channel a PR wants to merge into (rust-lang/cargo#12181)
- refactor: de-depulicate `make_dep_prefix` implementation (rust-lang/cargo#12203)
- Re-enable code_generation test on Windows (rust-lang/cargo#12199)
- docs: add doc comments for git source and friends (rust-lang/cargo#12192)
- test: set retry sleep to 1ms for all tests (rust-lang/cargo#12194)
- fix(add): Reduce the chance we re-format the user's `[features]` table (rust-lang/cargo#12191)
- test(add): Remove expensive test (rust-lang/cargo#12188)
- Add a description of `Cargo.lock` conflicts in the Cargo FAQ (rust-lang/cargo#12185)
- refactor(tests): Reduce cargo-add setup load (rust-lang/cargo#12189)
- Warn when an edition 2021 crate is in a virtual workspace with default resolver (rust-lang/cargo#10910)
- refactor(tests): Reduce cargo-remove setup load (rust-lang/cargo#12184)
- chore: Lexicographically order `-Z` flags (rust-lang/cargo#12182)
- chore(ci): remove temporary fix for rustup 1.24.1 (rust-lang/cargo#12180)
- fix: AIX searches dynamic libraries in `LIBPATH`. (rust-lang/cargo#11968)
- deps: remove unused features from windows-sys (rust-lang/cargo#12176)
- Automatically inherit workspace lints when running cargo new/init (rust-lang/cargo#12174)
- Test that the new `debuginfo` options match between cargo and rustc (rust-lang/cargo#12022)

r? `@ghost`
@ehuss ehuss added this to the 1.72.0 milestone Jun 2, 2023
thomcc pushed a commit to tcdi/postgrestd that referenced this pull request Aug 24, 2023
Update cargo

17 commits in 64fb38c97ac4d3a327fc9032c862dd28c8833b17..f7b95e31642e09c2b6eabb18ed75007dda6677a0
2023-05-23 18:53:23 +0000 to 2023-05-30 19:25:02 +0000
- chore: detect the channel a PR wants to merge into (rust-lang/cargo#12181)
- refactor: de-depulicate `make_dep_prefix` implementation (rust-lang/cargo#12203)
- Re-enable code_generation test on Windows (rust-lang/cargo#12199)
- docs: add doc comments for git source and friends (rust-lang/cargo#12192)
- test: set retry sleep to 1ms for all tests (rust-lang/cargo#12194)
- fix(add): Reduce the chance we re-format the user's `[features]` table (rust-lang/cargo#12191)
- test(add): Remove expensive test (rust-lang/cargo#12188)
- Add a description of `Cargo.lock` conflicts in the Cargo FAQ (rust-lang/cargo#12185)
- refactor(tests): Reduce cargo-add setup load (rust-lang/cargo#12189)
- Warn when an edition 2021 crate is in a virtual workspace with default resolver (rust-lang/cargo#10910)
- refactor(tests): Reduce cargo-remove setup load (rust-lang/cargo#12184)
- chore: Lexicographically order `-Z` flags (rust-lang/cargo#12182)
- chore(ci): remove temporary fix for rustup 1.24.1 (rust-lang/cargo#12180)
- fix: AIX searches dynamic libraries in `LIBPATH`. (rust-lang/cargo#11968)
- deps: remove unused features from windows-sys (rust-lang/cargo#12176)
- Automatically inherit workspace lints when running cargo new/init (rust-lang/cargo#12174)
- Test that the new `debuginfo` options match between cargo and rustc (rust-lang/cargo#12022)

r? `@ghost`
@weihanglo weihanglo mentioned this pull request Jul 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-documenting-cargo-itself Area: Cargo's documentation S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants