From 5aafb6475b2176d3028e2dac9df5984160b517dd Mon Sep 17 00:00:00 2001 From: Vasilito Date: Sat, 18 Apr 2026 21:36:21 +0100 Subject: [PATCH] Document relibc overlay preservation flow Explain how the rebuilt relibc proof and durable local patch carriers fit together so future upstream refreshes can reapply the compatibility work without relying on nested source state. Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-openagent) Co-authored-by: Sisyphus --- ...RELIBC-COMPLETENESS-AND-ENHANCEMENT-PLAN.md | 18 +++++++++++------- ...LIBC-IPC-ASSESSMENT-AND-IMPROVEMENT-PLAN.md | 5 +++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/local/docs/RELIBC-COMPLETENESS-AND-ENHANCEMENT-PLAN.md b/local/docs/RELIBC-COMPLETENESS-AND-ENHANCEMENT-PLAN.md index d881e8ff..d8c5f71b 100644 --- a/local/docs/RELIBC-COMPLETENESS-AND-ENHANCEMENT-PLAN.md +++ b/local/docs/RELIBC-COMPLETENESS-AND-ENHANCEMENT-PLAN.md @@ -114,6 +114,12 @@ The goal is durable compatibility, not a permanent relibc fork. > `CI=1 ./target/release/repo cook relibc`, then `CI=1 ./target/release/repo cook libwayland`, then > `CI=1 ./target/release/repo cook qtbase`. This is the strongest current proof that the relibc > compatibility work is preserved in the right place for long-term maintenance. +> +> **Current patch-carrier note:** the bounded `ifaddrs` / `net_if` work and the bounded +> `arpa/nameser.h` / `resolv.h` compatibility work are now preserved in the tracked +> `local/patches/relibc/redox.patch` carrier instead of separate transient patch files. The durable +> relibc recipe patch chain therefore consists only of tracked local patch files plus +> `recipes/core/relibc/recipe.toml` wiring. ### Summary @@ -162,13 +168,11 @@ greenfield libc effort. ### 2. The historical P3 Wayland-facing API bridge is now source-visible The local relibc patch carriers documented the APIs that historically blocked Wayland and downstream -consumers. Some of those fixes are still Red Bear-owned overlays; others are now present upstream and -should no longer be carried locally. - -- `local/patches/relibc/P3-signalfd.patch` -- `local/patches/relibc/P3-timerfd.patch` -- `local/patches/relibc/P3-eventfd.patch` -- `local/patches/relibc/P3-waitid.patch` +consumers. In the current preserved tree, the overlapping Wayland/Qt-facing registration and API work +for `signalfd`, `timerfd`, `eventfd`, `waitid`, `open_memstream`, socket flags, bounded +`ifaddrs`/`net_if`, and the bounded resolver headers now lives in the tracked +`local/patches/relibc/redox.patch` carrier so the recipe does not depend on a fragile stack of +overlapping standalone patch files. The remaining Red Bear-owned relibc carriers currently add or complete: diff --git a/local/docs/RELIBC-IPC-ASSESSMENT-AND-IMPROVEMENT-PLAN.md b/local/docs/RELIBC-IPC-ASSESSMENT-AND-IMPROVEMENT-PLAN.md index bf55dbef..8ffe0ef4 100644 --- a/local/docs/RELIBC-IPC-ASSESSMENT-AND-IMPROVEMENT-PLAN.md +++ b/local/docs/RELIBC-IPC-ASSESSMENT-AND-IMPROVEMENT-PLAN.md @@ -92,6 +92,11 @@ tree”. It is now proven as an overlay workflow: 3. rebuild relibc 4. rebuild real downstream consumers (`libwayland`, `qtbase`) +For the current tree, that overlay story now includes the tracked +`local/patches/relibc/redox.patch` carrier owning the bounded interface-enumeration and +resolver-header compatibility deltas (`ifaddrs` / `net_if`, `arpa/nameser.h`, `resolv.h`) rather +than leaving those as standalone transient patch files. + ## Scope Map ### In scope in relibc today