From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: Re: [PATCH] Add SuiteSparse. Date: Thu, 19 Mar 2015 11:59:25 +0100 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39047) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYYAt-0001Li-HZ for guix-devel@gnu.org; Thu, 19 Mar 2015 06:59:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YYYAp-0003Vf-BZ for guix-devel@gnu.org; Thu, 19 Mar 2015 06:59:39 -0400 Received: from sinope.bbbm.mdc-berlin.de ([141.80.25.23]:47356) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YYYAo-0003UZ-VF for guix-devel@gnu.org; Thu, 19 Mar 2015 06:59:35 -0400 In-Reply-To: List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Eric Bavier Cc: Guix --=-=-= Content-Type: text/plain Eric Bavier writes: > On 2015-03-18 05:09, Ricardo Wurmus wrote: >> + (alist-cons-before >> + 'install 'prepare-out >> + (lambda _ >> + (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")) >> + (mkdir-p (string-append (assoc-ref %outputs "out") >> "/include"))) > > Could you note that README.txt states that "These directories must > already exist"? I will add a note. >> + (inputs >> + `(("tbb" ,tbb) >> + ("lapack" ,lapack) >> + ("atlas" ,atlas))) > > It appears from the #:make-flags that only the blas library is used. > Are both "lapack" and "atlas" required? Or would just one suffice? You are right: it builds fine with just "lapack". I'll remove "atlas" from the inputs. Thanks for the review! Attached is a new version of the patch. ~~ Ricardo --=-=-= Content-Type: text/x-patch Content-Disposition: inline; filename="0001-gnu-Add-SuiteSparse.patch" >From fecf2890397ef697fa3a0110555e99816e444449 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 10 Mar 2015 11:32:48 +0100 Subject: [PATCH] gnu: Add SuiteSparse. * gnu/packages/maths.scm (suitesparse): New variable. --- gnu/packages/maths.scm | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index b6d3ed3..b253850 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -62,6 +62,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages readline) + #:use-module (gnu packages tbb) #:use-module (gnu packages tcsh) #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) @@ -1065,6 +1066,60 @@ Fresnel integrals, and similar related functions as well.") ;; public domain software. (license (list license:expat license:public-domain)))) +(define-public suitesparse + (package + (name "suitesparse") + (version "4.4.3") + (source + (origin + (method url-fetch) + (uri (string-append + "http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-" + version ".tar.gz")) + (sha256 + (base32 + "100hdzr0mf4mzlwnqpmwpfw4pymgsf9n3g0ywb1yps2nk1zbkdy5")))) + (build-system gnu-build-system) + (arguments + '(#:parallel-build? #f ;cholmod build fails otherwise + #:tests? #f ;no "check" target + #:make-flags + (list "CC=gcc" + "BLAS=-lblas" + "TBB=-ltbb" + "CHOLMOD_CONFIG=-DNPARTITION" ;required when METIS is not used + (string-append "INSTALL_LIB=" + (assoc-ref %outputs "out") "/lib") + (string-append "INSTALL_INCLUDE=" + (assoc-ref %outputs "out") "/include")) + #:phases + (alist-cons-before + 'install 'prepare-out + ;; README.txt states that the target directories must exist prior to + ;; running "make install". + (lambda _ + (mkdir-p (string-append (assoc-ref %outputs "out") "/lib")) + (mkdir-p (string-append (assoc-ref %outputs "out") "/include"))) + ;; no configure script + (alist-delete 'configure %standard-phases)))) + (inputs + `(("tbb" ,tbb) + ("lapack" ,lapack))) + (home-page "http://faculty.cse.tamu.edu/davis/suitesparse.html") + (synopsis "Suite of sparse matrix software") + (description + "SuiteSparse is a suite of sparse matrix algorithms, including: UMFPACK, +multifrontal LU factorization; CHOLMOD, supernodal Cholesky; SPQR, +multifrontal QR; KLU and BTF, sparse LU factorization, well-suited for circuit +simulation; ordering methods (AMD, CAMD, COLAMD, and CCOLAMD); CSparse and +CXSparse, a concise sparse Cholesky factorization package; and many other +packages.") + ;; LGPLv2.1+: + ;; AMD, CAMD, BTF, COLAMD, CCOLAMD, CSparse, CXSparse, KLU, LDL + ;; GPLv2+: + ;; GPUQREngine, RBio, SuiteSparse_GPURuntime, SuiteSparseQR, UMFPACK + (license (list license:gpl2+ license:lgpl2.1+)))) + (define-public atlas (package (name "atlas") -- 2.1.0 --=-=-=--