git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v4 1/2] config.mak.uname: set NO_MEMMEM only for functional version

From
Carlo Marcelo Arenas Belón <carenas@gmail.com>
Date
Jul 2, 2025, 09:37 UTC
Message-ID
<20250702093736.36074-2-carenas@gmail.com>
In-Reply-To
<20250702093736.36074-1-carenas@gmail.com>

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>
---
 config.mak.uname | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/config.mak.uname b/config.mak.uname
index b12d4e168a..2b434df9e5 100644
--- a/config.mak.uname
+++ b/config.mak.uname
@@ -273,16 +273,13 @@ ifeq ($(uname_S),FreeBSD)
         ifeq ($(firstword $(subst -, ,$(uname_R))),10.1)
 		OLD_ICONV = YesPlease
         endif
-	NO_MEMMEM = YesPlease
+        ifeq ($(shell v=$(uname_R) && test $${v%%.*} -lt 12 && echo 1),1)
+		NO_MEMMEM = UnfortunatelyYes
+        endif
 	BASIC_CFLAGS += -I/usr/local/include
 	BASIC_LDFLAGS += -L/usr/local/lib
 	DIR_HAS_BSD_GROUP_SEMANTICS = YesPlease
 	USE_ST_TIMESPEC = YesPlease
-        ifeq ($(shell expr "$(uname_R)" : '4\.'),2)
-		PTHREAD_LIBS = -pthread
-		NO_UINTMAX_T = YesPlease
-		NO_STRTOUMAX = YesPlease
-        endif
 	PYTHON_PATH = /usr/local/bin/python
 	PERL_PATH = /usr/local/bin/perl
 	HAVE_PATHS_H = YesPlease
-- 
2.50.0.147.gafe0d4ec5b
Previous: Carlo Marcelo Arenas BelónNext: Carlo Marcelo Arenas Belón
Message 8 of 11 in “Re: [PATCH v2] config.mak.uname: update settings for FreeBSD”
  1. Carlo ArenasJun 12, 2025
  2. brian m. carlsonJun 12, 2025
  3. Carlo Marcelo Arenas BelónJun 12, 2025
  4. config.mak.uname: update settings for FreeBSDJunio C Hamano, Jun 12, 2025
  5. Carlo Marcelo Arenas BelónJun 12, 2025
  6. Junio C HamanoJun 12, 2025
  7. 0/2 config.mak.uname: update settings for FreeBSDCarlo Marcelo Arenas Belón, Jul 2, 2025
  8. 1/2 config.mak.uname: set NO_MEMMEM only for functional versionCarlo Marcelo Arenas Belón, Jul 2, 2025
  9. 2/2 build: retire NO_UINTMAX_TCarlo Marcelo Arenas Belón, Jul 2, 2025
  10. Junio C HamanoJul 2, 2025
  11. Junio C HamanoJun 12, 2025

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.