Files_and_Targets.txt 4.72 KB
Newer Older
1 2
include_directories(include)

3 4
set(c_filesInpgen io/xml/inputSchema.h io/xml/dropInputSchema.c)
set(c_filesFleur io/xml/inputSchema.h io/xml/dropInputSchema.c io/xml/xmlInterfaceWrapper.c)
5
if(FLEUR_USE_CUSOLVER)
6 7
  set(c_filesFleur ${c_filesFleur} diagonalization/cusolver.c)
endif()
8

9 10
set(fleur_F90 main/fleur.F90)
set(fleur_F77 "")
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
include(eigen/CMakeLists.txt)
include(force/CMakeLists.txt)
include(main/CMakeLists.txt)
include(core/CMakeLists.txt)
include(eigen_secvar/CMakeLists.txt)
include(global/CMakeLists.txt)
include(io/CMakeLists.txt)
include(optional/CMakeLists.txt)
include(xc-pot/CMakeLists.txt)
include(cdn/CMakeLists.txt)
include(diagonalization/CMakeLists.txt)
include(eigen_soc/CMakeLists.txt)
include(math/CMakeLists.txt)
include(orbdep/CMakeLists.txt)
include(cdn_mt/CMakeLists.txt)
include(dos/CMakeLists.txt)
include(fermi/CMakeLists.txt)
include(init/CMakeLists.txt)
include(ldau/CMakeLists.txt)
include(mix/CMakeLists.txt)
include(vgen/CMakeLists.txt)
32
include(inpgen/CMakeLists.txt)
33
include(docs/CMakeLists.txt)
Daniel Wortmann's avatar
Daniel Wortmann committed
34
include(mpi/CMakeLists.txt)
35
include(hybrid/CMakeLists.txt)
Daniel Wortmann's avatar
Daniel Wortmann committed
36
include(eels/CMakeLists.txt)
37
include(types/CMakeLists.txt)
38 39
include(wannier/CMakeLists.txt)
include(wannier/uhu/CMakeLists.txt)
40
include(forcetheorem/CMakeLists.txt)
41
include(rdmft/CMakeLists.txt)
42
include(kpoints/CMakeLists.txt)
43

44 45

include(tests/tests_old.cmake)
46
#include(tests/tests_new.cmake)
47

48
set(inpgen_F77 ${inpgen_F77} 
49
inpgen/element.f inpgen/atom_input.f inpgen/crystal.f inpgen/lattice2.f inpgen/setab.f inpgen/super_check.f
50 51
inpgen/atom_sym.f inpgen/generator.f inpgen/read_record.f inpgen/soc_or_ssdw.f inpgen/symproperties.f
inpgen/bravais_symm.f  inpgen/set_atom_core.f inpgen/spg_gen.f global/triang.f
52
inpgen/lapw_input.f  inpgen/struct_input.f inpgen/write_struct.f
53
io/calculator.f global/ss_sym.f global/soc_sym.f math/inv3.f  io/rw_symfile.f
54
kpoints/kptgen_hybrid.f kpoints/od_kptsgen.f kpoints/bravais.f kpoints/divi.f kpoints/brzone.f
55
kpoints/kptmop.f kpoints/kpttet.f init/bandstr1.F kpoints/ordstar.f kpoints/fulstar.f kpoints/kprep.f
56
kpoints/tetcon.f kpoints/kvecon.f init/boxdim.f global/radsra.f global/differ.f math/inwint.f
57
math/outint.f math/grule.f )
58

