aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCatherine <whitequark@whitequark.org>2023-02-23 07:59:45 +0000
committermyrtle <gatecat@ds0.me>2023-02-23 10:05:44 +0100
commit1809e18c7bb23d88ddb716482d72b3ce195a1b35 (patch)
tree339fbb63987436659b048b531772331265e0e221
parentebbaf8c08dbde251aa4f2809f296b20a7a2266a8 (diff)
downloadnextpnr-1809e18c7bb23d88ddb716482d72b3ce195a1b35.tar.gz
nextpnr-1809e18c7bb23d88ddb716482d72b3ce195a1b35.tar.bz2
nextpnr-1809e18c7bb23d88ddb716482d72b3ce195a1b35.zip
CMake: detect platform support for threads
-rw-r--r--CMakeLists.txt27
1 files changed, 13 insertions, 14 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4fba1219..f48a894c 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -44,28 +44,27 @@ endif()
set(Boost_NO_BOOST_CMAKE ON)
+find_package(Threads)
+if (Threads_FOUND)
+ find_package(TBB QUIET)
+ if (TBB_FOUND)
+ add_definitions(-DNEXTPNR_USE_TBB)
+ endif()
+else()
+ add_definitions(-DNPNR_DISABLE_THREADS)
+endif()
+
if(WASI)
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -lwasi-emulated-mman")
- set(USE_THREADS OFF)
add_definitions(
-DBOOST_EXCEPTION_DISABLE
-DBOOST_NO_EXCEPTIONS
- -DBOOST_SP_NO_ATOMIC_ACCESS
- -DBOOST_AC_DISABLE_THREADS
- -DBOOST_NO_CXX11_HDR_MUTEX
)
-else()
- set(USE_THREADS ON)
- find_package(TBB QUIET)
- if (TBB_FOUND)
- add_definitions(-DNEXTPNR_USE_TBB)
+ if (NOT Threads_FOUND)
+ add_definitions(-DBOOST_NO_CXX11_HDR_MUTEX)
endif()
endif()
-if (NOT USE_THREADS)
- add_definitions(-DNPNR_DISABLE_THREADS)
-endif()
-
set(link_param "")
if (STATIC_BUILD)
set(Boost_USE_STATIC_LIBS ON)
@@ -168,7 +167,7 @@ find_package(Sanitizers)
# List of Boost libraries to include
set(boost_libs filesystem program_options iostreams system)
-if (USE_THREADS)
+if (Threads_FOUND)
list(APPEND boost_libs thread)
endif()