Skip to content

Conversation

@farao
Copy link
Contributor

@farao farao commented Jun 9, 2025

The L4Re code was previously attached to the Linux code which was not correct in many ways. This commit separates the L4Re code and enables the libc-tests and includes the fixes for the failing tests. Aarch64 is added as a second supported architecture (more to come).

Sources

L4Re-adapted version of uclibc: https://github.com/kernkonzept/l4re-core/tree/master/uclibc/lib.

Checklist

  • Relevant tests in libc-test/semver have been updated
  • No placeholder or unstable values like *LAST or *MAX are
    included (see #3131)
  • Tested locally (cd libc-test && cargo test --target mytarget);
    especially relevant for platforms that may not be checked in CI

@rustbot
Copy link
Collaborator

rustbot commented Jun 9, 2025

Some changes occurred in the Android module

cc @maurer

@farao farao force-pushed the revert branch 11 times, most recently from 92284e5 to 40a082a Compare June 12, 2025 16:33
@farao
Copy link
Contributor Author

farao commented Jun 13, 2025

Hi @tgross35, this is the refactoring of the recent L4Re PR: #4383 (which is kept around just in case).

I think the failure of the freebsd nightly checks is not my fault. The rest succeeds now.

I did most of what you requested in your comment on the old PR, I just kept the linux/mod.rs file around since there is a massive part of code that is linux-only and is not supported by L4Re and it did not seem to make sense to put it all in shared.rs.

Also, I put some more code that's shared from the sub modules (emscripten, android, linux, l4re) up in linux_like/mod.rs. In theory, I think there's potential to do that with more code, that's just the one that I would have put in shared.rs but realized that it could go into linux_like/mod.rs instead.

@farao farao force-pushed the revert branch 2 times, most recently from 26e9993 to 5b60e70 Compare June 23, 2025 09:15
Copy link
Contributor

@tgross35 tgross35 left a comment

Choose a reason for hiding this comment

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

Sorry this has taken a while to get to, but thank you for all the changes here! The shape of this one looks much better. I have a handful of small comments but will need to take a deeper look at the big refactor portions again.

@tgross35
Copy link
Contributor

tgross35 commented Jul 7, 2025

@rustbot author, for the above review and a rebase

@rustbot
Copy link
Collaborator

rustbot commented Jul 7, 2025

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@tgross35 tgross35 added the stable-nominated This PR should be considered for cherry-pick to libc's stable release branch label Dec 4, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Dec 4, 2025
@tgross35 tgross35 added this pull request to the merge queue Dec 4, 2025
Merged via the queue into rust-lang:main with commit 1034d70 Dec 4, 2025
50 of 51 checks passed
@farao
Copy link
Contributor Author

farao commented Dec 5, 2025

Nice, thanks a lot for baring with me for this large change(s)!

@xbjfk xbjfk mentioned this pull request Dec 5, 2025
3 tasks
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
The L4Re code was previously attached to the Linux code which was not
correct in many ways. This commit separates the L4Re code and enables
the libc-tests and includes the fixes for the failing tests.

(backport <rust-lang#4479>)
(cherry picked from commit 2fe1d91)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit 980c923)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit c827adf)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit 1034d70)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
The L4Re code was previously attached to the Linux code which was not
correct in many ways. This commit separates the L4Re code and enables
the libc-tests and includes the fixes for the failing tests.

(backport <rust-lang#4479>)
(cherry picked from commit 2fe1d91)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit 980c923)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit c827adf)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit 1034d70)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
The L4Re code was previously attached to the Linux code which was not
correct in many ways. This commit separates the L4Re code and enables
the libc-tests and includes the fixes for the failing tests.

(backport <rust-lang#4479>)
(cherry picked from commit 2fe1d91)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit 980c923)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit c827adf)
tgross35 pushed a commit to tgross35/rust-libc that referenced this pull request Dec 28, 2025
(backport <rust-lang#4479>)
(cherry picked from commit 1034d70)
@tgross35 tgross35 mentioned this pull request Dec 28, 2025
github-merge-queue bot pushed a commit that referenced this pull request Dec 28, 2025
github-merge-queue bot pushed a commit that referenced this pull request Dec 28, 2025
The L4Re code was previously attached to the Linux code which was not
correct in many ways. This commit separates the L4Re code and enables
the libc-tests and includes the fixes for the failing tests.

(backport <#4479>)
(cherry picked from commit 2fe1d91)
github-merge-queue bot pushed a commit that referenced this pull request Dec 28, 2025
(backport <#4479>)
(cherry picked from commit 980c923)
github-merge-queue bot pushed a commit that referenced this pull request Dec 28, 2025
(backport <#4479>)
(cherry picked from commit c827adf)
github-merge-queue bot pushed a commit that referenced this pull request Dec 28, 2025
(backport <#4479>)
(cherry picked from commit 1034d70)
@tgross35 tgross35 added stable-applied This PR has been cherry-picked to libc's stable release branch and removed stable-nominated This PR should be considered for cherry-pick to libc's stable release branch labels Dec 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ctest Issues relating to the ctest crate O-android O-gnu O-linux O-linux-like O-musl O-unix O-x86 stable-applied This PR has been cherry-picked to libc's stable release branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants