commit:     a1444fbbd220ed8e8357631a0d9d333551fea43b
Author:     Patrick Lauer <patrick <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 29 18:23:08 2019 +0000
Commit:     罗百科 <patrick <AT> gentoo <DOT> org>
CommitDate: Sun Dec 29 18:23:21 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1444fbb

sci-libs/scikits_learn: Bump, fix build

Fixes #630294

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Patrick Lauer <patrick <AT> gentoo.org>

 sci-libs/scikits_learn/Manifest                    |   2 +
 .../files/scikits_learn-0.20.2-fix-cdfast.patch    |  42 ++++++++
 sci-libs/scikits_learn/scikits_learn-0.20.2.ebuild | 107 +++++++++++++++++++++
 sci-libs/scikits_learn/scikits_learn-0.20.4.ebuild | 107 +++++++++++++++++++++
 4 files changed, 258 insertions(+)

diff --git a/sci-libs/scikits_learn/Manifest b/sci-libs/scikits_learn/Manifest
index cc6598f1275..bb13bbcc95f 100644
--- a/sci-libs/scikits_learn/Manifest
+++ b/sci-libs/scikits_learn/Manifest
@@ -1 +1,3 @@
 DIST scikit-learn-0.19.0.tar.gz 9341628 BLAKE2B 
c9e0c12558e81efb6f5cfddead028980b0019d2f6d0fdce5662c9138ec3a5b2a3d30b022a5713578bc7effd09894006e8f7f60a3e038ca66297502d9d4212686
 SHA512 
1b88bc043b08de9b5bb1f3814b8101c73ced010cf94bd725fb69e1ef95b4a9597a34de4a19f84fbbf63e54d47e95b3ff498d611234fcdfcaa5e4e3cf696289d2
+DIST scikit-learn-0.20.2.tar.gz 10275187 BLAKE2B 
6865fd101f99930e014f4a2a89616e1ee917df27a5a1b0a931d47503d7df509fe6490799e876a5d68b1cb76a35c6f85e4acbb31a28adfc528720fe9a69e108a7
 SHA512 
5e0bdea3c40e38880683c6a49cdf2f4c0d40c1f5436c1d8209d613440d5d9d13b9a608e73943a890ef3effaddd930b5c171c45d29700afb8629285ba4aad414f
+DIST scikit-learn-0.20.4.tar.gz 11684276 BLAKE2B 
791fd5c7e3ebfdb9bf01524be46b19341b5750fdc5352de9e50cc395a34cf91551825352f18f235b658b55b38829981884fca9f0535a1c505adeb18ac5d87ceb
 SHA512 
a94c254440641a987df1eaec63302639b8e6f56705ec426c350070658141dd574b502eb1e4b94ae9c766c1becfd911f08bb97d5c87d39b0546d8444ed281b06a

