-- https://github.com/ggml-org/ggml/issues/1683

--- src/CMakeLists.txt.orig	2026-11-07 02:22:53 UTC
+++ src/CMakeLists.txt
@@ -139,7 +139,7 @@ endif()
 # Somehow in OpenBSD whenever POSIX conformance is specified
 # some string functions rely on locale_t availability,
 # which was introduced in POSIX.1-2008, forcing us to go higher
-if (CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
+if (CMAKE_SYSTEM_NAME MATCHES "OpenBSD|FreeBSD")
     add_compile_definitions(_XOPEN_SOURCE=700)
 elseif (CMAKE_SYSTEM_NAME MATCHES "AIX")
     # Don't define _XOPEN_SOURCE.  We need _ALL_SOURCE, which is the default,
