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

Rebase of "Upgrade musl supported version to 1.2.3" #3791

Open
wants to merge 14 commits into
base: main
Choose a base branch
from

Conversation

myl7
Copy link

@myl7 myl7 commented Aug 5, 2024

Also discussed in GSoC Zulip. Related: GSoC Idea OSPP Idea OSPP Zulip.

This PR is mainly the rebase of #3068 . So closes #3068 fixes #1848 closes #2088 .
Some other changes are made:

  • Fix warnings in CI by setting several #[allow(unused_imports)].

For the checklist for review or CI, as the original PR should have passed it, this PR only makes sure ci/style.sh and cd libc-test && cargo test pass

@rustbot
Copy link
Collaborator

rustbot commented Aug 5, 2024

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @JohnTitor (or someone else) some time within the next two weeks.

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
Copy link
Collaborator

rustbot commented Aug 5, 2024

Some changes occurred in solarish module

cc @jclulow, @pfmooney

Some changes occurred in OpenBSD module

cc @semarie

Some changes occurred in OpenBSD module

cc @semarie

@semarie
Copy link
Contributor

semarie commented Aug 5, 2024

FYI, no problem on OpenBSD side

@myl7 myl7 force-pushed the musl branch 2 times, most recently from c45a829 to 0185395 Compare August 5, 2024 11:43
@myl7 myl7 changed the title Draft: Modernize the libc crate Rebase of "Upgrade musl supported version to 1.2.3" Aug 5, 2024
@tgross35
Copy link
Contributor

tgross35 commented Aug 12, 2024

Could you please rebase once #3797 lands? (Hopefully ~1 hour). You will need to drop 2852809 and eb4c4b2.

@bors
Copy link
Contributor

bors commented Aug 12, 2024

☔ The latest upstream changes (presumably #3797) made this pull request unmergeable. Please resolve the merge conflicts.

@tgross35
Copy link
Contributor

@rustbot author

danielframpton and others added 14 commits August 17, 2024 11:33
musl 1.1 maintenance has for all practical purposes ended.  Accordingly, there is
no point in supporting both 1.1 and 1.2 in the libc crate, so follow the
time_t type transition to 64-bit.
- add padding members for musl 1.2
- ensure the padding members have an appropriate type (always c_int)
Only some 32-bit targets use the time64 family of functions and that set
will not change going forward (new 32-bit targets added will use Y2038
compliant syscalls and types by default).

This patch introduces a cfg flag that controls when the time64 abi
related changes are enabled and sets that flag from libc and libc-tests'
build.rs files.
@myl7
Copy link
Author

myl7 commented Aug 17, 2024

Glad to see most pass!

The only failure of wasm32-unknown-emscripten is because some code generated by ctest2 does not add struct prefix to struct names.
However, it should be added according to:

t if is_struct => format!("struct {}", t),

Not sure how to resolve it.

@bors
Copy link
Contributor

bors commented Aug 27, 2024

☔ The latest upstream changes (presumably #3869) made this pull request unmergeable. Please resolve the merge conflicts.

@tgross35
Copy link
Contributor

Are you able to just skip the type with a fixme? I think we have emscripten-specific ignores already. Also not sure why this would be happening, but I am really hoping we don't need to block this on ctest changes.

@tgross35
Copy link
Contributor

Also @kaniini I think you had some ideas about how to do musl better here. If you get a chance, would you mind taking a look at this?

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.

musl: Change time_t definition on 32-bit targets according to "time64"
9 participants