Thank you Marius and Eric for your reviews and comments.
I have been working through the changes and updating the patch. However, in the process of rebasing I have noticed a change in Guix that impacts on the OpenFOAM definition. Specifically, a recent commit (26599d6) has changed the definition of the scotch package so that it now uses 64bit integers. In a nutshell, this causes a build failure in OpenFOAM.
In OpenFOAM, there is a variable to specify the size of the integer values (32bit or 64bit). This single variable is used by both metis and scotch, meaning that they both have to use 32bit integers or both use 64bit integers. At present, Guix offers a 64bit scotch and a 32bit metis.
A straightforward solution would be to add the extra packages, a 32bit scotch and/or a 64bit metis. For scotch, that would be the same definition, except for the 'INTSIZE64' line. For metis, that would involve an edit of 'metis.h', setting IDXTYPEWIDTH and REALTYPEWIDTH to 64.
Would you prefer this to be the subject of a separate patch, or included in the OpenFOAM patch? There is also a question about how to name the packages; scotch and scotch32, for example, or scotch and scotch-64int etc.
On Mon, 2017-08-14 at 21:49 -0500, Eric Bavier wrote:
Thank you for the patch!