mirror of https://gitlab.com/QEF/q-e.git
172 lines
3.5 KiB
CMake
172 lines
3.5 KiB
CMake
set(src_modules
|
|
additional_kpoints.f90
|
|
autopilot.f90
|
|
basic_algebra_routines.f90
|
|
becmod.f90
|
|
bfgs_module.f90
|
|
bspline.f90
|
|
bz_form.f90
|
|
cell_base.f90
|
|
check_stop.f90
|
|
command_line_options.f90
|
|
compute_dipole.f90
|
|
constants.f90
|
|
constraints_module.f90
|
|
control_flags.f90
|
|
coulomb_vcut.f90
|
|
dist.f90
|
|
electrons_base.f90
|
|
environment.f90
|
|
fd_gradient.f90
|
|
fft_base.f90
|
|
fft_rho.f90
|
|
fsockets.f90
|
|
funct.f90
|
|
generate_function.f90
|
|
gradutils.f90
|
|
gvecw.f90
|
|
input_parameters.f90
|
|
invmat.f90
|
|
io_files.f90
|
|
io_global.f90
|
|
ions_base.f90
|
|
kind.f90
|
|
lmdif.f90
|
|
mdiis.f90
|
|
mm_dispersion.f90
|
|
mp_bands.f90
|
|
mp_exx.f90
|
|
mp_global.f90
|
|
mp_images.f90
|
|
mp_pools.f90
|
|
mp_wave.f90
|
|
mp_world.f90
|
|
noncol.f90
|
|
open_close_input_file.f90
|
|
parameters.f90
|
|
parser.f90
|
|
plugin_flags.f90
|
|
plugin_arguments.f90
|
|
plugin_variables.f90
|
|
pw_dot.f90
|
|
qmmm.f90
|
|
random_numbers.f90
|
|
read_cards.f90
|
|
read_input.f90
|
|
read_namelists.f90
|
|
read_pseudo.f90
|
|
recvec.f90
|
|
recvec_subs.f90
|
|
run_info.f90
|
|
space_group.f90
|
|
set_para_diag.f90
|
|
set_signal.f90
|
|
set_vdw_corr.f90
|
|
setqf.f90
|
|
timestep.f90
|
|
tsvdw.f90
|
|
mbdlib.f90
|
|
version.f90
|
|
wannier_gw.f90
|
|
wannier_new.f90
|
|
wavefunctions.f90
|
|
ws_base.f90
|
|
xc_vdW_DF.f90
|
|
xc_rVV10.f90
|
|
io_base.f90
|
|
qes_types_module.f90
|
|
qes_libs_module.f90
|
|
qes_write_module.f90
|
|
qes_read_module.f90
|
|
qes_reset_module.f90
|
|
qes_init_module.f90
|
|
qes_bcast_module.f90
|
|
qexsd.f90
|
|
qexsd_copy.f90
|
|
qexsd_init.f90
|
|
qexsd_input.f90
|
|
hdf5_qe.f90
|
|
qeh5_module.f90
|
|
fox_init_module.f90
|
|
xsf.f90
|
|
wyckoff.f90
|
|
wypos.f90
|
|
zvscal.f90
|
|
wave_gauge.f90
|
|
# subroutines and functions (not modules) previously found in flib
|
|
atom_weight.f90
|
|
capital.f90
|
|
cryst_to_car.f90
|
|
expint.f90
|
|
generate_k_along_lines.f90
|
|
more_functionals.f90
|
|
has_xml.f90
|
|
inpfile.f90
|
|
int_to_char.f90
|
|
latgen.f90
|
|
linpack.f90
|
|
matches.f90
|
|
plot_io.f90
|
|
radial_gradients.f90
|
|
rgen.f90
|
|
recips.f90
|
|
remove_tot_torque.f90
|
|
sort.f90
|
|
trimcheck.f90
|
|
test_input_file.f90
|
|
date_and_tim.f90
|
|
volume.f90
|
|
wgauss.f90
|
|
w0gauss.f90
|
|
w1gauss.f90
|
|
deviatoric.f90
|
|
# GPU
|
|
wavefunctions_gpu.f90
|
|
becmod_gpu.f90
|
|
becmod_subs_gpu.f90
|
|
random_numbers_gpu.f90
|
|
cuda_subroutines.f90)
|
|
qe_enable_cuda_fortran("${src_modules}")
|
|
qe_add_library(qe_modules ${src_modules})
|
|
|
|
# subroutines and functions (not modules) previously found in clib
|
|
set(src_modules_c
|
|
customize_signals.c
|
|
qmmm_aux.c
|
|
sockets.c
|
|
stack.c)
|
|
qe_add_library(qe_modules_c ${src_modules_c})
|
|
|
|
if(TARGET gitrev)
|
|
add_dependencies(qe_modules gitrev)
|
|
target_compile_definitions(qe_modules PRIVATE HAVE_GITREV)
|
|
target_include_directories(qe_modules PRIVATE ${qe_BINARY_DIR})
|
|
endif()
|
|
|
|
target_link_libraries(qe_modules
|
|
PRIVATE
|
|
qe_modules_c
|
|
qe_openmp_fortran
|
|
qe_fftx
|
|
qe_lax
|
|
qe_mpi_fortran
|
|
qe_mbd
|
|
qe_xclib
|
|
qe_devxlib
|
|
PUBLIC
|
|
qe_openacc_fortran
|
|
qe_hdf5_fortran
|
|
qe_upflib
|
|
qe_fox
|
|
qe_utilx
|
|
qe_openacc_fortran)
|
|
if(QE_ENABLE_CUDA)
|
|
target_link_libraries(qe_modules
|
|
PRIVATE
|
|
CUDA::curand)
|
|
endif()
|
|
|
|
###########################################################
|
|
|
|
qe_install_targets(qe_modules qe_modules_c)
|