From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39682) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ehHBe-0008SF-Ad for guix-patches@gnu.org; Thu, 01 Feb 2018 10:54:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ehHBb-0004yX-5E for guix-patches@gnu.org; Thu, 01 Feb 2018 10:54:06 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:44681) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ehHBa-0004yG-US for guix-patches@gnu.org; Thu, 01 Feb 2018 10:54:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1ehHBa-0007rd-Me for guix-patches@gnu.org; Thu, 01 Feb 2018 10:54:02 -0500 Subject: [bug#30317] [PATCH 1/2] gnu: Add QD. Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:39492) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ehHAd-00087g-SM for guix-patches@gnu.org; Thu, 01 Feb 2018 10:53:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ehHAa-0004Re-PX for guix-patches@gnu.org; Thu, 01 Feb 2018 10:53:03 -0500 Received: from esa2.cray.iphmx.com ([68.232.143.164]:55018) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1ehHAa-0004Qk-Cw for guix-patches@gnu.org; Thu, 01 Feb 2018 10:53:00 -0500 Received: from pe06.us.cray.com (pe06.us.cray.com [172.30.79.74]) by sealmr01.us.cray.com (8.14.3/8.13.8/hubv3-LastChangedRevision: 16250) with ESMTP id w11Fqujc000861 for ; Thu, 1 Feb 2018 07:52:57 -0800 Date: Thu, 1 Feb 2018 09:52:56 -0600 From: Eric Bavier Message-ID: <20180201155256.GM88785@pe06.us.cray.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="u3/rZRmxL6MmkK24" Content-Disposition: inline Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 30317@debbugs.gnu.org --u3/rZRmxL6MmkK24 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hello Guix, Here is a patch that adds the "QD" double-double/quad-double library. -- Eric Bavier, Scientific Libraries, Cray Inc. --u3/rZRmxL6MmkK24 Content-Type: text/x-patch; charset=iso-8859-1 Content-Disposition: attachment; filename="0001-gnu-Add-QD.patch" Content-Transfer-Encoding: 8bit >From d6f9934721b818ce61e17ae60feb638ff57fbc9d Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 31 Jan 2018 13:55:37 -0600 Subject: [PATCH 1/2] gnu: Add QD. * gnu/packages/multiprecision.scm (qd): New variable. --- gnu/packages/multiprecision.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm index b6d2d7f4a..e137fe388 100644 --- a/gnu/packages/multiprecision.scm +++ b/gnu/packages/multiprecision.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2016 Jan Nieuwenhuizen +;;; Copyright © 2018 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ #:use-module (guix licenses) #:use-module (gnu packages) #:use-module (gnu packages m4) + #:use-module (gnu packages gcc) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) @@ -150,3 +152,41 @@ the other hand to obtain accurate results, thanks to multiple precision arithmetic.") (license lgpl2.1+) (home-page "https://perso.ens-lyon.fr/nathalie.revol/software.html"))) + +(define-public qd + (package + (name "qd") + (version "2.3.18") + (source (origin + (method url-fetch) + (uri (string-append "http://crd.lbl.gov/~dhbailey/mpdist/qd-" + version ".tar.gz")) + (sha256 + (base32 + "0vkihcj9fyv2cycq8515713gbs3yskhmivy8bznvx72i6ddnn2c1")))) + (build-system gnu-build-system) + (native-inputs + `(("gfortran" ,gfortran))) + (arguments + `(#:configure-flags `("--disable-enable_fma" ;weird :/ + "--enable-shared" + ,,@(if (string-prefix? "aarch64" + (or (%current-target-system) + (%current-system))) + ;; XXX: The qd_test test fails numerical + ;; accuracy checks for 'dd_real::exp()' on + ;; aarch64 with GCC 5.4 at -O2. Disabling + ;; expensive optimizations lets it pass. + '("CXXFLAGS=-O3 -fno-expensive-optimizations") + '("CXXFLAGS=-O3"))))) + (home-page "http://crd-legacy.lbl.gov/~dhbailey/mpdist/") + (synopsis "Double-double and quad-double library") + (description "This package supports both a double-double +datatype (approx. 32 decimal digits) and a quad-double datatype (approx. 64 +decimal digits). The computational library is written in C++. Both C++ and +Fortran-90 high-level language interfaces are provided to permit one to +convert an existing C++ or Fortran-90 program to use the library with only +minor changes to the source code. In most cases only a few type statements +and (for Fortran-90 programs) read/write statements need to be changed. PSLQ +and numerical quadrature programs are included.") + (license bsd-3))) -- 2.15.1 --u3/rZRmxL6MmkK24--