diff --git a/3rdParty/MarchingCubes/CMakePackage.txt b/3rdParty/MarchingCubes/CMakePackage.txt index bea0c0b7df77f75944c36260ff48bb9353fc8394..64f5dcd2028cfd7904187d7bac7131554e02b20c 100644 --- a/3rdParty/MarchingCubes/CMakePackage.txt +++ b/3rdParty/MarchingCubes/CMakePackage.txt @@ -2,5 +2,5 @@ GET_FILENAME_COMPONENT( CURRENT_DIR ${CMAKE_CURRENT_LIST_FILE} PATH) COLLECT_PACKAGE_DATA_WITH_OPTION(${CURRENT_DIR} ALL_SOURCES outOption outSourceGroupName) IF(${outOption}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DMC_CUBES ) + list(APPEND VF_COMPILER_DEFINITION MC_CUBES) ENDIF() diff --git a/CMake/CMakeCABMacros.cmake b/CMake/CMakeCABMacros.cmake index fb72274532aa74e828a9e07cdad420fe85a03f58..0012cb917a79a841a21a1613a75c0c80f4ad42c1 100644 --- a/CMake/CMakeCABMacros.cmake +++ b/CMake/CMakeCABMacros.cmake @@ -63,15 +63,26 @@ INCLUDE(${VF_CMAKE_DIR}/CMakeSetCompilerFlags.cmake) ############################################################################################################### # Reset the compiler and linker flags ############################################################################################################### -SET(CAB_ADDTIONAL_COMPILER_FLAGS) - -SET(CAB_ADDITIONAL_LINK_FLAGS) -SET(CAB_ADDITIONAL_LINK_FLAGS_DEBUG) -SET(CAB_ADDITIONAL_LINK_FLAGS_RELEASE) +SET(VF_COMPILER_DEFINITION) +SET(VF_LINK_OPTIONS) SET(CAB_ADDITIONAL_LINK_LIBRARIES) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DSOURCE_ROOT=${VF_ROOT_DIR} ) +LIST(APPEND VF_COMPILER_DEFINITION SOURCE_ROOT=${VF_ROOT_DIR} ) + +################################################################# +### OS DEFINES ### +################################################################# +IF(WIN32) + list(APPEND VF_COMPILER_DEFINITION __WIN__) +ELSEIF(UNIX) + list(APPEND VF_COMPILER_DEFINITION __unix__) +ENDIF() +IF(APPLE) + list(APPEND VF_COMPILER_DEFINITION __APPLE__) +endif() + + ############################################################### # set hostname -> CAB_MACHINE and load an optional config file @@ -89,8 +100,7 @@ IF(NOT CAB_MACHINE) ENDIF() CHECK_FOR_VARIABLE(CAB_MACHINE "machine name, e.g. ALTIX, ARWEN") -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DCAB_MACHINE_${CAB_MACHINE}) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DCAB_MACHINE=${CAB_MACHINE}) +LIST(APPEND VF_COMPILER_DEFINITION CAB_MACHINE=${CAB_MACHINE}) SET(CMAKE_CONFIG_FILE "${VF_CMAKE_DIR}/cmake_config_files/${CAB_MACHINE}.config.cmake") IF(NOT EXISTS ${CMAKE_CONFIG_FILE}) diff --git a/CMake/CMakeSetCompilerFlags.cmake b/CMake/CMakeSetCompilerFlags.cmake index 17f7562d2be079796095089ff9b994ce96d9a6e9..cfe6ac407cf0c9a9ec7cb8ef08254a02fad57a96 100644 --- a/CMake/CMakeSetCompilerFlags.cmake +++ b/CMake/CMakeSetCompilerFlags.cmake @@ -2,27 +2,12 @@ ### SET_COMPILER_SPECIFIC_FLAGS ### ### determines compiler flags variables ### ################################################################ -MACRO(SET_COMPILER_SPECIFIC_FLAGS) - IF(NOT CMAKE_CXX_COMPILER) - MESSAGE(FATAL_ERROR "before SET_CAB_COMPILER-Macro PROJECT-Macro has to be called") - ENDIF() +MACRO(LOAD_COMPILER_FLAGS_FROM_FILE) - ############################################################################################################### - ## Flags ruecksetzen - ############################################################################################################### - SET(CAB_COMPILER_ADDITIONAL_LINK_PROPS "") - SET(CAB_COMPILER_ADDITIONAL_LINK_PROPS_DEBUG "") - SET(CAB_COMPILER_ADDITIONAL_LINK_PROPS_RELEASE "") - SET(CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "") SET(CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_DEBUG "") SET(CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_RELEASE "") - SET(CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "") - SET(CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS_DEBUG "") - SET(CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS_RELEASE "") - - # https://cmake.org/cmake/help/latest/variable/CMAKE_LANG_COMPILER_ID.html#variable:CMAKE_<LANG>_COMPILER_ID IF( SPECIFIC_COMPILER_FLAG_FILE ) @@ -34,18 +19,14 @@ MACRO(SET_COMPILER_SPECIFIC_FLAGS) MESSAGE(FATAL_ERROR "compiler=${CMAKE_CXX_COMPILER_ID} seems to be a not supported compiler") ENDIF() -ENDMACRO(SET_COMPILER_SPECIFIC_FLAGS) +ENDMACRO() ################################################################ ### ADD_COMPILER_FLAGS_TO_PROJECT ### -### adds COMPILER_FLGAS TO project ### ################################################################ MACRO(ADD_COMPILER_FLAGS_TO_PROJECT project_name) - ################################################################ - # SET_COMPILER_SPECIFIC_FLAGS - ################################################################ - SET_COMPILER_SPECIFIC_FLAGS() + LOAD_COMPILER_FLAGS_FROM_FILE() #workaround fuer itanium processoren IF(${CMAKE_SYSTEM_PROCESSOR} MATCHES "ia64") @@ -53,49 +34,18 @@ MACRO(ADD_COMPILER_FLAGS_TO_PROJECT project_name) LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS -D_M_IA64) ENDIF() - ################################################################ - # LINKER PROPS - ################################################################ - status("additional linker probs: ${CAB_COMPILER_ADDITIONAL_LINK_PROPS}") - - IF(CAB_COMPILER_ADDITIONAL_LINK_PROPS) - ADD_TARGET_PROPERTIES(${project_name} LINK_FLAGS ${CAB_COMPILER_ADDITIONAL_LINK_PROPS}) - ENDIF() - IF(CAB_COMPILER_ADDITIONAL_LINK_PROPS_DEBUG) - ADD_TARGET_PROPERTIES(${project_name} LINK_FLAGS ${CAB_COMPILER_ADDITIONAL_LINK_PROPS_DEBUG}) - ENDIF() - IF(CAB_COMPILER_ADDITIONAL_LINK_PROPS_RELEASE) - ADD_TARGET_PROPERTIES(${project_name} LINK_FLAGS ${CAB_COMPILER_ADDITIONAL_LINK_PROPS_RELEASE}) - ENDIF() - ################################################################ - # COMPILER FLAGS - ################################################################ - #message (COMPILE FLAGS INTERN: ${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS}) + foreach(flag IN LISTS CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS) + target_compile_options(${project_name} PRIVATE "$<$<COMPILE_LANGUAGE:CXX>:${flag}>") + endforeach() - # TODO: Clean this up!! - IF(CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS) - #message (COMPILE FLAGS INTERN: ${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS}) - foreach(flag IN LISTS CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS) - #message(compiler option: ${flag}) - target_compile_options(${project_name} PRIVATE "$<$<COMPILE_LANGUAGE:${project_language}>:${flag}>") - endforeach() - #get_target_property(var ${project_name} COMPILE_OPTIONS) - #message(set compile options: ${var}) + foreach(flag IN LISTS CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_DEBUG) + target_compile_options(${project_name} PRIVATE "$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:DEBUG>>:${flag}>") + endforeach() - #add_custom_command(TARGET ${project_name} POST_BUILD COMMAND echo built with the flags: ${var}) - #ADD_TARGET_PROPERTIES(${project_name} COMPILE_FLAGS ${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS}) - #target_compile_options (${project_name} PRIVATE $<$<COMPILE_LANGUAGE:CXX>:${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS}>) - ENDIF() - IF(CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS_DEBUG) - MESSAGE(STATUS "ADD_COMPILER_FLAGS_TO_PROJECT: sorry, a long as CMake has no support for COMPILE_FLAGS_<CONFIG> -> DEBUG flags are neglected") - #ADD_TARGET_PROPERTIES(${project_name} COMPILE_FLAGS_DEBUG ${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS_DEBUG}) - ENDIF() - IF(CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS_RELEASE) - MESSAGE(STATUS "ADD_COMPILER_FLAGS_TO_PROJECT: sorry, a long as CMake has no support for COMPILE_FLAGS_<CONFIG> -> RELEASE flags are set for RELEASE AND DEBUG") - ADD_TARGET_PROPERTIES(${project_name} COMPILE_FLAGS ${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS_RELEASE}) - #ADD_TARGET_PROPERTIES(${project_name} COMPILE_FLAGS_RELEASE ${CAB_COMPILER_ADDTIONAL_${project_language}_COMPILER_FLAGS_RELEASE}) - ENDIF() + foreach(flag IN LISTS CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_RELEASE) + target_compile_options(${project_name} PRIVATE "$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<CONFIG:RELEASE>>:${flag}>") + endforeach() ENDMACRO(ADD_COMPILER_FLAGS_TO_PROJECT project_name) \ No newline at end of file diff --git a/CMake/VirtualFluidsMacros.cmake b/CMake/VirtualFluidsMacros.cmake index f82da9fb2eed248b6c0deb53565cf1f0c390b709..aab92f51a7562f0f8be9e4bac5c27abb1af68cb6 100644 --- a/CMake/VirtualFluidsMacros.cmake +++ b/CMake/VirtualFluidsMacros.cmake @@ -11,6 +11,14 @@ function(status msg) message(STATUS " VF - ${msg}") endfunction() +################################################################################# +## include intern macros +################################################################################# +include(${VF_CMAKE_DIR}/CMakeCABMacros.cmake) +include(${VF_CMAKE_DIR}/FileUtilities.cmake) +include(${VF_CMAKE_DIR}/3rd.cmake) + + ################################################################################# ## set global project file endings ################################################################################# @@ -24,6 +32,7 @@ set (VIRTUAL_FLUIDS_GLOB_FILES CACHE INTERNAL "File endings to glob for source files" ) + ################################################################################# ## Sets the library name to the current folder name. ## output parameter: library_name @@ -79,18 +88,6 @@ function(vf_add_library) includeProductionFiles (${library_name} "${sourceFiles}") - - ################################################################# - ### OS DEFINES ### - ################################################################# - IF(WIN32) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__WIN__) - ELSEIF(APPLE) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__APPLE__) - ELSEIF(UNIX) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__unix__) - ENDIF() - ################################################################# ### ADDITIONAL_MAKE_CLEAN_FILES ### ################################################################# @@ -133,36 +130,20 @@ function(vf_add_library) ################################################################# ADD_COMPILER_FLAGS_TO_PROJECT(${library_name}) status("compiler flags for compiler ${CAB_COMPILER} on machine ${CAB_MACHINE} for project ${project_name} (${ARG_BUILDTYPE}) have been configured") - status("compiler flags: ${CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS}") - status("additional compiler flags: ${CAB_ADDTIONAL_COMPILER_FLAGS}") + status("compiler flags CXX: ${CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS}") + status("additional compiler flags CXX debug: ${CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_DEBUG}") + status("additional compiler flags CXX release: ${CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_RELEASE}") - #MESSAGE (COMPILE FLAGS: ${CAB_ADDTIONAL_COMPILER_FLAGS}) - IF(CAB_ADDTIONAL_COMPILER_FLAGS) - ADD_TARGET_PROPERTIES(${library_name} COMPILE_FLAGS ${CAB_ADDTIONAL_COMPILER_FLAGS}) - ENDIF() - IF(CAB_ADDTIONAL_COMPILER_FLAGS_DEBUG) - MESSAGE(FATAL_ERROR "COMPILE_FLAGS_DEBUG_<CONFIG> not supported by cmake yet :-(") - ADD_TARGET_PROPERTIES(${library_name} COMPILE_FLAGS_DEBUG ${CAB_ADDTIONAL_COMPILER_FLAGS_DEBUG}) - ENDIF() - IF(CAB_ADDTIONAL_COMPILER_FLAGS_RELEASE) - MESSAGE(FATAL_ERROR "COMPILE_FLAGS_<CONFIG> not supported by cmake yet :-(") - ADD_TARGET_PROPERTIES(${library_name} COMPILE_FLAGS_RELEASE ${CAB_ADDTIONAL_COMPILER_FLAGS_RELEASE}) - ENDIF() + status("additional compiler definitions: ${VF_COMPILER_DEFINITION}") + status("additional linker flags: ${VF_LINK_OPTIONS}") - ################################################################# - ### ADDITIONAL LINK PROPERTIES ### - ################################################################# - status("additional linker flags: ${CAB_ADDITIONAL_LINK_FLAGS}") + foreach(flag IN LISTS VF_COMPILER_DEFINITION) + target_compile_definitions(${library_name} PRIVATE ${flag}) + endforeach() - IF(CAB_ADDITIONAL_LINK_FLAGS) - ADD_TARGET_PROPERTIES(${library_name} LINK_FLAGS ${CAB_ADDITIONAL_LINK_FLAGS}) - ENDIF() - IF(CAB_ADDITIONAL_LINK_FLAGS_DEBUG) - ADD_TARGET_PROPERTIES(${library_name} LINK_FLAGS_DEBUG ${CAB_ADDITIONAL_LINK_FLAGS_DEBUG}) - ENDIF() - IF(CAB_ADDITIONAL_LINK_FLAGS_RELEASE) - ADD_TARGET_PROPERTIES(${library_name} LINK_FLAGS_RELEASE ${CAB_ADDITIONAL_LINK_FLAGS_RELEASE}) - ENDIF() + foreach(flag IN LISTS VF_LINK_OPTIONS) #TODO: check what happens when lib is static + target_link_options(${library_name} PRIVATE ${flag}) + endforeach() if (NOT ${ARG_BUILDTYPE} MATCHES binary) diff --git a/CMake/cmake_config_files/BILBO.config.cmake b/CMake/cmake_config_files/BILBO.config.cmake index a31f7e22c8a1de694da5f6a868fcebe40358eae6..3c7f0f728ddad36d22ff1d65d83aa7927c14ed48 100644 --- a/CMake/cmake_config_files/BILBO.config.cmake +++ b/CMake/cmake_config_files/BILBO.config.cmake @@ -4,10 +4,6 @@ # OS: MacOS X ################################################################################# -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__unix__) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__UNIX__) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__APPLE__) - ################################################################################# # METIS ################################################################################# diff --git a/CMake/cmake_config_files/BOMBADIL.config.cmake b/CMake/cmake_config_files/BOMBADIL.config.cmake index 7769b340a2239c007a3b47b98564935dc4cb7c8f..7838e2f52b35deae8c114c57968f4b71e0b5b2e4 100644 --- a/CMake/cmake_config_files/BOMBADIL.config.cmake +++ b/CMake/cmake_config_files/BOMBADIL.config.cmake @@ -4,14 +4,6 @@ # OS: Windows 10 ################################################################################# -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__unix__) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__UNIX__) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__APPLE__) - -IF(NOT CMAKE_CXX_COMPILER) - MESSAGE(FATAL_ERROR "before cmake-config-file can be included -> project must be extecuted") -ENDIF() - ################################################################################# # MPI ################################################################################# @@ -33,14 +25,6 @@ SET(BOOST_LIBRARYDIR ${BOOST_ROOT}"/stageMSVC64/lib") # VTK ################################################################################# set(VTK_DIR "d:/Tools/VTK/build/VTK-8.0.0") -################################################################################# -# ZOLTAN -################################################################################# -IF(${USE_ZOLTAN}) - SET(ZOLTAN_INCLUDEDIR "d:/Tools/zoltan/include") - SET(ZOLTAN_DEBUG_LIBRARY "d:/Tools/zoltan/lib/Debug/zoltan.lib") - SET(ZOLTAN_RELEASE_LIBRARY "d:/Tools/zoltan/lib/Release/zoltan.lib") -ENDIF() ################################################################################# # METIS diff --git a/CMake/cmake_config_files/ELLADAN.config.cmake b/CMake/cmake_config_files/ELLADAN.config.cmake index 88645865a77fee75ae0318b917d9c78bf42036fd..80291455e6db49f542b847640ec187620d7eacca 100644 --- a/CMake/cmake_config_files/ELLADAN.config.cmake +++ b/CMake/cmake_config_files/ELLADAN.config.cmake @@ -4,9 +4,6 @@ # OS: Ubuntu 20.04 ################################################################################# -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__unix__) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__UNIX__) - set(NVCUDASAMPLES_ROOT "~/cuda-samples/Common") ################################################################################# # METIS diff --git a/CMake/cmake_config_files/PHOENIX.config.cmake b/CMake/cmake_config_files/PHOENIX.config.cmake index 994a6837b95be85757f9b0f1bd6c9ff44a30a9e6..7ed31e406a9e528de24c8131f0083976c72555d5 100644 --- a/CMake/cmake_config_files/PHOENIX.config.cmake +++ b/CMake/cmake_config_files/PHOENIX.config.cmake @@ -4,9 +4,6 @@ # OS: CentOS 7.3 ################################################################################# -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__unix__) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -D__UNIX__) - SET(BOOST_VERSION "1.63.0" CACHE STRING "std: 1.63.0") ################################################################################# diff --git a/CMake/compilerflags/AppleClang.cmake b/CMake/compilerflags/AppleClang.cmake index 79f332c2be34c866e74822e1e8e32b7f602dd5fe..ef97a54a4ebe17bde5e016e04a40a187371172e9 100644 --- a/CMake/compilerflags/AppleClang.cmake +++ b/CMake/compilerflags/AppleClang.cmake @@ -9,20 +9,20 @@ ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-O3;-fomit-frame-pointer;-finline-functions;-fPIC;-Wbackslash-newline-escape") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-O3;-fomit-frame-pointer;-finline-functions;-fPIC") - - ############################################################################################################# # mt support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-pthread") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-pthread") ############################################################################################################# # c++ 11 support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-std=c++11") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-std=c++11") + + +# test +#LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_RELEASE "-Wall") +#LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_DEBUG "-Werror") ############################################################################################################# # disable warning @@ -31,8 +31,6 @@ LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wno-deprecated") #deprec #LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wbackslash-newline-escape") #backslash and newline separated by space LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wcomment") #'/*' within block comment -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-Wbackslash-newline-escape") #backslash and newline separated by space - ############################################################################################################# # c++ 17 support ############################################################################################################# diff --git a/CMake/compilerflags/Clang.cmake b/CMake/compilerflags/Clang.cmake index 1d43882f467365ff76f8a4b68c629bcd35bb88ae..4e79d520c0b91a41d62f658092489941926bda05 100644 --- a/CMake/compilerflags/Clang.cmake +++ b/CMake/compilerflags/Clang.cmake @@ -9,20 +9,15 @@ ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-O3;-fomit-frame-pointer;-finline-functions;-fPIC;-Wbackslash-newline-escape") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-O3;-fomit-frame-pointer;-finline-functions;-fPIC") - - ############################################################################################################# # mt support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-pthread") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-pthread") ############################################################################################################# # c++ 11 support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-std=c++11") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-std=c++11") ############################################################################################################# # disable warning @@ -31,8 +26,6 @@ LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wno-deprecated") #deprec #LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wbackslash-newline-escape") #backslash and newline separated by space LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wcomment") #'/*' within block comment -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-Wbackslash-newline-escape") #backslash and newline separated by space - ############################################################################################################# # c++ 17 support ############################################################################################################# diff --git a/CMake/compilerflags/GNU.cmake b/CMake/compilerflags/GNU.cmake index 7efff28df1898ad9603bbd632880ee1886244a65..2a14ad1e2d13b7d165175bcbecafce29bc5b5475 100644 --- a/CMake/compilerflags/GNU.cmake +++ b/CMake/compilerflags/GNU.cmake @@ -2,30 +2,25 @@ ############################################################################################################# # Flags ############################################################################################################# -LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-O3 -fomit-frame-pointer -finline-functions -funroll-all-loops -fPIC") +LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-O3;-fomit-frame-pointer;-finline-functions;-funroll-all-loops;-fPIC") LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-Wno-deprecated") #deprecated header warning (jarl benutzt sstream weil schneller und so) -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-O3 -fomit-frame-pointer -finline-functions -funroll-all-loops -fPIC") - ############################################################################################################# # OpenMP support ############################################################################################################# IF(USE_OPENMP) LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-fopenmp") - LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-fopenmp") ENDIF() ############################################################################################################# # mt support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-pthread") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-pthread") ############################################################################################################# # c++ 11 support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-std=c++11") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-std=c++11") ############################################################################################################# # c++ 17 support diff --git a/CMake/compilerflags/Intel.cmake b/CMake/compilerflags/Intel.cmake index 8832712bb33c68901aa16288f7348ae407689cb7..bec6b8eff9d4e7528a346b75fa47309f49336559 100644 --- a/CMake/compilerflags/Intel.cmake +++ b/CMake/compilerflags/Intel.cmake @@ -14,8 +14,7 @@ #LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-xHOST -O3 -ip -ipo -fno-alias -mcmodel=medium -qopt-streaming-stores=always") LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-wd1478") #auto_ptr warning from mu::Parser -#LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-xHOST -O3 -ip -fno-alias -mcmodel=medium -qopt-streaming-stores=always -xCORE-AVX512 -qopt-zmm-usage=high") -LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-xHOST -O3 -ip -fno-alias -mcmodel=medium -qopt-streaming-stores=always -xCORE-AVX512 -qopt-zmm-usage=high") +LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-xHOST;-O3;-ip;-fno-alias;-mcmodel=medium;-qopt-streaming-stores=always;-xCORE-AVX512;-qopt-zmm-usage=high") #Debug #LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-g -traceback") @@ -31,10 +30,8 @@ ENDIF() ## mt support ############################################################################################################### #LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-pthread") -#LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-pthread") ############################################################################################################# # c++ 11 support ############################################################################################################# LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-std=c++11") -LIST(APPEND CAB_COMPILER_ADDTIONAL_C_COMPILER_FLAGS "-std=c++11") diff --git a/CMake/compilerflags/MSVC.cmake b/CMake/compilerflags/MSVC.cmake index 113cba6b5e4610f37d33fd91a5d68c2c04114a3f..62de9ecb8b1f4f04fce9e01e3e672729a5d14017 100644 --- a/CMake/compilerflags/MSVC.cmake +++ b/CMake/compilerflags/MSVC.cmake @@ -8,14 +8,17 @@ OPTION(USE_UNSECURE_STL_VECTORS_RELEASE "_SECURE_SCL=0" OFF) IF(USE_UNSECURE_STL_VECTORS_RELEASE) # More MSVC specific compilation flags - LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-D_SECURE_SCL=0") - LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-D_SCL_SECURE_NO_WARNINGS") + LIST(APPEND VF_COMPILER_DEFINITION _SECURE_SCL=0) + LIST(APPEND VF_COMPILER_DEFINITION _SCL_SECURE_NO_WARNINGS) ENDIF() +#LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_RELEASE "/W1") +#LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS_DEBUG "/Wall") + ############################################################################################################### ## Flags ############################################################################################################### -LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-D_CRT_SECURE_NO_DEPRECATE") +LIST(APPEND VF_COMPILER_DEFINITION _CRT_SECURE_NO_DEPRECATE) LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "/wd4996") #deprecated strcpy... LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "/wd4800") #forcing value to bool 'true' or 'false' (performance warning) LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "/bigobj") #ansonsten funzt mit boost das compilieren unter windows nimmer diff --git a/CMakeLists.txt b/CMakeLists.txt index c04b32d7648d8d1ef7f50350ce33b4832fb41aa1..47c6ff0a1cb68a30c082e9a41db592a4814c0aac 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -52,9 +52,6 @@ endif() ################################################################################# include(CMakePrintHelpers) include(${VF_CMAKE_DIR}/VirtualFluidsMacros.cmake) -include(${VF_CMAKE_DIR}/CMakeCABMacros.cmake) -include(${VF_CMAKE_DIR}/FileUtilities.cmake) -include(${VF_CMAKE_DIR}/3rd.cmake) include(${VF_CMAKE_DIR}/CMakeMacros_old/general/FindCompiler.cmake) configure_file(src/basics/VirtualFluidsDefinitions.in.h ${CMAKE_BINARY_DIR}/VirtualFluidsDefinitions.h) diff --git a/cpu.cmake b/cpu.cmake index 215a491e2985d2c56232295dff67193e2627ebe0..249c8837c443b69d0e47a28e6b622326c0d61ab4 100644 --- a/cpu.cmake +++ b/cpu.cmake @@ -64,7 +64,6 @@ IF(${USE_VTK}) #find_package(VTK 6.1 NO_MODULE) FIND_PACKAGE(VTK REQUIRED) INCLUDE_DIRECTORIES(${VTK_INCLUDE_DIRS}) - MESSAGE("VTK_INCLUDE_DIRS = " ${VTK_INCLUDE_DIRS}) ENDIF() IF(${USE_CATALYST}) @@ -72,41 +71,35 @@ IF(${USE_CATALYST}) include("${PARAVIEW_USE_FILE}") ENDIF() -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DCAB_BOOST) -LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DNOMINMAX) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DBOOST_SIGNALS_NO_DEPRECATION_WARNING) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DCAB_RUBY) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -mpe=mpilog) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -noshlib) -#LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DSINGLEPRECISION) - IF(${USE_METIS}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DVF_METIS) + list(APPEND VF_COMPILER_DEFINITION VF_METIS) ENDIF() IF(${USE_MPI}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DVF_MPI) + list(APPEND VF_COMPILER_DEFINITION VF_MPI) ENDIF() IF(${USE_VTK}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DVF_VTK) + list(APPEND VF_COMPILER_DEFINITION VF_VTK) ENDIF() IF(${USE_CATALYST}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DVF_CATALYST) + list(APPEND VF_COMPILER_DEFINITION VF_CATALYST) ENDIF() IF(${USE_BOOST}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DVF_BOOST) + list(APPEND VF_COMPILER_DEFINITION VF_BOOST) ENDIF() IF(${USE_HLRN_LUSTRE}) - LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DHLRN_LUSTRE) + list(APPEND VF_COMPILER_DEFINITION HLRN_LUSTRE) ENDIF() IF(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel") - SET(CAB_ADDITIONAL_LINK_FLAGS ${CAB_ADDITIONAL_LINK_FLAGS} -parallel) + list(APPEND VF_LINK_OPTIONS -parallel) + list(APPEND VF_LINK_OPTIONS -irc) ENDIF() IF(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU") - SET(CAB_ADDITIONAL_LINK_FLAGS ${CAB_ADDITIONAL_LINK_FLAGS} -lgomp) + list(APPEND VF_LINK_OPTIONS -lgomp) + list(APPEND VF_LINK_OPTIONS -lrt) ENDIF() @@ -114,21 +107,17 @@ ENDIF() # IF(${USE_PYTHON}) # FIND_PACKAGE(PythonLibs) # INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIR}) -# LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DVF_PYTHON) -# LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DBOOST_PYTHON_STATIC_LIB) +# LIST(APPEND VF_COMPILER_DEFINITION VF_PYTHON) +# LIST(APPEND VF_COMPILER_DEFINITION BOOST_PYTHON_STATIC_LIB) # add_subdirectory(python) # ENDIF() # IF(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel") -# LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DMPICH_IGNORE_CXX_SEEK) -# LIST(APPEND CAB_ADDTIONAL_COMPILER_FLAGS -DMPICH_SKIP_MPICXX) +# LIST(APPEND VF_COMPILER_DEFINITION MPICH_IGNORE_CXX_SEEK) +# LIST(APPEND VF_COMPILER_DEFINITION MPICH_SKIP_MPICXX) # ENDIF() -#IF(${USE_DEM_COUPLING}) -# add_subdirectory(Plugins/dem_coupling) -#ENDIF() - add_subdirectory(${VF_THIRD_DIR}/MuParser) add_subdirectory(src/cpu/VirtualFluidsCore) diff --git a/src/basics/CMakeLists.txt b/src/basics/CMakeLists.txt index ff6c0c122ee9d2fc738e0fe67bba48ba621a95e1..53b17f291d31566cac6da0688ff34624897a17dd 100644 --- a/src/basics/CMakeLists.txt +++ b/src/basics/CMakeLists.txt @@ -1,3 +1,11 @@ +# Old VF basics defines. TODO: might be deleted in future. +#LIST(APPEND VF_COMPILER_DEFINITION CAB_BOOST) +#LIST(APPEND VF_COMPILER_DEFINITION BOOST_SIGNALS_NO_DEPRECATION_WARNING) +#LIST(APPEND VF_COMPILER_DEFINITION CAB_RUBY) +#LIST(APPEND VF_COMPILER_DEFINITION mpe=mpilog) +#LIST(APPEND VF_COMPILER_DEFINITION noshlib) +#LIST(APPEND VF_COMPILER_DEFINITION SINGLEPRECISION) + include(Core/buildInfo.cmake) diff --git a/src/cpu/VirtualFluidsCore/CMakeLists.txt b/src/cpu/VirtualFluidsCore/CMakeLists.txt index 79c86121fa2565d6a53bb1b38e911edb9a2d0a0f..b6327ceea55917e01c0853413183298de73c7ca7 100644 --- a/src/cpu/VirtualFluidsCore/CMakeLists.txt +++ b/src/cpu/VirtualFluidsCore/CMakeLists.txt @@ -1,14 +1,4 @@ -IF(${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU") - SET(CAB_ADDITIONAL_LINK_LIBRARIES ${CAB_ADDITIONAL_LINK_LIBRARIES} rt) - SET(CAB_ADDITIONAL_LINK_LIBRARIES ${CAB_ADDITIONAL_LINK_LIBRARIES} gomp) -ENDIF() - -IF(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel") - SET(CAB_ADDITIONAL_LINK_LIBRARIES ${CAB_ADDITIONAL_LINK_LIBRARIES} irc) - SET(CAB_ADDITIONAL_LINK_FLAGS ${CAB_ADDITIONAL_LINK_FLAGS} parallel) -ENDIF() - IF(${USE_METIS}) SET(LINK_LIBRARY optimized ${METIS_RELEASE_LIBRARY} debug ${METIS_DEBUG_LIBRARY}) SET(CAB_ADDITIONAL_LINK_LIBRARIES ${CAB_ADDITIONAL_LINK_LIBRARIES} ${LINK_LIBRARY})