diff options
Diffstat (limited to 'sci-physics/root/files/root-6.04.06-gsl2.patch')
-rw-r--r-- | sci-physics/root/files/root-6.04.06-gsl2.patch | 58 |
1 files changed, 0 insertions, 58 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 deleted file mode 100644 index 5d9fb102b73c..000000000000 --- a/sci-physics/root/files/root-6.04.06-gsl2.patch +++ /dev/null @@ -1,58 +0,0 @@ -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; - } |