@@ -66,52 +66,16 @@ set(ABACUS_MPI_IMPLEMENTATION "no")
6666set (ABACUS_MPI_VERSION "no" )
6767set (ABACUS_CUDA_AWARE_MPI "no" )
6868if (ENABLE_MPI)
69- execute_process (COMMAND ${MPI_CXX_COMPILER} --version OUTPUT_VARIABLE MPI_VERSION_OUTPUT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET )
70- if (MPI_VERSION_OUTPUT MATCHES "Intel" )
69+ if ("${MPI_CXX_LIBRARY_VERSION_STRING} " MATCHES "Intel" )
7170 set (ABACUS_MPI_IMPLEMENTATION "Intel MPI" )
72- string (REGEX MATCH "Intel\\ (R\\ ) oneAPI DPC\\ +\\ +/C\\ +\\ + Compiler ([0-9]+\\ .[0-9]+\\ .[0-9]+)" _ "${MPI_VERSION_OUTPUT} " )
73- if (CMAKE_MATCH_1)
74- set (MPI_DETECTED_VERSION "${CMAKE_MATCH_1} " )
75- else ()
76- string (REGEX MATCH "icpc \\ (ICC\\ ) ([0-9]+\\ .[0-9]+\\ .[0-9]+)" _ "${MPI_VERSION_OUTPUT} " )
77- if (CMAKE_MATCH_1)
78- set (MPI_DETECTED_VERSION "${CMAKE_MATCH_1} " )
79- endif ()
80- endif ()
81- elseif (MPI_VERSION_OUTPUT MATCHES "Open MPI" )
71+ elseif ("${MPI_CXX_LIBRARY_VERSION_STRING} " MATCHES "Open MPI" )
8272 set (ABACUS_MPI_IMPLEMENTATION "OpenMPI" )
83- elseif (MPI_VERSION_OUTPUT MATCHES "MPICH" )
73+ elseif (" ${MPI_CXX_LIBRARY_VERSION_STRING} " MATCHES "MPICH" )
8474 set (ABACUS_MPI_IMPLEMENTATION "MPICH" )
8575 else ()
8676 set (ABACUS_MPI_IMPLEMENTATION "Unknown" )
8777 endif ()
88- # Fallback: try mpirun/mpiexec
89- if (NOT MPI_DETECTED_VERSION)
90- find_program (MPIRUN_EXECUTABLE mpirun )
91- if (MPIRUN_EXECUTABLE)
92- execute_process (COMMAND ${MPIRUN_EXECUTABLE} --version OUTPUT_VARIABLE MPIRUN_VERSION_OUTPUT OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_QUIET )
93- if (MPIRUN_VERSION_OUTPUT MATCHES "Open MPI" )
94- set (ABACUS_MPI_IMPLEMENTATION "OpenMPI" )
95- string (REGEX MATCH "Open MPI ([0-9]+\\ .[0-9]+\\ .[0-9]+)" _ "${MPIRUN_VERSION_OUTPUT} " )
96- if (CMAKE_MATCH_1)
97- set (MPI_DETECTED_VERSION "${CMAKE_MATCH_1} " )
98- endif ()
99- elseif (MPIRUN_VERSION_OUTPUT MATCHES "MPICH" )
100- set (ABACUS_MPI_IMPLEMENTATION "MPICH" )
101- string (REGEX MATCH "MPICH Version: ([0-9]+\\ .[0-9]+\\ .[0-9]+)" _ "${MPIRUN_VERSION_OUTPUT} " )
102- if (CMAKE_MATCH_1)
103- set (MPI_DETECTED_VERSION "${CMAKE_MATCH_1} " )
104- endif ()
105- endif ()
106- endif ()
107- endif ()
108- if (MPI_DETECTED_VERSION)
109- set (ABACUS_MPI_VERSION "yes (v${MPI_DETECTED_VERSION} )" )
110- elseif (MPI_VERSION)
111- set (ABACUS_MPI_VERSION "yes (v${MPI_VERSION} )" )
112- else ()
113- set (ABACUS_MPI_VERSION "yes (version unknown)" )
114- endif ()
78+ set (ABACUS_MPI_VERSION "(MPI standard: ${MPI_CXX_VERSION} )" )
11579 if (USE_CUDA)
11680 # OpenMPI hint
11781 find_program (OMPI_INFO_EXECUTABLE ompi_info )
@@ -144,6 +108,12 @@ else()
144108 set (ABACUS_OPENMP_VERSION "no" )
145109endif ()
146110
111+ if (ENABLE_LCAO)
112+ set (ABACUS_LCAO_ENABLED "True" )
113+ else ()
114+ set (ABACUS_LCAO_ENABLED "False" )
115+ endif ()
116+
147117# Core Math Libraries
148118if (ENABLE_LCAO AND ENABLE_ELPA)
149119 set (ABACUS_ELPA_VERSION "yes (version unknown)" )
@@ -410,3 +380,31 @@ list(APPEND CMAKE_FIND_PACKAGES_LIST " LibRI Found=${LIBRI_FOUND}")
410380foreach (package_line ${CMAKE_FIND_PACKAGES_LIST} )
411381 set (ABACUS_CMAKE_FIND_PACKAGES "${ABACUS_CMAKE_FIND_PACKAGES}${package_line} " )
412382endforeach ()
383+
384+ # ==============================================================================
385+ # Print Build Summary
386+ # ==============================================================================
387+ message (STATUS "===================================================================" )
388+ message (STATUS " ABACUS Build Summary " )
389+ message (STATUS "===================================================================" )
390+ message (STATUS "Build Type : ${ABACUS_BUILD_TYPE} " )
391+ message (STATUS "Platform : ${ABACUS_PLATFORM_NAME} " )
392+ message (STATUS "Compiler : ${ABACUS_CXX_COMPILER_ID} ${ABACUS_CXX_COMPILER_VERSION} " )
393+ message (STATUS "-------------------------------------------------------------------" )
394+ message (STATUS "MPI Support : ${ABACUS_MPI_IMPLEMENTATION} ${ABACUS_MPI_VERSION} " )
395+ message (STATUS "CUDA-Aware MPI : ${ABACUS_CUDA_AWARE_MPI} " )
396+ message (STATUS "OpenMP Support : ${ABACUS_OPENMP_VERSION} " )
397+ message (STATUS "-------------------------------------------------------------------" )
398+ message (STATUS "LCAO Enabled : ${ABACUS_LCAO_ENABLED} " )
399+ message (STATUS "-------------------------------------------------------------------" )
400+ message (STATUS "Math Libraries : MKL = ${ABACUS_MKL_SUPPORT} " )
401+ message (STATUS " FFTW = ${ABACUS_FFTW_VERSION} " )
402+ message (STATUS " ELPA = ${ABACUS_ELPA_VERSION} " )
403+ message (STATUS "Accelerators : CUDA = ${ABACUS_CUDA_VERSION} " )
404+ message (STATUS " ROCm = ${ABACUS_ROCM_VERSION} " )
405+ message (STATUS "Machine Learning : Torch = ${ABACUS_LIBTORCH_VERSION} " )
406+ message (STATUS " DeePMD = ${ABACUS_DEEPMD_VERSION} " )
407+ message (STATUS " NEP = ${ABACUS_NEP_VERSION} " )
408+ message (STATUS "Features : Libxc = ${ABACUS_LIBXC_VERSION} " )
409+ message (STATUS " LibRI = ${ABACUS_LIBRI_VERSION} " )
410+ message (STATUS "===================================================================" )
0 commit comments