Git fork

config.mak.uname: set NO_MEMMEM only for functional version

FreeBSD 6 introduced memmem(), but the implementation diverged
from what was standard everywhere else (including our "compat"
fallback).

FreeBSD 10.4 (went EOL in 2018) corrected the functionality bugs
but kept a suboptimal implementation until FreeBSD 11.4 (the last
version of FreeBSD 11, that went EOL in September 2021).

Let's draw the line to require FreeBSD 12 or newer, which allows us
to drop the special casing of FreeBSD 4.x and rely on the platform
implementation of memmem() unconditionally for all versions that are
still being supported.

Suggested-by: Brad Smith <brad@comstyle.com>
Helped-by: brian m. carlson <sandals@crustytoothpaste.net>
Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

authored by

Carlo Marcelo Arenas Belón and committed by
Junio C Hamano
46a3ab74 d50a5e89

+3 -6
+3 -6
config.mak.uname
··· 273 273 ifeq ($(firstword $(subst -, ,$(uname_R))),10.1) 274 274 OLD_ICONV = YesPlease 275 275 endif 276 - NO_MEMMEM = YesPlease 276 + ifeq ($(shell v=$(uname_R) && test $${v%%.*} -lt 12 && echo 1),1) 277 + NO_MEMMEM = UnfortunatelyYes 278 + endif 277 279 BASIC_CFLAGS += -I/usr/local/include 278 280 BASIC_LDFLAGS += -L/usr/local/lib 279 281 DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease 280 282 USE_ST_TIMESPEC = YesPlease 281 - ifeq ($(shell expr "$(uname_R)" : '4\.'),2) 282 - PTHREAD_LIBS = -pthread 283 - NO_UINTMAX_T = YesPlease 284 - NO_STRTOUMAX = YesPlease 285 - endif 286 283 PYTHON_PATH = /usr/local/bin/python 287 284 PERL_PATH = /usr/local/bin/perl 288 285 HAVE_PATHS_H = YesPlease