On 20/12/2017 08:31, Åke Sandgren wrote:
On 12/20/2017 08:17 AM, Kenneth Hoste wrote:
On 11/12/2017 16:30, Erik Smeets wrote:
Hi,
The strict versioning scheme now is both a blessing and a curse: it's a
way of communicating that a particular combinations of versions worked,
but it does result in unwanted side-effects (e.g. N different versions
of CMake installed, even for a single toolchain).
Getting less strict version specifications correct is *a lot* more work,
regardless of the requirement implementation in the EasyBuild framework
to support it.
That being said: I'm certainly not opposing this, but once someone
implements this ;-) we will need to be careful how we use it, to avoid
shooting ourselves in the foot.
I would actually prefer if EB stays with strict versioning.
I don't care about lots of builds for a library or cmake or whatever,
even when i have to manually make new ones. So I would oppose this if
given the chance.
The --try-software-version and --try-toolchain(-version) options is what
you want to use more often (and combining them too). Although the
dependency on GCCcore and specific binutils versions has made
--try-toolchain-version a bit less useful.
Using non-strict versioning is a tempting idea but will in the long run
just cause LOTS of bigger problems.
What would be much more interesting, to me at least, is the extended
easyconfig format that has been discussed from time to time, allowing
for things generic site-changes to specific easyconfig, like for us,
impi, openmpi, scalapack, openblas, matlab allinea forge, and probably a
bunch of others.
I'd consider that a much more important target.
That should be partially solved with the news hooks support in EasyBuild
v3.5.0, see [1] .
At least it gives you the possibility to tweak easyconfigs before
EasyBuild uses them to install stuff with.
In fact, I feel it's even better than having support for easyconfig
patch files (*.ebp, see [2]),
since you can keep all customizations in a single file, with logic
around them checking on things...
The improved easyconfig file format is still a goal, but there's an
utter lack of time to work on it from my side.
Support for the format itself is almost done, but there's a lot more to
it (enhancing the 'eb' command line to leverage those easyconfig files,
working on a transition to the new format, etc.).
regards,
Kenneth
[1] http://easybuild.readthedocs.io/en/latest/Hooks.html
[2] https://github.com/easybuilders/easybuild-framework/issues/544