cmake/nc.cmake

35 lines
1.1 KiB
CMake

if (NOT AUTOCONF_DEFINES)
add_definitions(-DPACKAGE="${PROJECT_NAME}")
add_definitions(-DPACKAGE_VERSION="${PROJECT_VERSION}")
add_definitions(-DPACKAGE_NAME="${PROJECT_NAME}")
add_definitions(-DPACKAGE_STRING="${PROJECT_NAME} ${PROJECT_VERSION}")
set (AUTOCONF_DEFINES 1)
endif()
# Unconditionally link pthreads in. Some projects won't need it, but most
# will in some capacity if only through implied dependency (like thread pools).
set (THREADS_PREFER_PTHREAD_FLAG ON)
find_package (Threads REQUIRED)
link_libraries (Threads::Threads)
# Set the variable NC_CMAKE_BASE to the root path of this collection of cmake
# files so that we can reliably point to soure files contained therein
# (eg, the search_lib.cpp tests and friends).
foreach (d ${CMAKE_MODULE_PATH})
if (EXISTS "${d}/nc.cmake")
set (NC_CMAKE_BASE "${d}")
break()
endif ()
endforeach()
if (NOT NC_CMAKE_BASE)
message (FATAL_ERROR "Unable to locate the NC CMake directory")
endif ()
include (nc_cxx)
include (nc_sanitizer)
include (nc_platform)
include (nc_optimisation)
include (nc_warnings)