* Tue Feb 01 2022 stefan.bruens@rwth-aachen.de
- Add _constraints for docs(+test) to avoid OOM build failures
- Drop obsolete/unnecessary patches
* eigen3-3.3.1-fixcmake.patch (no longer has any effect)
* 01_install_FindEigen3.patch (CMake Config mode is preferred)
- Fix build for ppc64le (affects test and dependent packages, e.g.
arpack-ng), add fix_ppc64le_always_inline_680.patch
* Fri Aug 20 2021 badshah400@gmail.com
- Update to version 3.4.0
* Long list of changes, see
<https://eigen.tuxfamily.org/index.php?title=3.4>.
- Drop patches incorporated or otherwise fixed upstream:
* eigen3-CastXML-support-for-aarch64.patch.
* eigen3-make-sparseqr-unit-test-stable.patch.
* eigen3-failtests-handling.patch.
- Rebase following patches for updated sources:
* 0001-Disable-Altivec-for-ppc64le.patch.
* 0001-Do-stack-allignment-on-ppc.patch.
- Minor line offset adjustments of other patches to apply cleanly.
* Tue Dec 08 2020 badshah400@gmail.com
- Update to version 3.3.9:
* Introduce rendering Doxygen math formulas with MathJax and the
option EIGEN_DOC_USE_MATHJAX to control this.
* Issue 1746: Removed implementation of standard
copy-constructor and standard copy-assign-operator from
PermutationMatrix and Transpositions to allow malloc-less
std::move.
* Issue 2036: Make sure the
find_standard_math_library_test_program compiles and doesn't
optimize away functions we try to test for.
* Issue 2046: Rename test/array.cpp to test/array_cwise.cpp to
fix an issue with the C++ standard library header "array"
* Issue 2040: Fix an issue in test/ctorleak that occured when
disabling exceptions.
* Issue 2011: Remove error counting in OpenMP parallel section
in Eigen's GEMM parallelizing logic.
* Issue 2012: Define coeff-wise binary array operators for base
class to fix an issue when using Eigen with C++20
* Fix an issue with IntelĀ® MKL PARDISO support.
- Drop Remove-error-counting-in-OpenMP-parallelize_gemm.patch:
incorporated upstream.
- Add patches to fix building and running tests:
* eigen3-failtests-handling.patch: Simplify handling of tests
that must fail to compile; upstream commit: 72c0bbe.
* eigen3-make-sparseqr-unit-test-stable.patch: Make sparseqr
test more stable to prevent random failures; patch taken from
upstream commit
[https://gitlab.com/libeigen/eigen/-/issues/899].
* eigen3-googlehash-detection.patch: GoogleHash needs C++11 std
to compile test code and be succesfully detected.
* eigen3-fix-forward_adolc-unit-test.patch: Prevent conflict of
std::min/max with eigen's macros by importing eigen
test-suite's main.h header only after all system headers have
been included.
- Setup but don't run tests due to random errors in test-suite
itself
* Pass EIGEN_TEST_CXX11:Bool=ON and EIGEN_TEST_OPENMP:Bool=ON to
cmake to enable building c++11 and openmp tests.
* export EIGEN_SEED=100 to build with fixed seed (see
https://gitlab.com/libeigen/eigen/-/issues/2088).
* export EIGEN_REPEAT=1 to run each test only once (default 10)
to save time and since we use a fixed seed anyway.
* Disable for non-86_64 archs as some unsupported tests fail for
the others (for i586 some supported tests too, see
https://gitlab.com/libeigen/eigen/-/issues/2092).
- Pass CMAKE_SKIP_RPATH:BOOL=OFF and
CMAKE_SKIP_INSTALL_RPATH:BOOL=ON to cmake to fix rpath handling
in Leap 15.2's cmake macros (doesn't hurt generally).
- Change CMAKE_BUILD_TYPE from Release to RelWithDebInfo (openSUSE
default).
* Wed Nov 04 2020 badshah400@gmail.com
- Drop eigen_pkgconfig.patch: the includedir now needs to be
specified relative to CMAKE_INSTALL_PREFIX, so this patch causes
the includedir in the pkgconfig file to be erroneous
(boo#1178139).
- Use %autosetup to automatically run through patches.
* Sun Oct 25 2020 stefan.bruens@rwth-aachen.de
- Fix compilation error when using Eigen3 with OpenMP:
* Remove-error-counting-in-OpenMP-parallelize_gemm.patch
* Thu Oct 15 2020 badshah400@gmail.com
- Update to version 3.3.8:
* General bug fixes:
- Issue #1995: Fix a failure in the GEBP kernel when using
small L1 cache sizes, OpenMP and FMA.
- Issue #1990: Make CMake accept installation paths relative
to CMAKE_INSTALL_PREFIX.
- Issue #1974: Fix issue when reserving an empty sparse matrix
- Issue #1823: Fix incorrect use of std::abs
- Issue #1788: Fix rule-of-three violations inside the stable
modules. This fixes deprecated-copy warnings when compiling
with GCC>=9. Also protect some additional Base-constructors
from getting called by user code code (Issue #1587)
- Issue #1796: Make matrix squareroot usable for Map and Ref
types.
- Issue #1281: Fix AutoDiffScalar's make_coherent for nested
expression of constant ADs.
- Issue #1761: Fall back is_integral to std::is_integral in
c++11 and fix internal::is_integral<size_t/ptrdiff_t> with
MSVC 2013 and older.
- Issue #1741: Fix self-adjoint*matrix, triangular*matrix, and
triangular^1*matrix with a destination having a non-trivial
inner-stride.
- Issue #1741: Fix SelfAdjointView::rankUpdate and product to
triangular part for destination with non-trivial inner
stride.
- Issue #1741: Fix C.noalias() = A*C; with C.innerStride()!=1.
- Issue #1695: Fix a numerical robustness issue in BDCSVD.
- Issue #1692: Enable enum as sizes of Matrix and Array.
- Issue #1689: Fix used-but-marked-unused warning.
- Issue #1679: Avoid possible division by 0 in complex-schur.
- Issue #1676: Fix C++17 template deduction in DenseBase.
- Issue #1669: Fix PartialPivLU/inverse with zero-sized
matrices.
- Issue #1557: Fix RealSchur and EigenSolver for matrices with
only zeros on the diagonal.
* Performance related fixes:
- Issue #1562: Optimize evaluation of small products of the
form s*A*B by rewriting them as: s*(A.lazyProduct(B)) to
save a costly temporary. Measured speedup from 2x to 5x...
- Fix performance issue with SimplicialLDLT for complexes
coefficients.
* Misc fixes:
- Fix QuaternionBase::cast for quaternion map and wrapper.
- Fix case issue with Lapack unit tests.
- Fix possible conflict with an externally defined "real" type
when using gcc-5.
- Provide numext::[u]int{32,64}_t.
- Initialize isometric transforms like affine transforms.
- Change typedefs from private to protected to fix MSVC
compilation.
- Fix compilation of FFTW unit test.
- Fix compilation of BLAS backend and frontend.
- Fix real/imag namespace conflict.
- Avoid throwing in destructors.
- Fix precision issue in SelfAdjointEigenSolver.h
- Make digits10() return an integer.
- Use pade for matrix exponential also for complex values.
- Cast Index to RealScalar in SVDBase to fix an issue when
RealScalar is not implicitly convertible to Index.
- Provide EIGEN_HAS_C99_MATH when using MSVC.
- Various fixes in polynomial solver and its unit tests.
- nd 4415d4e2d: Extend polynomial solver unit tests to
complexes.
- Automatically switch between EigenSolver and
ComplexEigenSolver, and fix a few Real versus Scalar issues.
- Enable construction of Ref<VectorType> from a runtime
vector.
- Fix a problem of old gcc versions having problems with
recursive #pragma GCC diagnostic push/pop.
- Fix compilation with expression template scalar type.
- Backport AVX512 implementation to 3.3.
- Fix StlDeque compilation issue with GCC 10.
- Avoid false-positive test results in non-linear optimization
tests.
- Fix undefined behaviour caused by uncaught exceptions in OMP
section of parallel GEBP kernel.
- Fix a bug with half-precision floats on GPUs.
* Fixed warnings:
- Fix some maybe-uninitialized warnings in AmbiVector.h and
test bdcsvd.
- Silent cmake warnings in Lapack CMakeLists.txt.
- Rename variable which shadows class name in Polynomials
module.
- Workaround gcc's alloc-size-larger-than= warning in
DenseStorage.h.
- Hide some unused variable warnings in g++8.1 in Tensor
contraction mapper.
- Fix gcc 8.1 warning: "maybe use uninitialized" in std tests.
- Fix always true warning with gcc 4.7in test numext.
- Fix nonnull-compare warning in test geo_alignedbox.
- Disable ignoring attributes warning in vectorization logic
test.
- Fix a gcc7 warning about bool * bool in abs2 default
implementation.
- Fix a warning in SparseSelfAdjointView about a branch
statement always evaluation to false.
- Minor rebase of patches to fix offsets.
- Specify relative path to includedir as option to cmake as it
only accepts paths relative to CMAKE_INSTALL_PREFIX now.
- Drop Group tags.
* Thu Sep 17 2020 badshah400@gmail.com
- Add eigen3-CastXML-support-for-aarch64.patch to support CastXML
on aarch64 [https://gitlab.com/libeigen/eigen/-/issues/1979];
patch taken from upstream commit and rebased to apply without
fuzz.
* Mon Aug 05 2019 stefan.bruens@rwth-aachen.de
- Convert to _multibuild, to avoid doc dependencies when building
the main package.
* Wed Jul 24 2019 stefan.bruens@rwth-aachen.de
- Clean up spec file:
* Correct License tag, some included algorithms are LGPL-2.1-only
* Remove conditionals for obsolete distributions (which were failing
or unresolvable anyway)
* Remove defattr, use license macro
* Hide GL/GLUT/GLEW BuildRequires behind tests bcond, as tests are
not build currently
* Add missing BuildRequires tex(newunicodechar.sty), group doc dependencies
* Tue Feb 26 2019 bwiedemann@suse.com
- Drop doc tgz that contained duplicated files
to make the package build reproducible (boo#1047218)