commit:     5ca7432c5d5272d0d9227474dc89011c2c723282
Author:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  6 20:54:42 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Aug  6 22:51:18 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ca7432c

sci-libs/libsvm: fix the hardcoded path for grid.py

Add 2 sed statements to src_prepare() to replace the hardcoded path
'./grid.py' with the correct one and subsequently rename 'grid.py' to
'svm-grid'.

Revbumped, since this is a runtime failure.

Package-Manager: portage-2.2.28
Closes: https://github.com/gentoo/gentoo/pull/2032

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sci-libs/libsvm/files/3.11-openmp.patch   |   4 +-
 sci-libs/libsvm/files/3.14-makefile.patch |   4 +-
 sci-libs/libsvm/libsvm-3.17-r2.ebuild     | 114 ++++++++++++++++++++++++++++++
 3 files changed, 118 insertions(+), 4 deletions(-)

diff --git a/sci-libs/libsvm/files/3.11-openmp.patch 
b/sci-libs/libsvm/files/3.11-openmp.patch
index 6ddb6f0..e07b03e 100644
--- a/sci-libs/libsvm/files/3.11-openmp.patch
+++ b/sci-libs/libsvm/files/3.11-openmp.patch
@@ -1,5 +1,5 @@
---- svm.cpp.orig       2011-05-27 04:32:19.000000000 +0100
-+++ svm.cpp    2011-12-29 19:17:07.000000000 +0000
+--- a/svm.cpp.orig     2011-05-27 04:32:19.000000000 +0100
++++ b/svm.cpp  2011-12-29 19:17:07.000000000 +0000
 @@ -1281,6 +1281,9 @@
                int start, j;
                if((start = cache->get_data(i,&data,len)) < len)

diff --git a/sci-libs/libsvm/files/3.14-makefile.patch 
b/sci-libs/libsvm/files/3.14-makefile.patch
index 56e8bd2..e38dafc 100644
--- a/sci-libs/libsvm/files/3.14-makefile.patch
+++ b/sci-libs/libsvm/files/3.14-makefile.patch
@@ -5,8 +5,8 @@
 * link the shared version library
 nov 2012 - bicat...@gentoo.org
 
---- Makefile.orig      2012-11-29 10:39:07.149421728 -0800
-+++ Makefile   2012-11-29 10:57:19.727766521 -0800
+--- a/Makefile.orig    2012-11-29 10:39:07.149421728 -0800
++++ b/Makefile 2012-11-29 10:57:19.727766521 -0800
 @@ -1,9 +1,12 @@
  CXX ?= g++
 -CFLAGS = -Wall -Wconversion -O3 -fPIC

diff --git a/sci-libs/libsvm/libsvm-3.17-r2.ebuild 
b/sci-libs/libsvm/libsvm-3.17-r2.ebuild
new file mode 100644
index 0000000..36ce9ba
--- /dev/null
+++ b/sci-libs/libsvm/libsvm-3.17-r2.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4,3_5} )
+
+inherit flag-o-matic java-pkg-opt-2 python-r1 toolchain-funcs
+
+DESCRIPTION="Library for Support Vector Machines"
+HOMEPAGE="http://www.csie.ntu.edu.tw/~cjlin/libsvm/";
+SRC_URI="http://www.csie.ntu.edu.tw/~cjlin/libsvm/${P}.tar.gz";
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="java openmp python tools"
+
+DEPEND="java? ( >=virtual/jdk-1.4 )"
+RDEPEND="
+       java? ( >=virtual/jre-1.4 )
+       tools? ( sci-visualization/gnuplot )"
+
+PATCHES=(
+       "${FILESDIR}/3.11-openmp.patch"
+       "${FILESDIR}/3.14-makefile.patch"
+)
+
+pkg_setup() {
+       if use openmp; then
+               if ! tc-has-openmp; then
+                       ewarn "OpenMP is not supported by your currently 
selected compiler"
+
+                       if tc-is-clang; then
+                               ewarn "OpenMP support in sys-devel/clang is 
provided by sys-libs/libomp,"
+                               ewarn "which you will need to build 
${CATEGORY}/${PN} for USE=\"openmp\""
+                       fi
+
+                       die "need openmp capable compiler"
+               fi
+
+               append-cflags -fopenmp
+               append-cxxflags -fopenmp
+               append-cppflags -DOPENMP
+       fi
+}
+
+src_prepare() {
+       default
+
+       sed -i -e "s@\.\./@${EPREFIX}/usr/bin/@g" tools/*.py \
+               || die "Failed to fix paths in python files"
+       sed -i -e "s|./grid.py|${EPREFIX}/usr/bin/svm-grid|g" tools/*.py \
+               || die "Failed to fix paths for svm-grid"
+       sed -i -e 's/grid.py/svm-grid/g' tools/grid.py \
+               || die "Failed to rename grid.py to svm-grid"
+
+       if use java; then
+               local JAVAC_FLAGS="$(java-pkg_javac-args)"
+               sed -i \
+                       -e "s/JAVAC_FLAGS =/JAVAC_FLAGS=${JAVAC_FLAGS}/g" \
+                       java/Makefile || die "Failed to fix java makefile"
+       fi
+       tc-export CXX CC
+}
+
+src_compile() {
+       default
+       use java && emake -C java
+}
+
+src_install() {
+       dobin svm-train svm-predict svm-scale
+       dolib.so *.so*
+       insinto /usr/include
+       doins svm.h
+
+       dodoc README
+
+       if use tools; then
+               python_setup
+
+               local t
+               for t in tools/*.py; do
+                       mv ${t} svm-$(basename ${t} .py) || die
+                       python_doscript svm-$(basename ${t} .py)
+               done
+
+               newdoc tools/README README.tools
+
+               insinto /usr/share/doc/${PF}/examples
+               doins heart_scale
+               doins -r svm-toy
+       fi
+
+       if use python ; then
+               installation() {
+                       touch python/__init__.py || die
+                       python_moduleinto libsvm
+                       python_domodule python/*.py
+               }
+               python_foreach_impl installation
+               newdoc python/README README.python
+       fi
+
+       docinto html
+       if use java; then
+               java-pkg_dojar java/libsvm.jar
+               dodoc java/test_applet.html
+       fi
+
+       dodoc FAQ.html
+}

Reply via email to