From c568c46f51e863e9c4658b31bfd6c455cc875c5f Mon Sep 17 00:00:00 2001
From: "Ryan C. Gordon" <[EMAIL REDACTED]>
Date: Wed, 27 May 2026 14:50:58 -0400
Subject: [PATCH] cmake: Preseed the CMake cache for Haiku OS.
This change drops the configure time on my little Haiku virtual machine from
103 seconds to six. :)
Fixes #15702.
---
CMakeLists.txt | 1 +
cmake/PreseedHaikuCache.cmake | 221 ++++++++++++++++++++++++++++++++++
2 files changed, 222 insertions(+)
create mode 100644 cmake/PreseedHaikuCache.cmake
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 26ac91a465049..51542b8ba617a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -78,6 +78,7 @@ include("${SDL3_SOURCE_DIR}/cmake/GetGitRevisionDescription.cmake")
include("${SDL3_SOURCE_DIR}/cmake/3rdparty.cmake")
include("${SDL3_SOURCE_DIR}/cmake/PreseedMSVCCache.cmake")
include("${SDL3_SOURCE_DIR}/cmake/PreseedEmscriptenCache.cmake")
+include("${SDL3_SOURCE_DIR}/cmake/PreseedHaikuCache.cmake")
include("${SDL3_SOURCE_DIR}/cmake/PreseedNokiaNGageCache.cmake")
include("${SDL3_SOURCE_DIR}/cmake/PreseedDOSCache.cmake")
diff --git a/cmake/PreseedHaikuCache.cmake b/cmake/PreseedHaikuCache.cmake
new file mode 100644
index 0000000000000..79055a56f4e11
--- /dev/null
+++ b/cmake/PreseedHaikuCache.cmake
@@ -0,0 +1,221 @@
+if(HAIKU)
+ function(SDL_Preseed_CMakeCache)
+
+ # Compiler instruction set support...
+ # Note that we don't know what CPU we're targeting when this file is read,
+ # but we know when targeting Intel CPUs, Haiku's compiler always supports
+ # these instruction sets. If you happen to do a PowerPC build, or whatever,
+ # SDL's base CMakeLists.txt just won't check COMPILER_SUPPORTS_MMX, etc, so
+ # it's safe to set these here anyhow.
+
+ # Intel (X86 and X64)
+ set(COMPILER_SUPPORTS_MMX "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_MMX")
+ set(COMPILER_SUPPORTS_SSE "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_SSE")
+ set(COMPILER_SUPPORTS_SSE2 "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_SSE2")
+ set(COMPILER_SUPPORTS_SSE3 "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_SSE3")
+ set(COMPILER_SUPPORTS_SSE4_1 "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_SSE4_1")
+ set(COMPILER_SUPPORTS_SSE4_2 "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_SSE4_2")
+ set(COMPILER_SUPPORTS_AVX "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_AVX")
+ set(COMPILER_SUPPORTS_AVX2 "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_AVX2")
+ set(COMPILER_SUPPORTS_AVX512F "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_AVX512F")
+
+ # TODO: other CPU architectures (Haiku has experimental support for ARM and RISC-V, etc, but they aren't as far along as Intel atm.)
+
+ set(HAVE_CLANG_COMMENT_BLOCK_COMMANDS "" CACHE INTERNAL "Test HAVE_CLANG_COMMENT_BLOCK_COMMANDS")
+ set(COMPILER_SUPPORTS_FDIAGNOSTICS_COLOR_ALWAYS "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_FDIAGNOSTICS_COLOR_ALWAYS")
+ set(HAVE_ALLOCA_H "1" CACHE INTERNAL "Have include alloca.h")
+ set(HAVE_LIBM "1" CACHE INTERNAL "Have library m")
+ set(HAVE_MALLOC "1" CACHE INTERNAL "Have include malloc.h")
+ set(HAVE_MALLOC_H "1" CACHE INTERNAL "Have include malloc.h")
+ set(LIBC_HAS_ABS "1" CACHE INTERNAL "Have symbol abs")
+ set(LIBC_HAS_ACOS "1" CACHE INTERNAL "Have symbol acos")
+ set(LIBC_HAS_ACOSF "1" CACHE INTERNAL "Have symbol acosf")
+ set(LIBC_HAS_ASIN "1" CACHE INTERNAL "Have symbol asin")
+ set(LIBC_HAS_ASINF "1" CACHE INTERNAL "Have symbol asinf")
+ set(LIBC_HAS_ATAN "1" CACHE INTERNAL "Have symbol atan")
+ set(LIBC_HAS_ATAN2 "1" CACHE INTERNAL "Have symbol atan2")
+ set(LIBC_HAS_ATAN2F "1" CACHE INTERNAL "Have symbol atan2f")
+ set(LIBC_HAS_ATANF "1" CACHE INTERNAL "Have symbol atanf")
+ set(LIBC_HAS_ATOF "1" CACHE INTERNAL "Have symbol atof")
+ set(LIBC_HAS_ATOI "1" CACHE INTERNAL "Have symbol atoi")
+ set(LIBC_HAS_BCOPY "1" CACHE INTERNAL "Have symbol bcopy")
+ set(LIBC_HAS_CALLOC "1" CACHE INTERNAL "Have symbol calloc")
+ set(LIBC_HAS_CEIL "1" CACHE INTERNAL "Have symbol ceil")
+ set(LIBC_HAS_CEILF "1" CACHE INTERNAL "Have symbol ceilf")
+ set(LIBC_HAS_COPYSIGN "1" CACHE INTERNAL "Have symbol copysign")
+ set(LIBC_HAS_COPYSIGNF "1" CACHE INTERNAL "Have symbol copysignf")
+ set(LIBC_HAS_COS "1" CACHE INTERNAL "Have symbol cos")
+ set(LIBC_HAS_COSF "1" CACHE INTERNAL "Have symbol cosf")
+ set(LIBC_HAS_EXP "1" CACHE INTERNAL "Have symbol exp")
+ set(LIBC_HAS_EXPF "1" CACHE INTERNAL "Have symbol expf")
+ set(LIBC_HAS_FABS "1" CACHE INTERNAL "Have symbol fabs")
+ set(LIBC_HAS_FABSF "1" CACHE INTERNAL "Have symbol fabsf")
+ set(LIBC_HAS_FLOAT_H "1" CACHE INTERNAL "Have include float.h")
+ set(LIBC_HAS_FLOOR "1" CACHE INTERNAL "Have symbol floor")
+ set(LIBC_HAS_FLOORF "1" CACHE INTERNAL "Have symbol floorf")
+ set(LIBC_HAS_FMOD "1" CACHE INTERNAL "Have symbol fmod")
+ set(LIBC_HAS_FMODF "1" CACHE INTERNAL "Have symbol fmodf")
+ set(LIBC_HAS_FOPEN64 "" CACHE INTERNAL "Have symbol fopen64")
+ set(LIBC_HAS_FREE "1" CACHE INTERNAL "Have symbol free")
+ set(LIBC_HAS_FSEEKO "1" CACHE INTERNAL "Have symbol fseeko")
+ set(LIBC_HAS_FSEEKO64 "" CACHE INTERNAL "Have symbol fseeko64")
+ set(LIBC_HAS_GETENV "1" CACHE INTERNAL "Have symbol getenv")
+ set(LIBC_HAS_ICONV_H "" CACHE INTERNAL "Have include iconv.h")
+ set(LIBC_HAS_INDEX "1" CACHE INTERNAL "Have symbol index")
+ set(LIBC_HAS_INTTYPES_H "1" CACHE INTERNAL "Have include inttypes.h")
+ set(LIBC_HAS_ISINF "1" CACHE INTERNAL "Have include isinf(double)")
+ set(LIBC_ISINF_HANDLES_FLOAT "1" CACHE INTERNAL "Have include isinf(float)")
+ set(LIBC_HAS_ISINFF "1" CACHE INTERNAL "Have include isinff(float)")
+ set(LIBC_HAS_ISNAN "1" CACHE INTERNAL "Have include isnan(double)")
+ set(LIBC_ISNAN_HANDLES_FLOAT "1" CACHE INTERNAL "Have include isnan(float)")
+ set(LIBC_HAS_ISNANF "1" CACHE INTERNAL "Have include isnanf(float)")
+ set(LIBC_HAS_ITOA "" CACHE INTERNAL "Have symbol itoa")
+ set(LIBC_HAS_LIMITS_H "1" CACHE INTERNAL "Have include limits.h")
+ set(LIBC_HAS_LOG "1" CACHE INTERNAL "Have symbol log")
+ set(LIBC_HAS_LOG10 "1" CACHE INTERNAL "Have symbol log10")
+ set(LIBC_HAS_LOG10F "1" CACHE INTERNAL "Have symbol log10f")
+ set(LIBC_HAS_LOGF "1" CACHE INTERNAL "Have symbol logf")
+ set(LIBC_HAS_LROUND "1" CACHE INTERNAL "Have symbol lround")
+ set(LIBC_HAS_LROUNDF "1" CACHE INTERNAL "Have symbol lroundf")
+ set(LIBC_HAS_MALLOC "1" CACHE INTERNAL "Have symbol malloc")
+ set(LIBC_HAS_MALLOC_H "1" CACHE INTERNAL "Have include malloc.h")
+ set(LIBC_HAS_MATH_H "1" CACHE INTERNAL "Have include math.h")
+ set(LIBC_HAS_MEMCMP "1" CACHE INTERNAL "Have symbol memcmp")
+ set(LIBC_HAS_MEMCPY "1" CACHE INTERNAL "Have symbol memcpy")
+ set(LIBC_HAS_MEMMOVE "1" CACHE INTERNAL "Have symbol memmove")
+ set(LIBC_HAS_MEMORY_H "1" CACHE INTERNAL "Have include memory.h")
+ set(LIBC_HAS_MEMSET "1" CACHE INTERNAL "Have symbol memset")
+ set(LIBC_HAS_MODF "1" CACHE INTERNAL "Have symbol modf")
+ set(LIBC_HAS_MODFF "1" CACHE INTERNAL "Have symbol modff")
+ set(LIBC_HAS_POW "1" CACHE INTERNAL "Have symbol pow")
+ set(LIBC_HAS_POWF "1" CACHE INTERNAL "Have symbol powf")
+ set(LIBC_HAS_PUTENV "1" CACHE INTERNAL "Have symbol putenv")
+ set(LIBC_HAS_REALLOC "1" CACHE INTERNAL "Have symbol realloc")
+ set(LIBC_HAS_RINDEX "1" CACHE INTERNAL "Have symbol rindex")
+ set(LIBC_HAS_ROUND "1" CACHE INTERNAL "Have symbol round")
+ set(LIBC_HAS_ROUNDF "1" CACHE INTERNAL "Have symbol roundf")
+ set(LIBC_HAS_SCALBN "1" CACHE INTERNAL "Have symbol scalbn")
+ set(LIBC_HAS_SCALBNF "1" CACHE INTERNAL "Have symbol scalbnf")
+ set(LIBC_HAS_SETENV "1" CACHE INTERNAL "Have symbol setenv")
+ set(LIBC_HAS_SIGNAL_H "1" CACHE INTERNAL "Have include signal.h")
+ set(LIBC_HAS_SIN "1" CACHE INTERNAL "Have symbol sin")
+ set(LIBC_HAS_SINF "1" CACHE INTERNAL "Have symbol sinf")
+ set(LIBC_HAS_SQR "" CACHE INTERNAL "Have symbol sqr")
+ set(LIBC_HAS_SQRT "1" CACHE INTERNAL "Have symbol sqrt")
+ set(LIBC_HAS_SQRTF "1" CACHE INTERNAL "Have symbol sqrtf")
+ set(LIBC_HAS_SSCANF "1" CACHE INTERNAL "Have symbol sscanf")
+ set(LIBC_HAS_STDARG_H "1" CACHE INTERNAL "Have include stdarg.h")
+ set(LIBC_HAS_STDBOOL_H "1" CACHE INTERNAL "Have include stdbool.h")
+ set(LIBC_HAS_STDDEF_H "1" CACHE INTERNAL "Have include stddef.h")
+ set(LIBC_HAS_STDINT_H "1" CACHE INTERNAL "Have include stdint.h")
+ set(LIBC_HAS_STDIO_H "1" CACHE INTERNAL "Have include stdio.h")
+ set(LIBC_HAS_STDLIB_H "1" CACHE INTERNAL "Have include stdlib.h")
+ set(LIBC_HAS_STRCASESTR "1" CACHE INTERNAL "Have symbol strcasestr")
+ set(LIBC_HAS_STRCHR "1" CACHE INTERNAL "Have symbol strchr")
+ set(LIBC_HAS_STRCMP "1" CACHE INTERNAL "Have symbol strcmp")
+ set(LIBC_HAS_STRINGS_H "1" CACHE INTERNAL "Have include strings.h")
+ set(LIBC_HAS_STRING_H "1" CACHE INTERNAL "Have include string.h")
+ set(LIBC_HAS_STRLCAT "1" CACHE INTERNAL "Have symbol strlcat")
+ set(LIBC_HAS_STRLCPY "1" CACHE INTERNAL "Have symbol strlcpy")
+ set(LIBC_HAS_STRLEN "1" CACHE INTERNAL "Have symbol strlen")
+ set(LIBC_HAS_STRNCMP "1" CACHE INTERNAL "Have symbol strncmp")
+ set(LIBC_HAS_STRNLEN "1" CACHE INTERNAL "Have symbol strnlen")
+ set(LIBC_HAS_STRNSTR "" CACHE INTERNAL "Have symbol strnstr")
+ set(LIBC_HAS_STRPBRK "1" CACHE INTERNAL "Have symbol strpbrk")
+ set(LIBC_HAS_STRRCHR "1" CACHE INTERNAL "Have symbol strrchr")
+ set(LIBC_HAS_STRSTR "1" CACHE INTERNAL "Have symbol strstr")
+ set(LIBC_HAS_STRTOD "1" CACHE INTERNAL "Have symbol strtod")
+ set(LIBC_HAS_STRTOK_R "1" CACHE INTERNAL "Have symbol strtok_r")
+ set(LIBC_HAS_STRTOL "1" CACHE INTERNAL "Have symbol strtol")
+ set(LIBC_HAS_STRTOLL "1" CACHE INTERNAL "Have symbol strtoll")
+ set(LIBC_HAS_STRTOUL "1" CACHE INTERNAL "Have symbol strtoul")
+ set(LIBC_HAS_STRTOULL "1" CACHE INTERNAL "Have symbol strtoull")
+ set(LIBC_HAS_SYS_TYPES_H "1" CACHE INTERNAL "Have include sys/types.h")
+ set(LIBC_HAS_TAN "1" CACHE INTERNAL "Have symbol tan")
+ set(LIBC_HAS_TANF "1" CACHE INTERNAL "Have symbol tanf")
+ set(LIBC_HAS_TIME_H "1" CACHE INTERNAL "Have include time.h")
+ set(LIBC_HAS_TRUNC "1" CACHE INTERNAL "Have symbol trunc")
+ set(LIBC_HAS_TRUNCF "1" CACHE INTERNAL "Have symbol truncf")
+ set(LIBC_HAS_UNSETENV "1" CACHE INTERNAL "Have symbol unsetenv")
+ set(LIBC_HAS_VSNPRINTF "1" CACHE INTERNAL "Have symbol vsnprintf")
+ set(LIBC_HAS_VSSCANF "1" CACHE INTERNAL "Have symbol vsscanf")
+ set(LIBC_HAS_WCHAR_H "1" CACHE INTERNAL "Have include wchar.h")
+ set(LIBC_HAS_WCSCMP "1" CACHE INTERNAL "Have symbol wcscmp")
+ set(LIBC_HAS_WCSDUP "1" CACHE INTERNAL "Have symbol wcsdup")
+ set(LIBC_HAS_WCSLCAT "1" CACHE INTERNAL "Have symbol wcslcat")
+ set(LIBC_HAS_WCSLCPY "1" CACHE INTERNAL "Have symbol wcslcpy")
+ set(LIBC_HAS_WCSLEN "1" CACHE INTERNAL "Have symbol wcslen")
+ set(LIBC_HAS_WCSNCMP "1" CACHE INTERNAL "Have symbol wcsncmp")
+ set(LIBC_HAS_WCSNLEN "1" CACHE INTERNAL "Have symbol wcsnlen")
+ set(LIBC_HAS_WCSSTR "1" CACHE INTERNAL "Have symbol wcsstr")
+ set(LIBC_HAS_WCSTOL "1" CACHE INTERNAL "Have symbol wcstol")
+ set(LIBC_HAS__EXIT "1" CACHE INTERNAL "Have symbol _Exit")
+ set(LIBC_HAS__I64TOA "" CACHE INTERNAL "Have symbol _i64toa")
+ set(LIBC_HAS__LTOA "" CACHE INTERNAL "Have symbol _ltoa")
+ set(LIBC_HAS__STRREV "" CACHE INTERNAL "Have symbol _strrev")
+ set(LIBC_HAS__UI64TOA "" CACHE INTERNAL "Have symbol _ui64toa")
+ set(LIBC_HAS__ULTOA "" CACHE INTERNAL "Have symbol _ultoa")
+ set(LIBC_HAS__WCSDUP "" CACHE INTERNAL "Have symbol _wcsdup")
+ set(LIBC_IS_GLIBC "" CACHE INTERNAL "Have symbol __GLIBC__")
+ set(_ALLOCA_IN_MALLOC_H "" CACHE INTERNAL "Have symbol _alloca")
+ set(HAVE_GCC_WALL "1" CACHE INTERNAL "Test HAVE_GCC_WALL")
+ set(HAVE_GCC_WUNDEF "1" CACHE INTERNAL "Test HAVE_GCC_WUNDEF")
+ set(HAVE_GCC_WFLOAT_CONVERSION "1" CACHE INTERNAL "Test HAVE_GCC_WFLOAT_CONVERSION")
+ set(HAVE_GCC_NO_STRICT_ALIASING "1" CACHE INTERNAL "Test HAVE_GCC_NO_STRICT_ALIASING")
+ set(HAVE_GCC_WDOCUMENTATION "" CACHE INTERNAL "Test HAVE_GCC_WDOCUMENTATION")
+ set(HAVE_GCC_WDOCUMENTATION_UNKNOWN_COMMAND "" CACHE INTERNAL "Test HAVE_GCC_WDOCUMENTATION_UNKNOWN_COMMAND")
+ set(HAVE_GCC_COMMENT_BLOCK_COMMANDS "" CACHE INTERNAL "Test HAVE_GCC_COMMENT_BLOCK_COMMANDS")
+ set(HAVE_GCC_WSHADOW "1" CACHE INTERNAL "Test HAVE_GCC_WSHADOW")
+ set(HAVE_GCC_WUNUSED_LOCAL_TYPEDEFS "1" CACHE INTERNAL "Test HAVE_GCC_WUNUSED_LOCAL_TYPEDEFS")
+ set(HAVE_GCC_WIMPLICIT_FALLTHROUGH "1" CACHE INTERNAL "Test HAVE_GCC_WIMPLICIT_FALLTHROUGH")
+ set(HAVE_GCC_FVISIBILITY "1" CACHE INTERNAL "Test HAVE_GCC_FVISIBILITY")
+ set(HAVE_ST_MTIM "1" CACHE INTERNAL "Test HAVE_ST_MTIM")
+ set(HAVE_O_CLOEXEC "1" CACHE INTERNAL "Test HAVE_O_CLOEXEC")
+ set(COMPILER_SUPPORTS_FDIAGNOSTICS_COLOR "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_FDIAGNOSTICS_COLOR")
+ set(COMPILER_SUPPORTS_GCC_ATOMICS "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_GCC_ATOMICS")
+ set(HAVE_WL_VERSION_SCRIPT "1" CACHE INTERNAL "Test HAVE_WL_VERSION_SCRIPT")
+ set(LINKER_SUPPORTS_WL_NO_UNDEFINED "1" CACHE INTERNAL "Test LINKER_SUPPORTS_WL_NO_UNDEFINED")
+ set(ICONV_IN_LIBC "" CACHE INTERNAL "Test ICONV_IN_LIBC")
+ set(ICONV_IN_LIBICONV "" CACHE INTERNAL "Test ICONV_IN_LIBICONV")
+ set(LIBC_HAS_WORKING_LIBUNWIND "" CACHE INTERNAL "Test LIBC_HAS_WORKING_LIBUNWIND")
+ set(LIBUNWIND_HAS_WORKINGLIBUNWIND "" CACHE INTERNAL "Test LIBUNWIND_HAS_WORKINGLIBUNWIND")
+ set(HAVE_GETPAGESIZE "1" CACHE INTERNAL "Have symbol getpagesize")
+ set(HAVE_SIGACTION "1" CACHE INTERNAL "Have symbol sigaction")
+ set(HAVE_SA_SIGACTION "1" CACHE INTERNAL "Have symbol sa_sigaction")
+ set(HAVE_SETJMP "1" CACHE INTERNAL "Have symbol setjmp")
+ set(HAVE_NANOSLEEP "1" CACHE INTERNAL "Have symbol nanosleep")
+ set(HAVE_GMTIME_R "1" CACHE INTERNAL "Have symbol gmtime_r")
+ set(HAVE_LOCALTIME_R "1" CACHE INTERNAL "Have symbol localtime_r")
+ set(HAVE_NL_LANGINFO "1" CACHE INTERNAL "Have symbol nl_langinfo")
+ set(HAVE_SYSCONF "1" CACHE INTERNAL "Have symbol sysconf")
+ set(HAVE_SYSCTLBYNAME "" CACHE INTERNAL "Have symbol sysctlbyname")
+ set(HAVE_GETAUXVAL "" CACHE INTERNAL "Have symbol getauxval")
+ set(HAVE_ELF_AUX_INFO "" CACHE INTERNAL "Have symbol elf_aux_info")
+ set(HAVE_POLL "1" CACHE INTERNAL "Have symbol poll")
+ set(HAVE_MEMFD_CREATE "" CACHE INTERNAL "Have symbol memfd_create")
+ set(HAVE_POSIX_FALLOCATE "1" CACHE INTERNAL "Have symbol posix_fallocate")
+ set(HAVE_DLOPEN_IN_LIBC "1" CACHE INTERNAL "Have symbol dlopen")
+ set(HAVE_FDATASYNC "" CACHE INTERNAL "Have symbol fdatasync")
+ set(HAVE_GETHOSTNAME "1" CACHE INTERNAL "Have symbol gethostname")
+ set(HAVE_SIGTIMEDWAIT "1" CACHE INTERNAL "Have symbol sigtimedwait")
+ set(HAVE_PPOLL "1" CACHE INTERNAL "Have symbol ppoll")
+ set(HAVE_POSIX_SPAWN "1" CACHE INTERNAL "Have symbol posix_spawn")
+ set(HAVE_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR "" CACHE INTERNAL "Have symbol posix_spawn_file_actions_addchdir")
+ set(HAVE_POSIX_SPAWN_FILE_ACTIONS_ADDCHDIR_NP "1" CACHE INTERNAL "Have symbol posix_spawn_file_actions_addchdir_np")
+ set(LIBC_HAS_VFORK "1" CACHE INTERNAL "Have symbol vfork")
+ set(HAVE_GETRESUID "" CACHE INTERNAL "Have symbol getresuid")
+ set(HAVE_GETRESGID "" CACHE INTERNAL "Have symbol getresgid")
+ set(HAVE_LIBUDEV_H "" CACHE INTERNAL "Have include libudev.h")
+ set(HAVE_WFORMAT "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_WFORMAT")
+ set(HAVE_WFORMAT_OVERFLOW "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_WFORMAT_OVERFLOW")
+ set(HAVE_WFORMAT_EXTRA_ARGS "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_WFORMAT_EXTRA_ARGS")
+ set(COMPILER_SUPPORTS_FCOLOR_DIAGNOSTICS "1" CACHE INTERNAL "Test COMPILER_SUPPORTS_FCOLOR_DIAGNOSTICS")
+ set(HAVE_PTHREAD_H "1" CACHE INTERNAL "Test HAVE_PTHREAD_H")
+ set(HAVE_PTHREAD_NP_H "" CACHE INTERNAL "Test HAVE_PTHREAD_NP_H")
+ set(HAVE_PTHREADS "1" CACHE INTERNAL "Test HAVE_PTHREADS")
+ set(HAVE_PTHREADS_SEM "1" CACHE INTERNAL "Test HAVE_PTHREADS_SEM")
+ set(HAVE_PTHREAD_SETNAME_NP "1" CACHE INTERNAL "Test HAVE_PTHREAD_SETNAME_NP")
+ set(HAVE_RECURSIVE_MUTEXES "1" CACHE INTERNAL "Test HAVE_RECURSIVE_MUTEXES")
+ set(COMPILER_HAS_SEM_TIMEDWAIT "1" CACHE INTERNAL "Test COMPILER_HAS_SEM_TIMEDWAIT")
+ endfunction()
+endif()