Compare commits

...
Sign in to create a new pull request.

42 commits

Author SHA1 Message Date
Fedora Release Engineering
67cad9be9e Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-24 19:49:50 +00:00
Fedora Release Engineering
b6da8bc35c Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-17 11:34:57 +00:00
Susi Lehtola
def0e77f3a Fix location of data directory in generated CMake config. 2024-09-03 18:28:39 +00:00
Susi Lehtola
9dc2f1aae6 Add necessary requires to -devel. 2024-09-03 07:34:56 +00:00
Susi Lehtola
68b0304c5b Now got a similar failure to ppc64 on aarch64 where the build succeeded last time. Re-enable pcc64le and decrease number of threads 2024-08-21 13:28:52 +00:00
Susi Lehtola
3bf1651fe0 Build succeeds on x86_64, aarch64 and s390x; disable pcc64le architecture 2024-08-21 12:20:46 +00:00
Susi Lehtola
16c83e2854 Fix license tag and disable x86 arch to try to get builds to work 2024-08-21 09:00:43 +00:00
Susi Lehtola
1e83f747c0 New version produces soversioned library 2024-08-18 11:56:31 +00:00
Susi Lehtola
f95b734ed1 include sources 2024-08-18 07:23:31 +00:00
Susi Lehtola
fb5c2f8654 Update to 2.9.0 and try to fix build failure 2024-08-18 07:12:26 +00:00
Miroslav Suchý
e9e1e263ae convert GPLv2+ license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-07-26 00:55:53 +02:00
Fedora Release Engineering
236f5a7bce Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-18 14:10:33 +00:00
Susi Lehtola
8c66c69c14 Missing BR: pybind11-devel 2024-02-23 11:19:03 +00:00
Susi Lehtola
5d2f972593 Forgot some sources 2024-02-23 10:59:19 +00:00
Susi Lehtola
48cc1034c8 Finishing up on 2.8.2 build, now to build it on a side tag 2024-02-23 10:40:08 +00:00
Susi Lehtola
d5bc99508f Work to update to 2.8.2. 2024-02-21 13:03:03 +00:00
Fedora Release Engineering
ad116b8cbe Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-25 02:33:02 +00:00
Fedora Release Engineering
6854cce516 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-21 04:23:16 +00:00
Fedora Release Engineering
3145dc90c4 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-20 11:11:14 +00:00
Fedora Release Engineering
cf21db9170 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-19 16:37:17 +00:00
Fedora Release Engineering
563463c553 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-21 18:06:58 +00:00
Fedora Release Engineering
3c1072305f - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-20 16:29:14 +00:00
Fedora Release Engineering
5b13d942bc - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-22 11:38:04 +00:00
Jeff Law
f64510a702 Disable LTO on arm 2021-02-21 22:13:02 -07:00
Fedora Release Engineering
65c7ee573d - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-26 17:18:41 +00:00
Tom Stellard
989b8e2530 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-05 02:03:01 +00:00
Susi Lehtola
ebe93e66dc Buildrequire python 2020-10-21 00:21:17 +02:00
Susi Lehtola
a37b152ba3 Disable buggy eigen3 support until 2.7.0 is released. 2020-09-29 19:05:37 +02:00
Susi Lehtola
d990865234 Fix syntax 2020-08-16 10:14:22 +02:00
Susi Lehtola
2367763a25 Enable eigen3 support 2020-08-16 10:05:49 +02:00
Susi Lehtola
6c5763b5c6 Add BR: eigen3-devel. 2020-08-15 16:03:20 +02:00
Susi Lehtola
82380e9f92 Feed in CXX opt flags 2020-08-15 15:57:54 +02:00
Susi Lehtola
e05cdb3e5b Enable Fortran bindings (BZ #1728161). 2020-08-15 15:51:17 +02:00
Susi Lehtola
e19906d76d Use macros, cmake files are now in libdir not datadir 2020-08-11 14:16:26 +02:00
Susi Lehtola
68d7283912 Make sure cmake directory exists 2020-08-11 10:25:17 +02:00
Fedora Release Engineering
3ac117af02 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-08-01 03:58:33 +00:00
Fedora Release Engineering
c2010a1441 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-28 04:53:45 +00:00
Fedora Release Engineering
b88ddb8e95 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-29 09:26:16 +00:00
Susi Lehtola
10a102c3c6 Add CMake file. 2019-08-03 12:15:38 +02:00
Susi Lehtola
35c4e3ff04 Update source dir name. 2019-08-02 22:13:32 +02:00
Susi Lehtola
a5c120787f Update to 2.6.0. 2019-08-02 22:01:35 +02:00
Fedora Release Engineering
35d4744341 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-25 13:32:50 +00:00
7 changed files with 264 additions and 57 deletions

9
.gitignore vendored
View file

@ -10,3 +10,12 @@
/v2.1.0.tar.gz /v2.1.0.tar.gz
/libint-2.1.0-classdoc.tar.bz2 /libint-2.1.0-classdoc.tar.bz2
/libint-2.1.0-stable.tgz /libint-2.1.0-stable.tgz
/v2.6.0.tar.gz
/libint-2.6.0.tgz
/libint-2.6.0-classdoc.tar.bz2
/libint-2.8.2.tgz
/v2.8.2.tar.gz
/progman-2.8.2.pdf
/v2.9.0.tar.gz
/progman-2.9.0.pdf
/libint-2.9.0.tar.xz

View file

@ -1,10 +1,10 @@
# Generate libint2 source tarball. # Generate libint2 source tarball.
# 2016-07-09 Susi Lehtola # 2024-02-21 Susi Lehtola
# Before running this script, make sure that you have all the # Before running this script, make sure that you have all the
# buildrequires for building libint2 w/ bootstrapping # buildrequires for building libint2 w/ bootstrapping by running the command
sudo dnf install boost-devel gmp-devel mpfr-devel autoconf automake "tex(latex)" "tex(appendix.sty)" "tex(framed.sty)" "tex(mathcomp.sty)" "tex(subfigure.sty)" "tex(wrapfig.sty)" "tex-bibtex" "tex(bbding.sty)" "tex(braket.sty)" "tex(sfmath.sty)" # sudo dnf install boost-devel gmp-devel mpfr-devel autoconf automake "tex(latex)" "tex(appendix.sty)" "tex(framed.sty)" "tex(mathcomp.sty)" "tex(subfigure.sty)" "tex(wrapfig.sty)" "tex-bibtex" "tex(bbding.sty)" "tex(braket.sty)" "tex(sfmath.sty)" latex2html
# Read the version from the spec file # Read the version from the spec file
ver=`grep "Version" libint2.spec|awk '{print $2}'` ver=`grep "Version" libint2.spec|awk '{print $2}'`
@ -35,23 +35,41 @@ fi
cd objdir cd objdir
# Configure the options for the target library # Configure the options for the target library
if [ ! -f libint-${ver}-stable.tgz ]; then if [ ! -f libint-${ver}.tgz ]; then
echo "libint-${ver}-stable.tgz does not exist, generating." echo "libint-${ver}.tgz does not exist, generating."
export CXX=g++ export CXX=g++
# Optimization flags to use for the compiler (just speeds up the generation) # Optimization flags to use for the compiler (just speeds up the generation)
export OPTFLAGS=`rpm --eval %{optflags}` export OPTFLAGS=`rpm --eval %{optflags}`
export CXXGENFLAGS=`rpm --eval %{optflags}`
if(( 1 )); then
../configure --enable-shared --disable-static \
--enable-eri=2 --enable-eri3=2 --enable-eri2=2 \
--enable-1body=2 --enable-g12=1 \
--enable-1body-property-derivs \
--with-multipole-max-order=10 \
--with-eri-max-am=6,5,4 \
--with-eri3-max-am=12,11,10 --with-eri2-max-am=12,11,10 \
--with-max-am=6,5,4 \
--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-cxx-optflags="$OPTFLAGS" \
| tee configure.log
else
# Much smaller version to work out the packaging
../configure --enable-shared --disable-static \
--enable-eri=2 --enable-eri3=2 --enable-eri2=2 \
--with-eri-max-am=3,2,1 --with-eri-opt-am=3 \
--with-eri3-max-am=3 --with-eri2-max-am=3 \
--with-g12-max-am=2 --with-g12-opt-am=2 \
--with-g12dkh-max-am=2 --with-g12dkh-opt-am=2 \
--disable-unrolling --enable-generic-code --enable-contracted-ints \
--with-cxx-optflags="$OPTFLAGS" \
| tee configure.log
fi
../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-cxx-optflags="$OPTFLAGS" \
| tee configure.log
# Generate the library sources # Generate the library sources
echo "Running make export, follow progress in export.log" echo "Running make export, follow progress in export.log"
make export > export.log make export > export.log
@ -63,9 +81,12 @@ fi
make -C doc make -C doc
# Copy the generated source tarball # Copy the generated source tarball
cp libint-${ver}-stable.tgz ../.. cp libint-${ver}.tgz ../..
# Copy the programmer's manual # Copy the programmer's manual
cp -p doc/progman/progman.pdf ../.. cp -p doc/progman/progman.pdf ../../progman-${ver}.pdf
# and compress the html sources
cd doc/classdoc # Recompress with xz
tar jcf ../../../../libint-${ver}-classdoc.tar.bz2 html/ cd ../..
cp -p libint-${ver}.{tgz,tar.gz}
gunzip libint-${ver}.tar.gz
xz libint-${ver}.tar

View file

@ -0,0 +1,23 @@
diff -up libint-2.6.0/fortran/fortran_example.F90.fexample libint-2.6.0/fortran/fortran_example.F90
--- libint-2.6.0/fortran/fortran_example.F90.fexample 2020-08-15 13:40:52.426814159 +0300
+++ libint-2.6.0/fortran/fortran_example.F90 2020-08-15 13:42:07.730617092 +0300
@@ -1,7 +1,7 @@
PROGRAM fortran_example
#include <libint2/config.h>
-#include <libint2/util/generated/libint2_params.h>
+#include "libint2_params.h"
#include "fortran_incldefs.h"
USE ISO_C_BINDING, ONLY: C_DOUBLE, C_F_POINTER, C_F_PROCPOINTER, C_NULL_PTR
@@ -86,8 +86,8 @@ PROGRAM fortran_example
am2, c2, alpha2, B, &
am3, c3, alpha3, C, &
am4, c4, alpha4, D, &
- F, deriv_order, erieval)
- CALL print_eri(am1, am2, am3, am4, erieval)
+ F, erieval)
+ CALL print_eri(am1, am2, am3, am4, deriv_order, erieval)
CALL libint2_cleanup_eri2(erieval)
#endif
#endif

