From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:36616) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gMEhE-0004LG-Jd for guix-patches@gnu.org; Mon, 12 Nov 2018 11:04:19 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gMEh8-0004kc-Nd for guix-patches@gnu.org; Mon, 12 Nov 2018 11:04:13 -0500 Received: from debbugs.gnu.org ([208.118.235.43]:44004) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gMEh1-0004g0-MW for guix-patches@gnu.org; Mon, 12 Nov 2018 11:04:06 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gMEh1-0000zd-Hi for guix-patches@gnu.org; Mon, 12 Nov 2018 11:04:03 -0500 Subject: [bug#33059] [PATCH v2 4/9] gnu: Add python-fenics-dijitso. Resent-Message-ID: From: Paul Garlick Date: Mon, 12 Nov 2018 16:00:36 +0000 Message-Id: <1542038441-5738-5-git-send-email-pgarlick@tourbillion-technology.com> In-Reply-To: <1542038441-5738-1-git-send-email-pgarlick@tourbillion-technology.com> References: <87k1m7vvjp.fsf@gnu.org> <1542038441-5738-1-git-send-email-pgarlick@tourbillion-technology.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 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: 33059@debbugs.gnu.org, Efraim Flashner , Eric Bavier , Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: Paul Garlick * gnu/packages/simulation.scm (python-fenics-dijitso): New varaible. --- gnu/packages/simulation.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 50 insertions(+), 1 deletion(-) diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index a5b661e..86b1aba 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Paul Garlick +;;; Copyright © 2017, 2018 Paul Garlick ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,6 +22,7 @@ #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) + #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages flex) #:use-module (gnu packages gettext) @@ -35,6 +36,7 @@ #:use-module (gnu packages mpi) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) + #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) @@ -43,6 +45,7 @@ #:use-module (guix download) #:use-module (guix build utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) @@ -221,3 +224,49 @@ with gas/liquid interfaces. Large problems may be split into smaller, connected problems for efficient solution on parallel systems.") (license license:gpl3+) (home-page "https://openfoam.org"))) + +(define-public python-fenics-dijitso + (package + (name "python-fenics-dijitso") + (version "2018.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fenics-dijitso" version)) + (sha256 + (base32 + "1qax2f52qsjbd1h5lk5i5shp448qlakxabjjybrfc1w823p0yql9")))) + (build-system python-build-system) + (inputs + `(("openmpi" ,openmpi) + ("python-numpy" ,python-numpy))) + (native-inputs + `(("python-pytest-cov" ,python-pytest-cov))) + (propagated-inputs + `(("python-mpi4py" ,python-mpi4py))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'build 'mpi-setup + ,%openmpi-setup) + (replace 'check + (lambda _ + (setenv "HOME" "/tmp") + (setenv "PYTHONPATH" + (string-append (getcwd) ":" (getenv "PYTHONPATH"))) + (with-directory-excursion "test" + (invoke "./runtests.sh")) + #t))))) + (home-page "https://bitbucket.org/fenics-project/dijitso/") + (synopsis "Distributed just-in-time building of shared libraries") + (description + "Dijitso provides a core component of the @code{FEniCS} framework, +namely the just-in-time compilation of C++ code that is generated from +Python modules. It is called from within a C++ library, using ctypes +to import the dynamic shared library directly. + +As long as the compiled code can provide a simple factory function to +a class implementing a predefined C++ interface, there is no limit to +the complexity of that interface. Parallel support depends on the +@code{mpi4py} interface.") + (license license:lgpl3+))) -- 1.8.3.1