Control: tags -1 patch fixed-upstream Hi Andreas,
On 24-11-15 22:14, Andreas Tille wrote: > thanks for working on the libgsl migration. I commited a patch to SVN[1] > to circumvent the check by configure but that's not sufficient to do the > migration. The build fails with > > In file included from ellint.c:1:0: > /usr/include/gsl/gsl_sf_ellint.h:84:5: note: expected 'gsl_sf_result * {aka > struct gsl_sf_result_struct *}' but argument is of type 'int' > int gsl_sf_ellint_D_e(double phi, double k, gsl_mode_t mode, gsl_sf_result * > result); > ^ > ellint.c:82:17: error: too many arguments to function 'gsl_sf_ellint_D_e' > status[i] = gsl_sf_ellint_D_e(phi[i], k[i], n[i], sf_mode[*mode], > &result) ; > ^ > > Anybody with some gsl experience might perhaps know what to do next > hopefully. The attached patch add support for GSL 2.x and make r-cran-gsl build successfully with GSL 2.1. The changes were taken from yesterdays 1.9-10.1 upstream release, so you'll want to package that instead. https://cran.r-project.org/web/packages/gsl/ https://cran.r-project.org/src/contrib/gsl_1.9-10.1.tar.gz Make sure to update the build dependency to libgsl-dev to not pull in the old GSL 1.x packages via libgsl0-dev. Kind Regards, Bas -- GPG Key ID: 4096R/6750F10AE88D4AF1 Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1
diff -Nru r-cran-gsl-1.9-10/debian/changelog r-cran-gsl-1.9-10/debian/changelog --- r-cran-gsl-1.9-10/debian/changelog 2014-06-23 12:25:00.000000000 +0200 +++ r-cran-gsl-1.9-10/debian/changelog 2015-11-22 21:58:37.000000000 +0100 @@ -1,3 +1,10 @@ +r-cran-gsl (1.9-10-1.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Update build dependencies for GSL 2, change libgsl0-dev to libgsl-dev. + + -- Bas Couwenberg <sebas...@debian.org> Sun, 22 Nov 2015 21:58:32 +0100 + r-cran-gsl (1.9-10-1) unstable; urgency=low * Initial release (Closes: #752387). diff -Nru r-cran-gsl-1.9-10/debian/control r-cran-gsl-1.9-10/debian/control --- r-cran-gsl-1.9-10/debian/control 2014-06-23 10:58:32.000000000 +0200 +++ r-cran-gsl-1.9-10/debian/control 2015-11-22 21:58:30.000000000 +0100 @@ -6,7 +6,7 @@ Build-Depends: debhelper (>= 9.0), cdbs, r-base-dev, - libgsl0-dev + libgsl-dev Standards-Version: 3.9.5 Vcs-Browser: http://anonscm.debian.org/viewvc/debian-science/packages/R/trunk/packages/r-cran-gsl/trunk/ Vcs-Svn: svn://anonscm.debian.org/debian-science/packages/R/trunk/packages/r-cran-gsl/trunk/ diff -Nru r-cran-gsl-1.9-10/debian/patches/gsl-2.patch r-cran-gsl-1.9-10/debian/patches/gsl-2.patch --- r-cran-gsl-1.9-10/debian/patches/gsl-2.patch 1970-01-01 01:00:00.000000000 +0100 +++ r-cran-gsl-1.9-10/debian/patches/gsl-2.patch 2015-12-03 16:41:16.000000000 +0100 @@ -0,0 +1,116 @@ +Description: Add support for GSL (taken from upstream release 1.9-10.1) +Origin: https://cran.r-project.org/src/contrib/gsl_1.9-10.1.tar.gz +Bug-Debian: https://bugs.debian.org/805829 + +--- a/MD5 ++++ b/MD5 +@@ -35,8 +35,8 @@ f2606a5708629a1b4ebc401b857ba00d *R/psi. + db9a953c82fb5bcad9aee1bc7c6c053a *R/zzz.R + c49ad1d44c0b69af5e210633fcaddcf6 *build/vignette.rds + 67c9db5dc1a8e12ccf5880ffe206ce56 *cleanup +-98d0b4377dad6dcd1014786f247027b5 *configure +-afdb66942750b3ac5417d2484e59bbfe *configure.ac ++9a9891f695e4676eb2f69fb50f393f57 *configure ++b0a09ce66804c989dc28f289db46011c *configure.ac + 4f92f503d9c4f423a6e89a9eaf63b63a *inst/CITATION + e2b59fe3fff2bcb30599893a7e590f33 *inst/doc/gslpaper.R + 3301d42c84eae58199688edf0b89e67b *inst/doc/gslpaper.Rnw +@@ -83,7 +83,7 @@ f58e8ead369ee94387edc38f1330ada1 *src/co + b9e67aa3572a60fc8cfe5651d386a251 *src/dawson.c + 07b6bc201b1956c4a5dd90172fdb6cb2 *src/debye.c + 5b5cabf6031c19224e7e7ef4ac9e2b6a *src/dilog.c +-e8e7cb31ab73cc4f04402445d607965a *src/ellint.c ++ca96b38cdc06b5c35fee02b26b2bff4d *src/ellint.c + bb037c708bd7e7ba735b83b8f5166e0a *src/elljac.c + 803c371059fc2b48262c6a611f10e48e *src/error.c + 23e873053f5e1544a259ef8444d268f8 *src/expint.c +@@ -93,7 +93,7 @@ f183cb92f62f2132ebcd6c6e87dadbe9 *src/fe + 42f6f901e8451ca0b1aa6c24b292a3b8 *src/hyperg.c + dfa461e5ad77313a206f82f677ee3cac *src/laguerre.c + 5c539738e044a51c33f3916873543392 *src/lambert.c +-1fe19b728d6a3eb673d94d95ce5e0347 *src/legendre.c ++4c21539636e69450c7ab4da6684dc7c9 *src/legendre.c + a60c1c9bc368e9c50a8545aab6ca67bc *src/log.c + 8768413013d9891c716a3fe0f60826bd *src/multimin.c + d108215b94072249889c251a8e9e6f37 *src/poly.c +--- a/configure ++++ b/configure +@@ -2635,7 +2635,7 @@ int main() { + if ((sscanf(gslv, "%d.%d", &major, &minor)) != 2) { + exit (1); + } +- exit (minor < 12); ++ exit (major == 1 && minor < 12); + #else + exit(1); + #endif +--- a/configure.ac ++++ b/configure.ac +@@ -33,7 +33,7 @@ int main() { + if ((sscanf(gslv, "%d.%d", &major, &minor)) != 2) { + exit (1); + } +- exit (minor < 12); ++ exit (major == 1 && minor < 12); + #else + exit(1); + #endif +--- a/src/ellint.c ++++ b/src/ellint.c +@@ -1,3 +1,4 @@ ++#include <gsl/gsl_version.h> + #include <gsl/gsl_sf_ellint.h> + #include <gsl/gsl_errno.h> + +@@ -79,7 +80,11 @@ void ellint_D_e(double *phi, double *k, + gsl_set_error_handler_off(); + + for(i = 0; i< *nk ; i++){ ++#if defined(GSL_MAJOR_VERSION) && GSL_MAJOR_VERSION >= 2 ++ status[i] = gsl_sf_ellint_D_e(phi[i], k[i], sf_mode[*mode], &result) ; ++#else + status[i] = gsl_sf_ellint_D_e(phi[i], k[i], n[i], sf_mode[*mode], &result) ; ++#endif + val[i] = result.val; + err[i] = result.err; + } +--- a/src/legendre.c ++++ b/src/legendre.c +@@ -1,3 +1,5 @@ ++#include <stdlib.h> // for size_t ++#include <gsl/gsl_version.h> + #include <gsl/gsl_sf_legendre.h> + #include <gsl/gsl_errno.h> + +@@ -182,6 +184,7 @@ void legendre_Plm_e(int *l, int *m, doub + } + } + ++#if ((GSL_MAJOR_VERSION < 2) || (GSL_MAJOR_VERSION == 2 && GSL_MINOR_VERSION == 0)) + void legendre_Plm_array(int *lmax, int *m, double* x, int* len, double* out, int* status) + { + int i; +@@ -191,6 +194,7 @@ void legendre_Plm_array(int *lmax, int * + status[i] = gsl_sf_legendre_Plm_array(*lmax, *m, x[i], out+i*(*lmax- *m +1)); + } + } ++#endif + + void legendre_sphPlm(int *l, int *m, double *x, int *len, double *out) + { +@@ -214,6 +218,7 @@ void legendre_sphPlm_e(int *l, int *m, d + } + } + ++#if ((GSL_MAJOR_VERSION < 2) || (GSL_MAJOR_VERSION == 2 && GSL_MINOR_VERSION == 0)) + void legendre_sphPlm_array(int *lmax, int *m, double* x, int* len, double* out, int* status) + { + int i; +@@ -223,6 +228,7 @@ void legendre_sphPlm_array(int *lmax, in + status[i] = gsl_sf_legendre_Plm_array(*lmax, *m, x[i], out+i*(*lmax- *m +1)); + } + } ++#endif + + void conicalP_half_e(double *lambda, double *x, int *len, double *val, double *err, int *status) + { diff -Nru r-cran-gsl-1.9-10/debian/patches/series r-cran-gsl-1.9-10/debian/patches/series --- r-cran-gsl-1.9-10/debian/patches/series 1970-01-01 01:00:00.000000000 +0100 +++ r-cran-gsl-1.9-10/debian/patches/series 2015-12-03 16:40:24.000000000 +0100 @@ -0,0 +1 @@ +gsl-2.patch
-- debian-science-maintainers mailing list debian-science-maintainers@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/debian-science-maintainers