From 86dca567b562c894fbda0917c8c21f06c786239a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 13 Jul 2018 08:16:41 +0000 Subject: [PATCH 01/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 94ba736..4dac261 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.1.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals Group: System Environment/Libraries License: GPLv2+ @@ -118,6 +118,9 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Fri Jul 13 2018 Fedora Release Engineering - 2.1.0-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Wed Feb 07 2018 Fedora Release Engineering - 2.1.0-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From f3ebec747251408a54439084729e21318d3f01f9 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 24 Jul 2018 16:16:16 +0200 Subject: [PATCH 02/47] Add missing BuildRequires on gcc-c++ configure: error: C++ compiler cannot create executables References: https://bugzilla.redhat.com/show_bug.cgi?id=1604601 Signed-off-by: Igor Gnatenko --- libint2.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libint2.spec b/libint2.spec index 4dac261..6a6543c 100644 --- a/libint2.spec +++ b/libint2.spec @@ -41,6 +41,7 @@ Provides: libint2(api)%{?_isa} = %{apiversion} # On PPC (at least on EPEL5) the build fails due to a relocation error ExcludeArch: ppc +BuildRequires: gcc-c++ %description LIBINT computes the Coulomb and exchange integrals, which in electronic structure theory are called electron repulsion integrals (ERIs). This is by From 5c2955b0b249f68e5dbbf3d4b695d58c0a0b3743 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 22 Jan 2019 18:39:48 +0100 Subject: [PATCH 03/47] Remove obsolete ldconfig scriptlets References: https://fedoraproject.org/wiki/Changes/RemoveObsoleteScriptlets Signed-off-by: Igor Gnatenko --- libint2.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libint2.spec b/libint2.spec index 6a6543c..2c04c45 100644 --- a/libint2.spec +++ b/libint2.spec @@ -100,8 +100,7 @@ cat > %{buildroot}%{macrosdir}/macros.libint2 << EOF %_libint2_apiversion %{apiversion} EOF -%post -p /sbin/ldconfig -%postun -p /sbin/ldconfig +%ldconfig_scriptlets %files %doc LICENSE COPYING From 2196e709ee35b60db0e30d50fb61698baa3bd336 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 28 Jan 2019 20:17:51 +0100 Subject: [PATCH 04/47] Remove obsolete Group tag References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag --- libint2.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/libint2.spec b/libint2.spec index 2c04c45..9d70516 100644 --- a/libint2.spec +++ b/libint2.spec @@ -16,7 +16,6 @@ Name: libint2 Version: 2.1.0 Release: 8%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals -Group: System Environment/Libraries License: GPLv2+ URL: https://github.com/evaleev/libint @@ -55,7 +54,6 @@ super-scalar architectures. %package doc Summary: Documentation for libint -Group: Development/Libraries Requires: libint2 = %{version}-%{release} %if 0%{?rhel} != 5 BuildArch: noarch @@ -67,7 +65,6 @@ for the classes. %package devel Summary: Development headers and libraries for libint -Group: Development/Libraries Requires: libint2%{?_isa} = %{version}-%{release} %description devel From 96eff99572bc281eedce812f5b3750b9dc7b5f04 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 1 Feb 2019 07:24:08 +0000 Subject: [PATCH 05/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 9d70516..194b2fb 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.1.0 -Release: 8%{?dist} +Release: 9%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -115,6 +115,9 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Fri Feb 01 2019 Fedora Release Engineering - 2.1.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Fri Jul 13 2018 Fedora Release Engineering - 2.1.0-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild From 35d47443416226fb8023ff89e13577a0b4d04b55 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jul 2019 13:32:50 +0000 Subject: [PATCH 06/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 194b2fb..6defb31 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.1.0 -Release: 9%{?dist} +Release: 10%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -115,6 +115,9 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Fri Feb 01 2019 Fedora Release Engineering - 2.1.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild From a5c120787ffdf4477fdb3751d33d4d31aa942b86 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Fri, 2 Aug 2019 22:01:35 +0200 Subject: [PATCH 07/47] Update to 2.6.0. --- .gitignore | 3 +++ generate-sources.sh | 6 +++--- libint2.spec | 16 +++++++--------- sources | 8 ++++---- 4 files changed, 17 insertions(+), 16 deletions(-) diff --git a/.gitignore b/.gitignore index f1df52e..1c6c827 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,6 @@ /v2.1.0.tar.gz /libint-2.1.0-classdoc.tar.bz2 /libint-2.1.0-stable.tgz +/v2.6.0.tar.gz +/libint-2.6.0.tgz +/libint-2.6.0-classdoc.tar.bz2 diff --git a/generate-sources.sh b/generate-sources.sh index be35d7e..5ad282e 100644 --- a/generate-sources.sh +++ b/generate-sources.sh @@ -35,8 +35,8 @@ fi cd objdir # Configure the options for the target library -if [ ! -f libint-${ver}-stable.tgz ]; then - echo "libint-${ver}-stable.tgz does not exist, generating." +if [ ! -f libint-${ver}.tgz ]; then + echo "libint-${ver}.tgz does not exist, generating." export CXX=g++ # Optimization flags to use for the compiler (just speeds up the generation) @@ -63,7 +63,7 @@ fi make -C doc # Copy the generated source tarball -cp libint-${ver}-stable.tgz ../.. +cp libint-${ver}.tgz ../.. # Copy the programmer's manual cp -p doc/progman/progman.pdf ../.. # and compress the html sources diff --git a/libint2.spec b/libint2.spec index 6defb31..a80f4b9 100644 --- a/libint2.spec +++ b/libint2.spec @@ -13,8 +13,8 @@ %global apiversion 0 Name: libint2 -Version: 2.1.0 -Release: 10%{?dist} +Version: 2.6.0 +Release: 1%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -29,7 +29,7 @@ Source0: https://github.com/evaleev/libint/archive/v%{version}.tar.gz # generated on the same run, debuginfo will turn up missing from the # RPM (BZ #9619635). For this reason pregenerated sources are used. To # generate the sources, run the generate-sources.sh script. -Source1: libint-%{version}-stable.tgz +Source1: libint-%{version}.tgz # The programmers' manual is compiled from the LaTeX source by generate-sources.sh Source2: progman.pdf # and the html documentation is extracted from the source code as well @@ -37,10 +37,8 @@ Source3: libint-%{version}-classdoc.tar.bz2 Provides: libint2(api)%{?_isa} = %{apiversion} -# On PPC (at least on EPEL5) the build fails due to a relocation error -ExcludeArch: ppc - BuildRequires: gcc-c++ + %description LIBINT computes the Coulomb and exchange integrals, which in electronic structure theory are called electron repulsion integrals (ERIs). This is by @@ -55,9 +53,6 @@ super-scalar architectures. %package doc Summary: Documentation for libint Requires: libint2 = %{version}-%{release} -%if 0%{?rhel} != 5 -BuildArch: noarch -%endif %description doc This package contains a programmer's manual and doxygen documentation @@ -115,6 +110,9 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Fri Aug 02 2019 Susi Lehtola - 2.6.0-1 +- Update to 2.6.0. + * Thu Jul 25 2019 Fedora Release Engineering - 2.1.0-10 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 2e7ab02..a91a051 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -d0dcb985fe32ddebc78fe571ce37e2d6 v2.1.0.tar.gz -c84358d57bc67e443c785cc03a652360 libint-2.1.0-classdoc.tar.bz2 -d7da0cde3d0f2d6f2dc1a2031010324b libint-2.1.0-stable.tgz -52113fd4638d268425495df81e497ccd progman.pdf +SHA512 (v2.6.0.tar.gz) = 56343c64b0dfb829702f4bb2fe14a04ad063acd7cb8b5a21cd1a45a830944c1ee98c888c9a28d6746b1bc17459aefcfb0aafe6ef310bfe554056212ad19e43ef +SHA512 (libint-2.6.0.tgz) = 35298dee20ba84c9405cdd7f81fef5e0be58e431c427bd73eb2c6292f5946664aac71d28159f7070c5afce0f1d280a851c61f2777468624d7edcd32d5a4fdfe3 +SHA512 (libint-2.6.0-classdoc.tar.bz2) = 6a0959f26b933bb29511ef3c5e521e1fb2456e563eb8e5094237e4b4feaaa8eacf1552f794ee1bb2e38c4f71e5456d940df35672304af9d6c6bac11247b20781 +SHA512 (progman.pdf) = 2562e4cc7e70944adaec3bb1637ce5e7fdbb04c71ae15e29c246d5866dcdc36d313019af6cd8d1d53ccea0685591f2a5676e5f90dd29bd8fd097824ebe7de742 From 35c4e3ff04bf6c146f94a04ba146cbf76f73f28c Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Fri, 2 Aug 2019 22:13:32 +0200 Subject: [PATCH 08/47] Update source dir name. --- libint2.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index a80f4b9..31b903c 100644 --- a/libint2.spec +++ b/libint2.spec @@ -66,7 +66,7 @@ Requires: libint2%{?_isa} = %{version}-%{release} This package contains development headers and libraries for libint. %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 cp -p %{SOURCE2} doc tar jxf %{SOURCE3} From 10a102c3c68a51f911100c82ba90e8e2177554f3 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sat, 3 Aug 2019 12:15:38 +0200 Subject: [PATCH 09/47] Add CMake file. --- libint2.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/libint2.spec b/libint2.spec index 31b903c..0316412 100644 --- a/libint2.spec +++ b/libint2.spec @@ -61,6 +61,8 @@ for the classes. %package devel Summary: Development headers and libraries for libint Requires: libint2%{?_isa} = %{version}-%{release} +# For dir ownership +Requires: cmake %description devel This package contains development headers and libraries for libint. @@ -103,6 +105,7 @@ EOF %files devel %{macrosdir}/macros.libint2 +%{_datadir}/cmake/libint2/ %{_includedir}/libint2/ %{_includedir}/libint2.h %{_includedir}/libint2.hpp From b88ddb8e956f1fa8989a82b263ceb0104082ba8b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 29 Jan 2020 09:26:16 +0000 Subject: [PATCH 10/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 0316412..56d0f0a 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -113,6 +113,9 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Wed Jan 29 2020 Fedora Release Engineering - 2.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Fri Aug 02 2019 Susi Lehtola - 2.6.0-1 - Update to 2.6.0. From c2010a144138aea6f6b6a33816af11805df87055 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jul 2020 04:53:45 +0000 Subject: [PATCH 11/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 56d0f0a..137c4ea 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -113,6 +113,9 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Tue Jul 28 2020 Fedora Release Engineering - 2.6.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Wed Jan 29 2020 Fedora Release Engineering - 2.6.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 3ac117af028bdecea999a1c25c647368e9fedc3b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 1 Aug 2020 03:58:33 +0000 Subject: [PATCH 12/47] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 137c4ea..c76a970 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -113,6 +113,10 @@ EOF %{_libdir}/pkgconfig/libint2.pc %changelog +* Sat Aug 01 2020 Fedora Release Engineering - 2.6.0-4 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Tue Jul 28 2020 Fedora Release Engineering - 2.6.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 68d728391216fb7abc7ce9de2bbed59b35577253 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Tue, 11 Aug 2020 10:25:17 +0200 Subject: [PATCH 13/47] Make sure cmake directory exists --- libint2.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index c76a970..9519380 100644 --- a/libint2.spec +++ b/libint2.spec @@ -79,7 +79,8 @@ export CXX=g++ make %{?_smp_mflags} VERBOSE=1 %install -rm -rf %{buildroot} +# Make sure CMake directory exists +mkdir -p %{buildroot}%{_libdir}/cmake make install DESTDIR=%{buildroot} find %{buildroot} -name *.la -delete # Make sure libraries are executable (otherwise they are not stripped) From e19906d76d299e2d3074ad26b34ea018797ac043 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Tue, 11 Aug 2020 14:16:26 +0200 Subject: [PATCH 14/47] Use macros, cmake files are now in libdir not datadir --- libint2.spec | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/libint2.spec b/libint2.spec index 9519380..97634c4 100644 --- a/libint2.spec +++ b/libint2.spec @@ -76,12 +76,10 @@ tar jxf %{SOURCE3} %build export CXX=g++ %configure --enable-shared --disable-static -make %{?_smp_mflags} VERBOSE=1 +%make_build %install -# Make sure CMake directory exists -mkdir -p %{buildroot}%{_libdir}/cmake -make install DESTDIR=%{buildroot} +%make_install find %{buildroot} -name *.la -delete # Make sure libraries are executable (otherwise they are not stripped) find %{buildroot} -name *.so.*.* -exec chmod 755 {} \; @@ -106,7 +104,7 @@ EOF %files devel %{macrosdir}/macros.libint2 -%{_datadir}/cmake/libint2/ +%{_libdir}/cmake/libint2/ %{_includedir}/libint2/ %{_includedir}/libint2.h %{_includedir}/libint2.hpp From e05cdb3e5bb916c023dac0a960cb0ba27f694d78 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sat, 15 Aug 2020 15:51:17 +0200 Subject: [PATCH 15/47] Enable Fortran bindings (BZ #1728161). --- libint-2.6.0-fexample.patch | 23 +++++++++++++++++++++++ libint2.spec | 19 +++++++++++++++++-- 2 files changed, 40 insertions(+), 2 deletions(-) create mode 100644 libint-2.6.0-fexample.patch diff --git a/libint-2.6.0-fexample.patch b/libint-2.6.0-fexample.patch new file mode 100644 index 0000000..26b5622 --- /dev/null +++ b/libint-2.6.0-fexample.patch @@ -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 +-#include ++#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 diff --git a/libint2.spec b/libint2.spec index 97634c4..208ac66 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -35,9 +35,15 @@ Source2: progman.pdf # and the html documentation is extracted from the source code as well Source3: libint-%{version}-classdoc.tar.bz2 +# Fix Fortran example +Patch0: libint-2.6.0-fexample.patch + Provides: libint2(api)%{?_isa} = %{apiversion} BuildRequires: gcc-c++ +BuildRequires: gcc-gfortran +BuildRequires: boost-devel +BuildRequires: mpfr-devel %description LIBINT computes the Coulomb and exchange integrals, which in electronic @@ -69,13 +75,14 @@ This package contains development headers and libraries for libint. %prep %setup -q -T -b 1 -n libint-%{version} +%patch0 -p1 -b .fexample # Copy programmers manual and extract the html documentation cp -p %{SOURCE2} doc tar jxf %{SOURCE3} %build export CXX=g++ -%configure --enable-shared --disable-static +%configure --enable-shared --disable-static --enable-fortran %make_build %install @@ -93,6 +100,10 @@ cat > %{buildroot}%{macrosdir}/macros.libint2 << EOF %_libint2_apiversion %{apiversion} EOF +# Move module file to the correct location +mkdir -p %{buildroot}%{_fmoddir} +mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ + %ldconfig_scriptlets %files @@ -110,8 +121,12 @@ EOF %{_includedir}/libint2.hpp %{_libdir}/*.so %{_libdir}/pkgconfig/libint2.pc +%{_fmoddir}/libint_f.mod %changelog +* Fri Aug 14 2020 Susi Lehtola - 2.6.0-5 +- Enable Fortran bindings. + * Sat Aug 01 2020 Fedora Release Engineering - 2.6.0-4 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 82380e9f9212f8b1279cba7e750889c15d0afb39 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sat, 15 Aug 2020 15:57:54 +0200 Subject: [PATCH 16/47] Feed in CXX opt flags --- libint2.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 208ac66..3bf2441 100644 --- a/libint2.spec +++ b/libint2.spec @@ -82,7 +82,7 @@ tar jxf %{SOURCE3} %build export CXX=g++ -%configure --enable-shared --disable-static --enable-fortran +%configure --enable-shared --disable-static --enable-fortran --with-cxx-optflags="%{optflags}" %make_build %install From 6c5763b5c67dd86bee3c2e33cb3096819ab475f2 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sat, 15 Aug 2020 16:03:20 +0200 Subject: [PATCH 17/47] Add BR: eigen3-devel. --- libint2.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libint2.spec b/libint2.spec index 3bf2441..c8227c2 100644 --- a/libint2.spec +++ b/libint2.spec @@ -44,6 +44,7 @@ BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: boost-devel BuildRequires: mpfr-devel +BuildRequires: eigen3-devel %description LIBINT computes the Coulomb and exchange integrals, which in electronic From 2367763a2522893cee7c0ae7e115c56e89d66607 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sun, 16 Aug 2020 10:05:49 +0200 Subject: [PATCH 18/47] Enable eigen3 support --- libint2.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/libint2.spec b/libint2.spec index c8227c2..c49f94a 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 5%{?dist} +Release: 6%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -83,7 +83,10 @@ tar jxf %{SOURCE3} %build export CXX=g++ -%configure --enable-shared --disable-static --enable-fortran --with-cxx-optflags="%{optflags}" + +%configure --enable-shared --disable-static --enable-fortran \ + --with-cxx-optflags="%{optflags}" \ + --with-incdirs=%{_includedir}/eigen3 %make_build %install @@ -125,6 +128,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Sun Aug 16 2020 Susi Lehtola - 2.6.0-6 +- Enable Eigen3 support in build. + * Fri Aug 14 2020 Susi Lehtola - 2.6.0-5 - Enable Fortran bindings. From d990865234c1844c30c7fda942835a2cc03dc24b Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sun, 16 Aug 2020 10:14:22 +0200 Subject: [PATCH 19/47] Fix syntax --- libint2.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libint2.spec b/libint2.spec index c49f94a..b930208 100644 --- a/libint2.spec +++ b/libint2.spec @@ -85,8 +85,8 @@ tar jxf %{SOURCE3} export CXX=g++ %configure --enable-shared --disable-static --enable-fortran \ - --with-cxx-optflags="%{optflags}" \ - --with-incdirs=%{_includedir}/eigen3 + --with-incdirs="-I%{_includedir}/eigen3" \ + --with-cxx-optflags="%{optflags}" %make_build %install From a37b152ba37669a5a1ef483bdce52d5c286a3ac2 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Tue, 29 Sep 2020 19:05:37 +0200 Subject: [PATCH 20/47] Disable buggy eigen3 support until 2.7.0 is released. --- libint2.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libint2.spec b/libint2.spec index b930208..be035a7 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 6%{?dist} +Release: 7%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -44,7 +44,8 @@ BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: boost-devel BuildRequires: mpfr-devel -BuildRequires: eigen3-devel +# Disabled until 2.7.0 +#BuildRequires: eigen3-devel %description LIBINT computes the Coulomb and exchange integrals, which in electronic @@ -128,6 +129,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Tue Sep 29 2020 Susi Lehtola - 2.6.0-7 +- Disable buggy Eigen3 support until 2.7.0 is released. + * Sun Aug 16 2020 Susi Lehtola - 2.6.0-6 - Enable Eigen3 support in build. From ebe93e66dc70c4408b6a844f12d86540f9dd9637 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Wed, 21 Oct 2020 00:21:17 +0200 Subject: [PATCH 21/47] Buildrequire python --- libint2.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index be035a7..d835f27 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 7%{?dist} +Release: 8%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -44,6 +44,7 @@ BuildRequires: gcc-c++ BuildRequires: gcc-gfortran BuildRequires: boost-devel BuildRequires: mpfr-devel +BuildRequires: python3-devel # Disabled until 2.7.0 #BuildRequires: eigen3-devel @@ -129,6 +130,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Tue Oct 20 2020 Susi Lehtola - 2.6.0-8 +- Add BR: python3-devel. + * Tue Sep 29 2020 Susi Lehtola - 2.6.0-7 - Disable buggy Eigen3 support until 2.7.0 is released. From 989b8e2530c17dd110e22177973490eff996bfcc Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Tue, 5 Jan 2021 02:03:01 +0000 Subject: [PATCH 22/47] Add BuildRequires: make https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot --- libint2.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libint2.spec b/libint2.spec index d835f27..0ff4863 100644 --- a/libint2.spec +++ b/libint2.spec @@ -45,6 +45,7 @@ BuildRequires: gcc-gfortran BuildRequires: boost-devel BuildRequires: mpfr-devel BuildRequires: python3-devel +BuildRequires: make # Disabled until 2.7.0 #BuildRequires: eigen3-devel From 65c7ee573d217bf3294f24691fee234166a6ea76 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 17:18:41 +0000 Subject: [PATCH 23/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 0ff4863..dcca018 100644 --- a/libint2.spec +++ b/libint2.spec @@ -14,7 +14,7 @@ Name: libint2 Version: 2.6.0 -Release: 8%{?dist} +Release: 9%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -131,6 +131,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 2.6.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Oct 20 2020 Susi Lehtola - 2.6.0-8 - Add BR: python3-devel. From f64510a70286ee048d4f9a3a23a5bffbb61994dd Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Sun, 21 Feb 2021 08:58:25 -0700 Subject: [PATCH 24/47] Disable LTO on arm --- libint2.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index dcca018..b52ce67 100644 --- a/libint2.spec +++ b/libint2.spec @@ -1,3 +1,8 @@ +# We run out of memory on the ARM builders with LTO +%ifarch %{arm} +%define _lto_cflags %{nil} +%endif + # RPM macro directory %global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) @@ -14,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 9%{?dist} +Release: 10%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -131,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Sun Feb 21 2021 Jeff Law - 2.6.0-10 +- Disable LTO on arm + * Tue Jan 26 2021 Fedora Release Engineering - 2.6.0-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From 5b13d942bca0053af74c8da6f428cdfc042da6a8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 11:38:04 +0000 Subject: [PATCH 25/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index b52ce67..469b278 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 10%{?dist} +Release: 11%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 2.6.0-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Sun Feb 21 2021 Jeff Law - 2.6.0-10 - Disable LTO on arm From 3c1072305f1bbc1fdbccba2ebd54b25dda9d1522 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 16:29:14 +0000 Subject: [PATCH 26/47] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 469b278..a59c7e9 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 11%{?dist} +Release: 12%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 2.6.0-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Jul 22 2021 Fedora Release Engineering - 2.6.0-11 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 563463c5539cdd29b04b04a8c54245dfc845fe6c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 18:06:58 +0000 Subject: [PATCH 27/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index a59c7e9..ec85f60 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 12%{?dist} +Release: 13%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jul 21 2022 Fedora Release Engineering - 2.6.0-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Thu Jan 20 2022 Fedora Release Engineering - 2.6.0-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From cf21db91709936550a66e65a77df00723bd03140 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 16:37:17 +0000 Subject: [PATCH 28/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index ec85f60..2d23a0f 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 13%{?dist} +Release: 14%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 2.6.0-14 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Jul 21 2022 Fedora Release Engineering - 2.6.0-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From 3145dc90c434afacb9c5911d11b0c161bcf28a04 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 11:11:14 +0000 Subject: [PATCH 29/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 2d23a0f..0315c12 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 14%{?dist} +Release: 15%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jul 20 2023 Fedora Release Engineering - 2.6.0-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Thu Jan 19 2023 Fedora Release Engineering - 2.6.0-14 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 6854cce516045033e7b18e1860512264001f9210 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 04:23:16 +0000 Subject: [PATCH 30/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 0315c12..c094933 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 15%{?dist} +Release: 16%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 2.6.0-16 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Thu Jul 20 2023 Fedora Release Engineering - 2.6.0-15 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From ad116b8cbec3a7e1afb0d09b72b8ccb572feaf3a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 02:33:02 +0000 Subject: [PATCH 31/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index c094933..4047939 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.6.0 -Release: 16%{?dist} +Release: 17%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -136,6 +136,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jan 25 2024 Fedora Release Engineering - 2.6.0-17 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 2.6.0-16 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From d5bc99508f6631a0fa42c0ba040842c3a6bbbcec Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Wed, 21 Feb 2024 13:03:03 +0000 Subject: [PATCH 32/47] Work to update to 2.8.2. --- generate-sources.sh | 45 ++++++++++++++++++++++------------ libint2.spec | 60 +++++++++++++++++++++++++-------------------- 2 files changed, 63 insertions(+), 42 deletions(-) diff --git a/generate-sources.sh b/generate-sources.sh index 5ad282e..77a78af 100644 --- a/generate-sources.sh +++ b/generate-sources.sh @@ -1,10 +1,10 @@ # 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 # buildrequires for building libint2 w/ bootstrapping -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 ver=`grep "Version" libint2.spec|awk '{print $2}'` @@ -41,16 +41,34 @@ if [ ! -f libint-${ver}.tgz ]; then export CXX=g++ # Optimization flags to use for the compiler (just speeds up the generation) export OPTFLAGS=`rpm --eval %{optflags}` + export CXXGENFLAGS=`rpm --eval %{optflags}` - ../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 + if(( 1 )); then + ../configure --enable-shared --disable-static \ + --enable-eri=2 --enable-eri3=2 --enable-eri2=2 \ + --enable-1body=2 --enable-g12=1 \ + --disable-1body-property-derivs \ + --with-multipole-max-order=10 \ + --with-eri-max-am=7,7,4 \ + --with-eri3-max-am=12,7,5 --with-eri2-max-am=12,7,5 \ + --with-max-am=7,7,5 \ + --with-g12-max-am=5 \ + --with-g12dkh-max-am=5 \ + --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 # Generate the library sources echo "Running make export, follow progress in export.log" @@ -65,7 +83,4 @@ make -C doc # Copy the generated source tarball cp libint-${ver}.tgz ../.. # Copy the programmer's manual -cp -p doc/progman/progman.pdf ../.. -# and compress the html sources -cd doc/classdoc -tar jcf ../../../../libint-${ver}-classdoc.tar.bz2 html/ +cp -p doc/progman/progman.pdf ../../progman-${ver}.pdf diff --git a/libint2.spec b/libint2.spec index 4047939..512dd67 100644 --- a/libint2.spec +++ b/libint2.spec @@ -12,14 +12,14 @@ # We use -O2 for the compiler and -O1 for the library (these are given # in configure). The common flags are %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. -%global apiversion 0 +%global apiversion 1 Name: libint2 -Version: 2.6.0 -Release: 17%{?dist} +Version: 2.8.2 +Release: 1%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -36,13 +36,10 @@ Source0: https://github.com/evaleev/libint/archive/v%{version}.tar.gz # generate the sources, run the generate-sources.sh script. Source1: libint-%{version}.tgz # 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 -# Fix Fortran example -Patch0: libint-2.6.0-fexample.patch - Provides: libint2(api)%{?_isa} = %{apiversion} BuildRequires: gcc-c++ @@ -50,9 +47,9 @@ BuildRequires: gcc-gfortran BuildRequires: boost-devel BuildRequires: mpfr-devel BuildRequires: python3-devel -BuildRequires: make -# Disabled until 2.7.0 -#BuildRequires: eigen3-devel +BuildRequires: make +BuildRequires: cmake +BuildRequires: eigen3-devel %description LIBINT computes the Coulomb and exchange integrals, which in electronic @@ -65,45 +62,48 @@ computer implementation of such methods by implementing an optimizing compiler to generate automatically highly-specialized code that runs well on super-scalar architectures. -%package doc -Summary: Documentation for libint +%package data +Summary: Shared data for libint2 Requires: libint2 = %{version}-%{release} +BuildArch: noarch + +%description data +This package contains shared data for libint2. + +%package doc +Summary: Documentation for libint2 +Requires: libint2 = %{version}-%{release} +BuildArch: noarch %description doc This package contains a programmer's manual and doxygen documentation for the classes. %package devel -Summary: Development headers and libraries for libint +Summary: Development headers and libraries for libint2 Requires: libint2%{?_isa} = %{version}-%{release} # For dir ownership Requires: cmake %description devel -This package contains development headers and libraries for libint. +This package contains development headers and libraries for libint2. %prep %setup -q -T -b 1 -n libint-%{version} -%patch0 -p1 -b .fexample # Copy programmers manual and extract the html documentation -cp -p %{SOURCE2} doc +cp -p %{SOURCE2} doc/progman.pdf tar jxf %{SOURCE3} %build export CXX=g++ - -%configure --enable-shared --disable-static --enable-fortran \ - --with-incdirs="-I%{_includedir}/eigen3" \ - --with-cxx-optflags="%{optflags}" -%make_build +%cmake -DENABLE_FORTRAN=ON -DENABLE_MPFR=ON -DLIBINT2_PYTHON=ON -DLIBINT2_INSTALL_LIBDIR=%{_libdir} -DLIBINT2_INSTALL_DATADIR=%{_datadir}/%{name} +%cmake_build %install -%make_install +%cmake_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 +find %{buildroot} -name *.so* -exec chmod 755 {} \; # Create macro file mkdir -p %{buildroot}%{macrosdir} @@ -122,8 +122,11 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %doc LICENSE COPYING %{_libdir}/libint*.so.* +%files data +%{_datadir}/libint2/ + %files doc -%doc doc/progman.pdf html +%doc doc/progman.pdf #html %files devel %{macrosdir}/macros.libint2 @@ -136,6 +139,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Wed Feb 21 2024 Susi Lehtola - 2.8.2-1 +- Update to 2.8.2. + * Thu Jan 25 2024 Fedora Release Engineering - 2.6.0-17 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 48cc1034c86bdd52029fa58e6043441dc0a0472d Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Fri, 23 Feb 2024 10:40:08 +0000 Subject: [PATCH 33/47] Finishing up on 2.8.2 build, now to build it on a side tag --- .gitignore | 1 + libint-2.8.2-fedoraver.patch | 22 ++++++++++++++++++++++ libint2.spec | 11 ++++++----- sources | 5 +---- 4 files changed, 30 insertions(+), 9 deletions(-) create mode 100644 libint-2.8.2-fedoraver.patch diff --git a/.gitignore b/.gitignore index 1c6c827..e430163 100644 --- a/.gitignore +++ b/.gitignore @@ -13,3 +13,4 @@ /v2.6.0.tar.gz /libint-2.6.0.tgz /libint-2.6.0-classdoc.tar.bz2 +/libint-2.8.2.tgz diff --git a/libint-2.8.2-fedoraver.patch b/libint-2.8.2-fedoraver.patch new file mode 100644 index 0000000..49f4506 --- /dev/null +++ b/libint-2.8.2-fedoraver.patch @@ -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"; + } diff --git a/libint2.spec b/libint2.spec index 512dd67..cfe0a10 100644 --- a/libint2.spec +++ b/libint2.spec @@ -37,8 +37,9 @@ Source0: https://github.com/evaleev/libint/archive/v%{version}.tar.gz Source1: libint-%{version}.tgz # The programmers' manual is compiled from the LaTeX source by generate-sources.sh 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 Provides: libint2(api)%{?_isa} = %{apiversion} @@ -90,9 +91,9 @@ This package contains development headers and libraries for libint2. %prep %setup -q -T -b 1 -n libint-%{version} -# Copy programmers manual and extract the html documentation +%patch 0 -p1 -b .fedora +# Copy programmers manual cp -p %{SOURCE2} doc/progman.pdf -tar jxf %{SOURCE3} %build export CXX=g++ @@ -126,7 +127,7 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_datadir}/libint2/ %files doc -%doc doc/progman.pdf #html +%doc doc/progman.pdf %files devel %{macrosdir}/macros.libint2 diff --git a/sources b/sources index a91a051..e985452 100644 --- a/sources +++ b/sources @@ -1,4 +1 @@ -SHA512 (v2.6.0.tar.gz) = 56343c64b0dfb829702f4bb2fe14a04ad063acd7cb8b5a21cd1a45a830944c1ee98c888c9a28d6746b1bc17459aefcfb0aafe6ef310bfe554056212ad19e43ef -SHA512 (libint-2.6.0.tgz) = 35298dee20ba84c9405cdd7f81fef5e0be58e431c427bd73eb2c6292f5946664aac71d28159f7070c5afce0f1d280a851c61f2777468624d7edcd32d5a4fdfe3 -SHA512 (libint-2.6.0-classdoc.tar.bz2) = 6a0959f26b933bb29511ef3c5e521e1fb2456e563eb8e5094237e4b4feaaa8eacf1552f794ee1bb2e38c4f71e5456d940df35672304af9d6c6bac11247b20781 -SHA512 (progman.pdf) = 2562e4cc7e70944adaec3bb1637ce5e7fdbb04c71ae15e29c246d5866dcdc36d313019af6cd8d1d53ccea0685591f2a5676e5f90dd29bd8fd097824ebe7de742 +SHA512 (libint-2.8.2.tgz) = c2df27e461d871ed2205a0cf59629f2c4fc70b89e2fcf24f91622ac26ea314bbdc5e24abd1e4fff2b1dd340ea60b18c772b6e6d5a06241b3c6f619d13cf198d1 From 5d2f972593770dd8fea7402664181daf4c8c9384 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Fri, 23 Feb 2024 10:59:19 +0000 Subject: [PATCH 34/47] Forgot some sources --- .gitignore | 2 ++ sources | 2 ++ 2 files changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index e430163..39be06f 100644 --- a/.gitignore +++ b/.gitignore @@ -14,3 +14,5 @@ /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 diff --git a/sources b/sources index e985452..519b04a 100644 --- a/sources +++ b/sources @@ -1 +1,3 @@ +SHA512 (v2.8.2.tar.gz) = 2af6ad30ec311424a627e86d755963272225e06bd01824795f4190d2b0f2270d6403bbaeea9513383e3a97c8934c19657ea8d756c2be46f0fe991541d859704f +SHA512 (progman-2.8.2.pdf) = 13a98399598b4c53c6a5afa4711668bc51169d15658169c7f18fe12744b2b18053b7c3031eacbf6a9c8c1ee293202d4d677e62ddaa966f65aa230a5402fac044 SHA512 (libint-2.8.2.tgz) = c2df27e461d871ed2205a0cf59629f2c4fc70b89e2fcf24f91622ac26ea314bbdc5e24abd1e4fff2b1dd340ea60b18c772b6e6d5a06241b3c6f619d13cf198d1 From 8c66c69c14a2d8f5c7afb94cc6d074c63fa4f3be Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Fri, 23 Feb 2024 11:19:03 +0000 Subject: [PATCH 35/47] Missing BR: pybind11-devel --- libint2.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/libint2.spec b/libint2.spec index cfe0a10..e44eaeb 100644 --- a/libint2.spec +++ b/libint2.spec @@ -51,6 +51,7 @@ BuildRequires: python3-devel BuildRequires: make BuildRequires: cmake BuildRequires: eigen3-devel +BuildRequires: pybind11-devel %description LIBINT computes the Coulomb and exchange integrals, which in electronic From 236f5a7bceb1086988b914bfb3d0dbfa464580de Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 14:10:33 +0000 Subject: [PATCH 36/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index e44eaeb..00cd79d 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,7 +19,7 @@ Name: libint2 Version: 2.8.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals License: GPLv2+ URL: https://github.com/evaleev/libint @@ -141,6 +141,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Thu Jul 18 2024 Fedora Release Engineering - 2.8.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Feb 21 2024 Susi Lehtola - 2.8.2-1 - Update to 2.8.2. From e9e1e263aee64a603d606086c6a0165dbfe7115a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Fri, 26 Jul 2024 00:55:53 +0200 Subject: [PATCH 37/47] convert GPLv2+ license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- libint2.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libint2.spec b/libint2.spec index 00cd79d..3544513 100644 --- a/libint2.spec +++ b/libint2.spec @@ -19,9 +19,10 @@ Name: libint2 Version: 2.8.2 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals -License: GPLv2+ +# Automatically converted from old format: GPLv2+ - review is highly recommended. +License: GPL-2.0-or-later URL: https://github.com/evaleev/libint # Compiler sources @@ -141,6 +142,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_fmoddir}/libint_f.mod %changelog +* Fri Jul 26 2024 Miroslav Suchý - 2.8.2-3 +- convert license to SPDX + * Thu Jul 18 2024 Fedora Release Engineering - 2.8.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From fb5c2f86540d75665a1dc432d7e7a2f62b879ff6 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sun, 18 Aug 2024 07:12:26 +0000 Subject: [PATCH 38/47] Update to 2.9.0 and try to fix build failure --- generate-sources.sh | 24 +++++++++++++++--------- libint2.spec | 14 ++++++++------ 2 files changed, 23 insertions(+), 15 deletions(-) diff --git a/generate-sources.sh b/generate-sources.sh index 77a78af..6a73ebc 100644 --- a/generate-sources.sh +++ b/generate-sources.sh @@ -2,9 +2,9 @@ # 2024-02-21 Susi Lehtola # 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)" latex2html +# 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 ver=`grep "Version" libint2.spec|awk '{print $2}'` @@ -47,13 +47,13 @@ if [ ! -f libint-${ver}.tgz ]; then ../configure --enable-shared --disable-static \ --enable-eri=2 --enable-eri3=2 --enable-eri2=2 \ --enable-1body=2 --enable-g12=1 \ - --disable-1body-property-derivs \ + --enable-1body-property-derivs \ --with-multipole-max-order=10 \ - --with-eri-max-am=7,7,4 \ - --with-eri3-max-am=12,7,5 --with-eri2-max-am=12,7,5 \ - --with-max-am=7,7,5 \ - --with-g12-max-am=5 \ - --with-g12dkh-max-am=5 \ + --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 @@ -69,7 +69,7 @@ if [ ! -f libint-${ver}.tgz ]; then --with-cxx-optflags="$OPTFLAGS" \ | tee configure.log fi - + # Generate the library sources echo "Running make export, follow progress in export.log" make export > export.log @@ -84,3 +84,9 @@ make -C doc cp libint-${ver}.tgz ../.. # Copy the programmer's manual cp -p doc/progman/progman.pdf ../../progman-${ver}.pdf + +# Recompress with xz +cd ../.. +cp -p libint-${ver}.{tgz,tar.gz} +gunzip libint-${ver}.tar.gz +xz libint-${ver}.tar diff --git a/libint2.spec b/libint2.spec index 3544513..2cdc019 100644 --- a/libint2.spec +++ b/libint2.spec @@ -2,6 +2,8 @@ %ifarch %{arm} %define _lto_cflags %{nil} %endif +# We run out of memory on many builders since the source files are big, drop down to two threads +%define _smp_mflags -j2 # RPM macro directory %global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) @@ -18,8 +20,8 @@ %global apiversion 1 Name: libint2 -Version: 2.8.2 -Release: 3%{?dist} +Version: 2.9.0 +Release: 1%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals # Automatically converted from old format: GPLv2+ - review is highly recommended. License: GPL-2.0-or-later @@ -35,7 +37,7 @@ Source0: https://github.com/evaleev/libint/archive/v%{version}.tar.gz # generated on the same run, debuginfo will turn up missing from the # RPM (BZ #9619635). For this reason pregenerated sources are used. To # generate the sources, run the generate-sources.sh script. -Source1: libint-%{version}.tgz +Source1: libint-%{version}.tar.xz # The programmers' manual is compiled from the LaTeX source by generate-sources.sh Source2: progman-%{version}.pdf @@ -99,7 +101,7 @@ cp -p %{SOURCE2} doc/progman.pdf %build export CXX=g++ -%cmake -DENABLE_FORTRAN=ON -DENABLE_MPFR=ON -DLIBINT2_PYTHON=ON -DLIBINT2_INSTALL_LIBDIR=%{_libdir} -DLIBINT2_INSTALL_DATADIR=%{_datadir}/%{name} +%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} %cmake_build %install @@ -123,7 +125,8 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %files %doc LICENSE COPYING -%{_libdir}/libint*.so.* +# Library has no soversion, likely since it can be compiled in a number of different ways. We handle the dependency tracking anyway with the libint2(api) +%{_libdir}/libint2.so %files data %{_datadir}/libint2/ @@ -137,7 +140,6 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_includedir}/libint2/ %{_includedir}/libint2.h %{_includedir}/libint2.hpp -%{_libdir}/*.so %{_libdir}/pkgconfig/libint2.pc %{_fmoddir}/libint_f.mod From f95b734ed1050429889becef0b49b4155faf0817 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sun, 18 Aug 2024 07:23:31 +0000 Subject: [PATCH 39/47] include sources --- .gitignore | 3 +++ sources | 6 +++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 39be06f..4a8814a 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,6 @@ /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 diff --git a/sources b/sources index 519b04a..b18a88b 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (v2.8.2.tar.gz) = 2af6ad30ec311424a627e86d755963272225e06bd01824795f4190d2b0f2270d6403bbaeea9513383e3a97c8934c19657ea8d756c2be46f0fe991541d859704f -SHA512 (progman-2.8.2.pdf) = 13a98399598b4c53c6a5afa4711668bc51169d15658169c7f18fe12744b2b18053b7c3031eacbf6a9c8c1ee293202d4d677e62ddaa966f65aa230a5402fac044 -SHA512 (libint-2.8.2.tgz) = c2df27e461d871ed2205a0cf59629f2c4fc70b89e2fcf24f91622ac26ea314bbdc5e24abd1e4fff2b1dd340ea60b18c772b6e6d5a06241b3c6f619d13cf198d1 +SHA512 (v2.9.0.tar.gz) = 6cffbd3d78dee4722b8085f4dd93085351cb610b5cb7ac090335adb2c43e87256ca06a658c202473fd763a38f7c0eeb6570b2c6a107e3f41d1258baf6e5b17de +SHA512 (progman-2.9.0.pdf) = 2eb6728e69ac3b395bf39c994f99fd937adf2a0ea7a5664b2e9313d00f4cd4c13a0eabc35c978bd6756938065a870c6bf88544c63bf6cb07c0862438413a8772 +SHA512 (libint-2.9.0.tar.xz) = 5bfeb16c5123f277481922f4894e79f75fe923c90b0a4440b55881b9f270a53b5a91cba569a3b25e2aeaa142688e7454d13608c1f5673f5843b7605fb07bd7b2 From 1e83f747c0ed9b1dbbec9afd9c296a780ada0bc9 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Sun, 18 Aug 2024 11:56:31 +0000 Subject: [PATCH 40/47] New version produces soversioned library --- libint2.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libint2.spec b/libint2.spec index 2cdc019..d02e19d 100644 --- a/libint2.spec +++ b/libint2.spec @@ -125,8 +125,8 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %files %doc LICENSE COPYING -# Library has no soversion, likely since it can be compiled in a number of different ways. We handle the dependency tracking anyway with the libint2(api) -%{_libdir}/libint2.so +%{_libdir}/libint2.so.2 +%{_libdir}/libint2.so.%{version} %files data %{_datadir}/libint2/ @@ -142,6 +142,7 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_includedir}/libint2.hpp %{_libdir}/pkgconfig/libint2.pc %{_fmoddir}/libint_f.mod +%{_libdir}/libint2.so %changelog * Fri Jul 26 2024 Miroslav Suchý - 2.8.2-3 From 16c83e2854b93e5aa73ac95e469d7a0fb5b82cc1 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Wed, 21 Aug 2024 09:00:43 +0000 Subject: [PATCH 41/47] Fix license tag and disable x86 arch to try to get builds to work --- libint2.spec | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/libint2.spec b/libint2.spec index d02e19d..720b2c5 100644 --- a/libint2.spec +++ b/libint2.spec @@ -3,7 +3,9 @@ %define _lto_cflags %{nil} %endif # We run out of memory on many builders since the source files are big, drop down to two threads -%define _smp_mflags -j2 +#define _smp_mflags -j2 +# Disable x86 architectures since builders run out of memory +ExcludeArch: %{ix86} # RPM macro directory %global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) @@ -23,8 +25,8 @@ Name: libint2 Version: 2.9.0 Release: 1%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals -# Automatically converted from old format: GPLv2+ - review is highly recommended. -License: GPL-2.0-or-later +# Generator itself is GPLv2+, generated library packaged in Fedora is LGPLv3 +License: LGPL-3.0-only URL: https://github.com/evaleev/libint # Compiler sources @@ -145,6 +147,11 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_libdir}/libint2.so %changelog +* Sun Aug 18 2024 Susi Lehtola 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ý - 2.8.2-3 - convert license to SPDX From 3bf1651fe0d1f7f98d6a629508b2ee34c3c6634b Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Wed, 21 Aug 2024 12:20:46 +0000 Subject: [PATCH 42/47] Build succeeds on x86_64, aarch64 and s390x; disable pcc64le architecture --- libint2.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libint2.spec b/libint2.spec index 720b2c5..dd9b89b 100644 --- a/libint2.spec +++ b/libint2.spec @@ -6,6 +6,8 @@ #define _smp_mflags -j2 # Disable x86 architectures since builders run out of memory ExcludeArch: %{ix86} +# Disable ppc64le due to some compiler error +ExcludeArch: ppc64le # RPM macro directory %global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) From 68b0304c5b020ea7bdd48a93a0a055b18795410d Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Wed, 21 Aug 2024 13:28:52 +0000 Subject: [PATCH 43/47] Now got a similar failure to ppc64 on aarch64 where the build succeeded last time. Re-enable pcc64le and decrease number of threads --- libint2.spec | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/libint2.spec b/libint2.spec index dd9b89b..1ad9619 100644 --- a/libint2.spec +++ b/libint2.spec @@ -2,12 +2,10 @@ %ifarch %{arm} %define _lto_cflags %{nil} %endif -# We run out of memory on many builders since the source files are big, drop down to two threads -#define _smp_mflags -j2 +# 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} -# Disable ppc64le due to some compiler error -ExcludeArch: ppc64le # RPM macro directory %global macrosdir %(d=%{_rpmconfigdir}/macros.d; [ -d $d ] || d=%{_sysconfdir}/rpm; echo $d) From 9dc2f1aae6b8b5402b99b758a45c2f54ab007b63 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Tue, 3 Sep 2024 07:34:56 +0000 Subject: [PATCH 44/47] Add necessary requires to -devel. --- libint2.spec | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 1ad9619..105ef58 100644 --- a/libint2.spec +++ b/libint2.spec @@ -23,7 +23,7 @@ ExcludeArch: %{ix86} Name: libint2 Version: 2.9.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals # Generator itself is GPLv2+, generated library packaged in Fedora is LGPLv3 License: LGPL-3.0-only @@ -91,6 +91,11 @@ Summary: Development headers and libraries for libint2 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 This package contains development headers and libraries for libint2. @@ -147,6 +152,10 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_libdir}/libint2.so %changelog +* Tue Sep 03 2024 Susi Lehtola 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 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). From def0e77f3a668c18db1d313dac9d541f7031e537 Mon Sep 17 00:00:00 2001 From: Susi Lehtola Date: Tue, 3 Sep 2024 18:28:39 +0000 Subject: [PATCH 45/47] Fix location of data directory in generated CMake config. --- libint-2.9.0-datadir.patch | 12 ++++++++++++ libint2.spec | 7 ++++++- 2 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 libint-2.9.0-datadir.patch diff --git a/libint-2.9.0-datadir.patch b/libint-2.9.0-datadir.patch new file mode 100644 index 0000000..6ea2af6 --- /dev/null +++ b/libint-2.9.0-datadir.patch @@ -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 +- $ ++ $ + ) + endif() + # Add library to the list of installed components diff --git a/libint2.spec b/libint2.spec index 105ef58..70902f0 100644 --- a/libint2.spec +++ b/libint2.spec @@ -23,7 +23,7 @@ ExcludeArch: %{ix86} Name: libint2 Version: 2.9.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals # Generator itself is GPLv2+, generated library packaged in Fedora is LGPLv3 License: LGPL-3.0-only @@ -45,6 +45,8 @@ Source2: progman-%{version}.pdf # 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} @@ -152,6 +154,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_libdir}/libint2.so %changelog +* Tue Sep 03 2024 Susi Lehtola 2.9.0-3 +- Fix location of data directory in generated CMake config. + * Tue Sep 03 2024 Susi Lehtola 2.9.0-2 - Devel package now pulls in boost, eigen3, gmp, and mpfr development packages that are needed to build against libint2. From b6da8bc35ceeaac954719afe6f468ad909cbd857 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 11:34:57 +0000 Subject: [PATCH 46/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index 70902f0..c51367f 100644 --- a/libint2.spec +++ b/libint2.spec @@ -23,7 +23,7 @@ ExcludeArch: %{ix86} Name: libint2 Version: 2.9.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals # Generator itself is GPLv2+, generated library packaged in Fedora is LGPLv3 License: LGPL-3.0-only @@ -154,6 +154,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_libdir}/libint2.so %changelog +* Fri Jan 17 2025 Fedora Release Engineering - 2.9.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Tue Sep 03 2024 Susi Lehtola 2.9.0-3 - Fix location of data directory in generated CMake config. From 67cad9be9efe63d906981db9d2b46b2dc1494818 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 19:49:50 +0000 Subject: [PATCH 47/47] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- libint2.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libint2.spec b/libint2.spec index c51367f..f7f73d3 100644 --- a/libint2.spec +++ b/libint2.spec @@ -23,7 +23,7 @@ ExcludeArch: %{ix86} Name: libint2 Version: 2.9.0 -Release: 4%{?dist} +Release: 5%{?dist} Summary: A library for efficient evaluation of electron repulsion integrals # Generator itself is GPLv2+, generated library packaged in Fedora is LGPLv3 License: LGPL-3.0-only @@ -154,6 +154,9 @@ mv %{buildroot}%{_includedir}/libint_f.mod %{buildroot}%{_fmoddir}/ %{_libdir}/libint2.so %changelog +* Thu Jul 24 2025 Fedora Release Engineering - 2.9.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Fri Jan 17 2025 Fedora Release Engineering - 2.9.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild