Skip to content

Commit d8a90aa

Browse files
authored
fix build and runtime issues with hash tests usinc c/c++ (#988)
1 parent 41a1cfc commit d8a90aa

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

test/CMakeLists.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,14 @@ if (NOT TARGET "test-drive::test-drive")
22
find_package("test-drive" REQUIRED)
33
endif()
44

5+
if(WIN32)
6+
if(CMAKE_Fortran_COMPILER_ID MATCHES "^Intel")
7+
add_link_options(/Qoption,link,/STACK:8388608)
8+
elseif(CMAKE_Fortran_COMPILER_ID STREQUAL GNU)
9+
add_link_options(-Wl,--stack,8388608)
10+
endif()
11+
endif()
12+
513
macro(ADDTEST name)
614
add_executable(test_${name} test_${name}.f90)
715
target_link_libraries(test_${name} "${PROJECT_NAME}" "test-drive::test-drive")

test/hash_functions/CMakeLists.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,21 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "^Intel")
2323
set(CMAKE_CXX_EXTENSIONS OFF)
2424

2525
set_target_properties(test_hash_functions PROPERTIES LINKER_LANGUAGE Fortran)
26+
27+
if(WIN32)
28+
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreadedDLL$<$<CONFIG:Debug>:Debug>")
29+
target_compile_options(
30+
test_hash_functions
31+
PRIVATE
32+
$<$<COMPILE_LANGUAGE:Fortran>:/libs:dll> )
33+
if (CMAKE_BUILD_TYPE STREQUAL "Debug" OR "RelWithDebInfo")
34+
target_link_options(test_hash_functions
35+
PRIVATE
36+
/Qoption,link,/NODEFAULTLIB:libcmt
37+
/Qoption,link,/NODEFAULTLIB:msvcrt.lib
38+
/Qoption,link,/NODEFAULTLIB:libifcoremt.lib )
39+
endif()
40+
endif()
2641
endif()
2742

2843
if(CMAKE_Fortran_COMPILER_ID STREQUAL GNU AND CMAKE_Fortran_COMPILER_VERSION VERSION_LESS 10.0)

0 commit comments

Comments
 (0)