11
2- cmake_minimum_required (VERSION  3.15.1 )
2+ cmake_minimum_required (VERSION  3.26...3.29 )
33
44list (APPEND  CMAKE_MODULE_PATH  ${CMAKE_CURRENT_SOURCE_DIR} /cmake/modules)
55
6- # NOTE(compnerd) enable CMP0091 - select MSVC runtime based on 
7- # CMAKE_MSVC_RUNTIME_LIBRARY.  Requires CMake 3.15 or newer. 
8- if (POLICY  CMP0091)
9-   cmake_policy (SET CMP0091 NEW)
10- endif ()
11- 
126project (dispatch
137  VERSION  1.3
148  LANGUAGES C CXX)
159
1610set (CMAKE_POSITION_INDEPENDENT_CODE  YES )
1711
18- if ("${CMAKE_C_SIMULATE_ID} "  STREQUAL  "MSVC" )
19-   include (ClangClCompileRules)
20- endif ()
21- 
22- if (CMAKE_SYSTEM_NAME  STREQUAL  Windows)
12+ if (WIN32 )
2313  include (CheckCSourceCompiles)
2414  include (CheckSymbolExists)
2515
@@ -138,7 +128,7 @@ set(USE_LIBDISPATCH_INIT_CONSTRUCTOR ${ENABLE_DISPATCH_INIT_CONSTRUCTOR})
138128
139129option (ENABLE_DTRACE "enable dtrace support"  "" )
140130
141- if (CMAKE_SYSTEM_NAME   STREQUAL  Darwin  OR  CMAKE_SYSTEM_NAME   STREQUAL  FreeBSD )
131+ if (APPLE   OR  BSD )
142132  set (ENABLE_INTERNAL_PTHREAD_WORKQUEUES_DEFAULT OFF )
143133else ()
144134  set (ENABLE_INTERNAL_PTHREAD_WORKQUEUES_DEFAULT ON )
@@ -182,7 +172,7 @@ if(__BUILTIN_TRAP)
182172  set (HAVE_NORETURN_BUILTIN_TRAP 1)
183173endif ()
184174
185- if (NOT  CMAKE_SYSTEM_NAME   STREQUAL  Android )
175+ if (NOT  ANDROID )
186176  find_package (LibRT)
187177endif ()
188178
@@ -237,12 +227,12 @@ if(HAVE_MACH)
237227else ()
238228  set (USE_MACH_SEM 0)
239229endif ()
240- if (CMAKE_SYSTEM_NAME   STREQUAL  Windows )
230+ if (WIN32 )
241231  add_compile_definitions ($<$<COMPILE_LANGUAGE:C,CXX>:USE_WIN32_SEM>)
242232endif ()
243233check_library_exists(pthread sem_init ""  USE_POSIX_SEM)
244234# NOTE: android has not always provided a libpthread, but uses the pthreads API 
245- if (CMAKE_SYSTEM_NAME   STREQUAL  Android )
235+ if (ANDROID )
246236  set (USE_POSIX_SEM 1)
247237endif ()
248238
@@ -272,11 +262,11 @@ if (HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME)
272262endif ()
273263check_symbol_exists(__printflike "bsd/sys/cdefs.h"  HAVE_PRINTFLIKE)
274264
275- if (CMAKE_SYSTEM_NAME   STREQUAL  Android )
265+ if (ANDROID )
276266  set (ENABLE_DTRACE_DEFAULT OFF )
277267endif ()
278268
279- if (CMAKE_SYSTEM_NAME   STREQUAL  FreeBSD )
269+ if (BSD )
280270  add_compile_definitions ($<$<COMPILE_LANGUAGE:C,CXX>:_WITH_DPRINTF>)
281271endif ()
282272
@@ -299,7 +289,7 @@ if(leaks_EXECUTABLE)
299289endif ()
300290
301291
302- if (CMAKE_SYSTEM_NAME   STREQUAL  Darwin )
292+ if (APPLE )
303293  add_compile_options ($<:$<COMPILE_LANGUAGE:C,CXX>:-fmodule-map-file=${PROJECT_SOURCE_DIR} /dispatch/darwin/module.modulemap>
304294                      $<:$<COMPILE_LANGUAGE:C,CXX>:-fmodule-map-file=${PROJECT_SOURCE_DIR} /private /darwin/module.modulemap>)
305295else ()
@@ -314,7 +304,7 @@ add_compile_definitions($<$<COMPILE_LANGUAGE:C,CXX>:HAVE_CONFIG_H>)
314304
315305if (ENABLE_SWIFT)
316306  if (NOT  SWIFT_SYSTEM_NAME)
317-     if (CMAKE_SYSTEM_NAME   STREQUAL  Darwin )
307+     if (APPLE )
318308      set (SWIFT_SYSTEM_NAME macosx)
319309    else ()
320310      set (SWIFT_SYSTEM_NAME "$<LOWER_CASE:${CMAKE_SYSTEM_NAME} >" )
0 commit comments