[easybuild] RE: specific toolchain for CMake needed?

2017-08-15 Thread Vanzo, Davide
Hi Marteen,

Welcome to the club!

In our cluster we provide CMake at the GCCcore level. In this way we have a 
single install for a given version of the foss and intel toolchains, since they 
both share the GCCcore toolchain. I cannot foresee any significant issue in 
building it with the dummy toolchain but we prefer to limit as much as possible 
the software installed at that level.

One good reason for this is that, if you are using minimal toolchains,  EB does 
not look for available dependencies in the dummy toolchain by default. This can 
be overridden either in the dependency specification in the easyconfig or 
through the --add-dummy-to-minimal-toolchains option.

For all the other dependencies that provide libraries, we build them at the 
GCCcore level so that we have single install for both foss and intel toolchains 
since they are binary compatible. The only exception are libraries that may 
show different performances if built with a specific compiler (not all 
compilers optimize at the same way), like math libraries. In this case we 
prefer to build them with the GCC or iccifort toolchains.

--
Davide Vanzo, PhD
Application Developer
Adjunct Assistant Professor of Chemical and Biomolecular Engineering
Advanced Computing Center for Research and Education (ACCRE)
Vanderbilt University - Hill Center 201
(615)-875-9137
www.accre.vanderbilt.edu


On 2017-08-15 14:12:40-05:00 Maarten Bosmans wrote:

Hi List,



I'm trying to get to know EasyBuild. So far there's been lots of little 
surprises and frustrations, but as I'm slowly getting used to the whole system, 
it looks like a nice way to manage building (scientific) software from source.



A couple of things I still do not fully understand. One of them is why build 
tools like CMake and M4 are recompiled for each toolchain. In most easyconfigs 
where CMake is in the builddependencies it is specified without toolchain. So 
it seems that the installation of toolchain-specific CMakes is mainly because 
the limited availability of CMake easyconfigs using the dummy toolchain. Am I 
missing something, or would it make more sense to make an easyconfig for each 
CMake version using the dummy toolchain and not for other toolchains?



The same thing goes for flex and bison, but these packages actually have a lib 
part, so for some use cases it could actually make sense to predicate their 
version on the toolchain.



Maarten Bosmans


[easybuild] specific toolchain for CMake needed?

2017-08-15 Thread Maarten Bosmans
Hi List,


I'm trying to get to know EasyBuild. So far there's been lots of little 
surprises and frustrations, but as I'm slowly getting used to the whole system, 
it looks like a nice way to manage building (scientific) software from source.


A couple of things I still do not fully understand. One of them is why build 
tools like CMake and M4 are recompiled for each toolchain. In most easyconfigs 
where CMake is in the builddependencies it is specified without toolchain. So 
it seems that the installation of toolchain-specific CMakes is mainly because 
the limited availability of CMake easyconfigs using the dummy toolchain. Am I 
missing something, or would it make more sense to make an easyconfig for each 
CMake version using the dummy toolchain and not for other toolchains?


The same thing goes for flex and bison, but these packages actually have a lib 
part, so for some use cases it could actually make sense to predicate their 
version on the toolchain.


Maarten Bosmans