Skip to content

[libxc] [package list]

libxc/7.0.0-cpeGNU-26.03-KXC (libxc-7.0.0-cpeGNU-26.03-KXC.eb)

Install with the EasyBuild-user module:

eb libxc-7.0.0-cpeGNU-26.03-KXC.eb -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider libxc/7.0.0-cpeGNU-26.03-KXC.

EasyConfig:

# contributed by Luca Marsella (CSCS)
# adapted for LUMI by Peter Larsson
# enable calculation of the 3rd derivatives of energy

local_Perl_version =         '5.42.0'        # https://www.perl.org/get.html

easyblock = 'CMakeMake'

local_libxc7_version =       '7.0.0'         # https://gitlab.com/libxc/libxc/-/releases

name =           'libxc'
version =        local_libxc7_version
version_suffix = '-KXC'

homepage = 'https://libxc.gitlab.io/'

whatis = [
    "Description: Libxc is a library of exchange-correlation and kinetic energy functionals " +
    "for density-functional theory."
]

description = """
Libxc is a library of exchange-correlation and kinetic energy functionals for
density-functional theory. The original aim was to provide a portable, well
tested and reliable set of LDA, GGA, and meta-GGA functionals.

Libxc is written in C, but it also comes with Fortran binding.

It is released under the MPL license (v. 2.0). In all publications resulting
from your use of Libxc, please cite:

[ref] Susi Lehtola, Conrad Steigemann, Micael J. T. Oliveira, and Miguel A. L. Marques,
      "Recent developments in Libxc - A comprehensive  library of functionals for
      density functional theory", Software X 7, 1 (2018)
"""

doc_urls = [
    'Manual: https://libxc.gitlab.io/manual/',
    'Available functionals: https://libxc.gitlab.io/functionals/'
]

toolchain = {'name': 'cpeGNU', 'version': '26.03'}
toolchain_opts = {'opt': True}

source_urls = ['https://gitlab.com/%(name)s/%(name)s/-/archive/%(version)s']
sources = [SOURCE_TAR_BZ2]
#checksums = ['f72ed08af7b9dff5f57482c5f97bff22c7dc49da9564bc93871997cbda6dacf3']
checksums = ['e9ae69f8966d8de6b7585abd9fab588794ada1fab8f689337959a35abbf9527d']  # libxc-7.0.0.tar.bz2

build_deps = [
    ('buildtools',          '%(toolchain_version)s', '', SYSTEM), # For CMake
    ('craype-network-none', EXTERNAL_MODULE),
    ('craype-accel-host',   EXTERNAL_MODULE),
    ('Perl',                local_Perl_version),
]

local_common_configure_opts = ' '.join([
    '-DCMAKE_POLICY_VERSION_MINIMUM=3.5',
    '-DCMAKE_INSTALL_LIBDIR=lib',
    '-DENABLE_FORTRAN=ON',
    '-DDISABLE_KXC=OFF'
])

configure_opts = [
    local_common_configure_opts + ' -DBUILD_SHARED_LIBS=OFF',
    local_common_configure_opts + ' -DBUILD_SHARED_LIBS=ON',
]

pre_configure_opts = 'module unload rocm cray-libsci && '
pre_build_opts = pre_test_opts = pre_configure_opts

post_install_cmds = [
    'mkdir -p %(installdir)s/share/licenses/%(name)s',
    'cd ../%(name)s-%(version)s && cp AUTHORS CITATION COPYING NEWS README.md %(installdir)s/share/licenses/%(name)s',
]

sanity_check_paths = {
    'files': ['bin/xc-info'] +
             ['lib/libxc%s.%s' % (x, y) for x in ['', 'f03'] for y in ['a', SHLIB_EXT]],
    'dirs':  ['include', 'lib/pkgconfig', 'lib/cmake/Libxc'],
}

env_mod_category = 'chem'

[libxc] [package list]