Skip to content

Commit 04a2c57

Browse files
committed
CMake: Bump required versions
1 parent a8e7544 commit 04a2c57

File tree

39 files changed

+35
-201
lines changed

39 files changed

+35
-201
lines changed

CMakeLists.txt

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
1+
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
22

3-
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules")
3+
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/Modules")
44
include(DefaultOptions)
55
include(ConfigureVcpkg)
66

@@ -163,25 +163,19 @@ IF(NOT MR_EMSCRIPTEN)
163163
if(CMAKE_VERSION VERSION_GREATER_EQUAL 4.0)
164164
set(CMAKE_POLICY_VERSION_MINIMUM 3.5)
165165
endif()
166-
find_package(jsoncpp)
167-
IF(NOT JsonCpp_FOUND)
166+
find_package(jsoncpp QUIET)
167+
IF(NOT TARGET JsonCpp::JsonCpp)
168168
find_package(PkgConfig REQUIRED)
169169
pkg_check_modules(jsoncpp REQUIRED IMPORTED_TARGET jsoncpp)
170-
IF(CMAKE_VERSION VERSION_LESS 3.18)
171-
set_target_properties(PkgConfig::jsoncpp PROPERTIES IMPORTED_GLOBAL TRUE)
172-
ENDIF()
173170
add_library(JsonCpp::JsonCpp ALIAS PkgConfig::jsoncpp)
174171
ENDIF()
175172
ENDIF()
176173
ENDIF()
177174

178-
find_package(fmt)
179-
find_package(spdlog REQUIRED)
180-
find_package(TBB REQUIRED)
181-
IF(spdlog_VERSION VERSION_GREATER_EQUAL "1.7" AND fmt_VERSION VERSION_GREATER_EQUAL "7.0")
182-
add_compile_definitions(SPDLOG_FMT_EXTERNAL)
183-
ENDIF()
184-
add_compile_definitions(SPDLOG_COMPILED_LIB SPDLOG_SHARED_LIB)
175+
find_package(fmt 8 REQUIRED)
176+
find_package(spdlog 1.9 REQUIRED)
177+
find_package(TBB 2020.1 REQUIRED)
178+
add_compile_definitions(SPDLOG_COMPILED_LIB SPDLOG_SHARED_LIB SPDLOG_FMT_EXTERNAL)
185179
ENDIF() # NOT MR_EMSCRIPTEN
186180

187181
include_directories(${MESHLIB_THIRDPARTY_DIR}/parallel-hashmap)

cmake/Modules/ConfigureCuda.cmake

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11
IF(NOT CUDAToolkit_FOUND AND NOT CUDA_FOUND)
2-
IF(CMAKE_VERSION VERSION_GREATER_EQUAL 3.18)
3-
set(CMAKE_CXX_STANDARD ${MR_CXX_STANDARD})
4-
set(CMAKE_CXX_STANDARD_REQUIRED ON)
5-
62
IF(WIN32)
73
# For some reason setting C++20 on Windows appears to be ignored, so that even
84
# the single-argument version of `static_assert` doesn't compile (which is a C++17 feature).
@@ -42,44 +38,4 @@ IF(NOT CUDAToolkit_FOUND AND NOT CUDA_FOUND)
4238
ENDIF()
4339

4440
set(CUDART_LIBRARY CUDA::cudart_static)
45-
ELSE()
46-
# nvcc supports only c++20 and Cmake 3.16 from Ubuntu 20 does not support set(CMAKE_CUDA_STANDARD 20)
47-
set(CMAKE_CXX_STANDARD 20)
48-
set(CMAKE_CXX_STANDARD_REQUIRED ON)
49-
50-
# more info: https://gitlab.kitware.com/cmake/cmake/-/issues/23079
51-
IF(NOT DEFINED CMAKE_CUDA20_STANDARD_COMPILE_OPTION)
52-
set(CMAKE_CUDA20_STANDARD_COMPILE_OPTION "-std=c++20")
53-
set(CMAKE_CUDA20_EXTENSION_COMPILE_OPTION "-std=c++20")
54-
ENDIF()
55-
56-
set(CUDA_TOOLKIT_ROOT_DIR "/usr/local/cuda/")
57-
set(CMAKE_CUDA_PATH /usr/local/cuda/)
58-
set(CUDA_NVCC_EXECUTABLE ${CUDA_TOOLKIT_ROOT_DIR}/bin/nvcc)
59-
set(CMAKE_CUDA_COMPILER ${CUDA_TOOLKIT_ROOT_DIR}/bin/nvcc)
60-
61-
# without it we get "nvcc warning : The -std=c++20 flag is not supported with the configured host compiler. Flag will be ignored."
62-
# https://stackoverflow.com/q/77170793/7325599
63-
set(CMAKE_CUDA_HOST_COMPILER ${CMAKE_CXX_COMPILER})
64-
message("CMAKE_CXX_COMPILER=CMAKE_CUDA_HOST_COMPILER=${CMAKE_CUDA_HOST_COMPILER}")
65-
66-
# If the following line gives you this error: Could NOT find CUDA (missing: CUDA_NVCC_EXECUTABLE) (found suitable version "12.1", minimum required is "12")
67-
# That's because you ran this file twice. Make sure it runs at most once.
68-
find_package(CUDA 12 REQUIRED)
69-
70-
set(CMAKE_CUDA_FLAGS "${CMAKE_CUDA_FLAGS} \
71-
--std c++20 \
72-
-use_fast_math \
73-
-arch=sm_52 \
74-
-gencode=arch=compute_52,code=sm_52 \
75-
-gencode=arch=compute_60,code=sm_60 \
76-
-gencode=arch=compute_61,code=sm_61 \
77-
-gencode=arch=compute_70,code=sm_70 \
78-
-gencode=arch=compute_75,code=sm_75 \
79-
-gencode=arch=compute_75,code=compute_75"
80-
)
81-
set(CUDA_VERBOSE_BUILD ON)
82-
83-
set(CUDART_LIBRARY ${CUDA_LIBRARIES})
84-
ENDIF()
8541
ENDIF()

