From d906f2dcc5de59adde8335107d7fc9631a47face Mon Sep 17 00:00:00 2001 From: Allen Byrne Date: Wed, 2 May 2018 15:42:38 -0500 Subject: refactor link flags to interface --- fortran/examples/CMakeLists.txt | 36 +++++++------- fortran/src/CMakeLists.txt | 21 +++++---- fortran/test/CMakeLists.txt | 97 ++++++++++++++++++++------------------ fortran/testpar/CMakeLists.txt | 6 +-- hl/fortran/examples/CMakeLists.txt | 6 +-- hl/fortran/src/CMakeLists.txt | 14 +++--- hl/fortran/test/CMakeLists.txt | 48 +++++++++---------- 7 files changed, 119 insertions(+), 109 deletions(-) diff --git a/fortran/examples/CMakeLists.txt b/fortran/examples/CMakeLists.txt index ad3c9c6..32f22e4 100644 --- a/fortran/examples/CMakeLists.txt +++ b/fortran/examples/CMakeLists.txt @@ -46,14 +46,14 @@ foreach (example ${examples}) target_link_libraries (f90_ex_${example} PRIVATE ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (f90_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (f90_ex_${example}-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90) @@ -69,14 +69,14 @@ foreach (example ${examples}) target_link_libraries (f90_ex_${example}-shared PRIVATE ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (f90_ex_${example}-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () endforeach () @@ -94,14 +94,14 @@ foreach (example ${F2003_examples}) target_link_libraries (f03_ex_${example} PRIVATE ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (f03_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/fortran03 Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (f03_ex_${example}-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/${example}.f90) @@ -117,14 +117,14 @@ foreach (example ${F2003_examples}) target_link_libraries (f03_ex_${example}-shared PRIVATE ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (f03_ex_${example}-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/fortran03 Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () endforeach () @@ -142,14 +142,14 @@ if (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND) target_link_libraries (f90_ex_ph5example PRIVATE ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (f90_ex_ph5example PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (f90_ex_ph5example-shared ${HDF5_F90_EXAMPLES_SOURCE_DIR}/ph5example.f90) @@ -165,14 +165,14 @@ if (H5_HAVE_PARALLEL AND MPI_Fortran_FOUND) target_link_libraries (f90_ex_ph5example-shared PRIVATE ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (f90_ex_ph5example-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () endif () diff --git a/fortran/src/CMakeLists.txt b/fortran/src/CMakeLists.txt index f21a9ba..c4df92f 100644 --- a/fortran/src/CMakeLists.txt +++ b/fortran/src/CMakeLists.txt @@ -43,16 +43,21 @@ set (Fortran_COMPILER_ID CMAKE_Fortran_COMPILER_ID) # H5fort_type_defines.h used to generate H5f90i_gen.h + H5fortran_types.F90 #----------------------------------------------------------------------------- -add_executable (H5_buildiface - ${HDF5_F90_SRC_SOURCE_DIR}/H5_buildiface.F90 +add_executable (H5_buildiface ${HDF5_F90_SRC_SOURCE_DIR}/H5_buildiface.F90) +target_include_directories(H5_buildiface + PRIVATE + "${HDF5_BINARY_DIR};${HDF5_F90_BINARY_DIR}" +) +if (BUILD_SHARED_LIBS) + target_compile_definitions(H5_buildiface + PRIVATE + $<$:/MT> ) -target_include_directories(H5_buildiface PRIVATE "${HDF5_BINARY_DIR};${HDF5_F90_BINARY_DIR}") -if (WIN32 AND MSVC) - if (BUILD_SHARED_LIBS) - set_target_properties (H5_buildiface PROPERTIES COMPILE_FLAGS "/MT") - endif () - set_target_properties (H5_buildiface PROPERTIES LINK_FLAGS "-SUBSYSTEM:CONSOLE") endif () +target_link_libraries (H5_buildiface + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> +) set_target_properties (H5_buildiface PROPERTIES LINKER_LANGUAGE Fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY} diff --git a/fortran/test/CMakeLists.txt b/fortran/test/CMakeLists.txt index 13cea5a..e3f68d1 100644 --- a/fortran/test/CMakeLists.txt +++ b/fortran/test/CMakeLists.txt @@ -6,16 +6,21 @@ project (HDF5_FORTRAN_TESTS C Fortran) # H5_test_buildiface.F90 used to generate various KIND test interfaces #----------------------------------------------------------------------------- -add_executable (H5_test_buildiface - ${HDF5_F90_SRC_DIR}/test/H5_test_buildiface.F90 - ) -target_include_directories(H5_test_buildiface PRIVATE ${HDF5_BINARY_DIR} ${HDF5_F90_BINARY_DIR}) -if (WIN32 AND MSVC) - if (BUILD_SHARED_LIBS) - set_target_properties (H5_test_buildiface PROPERTIES COMPILE_FLAGS "/MT") - endif () - set_target_properties (H5_test_buildiface PROPERTIES LINK_FLAGS "-SUBSYSTEM:CONSOLE") +add_executable (H5_test_buildiface ${HDF5_F90_SRC_DIR}/test/H5_test_buildiface.F90) +target_include_directories(H5_test_buildiface + PRIVATE + ${HDF5_BINARY_DIR} ${HDF5_F90_BINARY_DIR} +) +if (BUILD_SHARED_LIBS) + target_compile_definitions(H5_test_buildiface + PRIVATE + $<$:/MT> + ) endif () +target_link_libraries (H5_test_buildiface + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> +) set_target_properties (H5_test_buildiface PROPERTIES LINKER_LANGUAGE Fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY} @@ -128,14 +133,14 @@ target_compile_definitions(${HDF5_F90_TEST_LIB_TARGET} target_link_libraries (${HDF5_F90_TEST_LIB_TARGET} PUBLIC ${HDF5_F90_C_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (${HDF5_F90_TEST_LIB_TARGET} PROPERTIES FOLDER libraries/test/fortran LINKER_LANGUAGE Fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) H5_SET_LIB_OPTIONS (${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_TEST_LIB_NAME} STATIC 0) add_dependencies(${HDF5_F90_TEST_LIB_TARGET} H5testgen) @@ -159,15 +164,15 @@ if (BUILD_SHARED_LIBS) target_link_libraries (${HDF5_F90_TEST_LIBSH_TARGET} PUBLIC ${HDF5_F90_C_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> + $<$:"-DLL"> ) set_target_properties (${HDF5_F90_TEST_LIBSH_TARGET} PROPERTIES FOLDER libraries/test/fortran LINKER_LANGUAGE Fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-DLL"> - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) H5_SET_LIB_OPTIONS (${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_TEST_LIB_NAME} SHARED "F") add_dependencies(${HDF5_F90_TEST_LIBSH_TARGET} H5testgenSH) @@ -205,14 +210,14 @@ target_compile_options(testhdf5_fortran target_link_libraries (testhdf5_fortran PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (testhdf5_fortran PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (testhdf5_fortran ${HDF5_F90_TEST_LIB_TARGET}) @@ -246,14 +251,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (testhdf5_fortran-shared PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (testhdf5_fortran-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (testhdf5_fortran-shared ${HDF5_F90_TEST_LIBSH_TARGET}) endif () @@ -278,14 +283,14 @@ target_compile_options(testhdf5_fortran_1_8 target_link_libraries (testhdf5_fortran_1_8 PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (testhdf5_fortran_1_8 PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (testhdf5_fortran_1_8 ${HDF5_F90_TEST_LIB_TARGET}) @@ -310,14 +315,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (testhdf5_fortran_1_8-shared PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (testhdf5_fortran_1_8-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (testhdf5_fortran_1_8-shared ${HDF5_F90_TEST_LIBSH_TARGET}) endif () @@ -344,14 +349,14 @@ target_compile_options(fortranlib_test_F03 target_link_libraries (fortranlib_test_F03 PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (fortranlib_test_F03 PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (fortranlib_test_F03 ${HDF5_F90_TEST_LIB_TARGET}) @@ -378,14 +383,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (fortranlib_test_F03-shared PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (fortranlib_test_F03-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (fortranlib_test_F03-shared ${HDF5_F90_TEST_LIBSH_TARGET}) endif () @@ -403,14 +408,14 @@ target_compile_options(fflush1 target_link_libraries (fflush1 PRIVATE ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_LIB_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (fflush1 PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (fflush1 ${HDF5_F90_TEST_LIB_TARGET}) @@ -428,14 +433,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (fflush1-shared PRIVATE ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (fflush1-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (fflush1-shared ${HDF5_F90_TEST_LIBSH_TARGET}) endif () @@ -453,14 +458,14 @@ target_compile_options (fflush2 target_link_libraries (fflush2 PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (fflush2 PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (fflush2 ${HDF5_F90_TEST_LIB_TARGET}) @@ -478,14 +483,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (fflush2-shared PRIVATE ${HDF5_F90_TEST_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_LIBSH_TARGET} $<$:ws2_32.lib> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (fflush2-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) add_dependencies (fflush2-shared ${HDF5_F90_TEST_LIBSH_TARGET}) endif () diff --git a/fortran/testpar/CMakeLists.txt b/fortran/testpar/CMakeLists.txt index b0a1820..86ce11e 100644 --- a/fortran/testpar/CMakeLists.txt +++ b/fortran/testpar/CMakeLists.txt @@ -28,13 +28,13 @@ target_link_libraries (parallel_test PRIVATE ${HDF5_F90_TEST_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} ${LINK_Fortran_LIBS} $<$:"ws2_32.lib"> + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (parallel_test PROPERTIES FOLDER test/fortran LINKER_LANGUAGE Fortran - LINK_FLAGS - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () diff --git a/hl/fortran/examples/CMakeLists.txt b/hl/fortran/examples/CMakeLists.txt index a218de5..bdd852a 100644 --- a/hl/fortran/examples/CMakeLists.txt +++ b/hl/fortran/examples/CMakeLists.txt @@ -19,13 +19,13 @@ foreach (example ${examples}) target_link_libraries (hl_f90_ex_${example} PRIVATE ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_ex_${example} PROPERTIES LINKER_LANGUAGE Fortran FOLDER examples/hl/fortran - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endforeach () diff --git a/hl/fortran/src/CMakeLists.txt b/hl/fortran/src/CMakeLists.txt index b032956..ef8e5fd 100644 --- a/hl/fortran/src/CMakeLists.txt +++ b/hl/fortran/src/CMakeLists.txt @@ -163,14 +163,14 @@ target_compile_definitions(${HDF5_HL_F90_LIB_TARGET} target_link_libraries (${HDF5_HL_F90_LIB_TARGET} PUBLIC ${HDF5_HL_F90_C_LIB_TARGET} ${HDF5_F90_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (${HDF5_HL_F90_LIB_TARGET} PROPERTIES FOLDER libraries/hl/fortran LINKER_LANGUAGE Fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/static - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) H5_SET_LIB_OPTIONS (${HDF5_HL_F90_LIB_TARGET} ${HDF5_HL_F90_LIB_NAME} STATIC 0) set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIB_TARGET}") @@ -199,15 +199,15 @@ if (BUILD_SHARED_LIBS) PRIVATE ${LINK_Fortran_LIBS} INTERFACE - $<$:"-DLL -DEF:${HDF5_HL_F90_SRC_BINARY_DIR}/hdf5_hl_fortrandll.def"> + $<$:"-DLL"> + $<$:"-DEF:${HDF5_HL_F90_SRC_BINARY_DIR}/hdf5_hl_fortrandll.def"> + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (${HDF5_HL_F90_LIBSH_TARGET} PROPERTIES FOLDER libraries/hl/fortran LINKER_LANGUAGE Fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) H5_SET_LIB_OPTIONS (${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_HL_F90_LIB_NAME} SHARED "HL_F") set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_HL_F90_LIBSH_TARGET}") diff --git a/hl/fortran/test/CMakeLists.txt b/hl/fortran/test/CMakeLists.txt index a639d9c..7721e0f 100644 --- a/hl/fortran/test/CMakeLists.txt +++ b/hl/fortran/test/CMakeLists.txt @@ -18,13 +18,13 @@ target_compile_options(hl_f90_tstds target_link_libraries (hl_f90_tstds PRIVATE ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tstds PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/hl/fortran - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (hl_f90_tstds-shared tstds.F90) @@ -40,14 +40,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (hl_f90_tstds-shared PRIVATE ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tstds-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/hl/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () @@ -64,13 +64,13 @@ target_compile_options(hl_f90_tstlite target_link_libraries (hl_f90_tstlite PRIVATE ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tstlite PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/hl/fortran - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (hl_f90_tstlite-shared tstlite.F90) @@ -86,14 +86,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (hl_f90_tstlite-shared PRIVATE ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tstlite-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/hl/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () @@ -110,13 +110,13 @@ target_compile_options(hl_f90_tstimage target_link_libraries (hl_f90_tstimage PRIVATE ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tstimage PROPERTIES FOLDER test/hl/fortran LINKER_LANGUAGE Fortran - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (hl_f90_tstimage-shared tstimage.F90) @@ -132,14 +132,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (hl_f90_tstimage-shared PRIVATE ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tstimage-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/hl/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () @@ -156,13 +156,13 @@ target_compile_options(hl_f90_tsttable target_link_libraries (hl_f90_tsttable PRIVATE ${HDF5_HL_F90_LIB_TARGET} ${HDF5_F90_LIB_TARGET} ${HDF5_F90_TEST_LIB_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tsttable PROPERTIES FOLDER test/hl/fortran LINKER_LANGUAGE Fortran - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) if (BUILD_SHARED_LIBS) add_executable (hl_f90_tsttable-shared tsttable.F90) @@ -178,14 +178,14 @@ if (BUILD_SHARED_LIBS) target_link_libraries (hl_f90_tsttable-shared PRIVATE ${HDF5_HL_F90_LIBSH_TARGET} ${HDF5_F90_LIBSH_TARGET} ${HDF5_F90_TEST_LIBSH_TARGET} + INTERFACE + $<$:"-SUBSYSTEM:CONSOLE"> + $<$:${WIN_LINK_FLAGS}> ) set_target_properties (hl_f90_tsttable-shared PROPERTIES LINKER_LANGUAGE Fortran FOLDER test/hl/fortran Fortran_MODULE_DIRECTORY ${CMAKE_Fortran_MODULE_DIRECTORY}/shared - LINK_FLAGS "" - $<$:"-SUBSYSTEM:CONSOLE"> - $<$:${WIN_LINK_FLAGS}> ) endif () -- cgit v0.12