45696b918b
The patch was written against git 2.13.1 (2017) while the recipe fetches
2.55.0 — eight years of drift, seven of eight files rejecting. Rebased by
applying what still fit, hand-porting every reject against the current
source, and regenerating the whole patch from a pristine-vs-ported diff so
it is a coherent 2.55.0 patch rather than a 2.13 patch with fixups.
Per file, preserving the original Redox intent:
compat/bswap.h <machine/endian.h> for ntohl/htonl
compat/terminal.c __redox__ git_terminal_prompt branch; the file was
restructured, so it now precedes the generic #else
configure NO_IPV6=YesPlease
daemon.c logreport is a switch over LOG_DESTINATION_* in
2.55.0; guard the syslog arm and openlog instead of
the old if/else
git-compat-util.h SIG_DFL/SIG_IGN/SIG_ERR fallbacks
Makefile EXTLIBS=-lnghttp2; drop the three hardlink fallbacks
run-command.c dup_devnull is gone in 2.55.0; the four /dev/null
opens it replaced now use DEV_NULL directly
setup.c sanitize_stdfds uses xopen/xdup, which die
internally, so the old die_errno hunk is obsolete
Applies at --fuzz=0 with zero rejects across all eight files.
Also ac_cv_iconv_omits_bom=no: the 'iconv omits bom for utf-16 and
utf-32' probe is a RUN test and cannot execute while cross compiling.
Same mechanism as the neighbouring ac_cv_fread_reads_directories and
ac_cv_snprintf_returns_bogus entries.
One trap worth recording: a blanket '*.orig' cleanup before regenerating
the diff silently deleted t/t4256/1/mailinfo.c.orig, a real git test
fixture, which would have shipped as a deletion in the patch. Restored.
50 lines
1.1 KiB
TOML
50 lines
1.1 KiB
TOML
[source]
|
|
tar = "https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.55.0.tar.xz"
|
|
blake3 = "99cf418d6426cd615c2818986002f3d4619c707bceea9c624414cc2362c1ff5e"
|
|
patches = ["git.patch"]
|
|
|
|
[build]
|
|
dependencies=[
|
|
"curl",
|
|
"expat",
|
|
"gettext",
|
|
"nghttp2",
|
|
"openssl3",
|
|
"zlib"
|
|
]
|
|
template = "custom"
|
|
script = """
|
|
rsync -av --delete "${COOKBOOK_SOURCE}/" ./
|
|
DYNAMIC_INIT
|
|
MAKEFLAGS=(
|
|
NEEDS_SSL_WITH_CURL=1
|
|
NEEDS_CRYPTO_WITH_SSL=1
|
|
NO_IPV6=1
|
|
NO_PREAD=1
|
|
NO_MMAP=1
|
|
NO_SETITIMER=1
|
|
NO_UNIX_SOCKETS=1
|
|
NEEDS_LIBICONV=
|
|
NEEDS_LIBRT=
|
|
BLK_SHA1=1
|
|
V=1
|
|
)
|
|
export CURL_CONFIG="${COOKBOOK_SYSROOT}/usr/bin/curl-config"
|
|
./configure \
|
|
--host="${GNU_TARGET}" \
|
|
--prefix=/usr \
|
|
ac_cv_fread_reads_directories=yes \
|
|
ac_cv_iconv_omits_bom=no \
|
|
ac_cv_snprintf_returns_bogus=yes \
|
|
ac_cv_lib_curl_curl_global_init=yes
|
|
"${COOKBOOK_MAKE}" "${MAKEFLAGS[@]}" -j"${COOKBOOK_MAKE_JOBS}"
|
|
"${COOKBOOK_MAKE}" DESTDIR="${COOKBOOK_STAGE}" "${MAKEFLAGS[@]}" install
|
|
rm -rf "${COOKBOOK_STAGE}/usr/share/man"
|
|
"""
|
|
|
|
[package]
|
|
dependencies = [
|
|
"ca-certificates",
|
|
"nghttp2"
|
|
]
|