f2b6c1e0ed
The Redox target port applier claimed validation on 16.1.0 but its idempotency probe used each block's longest line, which for three blocks is generic upstream boilerplate. Against a pristine 16.1.0 tree that silently skipped the libgcc target arms and BOTH crossconfig.m4 arms (libgcc/config.host and crossconfig.m4 contain zero redox references, yet the applier reported 'already present'), producing a half-ported tree -- the exact failure the script documents itself as preventing. Probe on the longest redox-bearing line instead, matched whole. Two port requirements the original extraction missed, both fatal: - gcc/config/redox.opt.urls. GCC 16 requires a .opt.urls companion for every .opt; s-options fails without it. Contents match what regenerate-opt-urls.py emits for these two options, cross-checked against the six upstream .opt.urls declaring the same pthread/rdynamic. - libtool has no redox host. Upstream Redox gets shared libraries from recipes/dev/libtool (a Redox-patched libtool 2.5.4-redox-9510) via libtoolize during autoreconf, not from GCC's bundled libtool.m4. That route does not apply to GCC 16, which bundles 2.2.7-era macros plus its own ltgcc.m4. Without redox arms _LT_SYS_DYNAMIC_LINKER leaves dynamic_linker=no, libstdc++ builds static-only, and the desktop stack cannot link -- libQt6Core.so and every KF6 library carry DT_NEEDED libstdc++.so.6. apply-libtool-redox.py registers the four arms that matter, verbatim from the Redox libtool macros already in prefix/. Result: x86_64-unknown-redox-gcc 16.1.0 with libstdc++.so.6.0.35 (SONAME libstdc++.so.6, NEEDED libc.so.6 + libgcc_s.so.1 -- identical to the 13.2.0 library it replaces, exports a superset up to GLIBCXX_3.4.35). std::ranges::to now compiles for the Redox target; GCC 13.2.0 fails the same test, which is what blocked kwin's 16 affected files. install-gcc16-toolchain.sh installs into all three locations a recipe can resolve a compiler from -- including ~/.redoxer, which src/cook/script.rs puts highest on PATH -- and is reversible with --restore. Its cstdlib strtold patch is guarded; the mk/prefix.mk sed is not, and had applied that block 17 times to the GCC 13 toolchain.
98 lines
2.8 KiB
Plaintext
98 lines
2.8 KiB
Plaintext
/build/
|
|
**/my_*
|
|
|
|
.idea/
|
|
.vs/
|
|
.vscode/
|
|
.devcontainer/
|
|
|
|
/repo
|
|
/web
|
|
/cookbook.toml
|
|
|
|
# Nested recipe debris from prior build-system layouts (4.2GB+ of duplicates)
|
|
recipes/recipes/
|
|
|
|
# Fetched source trees in mainline recipes AND in specific local/ build-cache
|
|
# recipes (those whose source/ is a transient working copy re-fetched by the
|
|
# build system from the recipe's `git` URL). The durable code for these is
|
|
# recipe.toml + local/patches/. — DO NOT add a blanket `local/recipes/**/source`
|
|
# rule here: ~150 Red Bear recipes have durable source code under
|
|
# `local/recipes/<name>/source/` (the fork model).
|
|
recipes/**/source
|
|
recipes/**/source.tmp
|
|
recipes/**/source-new
|
|
recipes/**/source-old
|
|
recipes/**/source.tar
|
|
recipes/**/source.tar.tmp
|
|
recipes/**/source.pre-preservation-test/
|
|
local/recipes/archives/uutils-tar/source
|
|
|
|
# Bump-recipe cache used by local/scripts/bump-graphics-recipes.sh.
|
|
# Cache is fetched from upstream release indexes; reproducible from script run.
|
|
.redbear-recipe-bump/
|
|
|
|
# Build artifacts — target/ dirs are everywhere
|
|
target
|
|
wget-log
|
|
/sysroot/
|
|
|
|
# Vendor source trees (fetched, not our code)
|
|
**/amdgpu-source/
|
|
|
|
# External reference trees (read-only consultation sources). The Linux
|
|
# reference tree (local/reference/linux-7.1) is currently kept locally
|
|
# but is gitignored by size; seL4 reference is an empty placeholder.
|
|
local/reference/linux-*/
|
|
local/reference/seL4/
|
|
|
|
# Per-fork upstream content fingerprint cache. Built by
|
|
# verify-fork-versions.sh on each preflight run; reproducible from
|
|
# a fork upgrade, not source of truth.
|
|
.redbear-fork-verify/
|
|
|
|
# Compiled objects
|
|
*.o
|
|
*.so
|
|
|
|
*.bin
|
|
*.fw
|
|
*.lock
|
|
|
|
# Internal tooling
|
|
.sisyphus/
|
|
TASK_COMPLETION_SUMMARY.md
|
|
__pycache__/
|
|
extra.img: 1073741824 bytes
|
|
extra.img
|
|
Packages/redbear-firmware.pkgar
|
|
packages/
|
|
sources/x86_64-unknown-redox/
|
|
sources/*.tar.gz
|
|
Packages/*.pkgar
|
|
.slim/deepwork/
|
|
|
|
# Bare git fetcher caches at the repo root. The cookbook's fetch workflow
|
|
# creates these as transient scratch space (shallow clones used during
|
|
# recipe source acquisition). Not declared submodules — see .gitmodules
|
|
# for the canonical 9 `submodule/<component>` entries. Anchored to root
|
|
# only; does NOT match nested `.git` directories inside submodules.
|
|
/*.git/
|
|
|
|
# Empty placeholder file at the repo root. Was an artifact of a reverted
|
|
# "phase 1.1: refresh gitlink SHAs for 9 submodules" attempt — see commit
|
|
# b062cf43b7. The real relibc lives at local/sources/relibc/ (a submodule).
|
|
/relibc
|
|
|
|
# Downloaded toolchain installer tarballs under prefix/. Reproducible
|
|
# from build-redbear.sh — never commit them. The toolchain is rebuilt by
|
|
# `make prefix` after fork (relibc/kernel/base) changes.
|
|
/prefix/**/*.tar.gz
|
|
|
|
# GCC 16 cross-toolchain build artifacts (reproducible via
|
|
# local/scripts/build-gcc16-cross.sh from local/recipes/dev/gcc16/source.tar)
|
|
/build/gcc16-build/
|
|
/build/gcc16-install/
|
|
/build/gcc13-backup/
|
|
/build/host-tools/
|