Package: guix-patches;
Reported by: Kei Kebreau <kkebreau <at> posteo.net>
Date: Wed, 16 May 2018 23:12:01 UTC
Severity: normal
Tags: fixed, patch
Done: ludo <at> gnu.org (Ludovic Courtès)
Bug is archived. No further changes may be made.
Message #14 received at 31479 <at> debbugs.gnu.org (full text, mbox):
From: Kei Kebreau <kkebreau <at> posteo.net> To: 31479 <at> debbugs.gnu.org Subject: Re: [PATCH 3/3] gnu: Update shogun to 6.1.3. Date: Wed, 16 May 2018 19:24:01 -0400
[Message part 1 (text/plain, inline)]
Kei Kebreau <kkebreau <at> posteo.net> writes: > * gnu/packages/machine-learning.scm (shogun): Update to 6.1.3. > [arguments]: Rewrite list of symlinks in 'delete-broken-symlinks' phase. > Rewrite file lists given to substitute* in 'change-R-target-path' and > 'fix-octave-modules' phases. Add 'move-rxcpp' phase. Rewrite configure-flags > for the update. > [inputs]: Add eigen. > [native-inputs]: Add rxcpp. > --- > gnu/packages/machine-learning.scm | 60 ++++++++++++++----------------- > 1 file changed, 27 insertions(+), 33 deletions(-) > > diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm > index 6536d861e..e79aa6692 100644 > --- a/gnu/packages/machine-learning.scm > +++ b/gnu/packages/machine-learning.scm > @@ -37,6 +37,7 @@ > #:use-module (guix build-system r) > #:use-module (guix git-download) > #:use-module (gnu packages) > + #:use-module (gnu packages algebra) > #:use-module (gnu packages autotools) > #:use-module (gnu packages boost) > #:use-module (gnu packages check) > @@ -367,7 +368,7 @@ sample proximities between pairs of cases.") > (define-public shogun > (package > (name "shogun") > - (version "4.0.0") > + (version "6.1.3") > (source > (origin > (method url-fetch) > @@ -377,7 +378,7 @@ sample proximities between pairs of cases.") > "/sources/shogun-" version ".tar.bz2")) > (sha256 > (base32 > - "159nlijnb7mnrv9za80wnm1shwvy45hgrqzn51hxy7gw4z6d6fdb")) > + "1rn9skm3nw6hr7mr3lgp2gfqhi7ii0lyxck7qmqnf8avq349s5jp")) > (modules '((guix build utils) > (ice-9 rdelim))) > (snippet > @@ -423,62 +424,54 @@ sample proximities between pairs of cases.") > "applications/easysvm/data" > "applications/msplicer/data" > "applications/ocr/data" > - "examples/documented/data" > - "examples/documented/matlab_static" > - "examples/documented/octave_static" > - "examples/undocumented/data" > - "examples/undocumented/matlab_static" > - "examples/undocumented/octave_static" > - "tests/integration/data" > - "tests/integration/matlab_static" > - "tests/integration/octave_static" > - "tests/integration/python_modular/tests")) > + "examples/meta/data" > + "examples/undocumented/data")) > #t)) > (add-after 'unpack 'change-R-target-path > (lambda* (#:key outputs #:allow-other-keys) > - (substitute* '("src/interfaces/r_modular/CMakeLists.txt" > - "src/interfaces/r_static/CMakeLists.txt" > - "examples/undocumented/r_modular/CMakeLists.txt") > + (substitute* '("src/interfaces/r/CMakeLists.txt" > + "examples/meta/r/CMakeLists.txt") > (("\\$\\{R_COMPONENT_LIB_PATH\\}") > (string-append (assoc-ref outputs "out") > "/lib/R/library/"))) > #t)) > (add-after 'unpack 'fix-octave-modules > (lambda* (#:key outputs #:allow-other-keys) > - (substitute* '("src/interfaces/octave_modular/CMakeLists.txt" > - "src/interfaces/octave_static/CMakeLists.txt") > + (substitute* "src/interfaces/octave/CMakeLists.txt" > (("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}") > - "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave")) > - > - ;; change target directory > - (substitute* "src/interfaces/octave_modular/CMakeLists.txt" > + "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave") > + ;; change target directory > (("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}") > (string-append (assoc-ref outputs "out") > "/share/octave/packages"))) > #t)) > + (add-after 'unpack 'move-rxcpp > + (lambda* (#:key inputs #:allow-other-keys) > + (let ((rxcpp-dir "shogun/third-party/rxcpp")) > + (mkdir-p rxcpp-dir) > + (install-file (assoc-ref inputs "rxcpp") rxcpp-dir) > + #t))) > (add-before 'build 'set-HOME > ;; $HOME needs to be set at some point during the build phase > (lambda _ (setenv "HOME" "/tmp") #t))) > #:configure-flags > (list "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE" > "-DUSE_SVMLIGHT=OFF" ;disable proprietary SVMLIGHT > - ;;"-DJavaModular=ON" ;requires unpackaged jblas > - ;;"-DRubyModular=ON" ;requires unpackaged ruby-narray > - ;;"-DPerlModular=ON" ;"FindPerlLibs" does not exist > - ;;"-DLuaModular=ON" ;fails because lua doesn't build pkgconfig file > - "-DOctaveModular=ON" > - "-DOctaveStatic=ON" > - "-DPythonModular=ON" > - "-DPythonStatic=ON" > - "-DRModular=ON" > - "-DRStatic=ON" > - "-DCmdLineStatic=ON"))) > + "-DBUILD_META_EXAMPLES=OFF" ;requires unpackaged ctags > + ;;"-DINTERFACE_JAVA=ON" ;requires unpackaged jblas > + ;;"-DINTERFACE_RUBY=ON" ;requires unpackaged ruby-narray > + ;;"-DINTERFACE_PERL=ON" ;"FindPerlLibs" does not exist > + ;;"-DINTERFACE_LUA=ON" ;fails because lua doesn't build pkgconfig file > + "-DINTERFACE_OCTAVE=ON" > + "-DINTERFACE_PYTHON=ON" > + "-DINTERFACE_R=ON"))) > (inputs > `(("python" ,python) > ("numpy" ,python-numpy) > ("r-minimal" ,r-minimal) > ("octave" ,octave) > ("swig" ,swig) > + ("eigen" ,eigen) > ("hdf5" ,hdf5) > ("atlas" ,atlas) > ("arpack" ,arpack-ng) > @@ -488,7 +481,8 @@ sample proximities between pairs of cases.") > ("lzo" ,lzo) > ("zlib" ,zlib))) > (native-inputs > - `(("pkg-config" ,pkg-config))) > + `(("pkg-config" ,pkg-config) > + ("rxcpp" ,rxcpp))) > ;; Non-portable SSE instructions are used so building fails on platforms > ;; other than x86_64. > (supported-systems '("x86_64-linux")) These patches are really just to upgrade Octave, but the old Shogun couldn't find the new version of Octave. The shogun update patch is a WIP, but I don't have enough RAM (only 3.8GB) to make it through Shogun's build process reliably. Could someone else help out with this patch?
[signature.asc (application/pgp-signature, inline)]
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.