From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- sci-libs/shogun/shogun-5.0.0.ebuild | 162 ++++++++++++++++++++++++++++++++++++ 1 file changed, 162 insertions(+) create mode 100644 sci-libs/shogun/shogun-5.0.0.ebuild (limited to 'sci-libs/shogun/shogun-5.0.0.ebuild') diff --git a/sci-libs/shogun/shogun-5.0.0.ebuild b/sci-libs/shogun/shogun-5.0.0.ebuild new file mode 100644 index 000000000000..faf9808fd09f --- /dev/null +++ b/sci-libs/shogun/shogun-5.0.0.ebuild @@ -0,0 +1,162 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 python3_{4,5} ) + +inherit cmake-utils flag-o-matic python-single-r1 toolchain-funcs versionator + +MYPV=$(get_version_component_range 1-2) +MYPD=${PN}-data-0.9 + +DESCRIPTION="Large Scale Machine Learning Toolbox" +HOMEPAGE="http://shogun-toolbox.org/" +SRC_URI=" + ftp://shogun-toolbox.org/shogun/releases/${MYPV}/sources/${P}.tar.bz2 + test? ( ftp://shogun-toolbox.org/shogun/data/${MYPD}.tar.bz2 ) + examples? ( ftp://shogun-toolbox.org/shogun/data/${MYPD}.tar.bz2 )" + +LICENSE="GPL-3 free-noncomm" +SLOT="0/16" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="cpu_flags_x86_sse doc examples lua octave opencl python R ruby static-libs test" + +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + test? ( python )" + +RDEPEND=" + app-arch/bzip2 + app-arch/gzip + app-arch/lzma + app-arch/snappy + dev-libs/lzo + dev-cpp/eigen:3 + dev-libs/json-c:= + dev-libs/libxml2 + dev-libs/protobuf:= + net-misc/curl + sci-libs/arpack + sci-libs/arprec + sci-libs/colpack + sci-libs/hdf5:= + sci-libs/nlopt + sci-mathematics/glpk:= + sci-mathematics/lpsolve:= + sys-libs/readline:0= + sys-libs/zlib + virtual/blas + virtual/cblas + virtual/lapack + lua? ( dev-lang/lua:0 ) + octave? ( >=sci-mathematics/octave-4.2.0:=[hdf5] ) + opencl? ( virtual/opencl ) + python? ( + ${PYTHON_DEPS} + dev-python/numpy[${PYTHON_USEDEP}] + ) + R? ( dev-lang/R ) + ruby? ( dev-ruby/narray )" +DEPEND="${RDEPEND} + virtual/pkgconfig + doc? ( + >=app-doc/doxygen-1.8.13-r1[dot] + dev-python/sphinx + ) + lua? ( >=dev-lang/swig-3.0.12 ) + octave? ( >=dev-lang/swig-3.0.12 ) + python? ( + >=dev-lang/swig-3.0.12 + test? ( + sci-libs/scipy + ) + ) + R? ( >=dev-lang/swig-3.0.12 ) + ruby? ( >=dev-lang/swig-3.0.12 ) + test? ( + dev-python/jinja[${PYTHON_USEDEP}] + dev-cpp/gmock + )" + +# javamodular needs jblas (painful to package properly) +# permodular work in progress (as 3.2.0) +# could actually support multiple pythons, multiple rubys +# feel free to do work for it + +PATCHES=( + "${FILESDIR}"/${PN}-5.0.0-fix-buildsystem.patch + "${FILESDIR}"/${PN}-4.1.0-remove-C-linkage.patch +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_configure() { + export ATLAS_LIBRARY="$($(tc-getPKG_CONFIG) --libs cblas lapack)" + export CBLAS_LIBRARY="$($(tc-getPKG_CONFIG) --libs cblas)" + export ATLAS_LIBRARIES="$($(tc-getPKG_CONFIG) --libs blas cblas lapack)" + export LAPACK_LIBRARIES="$($(tc-getPKG_CONFIG) --libs lapack)" + + append-cppflags "$($(tc-getPKG_CONFIG) --cflags cblas)" + + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DCMAKE_SKIP_INSTALL_RPATH=ON + -DLIB_INSTALL_DIR=$(get_libdir) + -DENABLE_TESTING=$(usex test) + -DBUILD_EXAMPLES=$(usex examples) + -DDISABLE_SSE=$(usex !cpu_flags_x86_sse) + -DCMAKE_DISABLE_FIND_PACKAGE_Pandoc=ON + $(cmake-utils_use_find_package doc Sphinx) + $(cmake-utils_use_find_package doc Doxygen) + + # Features: + -DENABLE_COVERAGE=OFF + -DENABLE_COLPACK=ON + -DENABLE_PROTOBUF=ON + -DENABLE_PYTHON_DEBUG=OFF + -DENABLE_VIENNACL=$(usex opencl) + -DUSE_ARPREC=ON + -DUSE_HDF5=ON + + # Bindings: + -DJavaModular=OFF + -DPerlModular=OFF + -DCSharpModular=OFF + -DLuaModular=$(usex lua) + -DOctaveModular=$(usex octave) + -DPythonModular=$(usex python) + -DRModular=$(usex R) + -DRubyModular=$(usex ruby) + + # Disable bundled libs + -DBUNDLE_COLPACK=OFF + -DBUNDLE_JSON=OFF + -DBUNDLE_NLOPT=OFF + ) + cmake-utils_src_configure + + # gentoo bug #302621 + has_version 'sci-libs/hdf5[mpi]' && export CXX=mpicxx CC=mpicc +} + +src_compile() { + cmake-utils_src_compile + use doc && cmake-utils_src_compile -C doc +} + +src_install() { + cmake-utils_src_install + + if use doc; then + local i + for i in lua octave python R ruby; do + if use $i; then + docinto html/${i,}_modular + dodoc -r "${BUILD_DIR}"/src/interfaces/${i,}_modular/modshogun/doxygen_xml/. + fi + done + fi +} -- cgit v1.2.3