2 Commits

Author SHA256 Message Date
081b6b9331 Accepting request 1315351 from science
OBS-URL: https://build.opensuse.org/request/show/1315351
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/eigen3?expand=0&rev=26
2025-11-04 17:40:42 +00:00
78780b3d4a * Update to version 3.4.1.
* Drop fix_ppc64le_always_inline_680.patch: incorporated upstream.
* Docs no longer build with doxygen >= 1.14, so add upstream pre-generated doc tarball as source, and extract its contents to a doc dir.
* Drop docs flavor (and _multibuild entirely) since we no longer build the docs; split off separate -doc package directly from main package.
* Also drop _constraints file which was only being used for the docs flavor.

OBS-URL: https://build.opensuse.org/package/show/science/eigen3?expand=0&rev=41
2025-11-03 17:27:57 +00:00
8 changed files with 51 additions and 3208 deletions

View File

@@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<constraints>
<overwrite>
<conditions>
<package>eigen3:docs</package>
</conditions>
<hardware>
<disk>
<size unit="G">5</size>
</disk>
<memory>
<size unit="G">7</size>
</memory>
</hardware>
</overwrite>
</constraints>

View File

@@ -1,3 +0,0 @@
<multibuild>
<package>docs</package>
</multibuild>

Binary file not shown.

3
eigen-3.4.1.tar.bz2 Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8bb7280b7551bf06418d11a9671fdf998cb927830cf21589b394382d26779821
size 2157363

3
eigen-doc-3.4.tar.bz2 Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:620e764a6a078434e3ac23a42ae55f2167831972dbcace5848ab50c53112aea5
size 19679711

View File

