On 01/15/2013 11:57 AM, Stijn De Weirdt wrote:
3) Is there a versioning scheme for toolchains? Especially for the
EB-provided "goalf" and "ictce" one? In other words, if I locally
modify the "goalf" toolchain to use GCC 4.7 and use the version number
"1.2.0", do I run the risk of seeing it overwritten at the next EB
update?
yes and no. there is one, but not publicly documented atm. but kenneth
and/or jens are better placed to comment on this and they will add
documentation on the wiki. (but 1.2.0 makes sense)
There is a very ad-hoc versioning scheme.
If you bump the GCC version to a new 'major' version (i.e. 4.7 instead
of 4.6), then that would bump the goalf version to 1.2.0 .
In that case, you should probably also check for updates of other
libraries (e.g. ATLAS), and update them as well.
There's no mapping function of version numbers of toolchain elements to
the toolchain version number, at all (we tried that once, and gave up
quickly, too complex to get it right for a useable toolchain versioning
scheme and pretty much useless).
If you want to avoid that your version definition of goalf is redefined
in a future release of the easybuild-easyconfigs package, I suggest you
just create your own toolchain (stupid suggestion: mygoalf). You will
also need to make sure that EasyBuild knows about the new toolchain you
created (see
https://github.com/hpcugent/easybuild/wiki/Compiler-toolchains).
The other option is to compose an easyconfig file for goalf v1.2.0
(with, e.g. GCC 4.7.x), and then issue a pull request for it. Then we
will include it in the next release of easybuild-easyconfigs, and
EasyBuild will be using the exact same definition of goalf v1.2.0 as
defined by you.
regards,
Kenneth