From 8b28e38942ce8b61966da90af644c9948a007eda Mon Sep 17 00:00:00 2001 From: "Aaron M. Ucko" Date: Sun, 30 Mar 2025 17:39:57 -0400 Subject: options.cmake: Check Threads_FOUND, not CMAKE_HAVE_THREADS_LIBRARY The former's been available since CMake v2.8 and documented since v3.17; the latter was never documented and quietly went away in CMake v3.24. --- CMake/options.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'CMake') diff --git a/CMake/options.cmake b/CMake/options.cmake index d2fa392f7..8411b92ec 100644 --- a/CMake/options.cmake +++ b/CMake/options.cmake @@ -739,11 +739,11 @@ if(FLTK_USE_PTHREADS) include(FindThreads) - if(CMAKE_HAVE_THREADS_LIBRARY) + if(Threads_FOUND) add_definitions("-D_THREAD_SAFE -D_REENTRANT") set(USE_THREADS 1) set(FLTK_THREADS_FOUND TRUE) - endif(CMAKE_HAVE_THREADS_LIBRARY) + endif(Threads_FOUND) if(CMAKE_USE_PTHREADS_INIT AND NOT WIN32) set(HAVE_PTHREAD 1) -- cgit v1.2.3 From 794d493eb685674a964cee1b68d81ee455987252 Mon Sep 17 00:00:00 2001 From: Albrecht Schlosser Date: Wed, 2 Apr 2025 19:59:56 +0200 Subject: CMake: check version for some properties in fl_debug_target() Debug only, if fl_debug_target() is used: Prior to CMake 3.19 some properties of "INTERFACE_LIBRARY targets" can't be read with get_property(). These properties are now excluded if the CMake version is lower than 3.19. --- CMake/fl_debug_var.cmake | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'CMake') diff --git a/CMake/fl_debug_var.cmake b/CMake/fl_debug_var.cmake index 815e97dc1..d583d7d0c 100644 --- a/CMake/fl_debug_var.cmake +++ b/CMake/fl_debug_var.cmake @@ -117,16 +117,20 @@ function(fl_debug_target name) ### INTERFACE_LOCATION) ### endif() - list(APPEND _props + if(NOT _type STREQUAL "INTERFACE_LIBRARY" OR CMAKE_VERSION VERSION_GREATER_EQUAL "3.19") + # Before 3.19: "INTERFACE_LIBRARY targets may only have whitelisted properties" + list(APPEND _props INCLUDE_DIRECTORIES LINK_DIRECTORIES LINK_LIBRARIES - COMPILE_DEFINITIONS - INTERFACE_COMPILE_DEFINITIONS - INTERFACE_COMPILE_FEATURES - INTERFACE_INCLUDE_DIRECTORIES - INTERFACE_LINK_DIRECTORIES - INTERFACE_LINK_LIBRARIES) + COMPILE_DEFINITIONS) + endif() + + list(APPEND _props + INTERFACE_COMPILE_DEFINITIONS + INTERFACE_INCLUDE_DIRECTORIES + INTERFACE_LINK_DIRECTORIES + INTERFACE_LINK_LIBRARIES) foreach(prop ${_props}) get_target_property(${prop} ${name} ${prop}) -- cgit v1.2.3