Files
RedBear-OS/local
vasilito 89d7eb1736
redbear-ci / check (push) Has been cancelled
gcc: applier that ports Redox onto pristine GCC, validated on 16.1.0
Applies the extracted port to an unpacked GCC tree: copies the 5
Redox-owned files, then inserts each redox arm at an anchored point.
Validated against a real gcc-16.1.0 tree (blake3
5f001609f662143ce9285cd740bd0acfeeaf7f13731b46fd1d9ebe620c5c340d).

Findings from that validation:

- GCC 16 already recognises redox in config.sub upstream, one fewer file
  to patch than in 13.2.0.
- Two anchors moved since 13.2.0 and were re-derived: solaris folded into
  the linux arm in crossconfig.m4, and the mingw32 targets were
  consolidated in mkfixinc.sh.
- libgcc's riscv64 arm had been truncated during the original capture;
  restored.

Two idempotency bugs found by comparing redox-line counts against the
13.2.0 reference rather than trusting "it ran clean":

- a substring probe matched the generic block's case label inside the
  already-inserted aarch64/riscv64 label, silently skipping the second
  crossconfig.m4 block;
- a first-line probe matched the aarch64 label inside CONFIG_GCC_OS,
  silently skipping config.gcc's tm_file target arms, which would have
  produced a tree that configures but never pulls in redox.h.

Now probes on the block's longest line, matched whole. config.gcc reaches
16/16 redox lines, matching the 13.2.0 reference exactly.

Verified for x86_64-unknown-redox: config.gcc tm_file arm incl. redox.h,
config.host xm_file, libgcc arm, crossconfig generic arm, mkfixinc arm,
gcc/config/redox.h, and the _GLIBCXX_USE_WEAK_REF define.

Re-running is a no-op. NOT YET BUILT: no compiler has been produced, and
gcc/configure plus libstdc++-v3/configure still need regenerating from
crossconfig.m4 with autoconf.
2026-08-03 11:41:40 +03:00
..