From patchwork Fri Aug 11 12:15:28 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?Ludovic_Court=C3=A8s?= X-Patchwork-Id: 52744 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 B19A827BBE2; Fri, 11 Aug 2023 13:17:34 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 447CE27BBE9 for ; Fri, 11 Aug 2023 13:17:32 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qUR4n-000157-O4; Fri, 11 Aug 2023 08:17:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qUR4h-00014b-Pe for guix-patches@gnu.org; Fri, 11 Aug 2023 08:17:05 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qUR4h-00057Q-Gz for guix-patches@gnu.org; Fri, 11 Aug 2023 08:17:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qUR4g-0005Va-C7; Fri, 11 Aug 2023 08:17:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#65227] [PATCH] gnu: libflame: Update to 70c19e7. Resent-From: Ludovic =?utf-8?q?Court=C3=A8s?= Original-Sender: "Debbugs-submit" Resent-CC: andreas@enge.fr, efraim@flashner.co.il, bavier@posteo.net, guix-patches@gnu.org Resent-Date: Fri, 11 Aug 2023 12:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 65227 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 65227@debbugs.gnu.org Cc: Florent Pruvost , Ludovic =?utf-8?q?Court?= =?utf-8?q?=C3=A8s?= , Efraim Flashner , Andreas Enge , Efraim Flashner , Eric Bavier X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Andreas Enge , Efraim Flashner , Eric Bavier Received: via spool by submit@debbugs.gnu.org id=B.169175617521106 (code B ref -1); Fri, 11 Aug 2023 12:17:02 +0000 Received: (at submit) by debbugs.gnu.org; 11 Aug 2023 12:16:15 +0000 Received: from localhost ([127.0.0.1]:45113 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qUR3v-0005UM-9E for submit@debbugs.gnu.org; Fri, 11 Aug 2023 08:16:15 -0400 Received: from lists.gnu.org ([2001:470:142::17]:52104) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qUR3q-0005U4-H7 for submit@debbugs.gnu.org; Fri, 11 Aug 2023 08:16:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qUR3i-0000vc-C8 for guix-patches@gnu.org; Fri, 11 Aug 2023 08:16:02 -0400 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qUR3W-0004wA-7z; Fri, 11 Aug 2023 08:15:58 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-Version:Date:Subject:To:From:in-reply-to: references; bh=XHUDBUeJyQyg7dIyRdhftfBATx0jjDJrt7fg3jhHFbg=; b=qGAsDWtd2BuS1g HiWg/TIoxswSCsleSN2Z0IG4QakqrDYiAVv8Knhv4j4x2jdKF+BFTqEqzhQo6jQ0W/nV0+r0baF57 aOdLGGBl1q2FzHXzKpgA3b0WzT7rEtBATdvjUlEuS5H8+DNdNmnnCv5ve2E88ZJwaAEH5ZEUUrm/Z 4Feu1yd3p4fAyC/BEQPAnAYFDP8CTwD0jgih2WnlWYbIKAMBdIJz4Ii800LbFJ1A+rxGDTKWIDoJC UJm2FntZm1HnrUjyX5Q/sDB0ePhL/JE4G1RB72n2dC+82sNJCNAuxU0eVSzct9OvVS3VrA1fxmzp5 ZW+uDl4Hqj80ZdcS8bmA==; From: Ludovic =?utf-8?q?Court=C3=A8s?= Date: Fri, 11 Aug 2023 14:15:28 +0200 Message-ID: <1e2bf2b94b358533876746b1bbb3e35e73ca9f34.1691755971.git.ludo@gnu.org> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: Ludovic Courtès * gnu/packages/maths.scm (libflame): Update to 70c19e7. [arguments]: Add #:make-flags. --- gnu/packages/maths.scm | 135 +++++++++++++++++++++-------------------- 1 file changed, 69 insertions(+), 66 deletions(-) Hello! This updates libflame to a current commit, which in turn allows us to use it as a dependency of 'lapack'. Any objections, Efraim? Thanks, Ludo'. base-commit: 56fddefc6de3b0c1f2ccb9559d86ba08d2e429b9 diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 420f1894f3..e6e42f21cd 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -2599,78 +2599,81 @@ (define-public libfixmath (license license:expat)))) (define-public libflame - (package - (name "libflame") - (version "5.2.0") - (outputs '("out" "static")) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/flame/libflame") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1n6lf0wvpp77lxqlr721h2jbfbzigphdp19wq8ajiccilcksh7ay")))) - (build-system gnu-build-system) - (arguments - (list #:configure-flags - ;; Sensible defaults: https://github.com/flame/libflame/issues/28 - #~(list "--enable-dynamic-build" - "--enable-max-arg-list-hack" - "--enable-lapack2flame" - "--enable-verbose-make-output" - "--enable-multithreading=pthreads" ; Openblas isn't built with openmp. - #$@(if (target-x86?) - #~("--enable-vector-intrinsics=sse") - #~()) - "--enable-supermatrix" - "--enable-memory-alignment=16" - "--enable-ldim-alignment") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'patch-/usr/bin/env-bash - (lambda _ - (substitute* "build/config.mk.in" - (("/usr/bin/env bash") - (which "bash"))))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (substitute* "test/Makefile" - (("LIBBLAS .*") - "LIBBLAS = -lblas\n") - (("LIBLAPACK .*") - "LIBLAPACK = -llapack\n")) - (when tests? - (with-directory-excursion "test" - (mkdir "obj") - (invoke "make") - (invoke "./test_libflame.x"))))) - (add-after 'install 'install-static - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (static (assoc-ref outputs "static"))) - (mkdir-p (string-append static "/lib")) - (rename-file (string-append out - "/lib/libflame.a") - (string-append static - "/lib/libflame.a")) - (install-file (string-append out - "/include/FLAME.h") - (string-append static "/include")))))))) - (inputs (list gfortran)) - (native-inputs (list lapack perl python-wrapper)) - (home-page "https://github.com/flame/libflame") - (synopsis "High-performance library for @acronym{DLA, dense linear algebra} computations") - (description "@code{libflame} is a portable library for dense matrix + ;; The latest release (5.2.0) dates back to 2019. Use a newer one, which + ;; among other things provides extra LAPACK symbols, such as 'dgemlq_' + ;; (needed by LAPACKe). + (let ((commit "70c19e770ead0ae846c59b59216deb16d236b40c") + (revision "0")) + (package + (name "libflame") + (version (git-version "5.2.0" revision commit)) + (outputs '("out" "static")) + (home-page "https://github.com/flame/libflame") + (source (origin + (method git-fetch) + (uri (git-reference (url home-page) (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rk8ln5p4yybsws6p60w0vkxbqp53jddv90brlgf60mk6lv51sxl")))) + (build-system gnu-build-system) + (arguments + (list #:configure-flags + ;; Sensible defaults: https://github.com/flame/libflame/issues/28 + #~(list "--enable-dynamic-build" + "--enable-max-arg-list-hack" + "--enable-lapack2flame" + "--enable-verbose-make-output" + "--enable-multithreading=pthreads" ; Openblas isn't built with openmp. + #$@(if (target-x86?) + #~("--enable-vector-intrinsics=sse") + #~()) + "--enable-supermatrix" + "--enable-memory-alignment=16" + "--enable-ldim-alignment") + #:make-flags #~(list "FC=gfortran -fPIC") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-/usr/bin/env-bash + (lambda _ + (substitute* "build/config.mk.in" + (("/usr/bin/env bash") + (which "bash"))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (substitute* "test/Makefile" + (("LIBBLAS .*") + "LIBBLAS = -lblas\n") + (("LIBLAPACK .*") + "LIBLAPACK = -llapack\n")) + (when tests? + (with-directory-excursion "test" + (mkdir "obj") + (invoke "make") + (invoke "./test_libflame.x"))))) + (add-after 'install 'install-static + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (static (assoc-ref outputs "static"))) + (mkdir-p (string-append static "/lib")) + (rename-file (string-append out + "/lib/libflame.a") + (string-append static + "/lib/libflame.a")) + (install-file (string-append out + "/include/FLAME.h") + (string-append static "/include")))))))) + (inputs (list gfortran)) + (native-inputs (list lapack perl python-wrapper)) + (synopsis "High-performance library for @acronym{DLA, dense linear algebra} computations") + (description "@code{libflame} is a portable library for dense matrix computations, providing much of the functionality present in LAPACK, developed by current and former members of the @acronym{SHPC, Science of High-Performance Computing} group in the @url{https://www.ices.utexas.edu/, Institute for Computational Engineering and Sciences} at The University of Texas at Austin. @code{libflame} includes a compatibility layer, @code{lapack2flame}, which includes a complete LAPACK implementation.") - (license license:bsd-3))) + (license license:bsd-3)))) (define-public scasp (let ((commit "89a427aa04ec6346425a40111c99b310901ffe51")