diff --git a/CMakeLists.txt b/CMakeLists.txt index 4e615a3f..ab8f42c5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -491,58 +491,52 @@ endif() if(EXT_TOOLS) - # These tools have to be threaded in special way: - - # serial tools - add_target_exe_serial_wrapper( makefort10 ) - add_target_exe_serial_wrapper( readforward-serial ) - add_target_exe_serial_wrapper( convertfort10-serial ) - add_target_exe_serial_wrapper( convertfort10mol-serial ) - - # parallel tools - add_target_exe_parallel_wrapper( readforward-mpi ) - add_target_exe_parallel_wrapper( convertfort10-mpi ) - add_target_exe_parallel_wrapper( convertfort10mol-mpi ) - - # simple serial tools - list(APPEND TOOLS_LIST_SIMPLE corrvar ) - list(APPEND TOOLS_LIST_SIMPLE corrforza ) - list(APPEND TOOLS_LIST_SIMPLE corrforzap ) - list(APPEND TOOLS_LIST_SIMPLE corrforzap_complex ) - list(APPEND TOOLS_LIST_SIMPLE readf ) - list(APPEND TOOLS_LIST_SIMPLE readffn ) - list(APPEND TOOLS_LIST_SIMPLE readalles ) - list(APPEND TOOLS_LIST_SIMPLE funvsa ) - list(APPEND TOOLS_LIST_SIMPLE copyjas ) - list(APPEND TOOLS_LIST_SIMPLE copydet ) - list(APPEND TOOLS_LIST_SIMPLE pseudo ) - list(APPEND TOOLS_LIST_SIMPLE plot_orbitals ) - list(APPEND TOOLS_LIST_SIMPLE assembling_pseudo) - list(APPEND TOOLS_LIST_SIMPLE orthomol ) - - add_target_lib_serial_wrapper(pfapack) - - if(EXT_GPU) - #serial - add_target_lib_serial_wrapper(common-nogpu-serial) - add_target_lib_serial_wrapper(complex-nogpu-serial) - add_target_lib_serial_wrapper(qlapack-nogpu-serial) - add_target_lib_serial_wrapper(adjoint-forward-nogpu-serial) - add_target_lib_serial_wrapper(adjoint-backward-nogpu-serial) - #parallel - add_target_lib_parallel_wrapper(common-mpi) - add_target_lib_parallel_wrapper(complex-mpi) - add_target_lib_parallel_wrapper(qlapack-mpi) - add_target_lib_parallel_wrapper(adjoint-forward-mpi) - add_target_lib_parallel_wrapper(adjoint-backward-mpi) - else() - #serial + if(EXT_SERIAL) + # serial tools + add_target_exe_serial_wrapper( makefort10 ) + add_target_exe_serial_wrapper( readforward-serial ) + add_target_exe_serial_wrapper( convertfort10-serial ) + add_target_exe_serial_wrapper( convertfort10mol-serial ) + + # simple serial tools + list(APPEND TOOLS_LIST_SIMPLE corrvar ) + list(APPEND TOOLS_LIST_SIMPLE corrforza ) + list(APPEND TOOLS_LIST_SIMPLE corrforzap ) + list(APPEND TOOLS_LIST_SIMPLE corrforzap_complex ) + list(APPEND TOOLS_LIST_SIMPLE readf ) + list(APPEND TOOLS_LIST_SIMPLE readffn ) + list(APPEND TOOLS_LIST_SIMPLE readalles ) + list(APPEND TOOLS_LIST_SIMPLE funvsa ) + list(APPEND TOOLS_LIST_SIMPLE copyjas ) + list(APPEND TOOLS_LIST_SIMPLE copydet ) + list(APPEND TOOLS_LIST_SIMPLE pseudo ) + list(APPEND TOOLS_LIST_SIMPLE plot_orbitals ) + list(APPEND TOOLS_LIST_SIMPLE assembling_pseudo) + list(APPEND TOOLS_LIST_SIMPLE orthomol ) + + add_target_lib_serial_wrapper(pfapack) add_target_lib_serial_wrapper(common-serial) add_target_lib_serial_wrapper(complex-serial) add_target_lib_serial_wrapper(qlapack-serial) add_target_lib_serial_wrapper(adjoint-forward-serial) add_target_lib_serial_wrapper(adjoint-backward-serial) - #parallel + + if(EXT_GPU) + add_target_lib_serial_wrapper(common-nogpu-serial) + add_target_lib_serial_wrapper(complex-nogpu-serial) + add_target_lib_serial_wrapper(qlapack-nogpu-serial) + add_target_lib_serial_wrapper(adjoint-forward-nogpu-serial) + add_target_lib_serial_wrapper(adjoint-backward-nogpu-serial) + endif() + endif() + + if(EXT_PARALLEL) + # parallel tools + add_target_exe_parallel_wrapper( readforward-mpi ) + add_target_exe_parallel_wrapper( convertfort10-mpi ) + add_target_exe_parallel_wrapper( convertfort10mol-mpi ) + + add_target_lib_serial_wrapper(pfapack) add_target_lib_parallel_wrapper(common-mpi) add_target_lib_parallel_wrapper(complex-mpi) add_target_lib_parallel_wrapper(qlapack-mpi) @@ -550,6 +544,17 @@ if(EXT_TOOLS) add_target_lib_parallel_wrapper(adjoint-backward-mpi) endif() + if(EXT_GPU) + add_target_lib_serial_wrapper(common-nogpu-serial) + add_target_lib_serial_wrapper(complex-nogpu-serial) + add_target_lib_serial_wrapper(qlapack-nogpu-serial) + add_target_lib_serial_wrapper(adjoint-forward-nogpu-serial) + add_target_lib_serial_wrapper(adjoint-backward-nogpu-serial) + else() + #serial + #parallel + endif() + foreach(TOOL_NAME ${TOOLS_LIST_SIMPLE}) add_target_exe_serial_wrapper(${TOOL_NAME}) endforeach() diff --git a/src/a_tools/CMakeLists.txt b/src/a_tools/CMakeLists.txt index e3255cf7..faa68aa5 100644 --- a/src/a_tools/CMakeLists.txt +++ b/src/a_tools/CMakeLists.txt @@ -28,7 +28,7 @@ ) endif() - if(EXT_GPU) + if( ${EXT_GPU} AND ${TOOL_NAME} MATCHES testad ) target_link_libraries( ${TOOL_NAME} PRIVATE complex-nogpu-serial