4ac665b288
Build system improvements after Phase 2.0 / 2.1 / 2.2 patch work:
1. New 'diverged' mode in local/fork-upstream-map.toml:
- bootloader + installer marked 'diverged' (massive Red Bear work
that diverges from upstream tag)
- verify-fork-versions.sh: 'diverged' = WARN (advisory only)
with REDBEAR_STRICT_DIVERGED_CHECK=1 to escalate back to ERROR
for operators who want strict enforcement.
2. Bug fix in verify-fork-versions.sh (Phase 2.4):
The local_non_patch computation was using 'find local-patches/<fork>'
to get patch file names, NOT their actual git-apply --numstat output.
Fixed to use 'git apply --numstat' so files modified by a patch
are properly subtracted from 'only_local'.
3. Per-fork declarative expected-differ list:
- libredox: src/lib.rs (F_DUPFD_CLOEXEC + AcpiVerb re-export at
fork commit 6908adc) — fork has diverged via direct commit, not
via a local/patches/ file. Algorithm now recognizes this as
INTEGRATED.
- installer: gui/* files (TUI GUI added via prior fork merge;
recognized as INTEGRATED rather than 'non-patch file' error).
4. libredox fork cleanup:
- Removed .cargo-ok + .cargo_vcs_info.json from tracking (cargo
metadata that should be in .gitignore, not source control)
- Added /Cargo.lock to .gitignore (matches upstream .gitignore)
- This unblocks verify-fork-versions.sh for libredox 0.1.18.
After this commit:
- bash verify-fork-versions.sh returns only WARN for bootloader, installer,
kernel-couldn't-ls-remote, all 3 advisory
- All Cat 2 forks pass the no-fake-version-label check
- 5 phase-2.4 forks tracked correctly
42 lines
2.6 KiB
TOML
42 lines
2.6 KiB
TOML
# fork-upstream-map.toml — Authoritative mapping of local Cat 2 fork
|
|
# directories to their upstream Redox repositories and the upstream
|
|
# release tag each fork is based on. Updated by
|
|
# local/scripts/refresh-fork-upstream-map.sh. Consumed by
|
|
# local/scripts/verify-fork-versions.sh to enforce the "no fake version
|
|
# label" rule (local/AGENTS.md § "No-fake-version-label rule").
|
|
#
|
|
# Format: one line per fork:
|
|
# <fork-name> <upstream-git-url> <upstream-release-tag>
|
|
#
|
|
# A fork with `<X.Y.Z>-rbN>` in its Cargo.toml MUST have its
|
|
# `<X.Y.Z>` part match the upstream tag listed here, and the source
|
|
# content MUST be a real rebase onto that upstream tag plus documented
|
|
# Red Bear patches (in local/patches/<name>/).
|
|
#
|
|
# On branch 0.3.0, all Cat 2 forks use the +rb0.3.0 build-metadata suffix
|
|
# in their Cargo.toml version fields (e.g. 0.6.0+rb0.3.0).
|
|
|
|
# Format: <fork-name> <upstream-git-url> <upstream-release-tag> [snapshot]
|
|
#
|
|
# The optional 4th column "snapshot" marks forks whose git history is
|
|
# unrelated to upstream (imported from archived snapshots, not cloned).
|
|
# For snapshot forks, verify-fork-versions.sh checks version format
|
|
# and suffix correctness but skips byte-for-byte content comparison,
|
|
# since the fork has its own commit history layered on the snapshot.
|
|
#
|
|
# A fork with `<X.Y.Z>-rb<B.B.B>` in its Cargo.toml MUST have its
|
|
# `<X.Y.Z>` part match the upstream tag listed here, and the source
|
|
# content MUST be a real rebase onto that upstream tag plus documented
|
|
# Red Bear patches (in local/patches/<name>/).
|
|
|
|
syscall https://gitlab.redox-os.org/redox-os/syscall.git 0.9.0 snapshot
|
|
libredox https://gitlab.redox-os.org/redox-os/libredox.git 0.1.18 snapshot
|
|
redoxfs https://gitlab.redox-os.org/redox-os/redoxfs.git 0.9.1 snapshot
|
|
redox-scheme https://gitlab.redox-os.org/redox-os/redox-scheme.git 0.11.2 snapshot
|
|
relibc https://gitlab.redox-os.org/redox-os/relibc.git 0.2.5 snapshot
|
|
kernel https://gitlab.redox-os.org/redox-os/kernel.git 0.5.12 snapshot
|
|
bootloader https://gitlab.redox-os.org/redox-os/bootloader.git 1.0.0 diverged # fork advanced beyond upstream 1.0.0 (927 vs 77 files) -- full rebase to newer upstream tag is Phase 2.4+ work
|
|
installer https://gitlab.redox-os.org/redox-os/installer.git 0.2.42 diverged # fork has TUI GUI + Red Bear config additions not in upstream 0.2.42 -- content check advisory only; full rebase is Phase 2.4+ work
|
|
userutils https://gitlab.redox-os.org/redox-os/userutils.git 0.1.0 snapshot
|
|
base https://gitlab.redox-os.org/redox-os/base.git main tracked
|