Line data Source code
1 : module m_fleur_version 2 : implicit none 3 : private 4 : public fleur_version 5 : contains 6 80 : subroutine fleur_version() 7 : use m_compile_descr 8 : use m_constants 9 : use m_juDFT 10 : use m_check_arguments 11 : use m_types_xml 12 : !$ use omp_lib 13 : 14 80 : character(:), allocatable:: infostring, additional_info, omp_string 15 : character(len=10) :: outputVersionString 16 : integer :: omp 17 : type(t_xml)::xml 18 : 19 80 : omp = 1 20 80 : if (.NOT. judft_was_argument("-version")) return 21 : 22 : !now print version info and help on command line arguments: 23 : call get_compile_desc_string(infostring) 24 0 : write(*,'(a)') infostring 25 0 : write(outputVersionString,'(a,i0)') '0.', xml%currentversionNumber 26 : 27 0 : !$ omp=omp_get_max_threads() 28 0 : if (omp==1) then 29 0 : omp_string = " OpenMP : False" 30 : else 31 0 : omp_string = " OpenMP : True" 32 : endif 33 : additional_info = "Libraries:"//new_LINE("a")// & 34 : #ifdef CPP_MPI 35 : " MPI : True"//new_LINE("a")// & 36 : #else 37 : " MPI : False"//new_LINE("a")// & 38 : #endif 39 : 40 : #ifdef _OPENACC 41 : " OpenMP : False"//new_LINE("a")// & 42 : " OpenACC : True"//new_LINE("a")// & 43 : #else 44 : trim(omp_string)//new_LINE("a")// & 45 : " OpenACC : False"//new_LINE("a")// & 46 : #endif 47 : #ifdef CPP_HDF 48 : " HDF5 : True"//new_LINE("a")// & 49 : #else 50 : " HDF5 : False"//new_LINE("a")// & 51 : #endif 52 : #ifdef CPP_LIBXC 53 : " LibXC : True"//new_LINE("a")// & 54 : #else 55 : " LibXC : False"//new_LINE("a")// & 56 : #endif 57 : " Diagonalization: lapack" & 58 : #ifdef CPP_SCALAPACK 59 : //",scalapack"& 60 : #endif 61 : #ifdef CPP_ELPA_ONENODE 62 : //",elpa_1node"& 63 : #endif 64 : #ifdef CPP_ELPA 65 : //",elpa"& 66 : #endif 67 : #ifdef CPP_CHASE 68 : //",chase"& 69 : #endif 70 : #ifdef CPP_MAGMA 71 : //",magma"& 72 : #endif 73 : #ifdef CPP_GPU 74 : //",cusolver"& 75 : #endif 76 : //new_LINE("a")//& 77 0 : "Default XML file version : "//TRIM(outputVersionString) 78 : 79 0 : write(*,'(a)') additional_info 80 : 81 0 : CALL juDFT_end("Version output completed") 82 80 : end subroutine 83 : 84 : end module