Subject: [bug#33059] [PATCH v2 0/9] Add the FEniCS Project, v2 patches

From: Paul Garlick <[email-masked]>
Date: Mon, 12 Nov 2018 16:00:32 +0000

Hi Efraim, Hi Eric, Hi Ludo,

Thank you for your comments on the patch series for the FEniCS Project
packages.  I have been able to make changes to address all of the
suggestions with one exception, noted below.

The main differences between the original and v2 patches are:

i) python-mpi4py is now part of (gnu packages mpi)
ii) python-petsc4py is now part of (gnu packages maths)
iii) python-slepc4py is now part of (gnu packages maths)
iv) temporary directory changes use 'with-directory-excursion'
v) 'substitute*' is used in preference to 'with-atomic-file-replacement'
vi) the Guix 'catch' package is used in preference to the bundled version
vii) the 'python-fenics-dolfin' package has been renamed 'fenics'
viii) the 'fenics' package has an updated home-page and synopsis

The remaining suggestion was in the 'fenics-dolfin' package:

> +                   (string-append
> +                    "set(CTEST_CUSTOM_TESTS_IGNORE "
> +                    "demo_bcs_serial "
> +                    "demo_bcs_mpi "
> +                    "demo_eigenvalue_serial "
> +                    "demo_eigenvalue_mpi "
> +                    "demo_navier-stokes_serial "

> Could we avoid listing all the files here?

I tried a few ideas to avoid listing the demos to ignore.  These are the ones
with the 'git-lfs' links.  However, this proved to be awkward.

The source code lists the demos that cmake expects to be present.  So, one
may either make a list of demos to ignore (as in the original patch) or delete
the same members from a list to include (plus delete the subdirectories
themselves).  Simply deleting the subdirectories from the build directory does
not work.  Since they exist as Makefile targets they are re-created by the
'make demos' step.

I think the original method is preferable.  An advantage is that users may
readily access the demos if they are using Guix on a host system that has
a git-lfs package available.

Best regards,

Paul.

Paul Garlick (9):
  gnu: Add python-mpi4py.
  gnu: Add python-petsc4py.
  gnu: Add python-slepc4py.
  gnu: Add python-fenics-dijitso.
  gnu: Add python-fenics-ufl.
  gnu: Add python-fenics-fiat.
  gnu: Add python-fenics-ffc.
  gnu: Add fenics-dolfin.
  gnu: Add fenics.

 gnu/packages/maths.scm      |  72 +++++++
 gnu/packages/mpi.scm        |  42 ++++
 gnu/packages/simulation.scm | 490 +++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 603 insertions(+), 1 deletion(-)

-- 
1.8.3.1