cmake/Modules/ConfigureHip.cmake

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
set(CMAKE_CXX_STANDARD ${MR_CXX_STANDARD})
2-
set(CMAKE_CXX_STANDARD_REQUIRED ON)
3-
41
set(CMAKE_HIP_STANDARD 20)
52
set(CMAKE_HIP_STANDARD_REQUIRED ON)
63

examples/c-examples/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
1+
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
22

33
project(cmake-c-examples C)
44

examples/cpp-examples/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
1+
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
22
set(CMAKE_CXX_STANDARD 20)
33
set(CMAKE_CXX_STANDARD_REQUIRED ON)
44

examples/cpp-samples/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
1+
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
22
set(CMAKE_CXX_STANDARD 20)
33
set(CMAKE_CXX_STANDARD_REQUIRED ON)
44

scripts/build_source.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,7 @@ if [ "${MESHLIB_BUILD_RELEASE}" = "ON" ]; then
144144
mkdir -p build/Release
145145
fi
146146
cd build/Release
147-
cmake -S ../.. -B . -D CMAKE_BUILD_TYPE=Release ${MR_CMAKE_OPTIONS} | tee ${logfile}
147+
cmake -S ../.. -B . -D CMAKE_BUILD_TYPE=Release ${MR_CMAKE_OPTIONS} $@ | tee ${logfile}
148148
cmake --build . -j ${NPROC} | tee ${logfile}
149149
cd ../..
150150
fi
@@ -155,7 +155,7 @@ if [ "${MESHLIB_BUILD_DEBUG}" = "ON" ]; then
155155
mkdir -p build/Debug
156156
fi
157157
cd build/Debug
158-
cmake -S ../.. -B . -D CMAKE_BUILD_TYPE=Debug ${MR_CMAKE_OPTIONS} | tee ${logfile}
158+
cmake -S ../.. -B . -D CMAKE_BUILD_TYPE=Debug ${MR_CMAKE_OPTIONS} $@ | tee ${logfile}
159159
cmake --build . -j ${NPROC} | tee ${logfile}
160160
cd ../..
161161
fi

scripts/install_brew_requirements.sh

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@
55
# This script installs requirements by `brew` if not already installed
66

77
requirements_file=requirements/macos.txt
8-
for req in `cat $requirements_file`
9-
do
10-
brew install $req
11-
done
8+
brew install $(cat $requirements_file | tr '\n' ' ')
129

1310
brew install pybind11
1411

source/EditableProject/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
1+
cmake_minimum_required(VERSION 3.18 FATAL_ERROR)
22
set(CMAKE_CXX_STANDARD ${MR_CXX_STANDARD})
33
set(CMAKE_CXX_STANDARD_REQUIRED ON)
44

5-
project EditableProject CXX)
5+
project(EditableProject CXX)
66

77
file(GLOB_RECURSE SOURCES "*.cpp")
88
file(GLOB_RECURSE HEADERS "*.h")

source/MRCommonPlugins/CMakeLists.txt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
cmake_minimum_required(VERSION 3.16 FATAL_ERROR)
2-
set(CMAKE_CXX_STANDARD ${MR_CXX_STANDARD})
3-
set(CMAKE_CXX_STANDARD_REQUIRED ON)
4-
51
project(MRCommonPlugins CXX)
62

73
file(GLOB_RECURSE SOURCES "*.cpp")

0 commit comments

Comments
 (0)