diff options
author | Andrew Savchenko <bircoph@gentoo.org> | 2016-06-19 12:55:12 +0300 |
---|---|---|
committer | Andrew Savchenko <bircoph@gentoo.org> | 2016-06-19 12:55:36 +0300 |
commit | 683a1377d8de799d4e190229c131bd95dad9f1c0 (patch) | |
tree | 881c06f240e299761941af3906602e91b6513250 /sci-physics | |
parent | sys-block/partitionmanager: add ~arm keyword (diff) | |
download | gentoo-683a1377d8de799d4e190229c131bd95dad9f1c0.tar.gz gentoo-683a1377d8de799d4e190229c131bd95dad9f1c0.tar.bz2 gentoo-683a1377d8de799d4e190229c131bd95dad9f1c0.zip |
sci-physics/root: fix bug 575686
Apply upstream patch to support gsl-2.
Package-Manager: portage-2.3.0_rc1
Signed-off-by: Andrew Savchenko <bircoph@gentoo.org>
Diffstat (limited to 'sci-physics')
-rw-r--r-- | sci-physics/root/files/root-6.04.06-gsl2.patch | 58 | ||||
-rw-r--r-- | sci-physics/root/root-6.04.06.ebuild | 3 |
2 files changed, 60 insertions, 1 deletions
diff --git a/sci-physics/root/files/root-6.04.06-gsl2.patch b/sci-physics/root/files/root-6.04.06-gsl2.patch new file mode 100644 index 000000000000..5d9fb102b73c --- /dev/null +++ b/sci-physics/root/files/root-6.04.06-gsl2.patch @@ -0,0 +1,58 @@ +commit ee9964210c56e7c1868618a4434c5340fef38fe4 +Author: Pere Mato <pere.mato@cern.ch> +Date: Tue Dec 15 11:58:24 2015 +0100 + + Fix for ROOT-7776 - Integrate GSL 2.0 in ROOT. Changed the version used when option builtin_gsl=ON to 2.1 (latest production). + +diff --git a/cmake/modules/SearchInstalledSoftware.cmake b/cmake/modules/SearchInstalledSoftware.cmake +index 6f04dad..309a8de 100644 +--- a/cmake/modules/SearchInstalledSoftware.cmake ++++ b/cmake/modules/SearchInstalledSoftware.cmake +@@ -332,7 +332,7 @@ if(mathmore OR builtin_gsl) + endif() + endif() + else() +- set(gsl_version 1.15) ++ set(gsl_version 2.1) + message(STATUS "Downloading and building GSL version ${gsl_version}") + ExternalProject_Add( + GSL +diff --git a/math/mathmore/src/GSLMultiFit.h b/math/mathmore/src/GSLMultiFit.h +index 1d86da5..5b5a887 100644 +--- a/math/mathmore/src/GSLMultiFit.h ++++ b/math/mathmore/src/GSLMultiFit.h +@@ -31,6 +31,7 @@ + #include "gsl/gsl_matrix.h" + #include "gsl/gsl_multifit_nlin.h" + #include "gsl/gsl_blas.h" ++#include "gsl/gsl_version.h" + #include "GSLMultiFitFunctionWrapper.h" + + #include "Math/IFunction.h" +@@ -143,7 +144,11 @@ public: + /// gradient value at the minimum + const double * Gradient() const { + if (fSolver == 0) return 0; ++#if GSL_MAJOR_VERSION > 1 ++ fType->gradient(fSolver->state, fVec); ++#else + gsl_multifit_gradient(fSolver->J, fSolver->f,fVec); ++#endif + return fVec->data; + } + +@@ -154,7 +159,14 @@ public: + unsigned int npar = fSolver->fdf->p; + fCov = gsl_matrix_alloc( npar, npar ); + static double kEpsrel = 0.0001; ++#if GSL_MAJOR_VERSION > 1 ++ gsl_matrix* J = gsl_matrix_alloc(npar,npar); ++ gsl_multifit_fdfsolver_jac (fSolver, J); ++ int ret = gsl_multifit_covar(J, kEpsrel, fCov); ++ gsl_matrix_free(J); ++#else + int ret = gsl_multifit_covar(fSolver->J, kEpsrel, fCov); ++#endif + if (ret != GSL_SUCCESS) return 0; + return fCov->data; + } diff --git a/sci-physics/root/root-6.04.06.ebuild b/sci-physics/root/root-6.04.06.ebuild index 38e6f29e6ad0..9cfe3220d4b0 100644 --- a/sci-physics/root/root-6.04.06.ebuild +++ b/sci-physics/root/root-6.04.06.ebuild @@ -241,7 +241,8 @@ src_prepare() { "${FILESDIR}"/${PN}-6.00.01-dotfont.patch \ "${FILESDIR}"/${PN}-6.00.01-llvm.patch \ "${FILESDIR}"/${PN}-6.00.01-nobyte-compile.patch \ - "${FILESDIR}"/${P}-prop-flags.patch + "${FILESDIR}"/${P}-prop-flags.patch \ + "${FILESDIR}"/${P}-gsl2.patch # "${FILESDIR}"/${PN}-6.02.05-xrootd4.patch # "${FILESDIR}"/${PN}-6.02.05-dictpch.patch \ |