← Commit list

fbcce4da85

Viktor Szakats
Viktor Szakats
2026-06-25
SUCCESS Duration: 210s

Subject

build: enable thread-safe `getaddrinfo()` for OpenBSD, and other tidy-ups

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

CMake/OtherTests.cmake+8 -6
@@ -77,12 +77,14 @@ if(WIN32)
set(HAVE_GETADDRINFO_THREADSAFE ${HAVE_GETADDRINFO})
elseif(NOT HAVE_GETADDRINFO)
set(HAVE_GETADDRINFO_THREADSAFE FALSE)
-elseif(APPLE OR
- AIX OR CMAKE_SYSTEM_NAME STREQUAL "AIX" OR
- CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "HP-UX" OR
- CMAKE_SYSTEM_NAME STREQUAL "MidnightBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR
+elseif(APPLE OR # Darwin 9+ / macOS 10.5+
+ AIX OR CMAKE_SYSTEM_NAME STREQUAL "AIX" OR # 5.2+
+ CMAKE_SYSTEM_NAME STREQUAL "DragonFlyBSD" OR # 2.2.0+
+ CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR # 5.5+
+ CMAKE_SYSTEM_NAME STREQUAL "HP-UX" OR # 11.11+
+ CMAKE_SYSTEM_NAME STREQUAL "MidnightBSD" OR # all versions
+ CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR # 4+
+ CMAKE_SYSTEM_NAME STREQUAL "OpenBSD" OR # 5.4+
CMAKE_SYSTEM_NAME STREQUAL "SunOS")
set(HAVE_GETADDRINFO_THREADSAFE TRUE)
elseif(BSD OR CMAKE_SYSTEM_NAME MATCHES "BSD")
CMake/unix-cache.cmake+2 -14
@@ -106,14 +106,7 @@ elseif(CYGWIN OR
set(HAVE_FSETXATTR_6 0)
endif()
set(HAVE_GETADDRINFO 1)
-if(CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
- set(HAVE_GETADDRINFO_THREADSAFE 0)
-elseif(CYGWIN OR
- CMAKE_SYSTEM_NAME STREQUAL "Linux" OR
- CMAKE_SYSTEM_NAME STREQUAL "DragonFlyBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "MidnightBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "NetBSD")
+if(CYGWIN)
set(HAVE_GETADDRINFO_THREADSAFE 1)
endif()
set(HAVE_GETEUID 1)
@@ -219,12 +212,7 @@ if(APPLE OR
CYGWIN)
set(HAVE_PIPE2 0)
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR
- BSD OR
- CMAKE_SYSTEM_NAME STREQUAL "DragonFlyBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "MidnightBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR
- CMAKE_SYSTEM_NAME STREQUAL "OpenBSD" OR
+ BSD OR CMAKE_SYSTEM_NAME MATCHES "BSD" OR
CMAKE_SYSTEM_NAME STREQUAL "SunOS")
set(HAVE_PIPE2 1)
endif()
CMakeLists.txt+1 -1
@@ -89,7 +89,7 @@ endif()
if(UNIX)
string(APPEND _target_flags " UNIX")
endif()
-if(BSD)
+if(BSD OR CMAKE_SYSTEM_NAME MATCHES "BSD")
string(APPEND _target_flags " BSD")
endif()
if(ANDROID)
m4/curl-functions.m4+19 -3
@@ -1330,7 +1330,7 @@ AC_DEFUN([CURL_CHECK_FUNC_GETADDRINFO], [
if test "$curl_cv_func_getaddrinfo" = "yes"; then
AC_MSG_CHECKING([if getaddrinfo is thread-safe])
if test "$curl_cv_apple" = "yes"; then
- dnl Darwin 6.0 and macOS 10.2.X and newer
+ dnl Darwin 9+ and macOS 10.5+
tst_tsafe_getaddrinfo="yes"
fi
case $host_os in
@@ -1342,10 +1342,18 @@ AC_DEFUN([CURL_CHECK_FUNC_GETADDRINFO], [
dnl AIX 5.2 and newer
tst_tsafe_getaddrinfo="yes"
;;
- darwin[[12345]].*)
- dnl Darwin 5.0 and macOS 10.1.X and older
+ darwin[[12345678]].*)
+ dnl Darwin <=8.0 and macOS <=10.4
tst_tsafe_getaddrinfo="no"
;;
+ dragonfly1.* | dragonfly2.[[01]])
+ dnl DragonFly BSD <=2.1.0
+ tst_tsafe_getaddrinfo="no"
+ ;;
+ dragonfly*)
+ dnl DragonFly BSD 2.2.0+
+ tst_tsafe_getaddrinfo="yes"
+ ;;
freebsd[[1234]].* | freebsd5.[[1234]]*)
dnl FreeBSD 5.4 and older
tst_tsafe_getaddrinfo="no"
@@ -1374,6 +1382,14 @@ AC_DEFUN([CURL_CHECK_FUNC_GETADDRINFO], [
dnl NetBSD 4.X and newer
tst_tsafe_getaddrinfo="yes"
;;
+ openbsd[[1234]].* | openbsd5.[[0123]])
+ dnl OpenBSD <=5.3
+ tst_tsafe_getaddrinfo="no"
+ ;;
+ openbsd*)
+ dnl OpenBSD 5.4+
+ tst_tsafe_getaddrinfo="yes"
+ ;;
*bsd*)
dnl All other BSD's
tst_tsafe_getaddrinfo="no"