From patchwork Sat Feb 29 15:46:47 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Felix Gruber X-Patchwork-Id: 20475 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 287A827BBE4; Sat, 29 Feb 2020 17:10:35 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,T_DKIM_INVALID,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.2 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 62A6C27BBEA for ; Sat, 29 Feb 2020 17:10:34 +0000 (GMT) Received: from localhost ([::1]:34312 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j85dJ-00085w-Sk for patchwork@mira.cbaines.net; Sat, 29 Feb 2020 12:10:33 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54654) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j8516-0001Cq-53 for guix-patches@gnu.org; Sat, 29 Feb 2020 11:31:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j8514-0002Aj-PV for guix-patches@gnu.org; Sat, 29 Feb 2020 11:31:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:57554) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1j8514-0002AS-Dq for guix-patches@gnu.org; Sat, 29 Feb 2020 11:31:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1j8514-0000qd-Bb for guix-patches@gnu.org; Sat, 29 Feb 2020 11:31:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#39839] [PATCH] gnu: suitesparse: Update to 5.7.1 Resent-From: Felix Gruber Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 29 Feb 2020 16:31:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 39839 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 39839@debbugs.gnu.org Cc: Felix Gruber X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.15829938043120 (code B ref -1); Sat, 29 Feb 2020 16:31:02 +0000 Received: (at submit) by debbugs.gnu.org; 29 Feb 2020 16:30:04 +0000 Received: from localhost ([127.0.0.1]:35294 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j8507-0000oF-KL for submit@debbugs.gnu.org; Sat, 29 Feb 2020 11:30:04 -0500 Received: from lists.gnu.org ([209.51.188.17]:58673) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1j84LD-0007wJ-Ph for submit@debbugs.gnu.org; Sat, 29 Feb 2020 10:47:48 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:50258) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j84LB-0001Cm-QX for guix-patches@gnu.org; Sat, 29 Feb 2020 10:47:47 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j84LA-0000Bn-B1 for guix-patches@gnu.org; Sat, 29 Feb 2020 10:47:45 -0500 Received: from mout02.posteo.de ([185.67.36.66]:53623) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1j84L9-0000BD-Lf for guix-patches@gnu.org; Sat, 29 Feb 2020 10:47:44 -0500 Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id 019BD2400FB for ; Sat, 29 Feb 2020 16:47:40 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1582991261; bh=DDE06OFOtri07NMrGkakungYY0xUqyukc0zYCvtVjWA=; h=From:To:Cc:Subject:Date:From; b=p1mN9m1PHUL/Libr0F1bxT6K9IDe046G6nbGyXPW3qFzzbkUw2EJBzdDo/x8t2YEH sx+l8gPv6kuhhVcyKIy03FOeexqit3jRxwZf6x5T8pwdTZcR2Dyv6TVx4N+Dbecx+E UIP051ZxYbLly4PVHTa6uumE9PbpQ16Wl7iGlCX0eBbwN3zmkYMfT0Cngi505bxIN1 mZsxDwAZw8U+aSNvg+4deaKi63RdPW7VI9+MVNGcQMJU0jXoP4/2E8fZfUPhiF+WI2 UEnqBM/6SH04wE5nUFYCyjOCyRSgRcfR9mQAVxqvvvuoEsUUh/88ehqzdnm6BFjpZU yM8nkiw66HgCQ== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 48V9lb5ycNz9rxH; Sat, 29 Feb 2020 16:47:39 +0100 (CET) From: Felix Gruber Date: Sat, 29 Feb 2020 16:46:47 +0100 Message-Id: <20200229154647.104674-1-felgru@posteo.net> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Mailman-Approved-At: Sat, 29 Feb 2020 11:30:02 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-Mailman-Approved-At: Sat, 29 Feb 2020 12:10:27 -0500 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/math.scm (suitesparse): Update to 5.7.1 [source]: The latest releases of SuiteSparse have only been published on GitHub. Fetch from git tag as GitHub releases page only contains autogenerated tarballs that guix lint complains about. [patches]: add patch for Mongoose's CMakeList.txt to find SuiteSparse_config. [arguments]: Add cmake flags used by new components GraphBLAS and Mongoose. [native-inputs]: add cmake and m4 needed to build GraphBLAS and Mongoose. --- gnu/packages/maths.scm | 26 ++++++++++++++----- .../patches/suitesparse-mongoose-cmake.patch | 18 +++++++++++++ 2 files changed, 38 insertions(+), 6 deletions(-) create mode 100644 gnu/packages/patches/suitesparse-mongoose-cmake.patch diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index cab84a520b..cee626f179 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -34,6 +34,7 @@ ;;; Copyright © 2019 Steve Sprang ;;; Copyright © 2019 Robert Smith ;;; Copyright © 2020 Jakub Kądziołka +;;; Copyright © 2020 Felix Gruber ;;; ;;; This file is part of GNU Guix. ;;; @@ -3405,16 +3406,18 @@ Fresnel integrals, and similar related functions as well.") (define-public suitesparse (package (name "suitesparse") - (version "4.5.5") + (version "5.7.1") (source (origin - (method url-fetch) - (uri (string-append - "http://faculty.cse.tamu.edu/davis/SuiteSparse/SuiteSparse-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/DrTimothyAldenDavis/SuiteSparse.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1dnr6pmjzc2qmbkmb4shigx1l74ilf6abn7svyd6brxgvph8vadr")) + "174p3l78kv9gaa0i5hflyai2ydwnjzh34k9938sl4aa3li0543s8")) + (patches (search-patches "suitesparse-mongoose-cmake.patch")) (modules '((guix build utils))) (snippet ;; Remove bundled metis source @@ -3429,6 +3432,14 @@ Fresnel integrals, and similar related functions as well.") "BLAS=-lblas" "TBB=-ltbb" "MY_METIS_LIB=-lmetis" + ;; Flags for cmake (only GraphBLAS and Mongoose) + (string-append "CMAKE_OPTIONS=-DCMAKE_INSTALL_PREFIX=" + (assoc-ref %outputs "out") + " -DCMAKE_VERBOSE_MAKEFILE=ON" + " -DCMAKE_C_FLAGS_RELEASE=\"$(CFLAGS) $(CPPFLAGS)\"" + " -DCMAKE_CXX_FLAGS_RELEASE=\"$(CXXFLAGS) $(CPPFLAGS)\"" + " -DCMAKE_SKIP_RPATH=TRUE" + " -DCMAKE_BUILD_TYPE=Release") (string-append "INSTALL_LIB=" (assoc-ref %outputs "out") "/lib") (string-append "INSTALL_INCLUDE=" @@ -3441,6 +3452,9 @@ Fresnel integrals, and similar related functions as well.") `(("tbb" ,tbb) ("lapack" ,lapack) ("metis" ,metis))) + (native-inputs + `(("cmake" ,cmake) + ("m4" ,m4))) (home-page "http://faculty.cse.tamu.edu/davis/suitesparse.html") (synopsis "Suite of sparse matrix software") (description diff --git a/gnu/packages/patches/suitesparse-mongoose-cmake.patch b/gnu/packages/patches/suitesparse-mongoose-cmake.patch new file mode 100644 index 0000000000..e224d73a30 --- /dev/null +++ b/gnu/packages/patches/suitesparse-mongoose-cmake.patch @@ -0,0 +1,18 @@ +diff --git a/Mongoose/CMakeLists.txt b/Mongoose/CMakeLists.txt +index 7e134ab..76fa9e2 100644 +--- a/Mongoose/CMakeLists.txt ++++ b/Mongoose/CMakeLists.txt +@@ -148,10 +148,10 @@ set(CMAKE_CXX_STANDARD 11) + #set(CMAKE_CXX_STANDARD_REQUIRED ON) + + # determine which SuiteSparse_config to use +-if (EXISTS ${PROJECT_SOURCE_DIR}/../SuiteSparse_config) +- message(STATUS "External ../SuiteSparse_config" ${BoldBlue} " found" ${ColourReset} ".") ++if (EXISTS ${CMAKE_INSTALL_PREFIX}) ++ message(STATUS "External SuiteSparse_config" ${BoldBlue} " found" ${ColourReset} ".") + set ( SUITESPARSE_CONFIG_DIR ${PROJECT_SOURCE_DIR}/../SuiteSparse_config ) +- link_directories ( ${PROJECT_SOURCE_DIR}/../lib ) ++ link_directories ( ${CMAKE_INSTALL_PREFIX}/lib ) + message ( STATUS "Note: ../SuiteSparse_config must be compiled before compiling Mongoose" ) + set ( SUITESPARSE_CONFIG_LIBRARY suitesparseconfig ) + else ()