diff --git a/sci-libs/scikits_learn/files/scikits_learn-0.20.2-fix-cdfast.patch 
b/sci-libs/scikits_learn/files/scikits_learn-0.20.2-fix-cdfast.patch
new file mode 100644
index 00000000000..1d1de4a3e0e
--- /dev/null
+++ b/sci-libs/scikits_learn/files/scikits_learn-0.20.2-fix-cdfast.patch
@@ -0,0 +1,42 @@
+--- scikit-learn-0.20.3.orig/sklearn/linear_model/cd_fast.c    2019-08-09 
03:05:05.351926119 +0500
++++ scikit-learn-0.20.3/sklearn/linear_model/cd_fast.c 2019-08-09 
03:05:35.022926006 +0500
+@@ -4889,7 +4889,7 @@
+ 
+ static PyObject 
*__pyx_pf_7sklearn_12linear_model_7cd_fast_8enet_coordinate_descent(CYTHON_UNUSED
 PyObject *__pyx_self, __Pyx_memviewslice __pyx_v_w, float __pyx_v_alpha, float 
__pyx_v_beta, __Pyx_memviewslice __pyx_v_X, __Pyx_memviewslice __pyx_v_y, int 
__pyx_v_max_iter, float __pyx_v_tol, PyObject *__pyx_v_rng, int __pyx_v_random, 
int __pyx_v_positive) {
+   PyObject *__pyx_v_dtype = NULL;
+-  void (*__pyx_v_gemv)(enum CBLAS_ORDER, enum CBLAS_TRANSPOSE, int, int, 
float, float *, int, float *, int, float, float *, int);
++  void (*__pyx_v_gemv)(CBLAS_ORDER, CBLAS_TRANSPOSE, int, int, float, float 
*, int, float *, int, float, float *, int);
+   float (*__pyx_v_dot)(int, float *, int, float *, int);
+   void (*__pyx_v_axpy)(int, float, float *, int, float *, int);
+   float (*__pyx_v_asum)(int, float *, int);
+@@ -6279,7 +6279,7 @@
+ 
+ static PyObject 
*__pyx_pf_7sklearn_12linear_model_7cd_fast_10enet_coordinate_descent(CYTHON_UNUSED
 PyObject *__pyx_self, __Pyx_memviewslice __pyx_v_w, double __pyx_v_alpha, 
double __pyx_v_beta, __Pyx_memviewslice __pyx_v_X, __Pyx_memviewslice 
__pyx_v_y, int __pyx_v_max_iter, double __pyx_v_tol, PyObject *__pyx_v_rng, int 
__pyx_v_random, int __pyx_v_positive) {
+   PyObject *__pyx_v_dtype = NULL;
+-  void (*__pyx_v_gemv)(enum CBLAS_ORDER, enum CBLAS_TRANSPOSE, int, int, 
double, double *, int, double *, int, double, double *, int);
++  void (*__pyx_v_gemv)(CBLAS_ORDER, CBLAS_TRANSPOSE, int, int, double, double 
*, int, double *, int, double, double *, int);
+   double (*__pyx_v_dot)(int, double *, int, double *, int);
+   void (*__pyx_v_axpy)(int, double, double *, int, double *, int);
+   double (*__pyx_v_asum)(int, double *, int);
+@@ -16246,8 +16246,8 @@
+   CYTHON_UNUSED float (*__pyx_v_asum)(int, float *, int);
+   void (*__pyx_v_copy)(int, float *, int, float *, int);
+   void (*__pyx_v_scal)(int, float, float *, int);
+-  void (*__pyx_v_ger)(enum CBLAS_ORDER, int, int, float, float *, int, float 
*, int, float *, int);
+-  void (*__pyx_v_gemv)(enum CBLAS_ORDER, enum CBLAS_TRANSPOSE, int, int, 
float, float *, int, float *, int, float, float *, int);
++  void (*__pyx_v_ger)(CBLAS_ORDER, int, int, float, float *, int, float *, 
int, float *, int);
++  void (*__pyx_v_gemv)(CBLAS_ORDER, CBLAS_TRANSPOSE, int, int, float, float 
*, int, float *, int, float, float *, int);
+   unsigned int __pyx_v_n_samples;
+   unsigned int __pyx_v_n_features;
+   unsigned int __pyx_v_n_tasks;
+@@ -17965,8 +17965,8 @@
+   CYTHON_UNUSED double (*__pyx_v_asum)(int, double *, int);
+   void (*__pyx_v_copy)(int, double *, int, double *, int);
+   void (*__pyx_v_scal)(int, double, double *, int);
+-  void (*__pyx_v_ger)(enum CBLAS_ORDER, int, int, double, double *, int, 
double *, int, double *, int);
+-  void (*__pyx_v_gemv)(enum CBLAS_ORDER, enum CBLAS_TRANSPOSE, int, int, 
double, double *, int, double *, int, double, double *, int);
++  void (*__pyx_v_ger)(CBLAS_ORDER, int, int, double, double *, int, double *, 
int, double *, int);
++  void (*__pyx_v_gemv)(CBLAS_ORDER, CBLAS_TRANSPOSE, int, int, double, double 
*, int, double *, int, double, double *, int);
+   unsigned int __pyx_v_n_samples;
+   unsigned int __pyx_v_n_features;
+   unsigned int __pyx_v_n_tasks;

diff --git a/sci-libs/scikits_learn/scikits_learn-0.20.2.ebuild 
b/sci-libs/scikits_learn/scikits_learn-0.20.2.ebuild
new file mode 100644
index 00000000000..727ee44984b
--- /dev/null
+++ b/sci-libs/scikits_learn/scikits_learn-0.20.2.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1 flag-o-matic
+
+MYPN="${PN/scikits_/scikit-}"
+MYP="${MYPN}-${PV}"
+
+DESCRIPTION="Python modules for machine learning and data mining"
+HOMEPAGE="http://scikit-learn.org";
+SRC_URI="mirror://pypi/${MYPN:0:1}/${MYPN}/${MYP}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples test"
+
+# tried to unbundle virtual/python-funcsigs, funcsigs, odict
+# but it is a large mess to maintain
+
+RDEPEND="
+       dev-python/matplotlib[${PYTHON_USEDEP}]
+       dev-python/nose[${PYTHON_USEDEP}]
+       dev-python/numpy[lapack,${PYTHON_USEDEP}]
+       sci-libs/scikits[${PYTHON_USEDEP}]
+       sci-libs/scipy[${PYTHON_USEDEP}]
+       virtual/blas:=
+       virtual/cblas:=
+"
+
+DEPEND="
+       dev-python/cython[${PYTHON_USEDEP}]
+       dev-python/numpy[lapack,${PYTHON_USEDEP}]
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       sci-libs/scipy[${PYTHON_USEDEP}]
+       virtual/blas:=
+       virtual/cblas:=
+"
+
+S="${WORKDIR}/${MYP}"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.18.1-system-cblas.patch
+       "${FILESDIR}"/${PN}-0.20.2-fix-cdfast.patch )
+
+python_prepare_all() {
+       # bug #397605
+       [[ ${CHOST} == *-darwin* ]] \
+               && append-ldflags -bundle "-undefined dynamic_lookup" \
+               || append-ldflags -shared
+
+       # scikits-learn now uses the horrible numpy.distutils automagic
+       export SCIPY_FCONFIG="config_fc --noopt --noarch"
+
+       # remove bundled cblas
+       rm -rf sklearn/src || die "failed to remove bundled cblas"
+
+       # commented out, since it is a mess to maintain
+       # use system joblib
+       #rm -r sklearn/externals/joblib || die
+       #sed -i -e '/joblib/d' sklearn/externals/setup.py || die
+       #for f in sklearn/{*/,}*.py; do
+       #       sed -r -e '/^from/s/(sklearn|\.|)\.externals\.joblib/joblib/' \
+       #               -e 's/from (sklearn|\.|)\.externals import/import/' -i 
$f || die
+       #done
+
+       # use system funcsigs and odict
+       #rm sklearn/externals/funcsigs.py || die
+       #rm sklearn/externals/odict.py || die
+       #for f in 
sklearn/{utils/fixes.py,gaussian_process/{tests/test_,}kernels.py}; do
+       #       sed -r -e 's/from (sklearn|\.|)\.externals\.funcsigs/from 
funcsigs/' -i $f || die
+       #done
+       distutils-r1_python_prepare_all
+}
+
+python_compile() {
+       distutils-r1_python_compile ${SCIPY_FCONFIG}
+}
+
+python_test() {
+       # doc builds and runs tests
+       use doc && return
+       distutils_install_for_testing ${SCIPY_FCONFIG}
+       esetup.py install \
+                         --root="${T}/test-${EPYTHON}" \
+                         --no-compile ${SCIPY_FCONFIG}
+       pushd "${T}/test-${EPYTHON}/$(python_get_sitedir)" || die > /dev/null
+       JOBLIB_MULTIPROCESSING=2 SKLEARN_SKIP_NETWORK_TESTS=1 nosetests -v 
sklearn --exe || die
+       popd > /dev/null
+}
+
+python_install() {
+       distutils-r1_python_install ${SCIPY_FCONFIG}
+}
+
+python_install_all() {
+       find "${S}" -name \*LICENSE.txt -delete
+       distutils-r1_python_install_all
+       if use examples; then
+               dodoc -r examples
+               docompress -x /usr/share/doc/${PF}/examples
+       fi
+
+}

diff --git a/sci-libs/scikits_learn/scikits_learn-0.20.4.ebuild 
b/sci-libs/scikits_learn/scikits_learn-0.20.4.ebuild
new file mode 100644
index 00000000000..727ee44984b
--- /dev/null
+++ b/sci-libs/scikits_learn/scikits_learn-0.20.4.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1 flag-o-matic
+
+MYPN="${PN/scikits_/scikit-}"
+MYP="${MYPN}-${PV}"
+
+DESCRIPTION="Python modules for machine learning and data mining"
+HOMEPAGE="http://scikit-learn.org";
+SRC_URI="mirror://pypi/${MYPN:0:1}/${MYPN}/${MYP}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="examples test"
+
+# tried to unbundle virtual/python-funcsigs, funcsigs, odict
+# but it is a large mess to maintain
+
+RDEPEND="
+       dev-python/matplotlib[${PYTHON_USEDEP}]
+       dev-python/nose[${PYTHON_USEDEP}]
+       dev-python/numpy[lapack,${PYTHON_USEDEP}]
+       sci-libs/scikits[${PYTHON_USEDEP}]
+       sci-libs/scipy[${PYTHON_USEDEP}]
+       virtual/blas:=
+       virtual/cblas:=
+"
+
+DEPEND="
+       dev-python/cython[${PYTHON_USEDEP}]
+       dev-python/numpy[lapack,${PYTHON_USEDEP}]
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       sci-libs/scipy[${PYTHON_USEDEP}]
+       virtual/blas:=
+       virtual/cblas:=
+"
+
+S="${WORKDIR}/${MYP}"
+
+PATCHES=( "${FILESDIR}"/${PN}-0.18.1-system-cblas.patch
+       "${FILESDIR}"/${PN}-0.20.2-fix-cdfast.patch )
+
+python_prepare_all() {
+       # bug #397605
+       [[ ${CHOST} == *-darwin* ]] \
+               && append-ldflags -bundle "-undefined dynamic_lookup" \
+               || append-ldflags -shared
+
+       # scikits-learn now uses the horrible numpy.distutils automagic
+       export SCIPY_FCONFIG="config_fc --noopt --noarch"
+
+       # remove bundled cblas
+       rm -rf sklearn/src || die "failed to remove bundled cblas"
+
+       # commented out, since it is a mess to maintain
+       # use system joblib
+       #rm -r sklearn/externals/joblib || die
+       #sed -i -e '/joblib/d' sklearn/externals/setup.py || die
+       #for f in sklearn/{*/,}*.py; do
+       #       sed -r -e '/^from/s/(sklearn|\.|)\.externals\.joblib/joblib/' \
+       #               -e 's/from (sklearn|\.|)\.externals import/import/' -i 
$f || die
+       #done
+
+       # use system funcsigs and odict
+       #rm sklearn/externals/funcsigs.py || die
+       #rm sklearn/externals/odict.py || die
+       #for f in 
sklearn/{utils/fixes.py,gaussian_process/{tests/test_,}kernels.py}; do
+       #       sed -r -e 's/from (sklearn|\.|)\.externals\.funcsigs/from 
funcsigs/' -i $f || die
+       #done
+       distutils-r1_python_prepare_all
+}
+
+python_compile() {
+       distutils-r1_python_compile ${SCIPY_FCONFIG}
+}
+
+python_test() {
+       # doc builds and runs tests
+       use doc && return
+       distutils_install_for_testing ${SCIPY_FCONFIG}
+       esetup.py install \
+                         --root="${T}/test-${EPYTHON}" \
+                         --no-compile ${SCIPY_FCONFIG}
+       pushd "${T}/test-${EPYTHON}/$(python_get_sitedir)" || die > /dev/null
+       JOBLIB_MULTIPROCESSING=2 SKLEARN_SKIP_NETWORK_TESTS=1 nosetests -v 
sklearn --exe || die
+       popd > /dev/null
+}
+
+python_install() {
+       distutils-r1_python_install ${SCIPY_FCONFIG}
+}
+
+python_install_all() {
+       find "${S}" -name \*LICENSE.txt -delete
+       distutils-r1_python_install_all
+       if use examples; then
+               dodoc -r examples
+               docompress -x /usr/share/doc/${PF}/examples
+       fi
+
+}

Reply via email to