View file

@ -0,0 +1,22 @@
diff -up libint-2.8.2/CMakeLists.txt.fedoraver libint-2.8.2/CMakeLists.txt
--- libint-2.8.2/CMakeLists.txt.fedoraver 2024-02-21 23:21:55.000000000 +0000
+++ libint-2.8.2/CMakeLists.txt 2024-02-22 09:49:10.871180865 +0000
@@ -16,7 +16,7 @@ if (LIBINT_BUILDID)
else(LIBINT_BUILDID)
set(LIBINT_EXT_VERSION ${LIBINT_VERSION})
endif(LIBINT_BUILDID)
-set(MAX_AM_ERI "") # patch here in export tarball w/highest 4-center, 0-deriv ERI AM in numbers
+set(MAX_AM_ERI "7") # patch here in export tarball w/highest 4-center, 0-deriv ERI AM in numbers
# Add module directory and modules =====================================================================================
diff -up libint-2.8.2/src/configuration.cc.cmake.in.fedoraver libint-2.8.2/src/configuration.cc.cmake.in
--- libint-2.8.2/src/configuration.cc.cmake.in.fedoraver 2024-02-21 23:21:54.000000000 +0000
+++ libint-2.8.2/src/configuration.cc.cmake.in 2024-02-22 09:50:11.307111838 +0000
@@ -23,5 +23,5 @@
@return the semicolon-separated strings from CMake components */
const char* configuration_accessor() {
// return "@Libint2_CONFIG_COMPONENTS@";
- return "(nyi)";
+ return "ss;multipole_nn_d0;multipole_mm_d0;multipole_ll_d0;multipole_kk_d0;multipole_ii_d0;multipole_hh_d0;multipole_gg_d0;multipole_ff_d0;multipole_dd_d0;onebody_kk_d0;onebody_ii_d0;onebody_hh_d0;onebody_gg_d0;onebody_ff_d0;onebody_dd_d0;onebody_kk_d1;onebody_ii_d1;onebody_hh_d1;onebody_gg_d1;onebody_ff_d1;onebody_dd_d1;onebody_hh_d2;onebody_gg_d2;onebody_ff_d2;onebody_dd_d2;eri_kkkk_d0;eri_iiii_d0;eri_hhhh_d0;eri_gggg_d0;eri_ffff_d0;eri_dddd_d0;eri_kkkk_d1;eri_iiii_d1;eri_hhhh_d1;eri_gggg_d1;eri_ffff_d1;eri_dddd_d1;eri_gggg_d2;eri_ffff_d2;eri_dddd_d2;eri_kkQ_d0;eri_kkO_d0;eri_kkN_d0;eri_kkM_d0;eri_kkL_d0;eri_kkK_d0;eri_iiQ_d0;eri_iiO_d0;eri_iiN_d0;eri_iiM_d0;eri_iiL_d0;eri_iiK_d0;eri_iiI_d0;eri_hhQ_d0;eri_hhO_d0;eri_hhN_d0;eri_hhM_d0;eri_hhL_d0;eri_hhK_d0;eri_hhI_d0;eri_hhH_d0;eri_ggQ_d0;eri_ggO_d0;eri_ggN_d0;eri_ggM_d0;eri_ggL_d0;eri_ggK_d0;eri_ggI_d0;eri_ggH_d0;eri_ggG_d0;eri_ffQ_d0;eri_ffO_d0;eri_ffN_d0;eri_ffM_d0;eri_ffL_d0;eri_ffK_d0;eri_ffI_d0;eri_ffH_d0;eri_ffG_d0;eri_ffF_d0;eri_ddQ_d0;eri_ddO_d0;eri_ddN_d0;eri_ddM_d0;eri_ddL_d0;eri_ddK_d0;eri_ddI_d0;eri_ddH_d0;eri_ddG_d0;eri_ddF_d0;eri_ddD_d0;eri_kkK_d1;eri_iiK_d1;eri_iiI_d1;eri_hhK_d1;eri_hhI_d1;eri_hhH_d1;eri_ggK_d1;eri_ggI_d1;eri_ggH_d1;eri_ggG_d1;eri_ffK_d1;eri_ffI_d1;eri_ffH_d1;eri_ffG_d1;eri_ffF_d1;eri_ddK_d1;eri_ddI_d1;eri_ddH_d1;eri_ddG_d1;eri_ddF_d1;eri_ddD_d1;eri_hhH_d2;eri_ggH_d2;eri_ggG_d2;eri_ffH_d2;eri_ffG_d2;eri_ffF_d2;eri_ddH_d2;eri_ddG_d2;eri_ddF_d2;eri_ddD_d2;eri_kkq_d0;eri_kko_d0;eri_kkn_d0;eri_kkm_d0;eri_kkl_d0;eri_kkk_d0;eri_iiq_d0;eri_iio_d0;eri_iin_d0;eri_iim_d0;eri_iil_d0;eri_iik_d0;eri_iii_d0;eri_hhq_d0;eri_hho_d0;eri_hhn_d0;eri_hhm_d0;eri_hhl_d0;eri_hhk_d0;eri_hhi_d0;eri_hhh_d0;eri_ggq_d0;eri_ggo_d0;eri_ggn_d0;eri_ggm_d0;eri_ggl_d0;eri_ggk_d0;eri_ggi_d0;eri_ggh_d0;eri_ggg_d0;eri_ffq_d0;eri_ffo_d0;eri_ffn_d0;eri_ffm_d0;eri_ffl_d0;eri_ffk_d0;eri_ffi_d0;eri_ffh_d0;eri_ffg_d0;eri_fff_d0;eri_ddq_d0;eri_ddo_d0;eri_ddn_d0;eri_ddm_d0;eri_ddl_d0;eri_ddk_d0;eri_ddi_d0;eri_ddh_d0;eri_ddg_d0;eri_ddf_d0;eri_ddd_d0;eri_kkk_d1;eri_iik_d1;eri_iii_d1;eri_hhk_d1;eri_hhi_d1;eri_hhh_d1;eri_ggk_d1;eri_ggi_d1;eri_ggh_d1;eri_ggg_d1;eri_ffk_d1;eri_ffi_d1;eri_ffh_d1;eri_ffg_d1;eri_fff_d1;eri_ddk_d1;eri_ddi_d1;eri_ddh_d1;eri_ddg_d1;eri_ddf_d1;eri_ddd_d1;eri_hhh_d2;eri_ggh_d2;eri_ggg_d2;eri_ffh_d2;eri_ffg_d2;eri_fff_d2;eri_ddh_d2;eri_ddg_d2;eri_ddf_d2;eri_ddd_d2;eri_QQ_d0;eri_OO_d0;eri_NN_d0;eri_MM_d0;eri_LL_d0;eri_KK_d0;eri_II_d0;eri_HH_d0;eri_GG_d0;eri_FF_d0;eri_DD_d0;eri_KK_d1;eri_II_d1;eri_HH_d1;eri_GG_d1;eri_FF_d1;eri_DD_d1;eri_HH_d2;eri_GG_d2;eri_FF_d2;eri_DD_d2;eri_qq_d0;eri_oo_d0;eri_nn_d0;eri_mm_d0;eri_ll_d0;eri_kk_d0;eri_ii_d0;eri_hh_d0;eri_gg_d0;eri_ff_d0;eri_dd_d0;eri_kk_d1;eri_ii_d1;eri_hh_d1;eri_gg_d1;eri_ff_d1;eri_dd_d1;eri_hh_d2;eri_gg_d2;eri_ff_d2;eri_dd_d2;g12_hhhh_d0;g12_gggg_d0;g12_ffff_d0;g12_dddd_d0;g12_hhhh_d1;g12_gggg_d1;g12_ffff_d1;g12_dddd_d1";
}

