# -*- INI -*-
#
# Copyright (C) 2009-2014 ABINIT Group (Yann Pouillon)
#
# This file is part of the ABINIT software package. For license information,
# please see the COPYING file in the top-level directory of the ABINIT source
# distribution.
#

#
# Config file for the core libraries of Abinit
#
# Note: The following statements are in the Python "INI" format, with
#       case-sensitivity activated.
#
# Available options:
#
#   * abirules     : whether to check conformance to the abirules (mandatory);
#
#   * dependencies : external dependencies;
#
#   * optional     : whether the build of the library is optional (mandatory).
#

# WARNING: modify the defaults with *extreme* care!
[DEFAULT]
abirules = yes
optional = no

[01_gsl_ext]
optional = yes
dependencies = math

[01_interfaces_ext]
abirules = no
dependencies = bigdft

[01_linalg_ext]
abirules = no

[01_macroavnew_ext]
abirules = no

[02_clib]
abirules = no
optional = yes
dependencies = algo

[10_defs]
abirules = no
dependencies = bigdft

[10_dumpinfo]
abirules = no

[11_memory_mpi]
abirules = no
dependencies = mpi

[11_qespresso_ext]
abirules = no

[12_hide_mpi]
abirules = no
dependencies = mpi

[14_hidewrite]
abirules = no
dependencies = mpi

[15_gpu_toolbox]
abirules = no
dependencies = gpu linalg
optional = yes

[16_hideleave]
abirules = no
dependencies = etsf_io mpi netcdf

[18_timing]
abirules = no
dependencies = mpi timer

[21_psiesta_noabirule]
abirules = no

[27_toolbox_oop]
abirules = no
dependencies = etsf_io netcdf

[28_numeric_noabirule]
abirules = no
dependencies = linalg math mpi etsf_io netcdf

[32_util]
abirules = no
dependencies = fft linalg

[41_geometry]
dependencies = bigdft etsf_io netcdf

[41_xc_lowlevel]
abirules = no
dependencies = fft libxc

[42_libpaw]
dependencies = fox

[42_nlstrain]

[42_parser]

[43_ptgroups]
abirules = no

[43_wvl_wrappers]
dependencies = bigdft

[44_abitypes_defs]
abirules = no
dependencies = etsf_io gpu netcdf 

[45_geomoptim]
dependencies = etsf_io netcdf 

[47_xml]

[49_gw_toolbox_oop]
abirules = no
dependencies = etsf_io netcdf

[51_manage_mpi]
abirules = no
dependencies = etsf_io mpi netcdf yaml

[52_fft_mpi_noabirule]
abirules = no
dependencies = fft mpi

[52_manage_cuda]
abirules = no
optional = yes
dependencies = gpu

[53_abiutil]
abirules = no
dependencies = linalg

[53_ffts]
abirules = no
dependencies = fft

[53_spacepar]

[56_io_mpi]
abirules = no
dependencies = etsf_io mpi netcdf

[56_mixing]

[56_recipspace]

[56_xc]
abirules = no
dependencies = fft libxc

[57_iopsp_parser]
dependencies = bigdft fox 

[57_iovars]
abirules = no
dependencies = bigdft etsf_io libxc linalg netcdf wannier90 yaml

[61_ionetcdf]
dependencies = etsf_io netcdf

[62_ctqmc]
abirules = no

[62_cg_noabirule]
abirules = no

[62_iowfdenpot]
abirules = no
dependencies = bigdft etsf_io mpi netcdf

[62_occeig]
dependencies = bigdft etsf_io netcdf

[62_poisson]
abirules = no
dependencies = bigdft

[62_wvl_wfs]
dependencies = bigdft etsf_io netcdf

[63_bader]

[64_atompaw]
abirules = no

[65_lotf_base]
abirules = no
optional = yes

[65_nonlocal]
abirules = no
dependencies = gpu

[65_psp]
abirules = no
dependencies = bigdft fox libpspio libxc math

[66_paw]
abirules = no
dependencies = bigdft etsf_io mpi netcdf

[66_fock]
abirules = no
dependencies = libxc

[66_wfs]
dependencies = gpu

[67_common]
abirules = no
dependencies = bigdft etsf_io gpu netcdf mpi wannier90

[68_dmft]
abirules = no

[68_lotf]
abirules = no
optional = yes

[68_recursion]
abirules = no
dependencies = gpu

[68_rsprc]
dependencies = bigdft

[69_wfdesc]
abirules = no
dependencies = etsf_io netcdf

[70_gw]
abirules = no
dependencies = algo etsf_io libxc mpi netcdf yaml

[71_bse]
abirules = no
dependencies = bigdft etsf_io linalg mpi netcdf yaml

[72_response]
dependencies = etsf_io netcdf

[77_ddb]
abirules = no
dependencies = bigdft etsf_io netcdf

[77_suscep]

[79_seqpar_mpi]
abirules = no
dependencies = bigdft etsf_io linalg mpi netcdf

[83_cut3d]
dependencies = etsf_io netcdf

[95_drive]
dependencies = bigdft etsf_io fox gpu libxc netcdf mpi timer yaml

