* 2025-04-24: 2.11.0
- PR #364: fix eritest segfaults with atypical L combinations
- PR #365: use Gaussian fit of Slater geminal for exceptional parameter values
* 2025-04-08: 2.10.2
- PR #360: CMake targets can be consumed from the build tree (e.g., usable via FetchContent)
* 2025-04-07: 2.10.1
- PR #358: introduced libint2_cxx-static CMake TARGET
- PR #357: fixup ANO-RCC-MB basis set definition (amends PR #354)
* 2025-04-05: 2.10.0
- PR #354: added ANO-RCC-MB basis sets (HT @kshitij-05)
- PR #352: added correlation-consistent 7Z basis sets (HT @powellsr)
- PR #350: vector traits for simd::VectorAVXFloat (HT @johannes-menzel)
- PR #346: added atomic potentials (fitted to Gaussians) used for Superposition of Atomic Potentials (HT @kshitij-05)
- PR #345: fixes Molden file generation in presence of solid harmonic p shells (HT @dmejiar)
- PR #342: build fixes for MinGW-w64 (HT @MehdiChinoune)
- PR #340: derivatives of Cartesian electric multipoles (HT @EricaCMitchell)
* 2024-03-04: 2.9.0
- PR #335: l->symbol map reuse + other misc improvements
- PR #334: bump Catch2 to 2.13.10 (HT @hrnagel)
- PR #333: can use modularized Boost, even if built as part of the project
- PR #331: add SOVERSION when building shared library only (HT @loriab)
- PR #329: increase Tenno function interpolation table to support L=9 4-c ERI
- PR #327: fix stochastic failures of tests/eri by reducing range of random shells parameters
- PR #281: auto-generator for DF basis (HT @kshitij-05)
* 2024-02-05: 2.8.2
- PR #324: addresses issues with 3eri derivatives + minor 3eri API safety improvements
- PR #322: update libtool to 2.4.7 + update config.{guess,sub} to 2024-01-01
- PR #319: pylibint builds with latest setuptools (HT @loriab)
- PR #311: clang-format.sh uses bash to resolve #310 (HT @e-kwsm)
OBS-URL: https://build.opensuse.org/package/show/science/libint?expand=0&rev=20
129 lines
4.8 KiB
RPMSpec
129 lines
4.8 KiB
RPMSpec
#
|
||
# spec file for package libint
|
||
#
|
||
# Copyright (c) 2025 SUSE LLC
|
||
#
|
||
# All modifications and additions to the file contributed by third parties
|
||
# remain the property of their copyright owners, unless otherwise agreed
|
||
# upon. The license for this file, and modifications and additions to the
|
||
# file, is the same license as for the pristine package itself (unless the
|
||
# license for the pristine package is not an Open Source License, in which
|
||
# case the license is the MIT License). An "Open Source License" is a
|
||
# license that conforms to the Open Source Definition (Version 1.9)
|
||
# published by the Open Source Initiative.
|
||
|
||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||
#
|
||
|
||
|
||
Name: libint
|
||
Version: 2.11.0
|
||
Release: 0
|
||
%define sover 2
|
||
Summary: High-performance library for computing Gaussian integrals in quantum mechanics
|
||
License: GPL-3.0-or-later AND LGPL-3.0-or-later
|
||
Group: Productivity/Scientific/Chemistry
|
||
URL: https://evaleev.github.io/libint/
|
||
Source0: https://github.com/evaleev/libint/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
||
# https://github.com/evaleev/libint/commit/485aaae9e18e9ad3d0d43f20caf8f054ded9b80b
|
||
Patch0: libint-gcc15.patch
|
||
|
||
BuildRequires: autoconf
|
||
BuildRequires: automake
|
||
BuildRequires: eigen3-devel
|
||
BuildRequires: gcc-c++
|
||
BuildRequires: gmp-devel
|
||
BuildRequires: libboost_headers-devel
|
||
# Exclude 32-bits - https://github.com/evaleev/libint/issues/196
|
||
ExcludeArch: %{ix86} %arm
|
||
# not enough memory for lto
|
||
%global _lto_cflags %nil
|
||
|
||
%description
|
||
LIBINT computes the Coulomb and exchange integrals, which in electronic
|
||
structure theory are called electron repulsion integrals (ERIs). This is by
|
||
far the most common type of integrals in molecular structure theory.
|
||
|
||
LIBINT uses recursive schemes that originate in seminal Obara-Saika method and
|
||
Head-Gordon and Pople’s variation thereof. The idea of LIBINT is to optimize
|
||
computer implementation of such methods by implementing an optimizing compiler
|
||
to generate automatically highly-specialized code that runs well on
|
||
super-scalar architectures.
|
||
|
||
%package -n libint2-%sover
|
||
Summary: Main libint library v2
|
||
Group: System/Libraries
|
||
|
||
%description -n libint2-%sover
|
||
LIBINT computes the Coulomb and exchange integrals, which in electronic
|
||
structure theory are called electron repulsion integrals (ERIs). This is by
|
||
far the most common type of integrals in molecular structure theory.
|
||
|
||
LIBINT uses recursive schemes that originate in seminal Obara-Saika method and
|
||
Head-Gordon and Pople’s variation thereof. The idea of LIBINT is to optimize
|
||
computer implementation of such methods by implementing an optimizing compiler
|
||
to generate automatically highly-specialized code that runs well on
|
||
super-scalar architectures.
|
||
|
||
This package contains the library of the libint package.
|
||
|
||
%package devel
|
||
Summary: Development headers and libraries for libint
|
||
Group: Development/Libraries/C and C++
|
||
Requires: eigen3-devel
|
||
Requires: libint2-%sover = %{version}
|
||
|
||
%description devel
|
||
LIBINT computes the Coulomb and exchange integrals, which in electronic
|
||
structure theory are called electron repulsion integrals (ERIs). This is by
|
||
far the most common type of integrals in molecular structure theory.
|
||
|
||
LIBINT uses recursive schemes that originate in seminal Obara-Saika method and
|
||
Head-Gordon and Pople’s variation thereof. The idea of LIBINT is to optimize
|
||
computer implementation of such methods by implementing an optimizing compiler
|
||
to generate automatically highly-specialized code that runs well on
|
||
super-scalar architectures.
|
||
|
||
This package contains development headers and libraries for libint.
|
||
|
||
%prep
|
||
%autosetup -p1
|
||
./autogen.sh
|
||
|
||
%build
|
||
%{configure} --enable-shared --disable-static \
|
||
--enable-eri=2 --enable-eri3=2 --enable-eri2=2 \
|
||
--with-eri-max-am=7,5,4 --with-eri-opt-am=3 \
|
||
--with-eri3-max-am=7 --with-eri2-max-am=7 \
|
||
--with-g12-max-am=5 --with-g12-opt-am=3 \
|
||
--with-g12dkh-max-am=5 --with-g12dkh-opt-am=3 \
|
||
--disable-unrolling --enable-generic-code --enable-contracted-ints \
|
||
--with-incdirs="-I%{_includedir}/eigen3" \
|
||
--with-cxx-optflags="%optflags"
|
||
%make_build
|
||
|
||
%install
|
||
%make_install
|
||
find %{buildroot} -name *.la -delete
|
||
# Make sure libraries are executable (otherwise they are not stripped)
|
||
find %{buildroot} -name *.so.*.* -exec chmod 755 {} \;
|
||
# Get rid of the basis set files that ship with libint
|
||
find %{buildroot}%{_datadir}/libint -name \*.g94 -delete
|
||
|
||
%post -n libint2-%sover -p /sbin/ldconfig
|
||
%postun -n libint2-%sover -p /sbin/ldconfig
|
||
|
||
%files -n libint2-%sover
|
||
%doc README.md CHANGES
|
||
%license LICENSE COPYING COPYING.LESSER
|
||
%{_libdir}/libint2.so.%{sover}*
|
||
|
||
%files devel
|
||
%{_includedir}/libint2/
|
||
%{_includedir}/libint2.h
|
||
%{_includedir}/libint2.hpp
|
||
%{_libdir}/libint2.so
|
||
%{_libdir}/pkgconfig/libint2.pc
|
||
|
||
%changelog
|