View file

@ -0,0 +1,12 @@
diff -up libint-2.9.0/CMakeLists.txt.datadir libint-2.9.0/CMakeLists.txt
--- libint-2.9.0/CMakeLists.txt.datadir 2024-08-16 18:09:07.000000000 +0000
+++ libint-2.9.0/CMakeLists.txt 2024-09-03 18:26:42.987384071 +0000
@@ -377,7 +377,7 @@ if (LIBINT_HAS_CXX_API)
target_compile_definitions(
libint2_cxx
INTERFACE
- $<INSTALL_INTERFACE:DATADIR="\$\{_IMPORT_PREFIX\}/${LIBINT2_INSTALL_DATADIR}">
+ $<INSTALL_INTERFACE:DATADIR="${LIBINT2_INSTALL_DATADIR}">
)
endif()
# Add library to the list of installed components

View file

@ -1,3 +1,12 @@
# We run out of memory on the ARM builders with LTO
%ifarch %{arm}
%define _lto_cflags %{nil}
%endif
# We run out of memory on many builders since the source files are big, drop down to four threads
%define _smp_mflags -j4
# Disable x86 architectures since builders run out of memory
ExcludeArch: %{ix86}
# RPM macro directory # RPM macro directory
%global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) %global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d)
@ -7,16 +16,17 @@
# We use -O2 for the compiler and -O1 for the library (these are given # We use -O2 for the compiler and -O1 for the library (these are given
# in configure). The common flags are # in configure). The common flags are
%global commonflags %(echo %{optflags} | sed "s|-O2||g") %global commonflags %(echo %{optflags} | sed "s|-O2||g")
%global optflags %commonflags -O1 %global optflags %commonflags -O1 -fno-var-tracking-assignments
# API version provided. Increment this whenever you change the configure time flags. # API version provided. Increment this whenever you change the configure time flags.
%global apiversion 0 %global apiversion 1
Name: libint2 Name: libint2
Version: 2.1.0 Version: 2.9.0
Release: 9%{?dist} Release: 5%{?dist}
Summary: A library for efficient evaluation of electron repulsion integrals Summary: A library for efficient evaluation of electron repulsion integrals
License: GPLv2+ # Generator itself is GPLv2+, generated library packaged in Fedora is LGPLv3
License: LGPL-3.0-only
URL: https://github.com/evaleev/libint URL: https://github.com/evaleev/libint
# Compiler sources # Compiler sources
@ -29,18 +39,27 @@ Source0: https://github.com/evaleev/libint/archive/v%{version}.tar.gz
# generated on the same run, debuginfo will turn up missing from the # generated on the same run, debuginfo will turn up missing from the
# RPM (BZ #9619635). For this reason pregenerated sources are used. To # RPM (BZ #9619635). For this reason pregenerated sources are used. To
# generate the sources, run the generate-sources.sh script. # generate the sources, run the generate-sources.sh script.
Source1: libint-%{version}-stable.tgz Source1: libint-%{version}.tar.xz
# The programmers' manual is compiled from the LaTeX source by generate-sources.sh # The programmers' manual is compiled from the LaTeX source by generate-sources.sh
Source2: progman.pdf Source2: progman-%{version}.pdf
# and the html documentation is extracted from the source code as well
Source3: libint-%{version}-classdoc.tar.bz2 # The source tarball generator does not introduce all info in the CMake config for now, this patches in the missing info
Patch0: libint-2.8.2-fedoraver.patch
# Fix location of data directory in generated CMake config
Patch1: libint-2.9.0-datadir.patch
Provides: libint2(api)%{?_isa} = %{apiversion} Provides: libint2(api)%{?_isa} = %{apiversion}
# On PPC (at least on EPEL5) the build fails due to a relocation error
ExcludeArch: ppc
BuildRequires: gcc-c++ BuildRequires: gcc-c++
BuildRequires: gcc-gfortran
BuildRequires: boost-devel
BuildRequires: mpfr-devel
BuildRequires: python3-devel
BuildRequires: make
BuildRequires: cmake
BuildRequires: eigen3-devel
BuildRequires: pybind11-devel
%description %description
LIBINT computes the Coulomb and exchange integrals, which in electronic LIBINT computes the Coulomb and exchange integrals, which in electronic
structure theory are called electron repulsion integrals (ERIs). This is by structure theory are called electron repulsion integrals (ERIs). This is by
@ -52,43 +71,53 @@ computer implementation of such methods by implementing an optimizing compiler
to generate automatically highly-specialized code that runs well on to generate automatically highly-specialized code that runs well on
super-scalar architectures. super-scalar architectures.
%package doc %package data
Summary: Documentation for libint Summary: Shared data for libint2
Requires: libint2 = %{version}-%{release} Requires: libint2 = %{version}-%{release}
%if 0%{?rhel} != 5 BuildArch: noarch
BuildArch: noarch
%endif %description data
This package contains shared data for libint2.
%package doc
Summary: Documentation for libint2
Requires: libint2 = %{version}-%{release}
BuildArch: noarch
%description doc %description doc
This package contains a programmer's manual and doxygen documentation This package contains a programmer's manual and doxygen documentation
for the classes. for the classes.
%package devel %package devel
Summary: Development headers and libraries for libint Summary: Development headers and libraries for libint2
Requires: libint2%{?_isa} = %{version}-%{release} Requires: libint2%{?_isa} = %{version}-%{release}
# For dir ownership
Requires: cmake
# Dependencies for compiling code
Requires: boost-devel
Requires: eigen3-devel
Requires: gmp-devel
Requires: mpfr-devel
%description devel %description devel
This package contains development headers and libraries for libint. This package contains development headers and libraries for libint2.
%prep %prep
%setup -q -T -b 1 -n libint-%{version}-stable %setup -q -T -b 1 -n libint-%{version}
# Copy programmers manual and extract the html documentation %patch 0 -p1 -b .fedora
cp -p %{SOURCE2} doc # Copy programmers manual
tar jxf %{SOURCE3} cp -p %{SOURCE2} doc/progman.pdf
%build %build
export CXX=g++ export CXX=g++
%configure --enable-shared --disable-static %cmake -DENABLE_FORTRAN=ON -DENABLE_MPFR=ON -DLIBINT2_PYTHON=ON -DLIBINT2_INSTALL_LIBDIR=%{_libdir} -DLIBINT2_INSTALL_DATADIR=%{_datadir}/%{name} -DLIBINT2_INSTALL_CMAKEDIR=%{_libdir}/cmake/%{name}
make %{?_smp_mflags} VERBOSE=1 %cmake_build
%install %install
rm -rf %{buildroot} %cmake_install
make install DESTDIR=%{buildroot}
find %{buildroot} -name *.la -delete find %{buildroot} -name *.la -delete
# Make sure libraries are executable (otherwise they are not stripped) # Make sure libraries are executable (otherwise they are not stripped)
find %{buildroot} -name *.so.*.* -exec chmod 755 {} \; 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
# Create macro file # Create macro file
mkdir -p %{buildroot}%{macrosdir} mkdir -p %{buildroot}%{macrosdir}
@ -97,24 +126,116 @@ cat > %{buildroot}%{macrosdir}/macros.libint2 << EOF
%_libint2_apiversion %{apiversion} %_libint2_apiversion %{apiversion}
EOF EOF
# Move module file to the correct location
mkdir -p %{buildroot}%{_fmoddir}
mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/
%ldconfig_scriptlets %ldconfig_scriptlets
%files %files
%doc LICENSE COPYING %doc LICENSE COPYING
%{_libdir}/libint*.so.* %{_libdir}/libint2.so.2
%{_libdir}/libint2.so.%{version}
%files data
%{_datadir}/libint2/
%files doc %files doc
%doc doc/progman.pdf html %doc doc/progman.pdf
%files devel %files devel
%{macrosdir}/macros.libint2 %{macrosdir}/macros.libint2
%{_libdir}/cmake/libint2/
%{_includedir}/libint2/ %{_includedir}/libint2/
%{_includedir}/libint2.h %{_includedir}/libint2.h
%{_includedir}/libint2.hpp %{_includedir}/libint2.hpp
%{_libdir}/*.so
%{_libdir}/pkgconfig/libint2.pc %{_libdir}/pkgconfig/libint2.pc
%{_fmoddir}/libint_f.mod
%{_libdir}/libint2.so
%changelog %changelog
* Thu Jul 24 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.0-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Fri Jan 17 2025 Fedora Release Engineering <releng@fedoraproject.org> - 2.9.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Tue Sep 03 2024 Susi Lehtola <jussilehtola@fedoraproject.org> 2.9.0-3
- Fix location of data directory in generated CMake config.
* Tue Sep 03 2024 Susi Lehtola <jussilehtola@fedoraproject.org> 2.9.0-2
- Devel package now pulls in boost, eigen3, gmp, and mpfr development
packages that are needed to build against libint2.
* Sun Aug 18 2024 Susi Lehtola <jussilehtola@fedoraproject.org> 2.9.0-1
- Disable build on i386 architecture where the build runs out of memory.
- Update license tag to LGPL-3.0-only (generated library).
- Update to 2.9.0.
* Fri Jul 26 2024 Miroslav Suchý <msuchy@redhat.com> - 2.8.2-3
- convert license to SPDX
* Thu Jul 18 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.8.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Wed Feb 21 2024 Susi Lehtola <jussilehtola@fedoraproject.org> - 2.8.2-1
- Update to 2.8.2.
* Thu Jan 25 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-17
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Sun Jan 21 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Sun Feb 21 2021 Jeff Law <law@redhat.com> - 2.6.0-10
- Disable LTO on arm
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Tue Oct 20 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 2.6.0-8
- Add BR: python3-devel.
* Tue Sep 29 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 2.6.0-7
- Disable buggy Eigen3 support until 2.7.0 is released.
* Sun Aug 16 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 2.6.0-6
- Enable Eigen3 support in build.
* Fri Aug 14 2020 Susi Lehtola <jussilehtola@fedoraproject.org> - 2.6.0-5
- Enable Fortran bindings.
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-4
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Aug 02 2019 Susi Lehtola <jussilehtola@fedoraproject.org> - 2.6.0-1
- Update to 2.6.0.
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-9 * Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

View file

@ -1,4 +1,3 @@
d0dcb985fe32ddebc78fe571ce37e2d6 v2.1.0.tar.gz SHA512 (v2.9.0.tar.gz) = 6cffbd3d78dee4722b8085f4dd93085351cb610b5cb7ac090335adb2c43e87256ca06a658c202473fd763a38f7c0eeb6570b2c6a107e3f41d1258baf6e5b17de
c84358d57bc67e443c785cc03a652360 libint-2.1.0-classdoc.tar.bz2 SHA512 (progman-2.9.0.pdf) = 2eb6728e69ac3b395bf39c994f99fd937adf2a0ea7a5664b2e9313d00f4cd4c13a0eabc35c978bd6756938065a870c6bf88544c63bf6cb07c0862438413a8772
d7da0cde3d0f2d6f2dc1a2031010324b libint-2.1.0-stable.tgz SHA512 (libint-2.9.0.tar.xz) = 5bfeb16c5123f277481922f4894e79f75fe923c90b0a4440b55881b9f270a53b5a91cba569a3b25e2aeaa142688e7454d13608c1f5673f5843b7605fb07bd7b2
52113fd4638d268425495df81e497ccd progman.pdf