59
set(inpgen_F90  ${inpgen_F90} global/constants.f90 io/xsf_io.f90
60 61
eigen/orthoglo.F90  math/ylm4.F90 mpi/mpi_bc_tool.F90
global/sort.f90 global/chkmt.f90 inpgen/inpgen.f90 inpgen/set_inp.f90 inpgen/inpgen_help.f90 io/rw_inp.f90  global/find_enpara.f90
62
inpgen/closure.f90  math/intgr.F90
63
io/w_inpXML.f90 kpoints/julia.f90 global/utility.F90 
64
init/compile_descr.F90 kpoints/kpoints.f90 io/xmlOutput.F90 kpoints/brzone2.f90 cdn/slab_dim.f90 cdn/slabgeom.f90 dos/nstm3.f90 cdn/int_21.f90
65
cdn/int_21lo.f90 cdn_mt/rhomt21.f90 cdn_mt/rhonmt21.f90 force/force_a21.F90 force/force_a21_lo.f90 force/force_a21_U.f90 force/force_a12.f90
Matthias Redies's avatar
Matthias Redies committed
66
eigen/tlmplm_store.F90 xc-pot/gaunt.f90 kpoints/unfoldBandKPTS.f90)
67 68 69 70 71 72 73 74

set(fleur_SRC ${fleur_F90} ${fleur_F77})

set_source_files_properties(${fleur_F90} PROPERTIES Fortran_FORMAT FREE)
set_source_files_properties(${fleur_F77} PROPERTIES Fortran_FORMAT FIXED)
set_source_files_properties(${inpgen_F90} PROPERTIES Fortran_FORMAT FREE)
set_source_files_properties(${inpgen_F77} PROPERTIES Fortran_FORMAT FIXED)

75 76 77
string(REPLACE ";" " " CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} ${FLEUR_PRECISION_OPTION}")
message("Flags: ${CMAKE_Fortran_FLAGS}")

78

79 80 81 82 83
if (${FLEUR_USE_SERIAL})
   #Serial executables
   add_executable(fleur ${fleur_SRC} ${c_filesFleur})
   target_compile_definitions(fleur PUBLIC ${FLEUR_DEFINITIONS})
   target_link_libraries(fleur ${FLEUR_LIBRARIES})
84
   target_link_libraries(fleur juDFT)
Daniel Wortmann's avatar
Daniel Wortmann committed
85
   set_target_properties(fleur PROPERTIES Fortran_MODULE_DIRECTORY modules/fleur COMPILE_OPTIONS -Imodules/fleur)
86 87
endif()
#parallel executables
88
if(${FLEUR_USE_MPI})
89
  #fleur_MPI
90 91
  add_executable(fleur_MPI ${juDFT_HDF} ${juDFT_SRC_F90} ${fleur_SRC} ${c_filesFleur} ${fleur_SRC_MPI})
  target_compile_definitions(fleur_MPI PUBLIC ${FLEUR_MPI_DEFINITIONS})
92
  target_link_libraries(fleur_MPI ${FLEUR_LIBRARIES})
93
  target_link_libraries(fleur_MPI juDFT)
Daniel Wortmann's avatar
Daniel Wortmann committed
94
  set_target_properties(fleur_MPI PROPERTIES Fortran_MODULE_DIRECTORY modules/fleur_MPI COMPILE_OPTIONS -Imodules/fleur_MPI)
95 96
endif ()

97 98 99 100 101 102
#inpgen executable
add_executable(inpgen ${inpgen_F77} ${inpgen_F90} ${juDFT_SRC_F90} ${c_filesInpgen})
target_compile_definitions(inpgen PUBLIC ${FLEUR_DEFINITIONS})
target_link_libraries(inpgen ${FLEUR_LIBRARIES})
target_link_libraries(inpgen juDFT)
set_target_properties(inpgen PROPERTIES Fortran_MODULE_DIRECTORY modules/inpgen COMPILE_OPTIONS -Imodules/inpgen)
103 104


105 106
include(cmake/docker.txt)

107 108 109 110 111 112 113 114 115 116 117

#if (${FLEUR_USE_SERIAL})        
#install(TARGETS fleur inpgen 
#        CONFIGURATIONS Release
#        DESTINATION bin)
#endif()
#if (${FLEUR_USE_MPI})        
#install(TARGETS fleur_MPI 
#        CONFIGURATIONS Release
#        DESTINATION bin)
#endif()