11################################################################################
22# Preamble
3- cmake_minimum_required (VERSION 3.21 )
3+ cmake_minimum_required (VERSION 3.24 )
44
55# project and version must be on the same line so that the docs can extract it
6- project (micm VERSION 3.11 .0 LANGUAGES CXX )
6+ project (micm VERSION 3.12 .0 LANGUAGES CXX )
77
88if (NOT CMAKE_BUILD_TYPE )
99 set (CMAKE_BUILD_TYPE "Release" CACHE STRING
@@ -30,18 +30,12 @@ option(MICM_ENABLE_OPENMP "Enable OpenMP support" OFF)
3030option (MICM_ENABLE_COVERAGE "Enable code coverage output" OFF )
3131option (MICM_ENABLE_MEMCHECK "Enable memory checking in tests" OFF )
3232option (MICM_BUILD_DOCS "Build the documentation" OFF )
33- option (MICM_ENABLE_LLVM "Build with LLVM support for JIT-compiling" OFF )
3433option (MICM_ENABLE_TESTS "Build the tests" ON )
3534option (MICM_ENABLE_PROFILE "Profile MICM Solver" OFF )
35+ option (MICM_BUILD_SHARED_LIBS "Build micm_cuda as shared libraries" OFF )
3636set (MICM_DEFAULT_VECTOR_SIZE "4" CACHE STRING "Default size for vectorizable matrix types" )
3737set (MICM_GPU_TYPE "None" CACHE STRING "The GPU type being targeted" )
3838
39- # on ubuntu with clang, an incorrect version of the c++ standard library was being linked
40- if (${CMAKE_HOST_SYSTEM_NAME} MATCHES "Linux" AND "${CMAKE_CXX_COMPILER_ID} " STREQUAL "Clang" )
41- # If the compiler is Clang, use libc++
42- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++" )
43- endif ()
44-
4539# on Windows with MSVC, add the /bigobj flag to allow for large object files
4640if (${CMAKE_HOST_SYSTEM_NAME} MATCHES "Windows" AND "${CMAKE_CXX_COMPILER_ID} " STREQUAL "MSVC" )
4741 # If the compiler is MSVC or Clang on Windows, use /bigobj
@@ -74,8 +68,8 @@ if(PROJECT_IS_TOP_LEVEL AND MICM_ENABLE_TESTS)
7468 NAME coverage
7569 EXECUTABLE "ctest"
7670 EXCLUDE "${PROJECT_SOURCE_DIR} /test/*"
77- BASE_DIRECTORY "${PROJECT_SOURCE_DIR} /src" )
78-
71+ BASE_DIRECTORY "${PROJECT_SOURCE_DIR} /src"
72+ LCOV_ARGS "--ignore-errors" "mismatch" )
7973 endif ()
8074
8175 enable_testing ()
@@ -88,12 +82,4 @@ endif()
8882# only include packaging if we are the top level project being built
8983if (PROJECT_IS_TOP_LEVEL)
9084 add_subdirectory (packaging )
91- endif ()
92-
93- ################################################################################
94-
95- # on ubuntu with clang, an incorrect version of the c++ standard library was being linked
96- if (${CMAKE_HOST_SYSTEM_NAME} MATCHES "Linux" AND "${CMAKE_CXX_COMPILER_ID} " STREQUAL "Clang" )
97- # If the compiler is Clang, use libc++
98- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++" )
99- endif ()
85+ endif ()
0 commit comments