22f8849007
git.patch is written against git 2.13.1 (2017); the recipe fetches 2.55.0.
The setup.c hunks were the first to fail, so the build stopped there.
Rebased them. 2.55.0 rewrote sanitize_stdfds() to use xopen/xdup, which
die internally, so the old die_errno hunk is obsolete and the rebase is
smaller than the original:
- xopen("/dev/null", O_RDWR) -> xopen(DEV_NULL, O_RDWR)
- #if !defined(__redox__) around setsid()
Both preserve the original Redox intent: scheme paths instead of
/dev/null, and no setsid() on Redox.
This does NOT make git build. With setup.c applying, the patch runs
further and six more files turn out to have drifted over the same eight
years:
compat/bswap.h 1/1 hunk
compat/terminal.c 1/1
configure 1/1
daemon.c 2/4
git-compat-util.h 1/2
Makefile 1/1
run-command.c 1/1
git-compat-util.h matters most: it is where DEV_NULL is defined, so the
setup.c change above depends on that hunk being re-ported too.
An eight-year, 2.13 -> 2.55 span is a re-port, not a hunk rebase, and
PATCH-GOVERNANCE.md is explicit that the patch is rebased rather than
dropped. Committing this piece so it is not lost and the remaining scope
is written down.