@@ -1,3 +1,20 @@
-------------------------------------------------------------------
Mon Oct 27 15:19:14 UTC 2025 - Atri Bhattacharya <badshah400@gmail.com>
- Update to version 3.4.1:
* Many back-ported fixes from 5.0 branch, see
<https://gitlab.com/libeigen/eigen/-/issues?state=all&label_name%5B%5D=3.4.1>
for full list.
- Drop fix_ppc64le_always_inline_680.patch: incorporated upstream.
- Docs no longer build with doxygen >= 1.14, so add upstream
pre-generated doc tarball as source, and extract its contents to
a doc dir.
- Drop docs flavor (and _multibuild entirely) since we no longer
build the docs; split off separate -doc package directly from
main package.
- Also drop _constraints file which was only being used for the
docs flavor.
-------------------------------------------------------------------
Tue Feb 1 23:06:35 UTC 2022 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@@ -1,7 +1,7 @@
#
# spec file
# spec file for package eigen3
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -16,7 +16,6 @@
#
%global flavor @BUILD_FLAVOR@%{nil}
%global pkgname eigen3
%global srcname eigen
@@ -28,21 +27,22 @@
# Also balloons the resources required: > 32 GiB disk space + >= 12 GiB memory
%bcond_with tests
%if "%{flavor}" == "docs"
%define pkgsuffix -doc
%endif
# Docs for version 3.4.1 do not build with doxygen 1.14.0 or later: https://gitlab.com/libeigen/eigen/-/issues/2976
# So, we do not build them but just extract a pre-generated doc tarball from upstream and package its contents
Name: eigen3%{?pkgsuffix}
Version: 3.4.0
%define major_ver 3.4
%define api_docdir %{_docdir}/%{name}/api
Name: eigen3
Version: %{major_ver}.1
Release: 0
Summary: C++ Template Library for Linear Algebra
License: BSD-3-Clause AND LGPL-2.1-only AND MPL-2.0 AND LGPL-2.1-or-later
URL: http://eigen.tuxfamily.org/
Source0: https://gitlab.com/libeigen/eigen/-/archive/%{version}/%{srcname}-%{version}.tar.bz2
Source1: https://libeigen.gitlab.io/eigen/docs-%{major_ver}/eigen-doc.tgz#/%{srcname}-doc-%{major_ver}.tar.bz2
Patch0: 0001-Disable-Altivec-for-ppc64le.patch
Patch1: 0001-Do-stack-allignment-on-ppc.patch
# PATCH-FIX-UPSTREAM -- https://gitlab.com/libeigen/eigen/-/merge_requests/680.patch
Patch2: fix_ppc64le_always_inline_680.patch
%if %{with tests}
# SECTION Patches to fix tests
# PATCH-FIX-UPSTREAM eigen3-googlehash-detection.patch badshah400@gmail.com -- GoogleHash needs C++11 std to compile test code and be succesfully detected
@@ -53,6 +53,7 @@ Patch10: eigen3-fix-forward_adolc-unit-test.patch
%endif
BuildRequires: adolc-devel
BuildRequires: cmake
BuildRequires: fdupes
BuildRequires: fftw3-devel
BuildRequires: gcc-c++
BuildRequires: gcc-fortran
@@ -65,15 +66,6 @@ BuildRequires: pkg-config
BuildRequires: sparsehash-devel
BuildRequires: suitesparse-devel
BuildRequires: superlu-devel
%if "%{flavor}" == "docs"
BuildRequires: doxygen
BuildRequires: fdupes
BuildRequires: graphviz
BuildRequires: graphviz-gd
BuildRequires: texlive-dvips
BuildRequires: texlive-latex
BuildRequires: tex(newunicodechar.sty)
%endif
%if %{with opengl_test}
BuildRequires: freeglut-devel
BuildRequires: glew-devel
@@ -95,48 +87,41 @@ Obsoletes: libeigen3-devel < %{version}
Eigen is a C++ template library for linear algebra: matrices, vectors,
numerical solvers, and related algorithms.
%if "%{flavor}" == "docs"
%package doc
Summary: Documentation for the Eigen3 C++ Template Library for Linear Algebra
BuildArch: noarch
%description
%description doc
Documentation in HTML format for the Eigen3 C++ Template Library
for Linear Algebra
%endif
%prep
%autosetup -p1 -n %{srcname}-%{version}
%autosetup -p1 -b1 -n %{srcname}-%{version}
# Fix rpmlint warning "wrong-file-end-of-line-encoding"
sed -i 's/\r$//' COPYING.MINPACK
# Remove build time references so build-compare can do its work
echo "HTML_TIMESTAMP = NO" >> doc/Doxyfile.in
%build
%cmake \
-DINCLUDE_INSTALL_DIR:PATH=include/eigen3 \
-DCMAKE_SKIP_RPATH:BOOL=OFF \
-DCMAKE_SKIP_INSTALL_RPATH:BOOL=ON \
-DEIGEN_BUILD_BLAS:BOOL=OFF \
-DEIGEN_BUILD_LAPACK:BOOL=OFF \
-DEIGEN_TEST_CXX11:Bool=%{?with_tests:ON}%{!?with_tests:OFF} \
-DEIGEN_TEST_OPENMP:Bool=%{?with_tests:ON}%{!?with_tests:OFF}
-DEIGEN_TEST_OPENMP:Bool=%{?with_tests:ON}%{!?with_tests:OFF} \
-DINCLUDE_INSTALL_DIR:PATH=include/eigen3 \
%{nil}
%if "%{flavor}" == ""
%cmake_build all %{?with_tests:buildtests}
%else
%cmake_build doc
%endif
rm -f doc/html/*.tgz
find doc -name _formulas.log -print -delete
%install
%if "%{flavor}" == ""
%cmake_install
%else
%fdupes -s build/doc/html/
%endif
%if "%{flavor}" == ""
# Install bundled docs
mkdir -p %{buildroot}%{api_docdir}
cp -r ../eigen-doc/* %{buildroot}%{api_docdir}
%fdupes %{buildroot}%{api_docdir}
%if %{with tests}
%check
# Run with a fixed seed to prevent random failures: https://gitlab.com/libeigen/eigen/-/issues/2088
@@ -145,13 +130,6 @@ export EIGEN_SEED=100
export EIGEN_REPEAT=1
%ctest
%endif
%endif
%if "%{flavor}" == "docs"
%files
%doc build/doc/html/
%else
%files devel
%license COPYING.*
@@ -159,6 +137,8 @@ export EIGEN_REPEAT=1
%{_datadir}/eigen3/
%{_datadir}/pkgconfig/eigen3.pc
%endif
%files doc
%dir %{_docdir}/%{name}
%doc %{api_docdir}
%changelog

File diff suppressed because it is too large Load Diff