Unified environment updates for Intel and netcdf-c#221
Conversation
25f0a0a to
0ca74ed
Compare
…pack into feature/unified-dev-intel-18
|
@climbfuji any platform you'd like this tested on specifically? should i just ensure i can build nco and cdo w/ intel-18 and that netcdf-c/4.9.1 builds ok (also with intel-18?) ? |
Not for the purpose of this PR. We'll do the full installs and testing in a follow-up PR (needs updates to site configs etc). Note also that we rolled back netcdf-c to 4.9.0 because the UFS crashes with 4.9.1. |
|
@climbfuji gotcha. glad to see the nco/cdo fixes for the intel 18 issue. will approve. |
| # New byte-range I/O option doesn't compile with 4.9.1, will be fixed in 4.9.2 | ||
| # https://github.com/Unidata/netcdf-c/issues/2614 | ||
| variant("byterange", default=False, description="Allow byte-range I/O", when="@4.9.1") | ||
| variant("byterange", default=True, description="Allow byte-range I/O", when="@4.9.2:") |
There was a problem hiding this comment.
As long as we're at it, how about adding variant("byterange", default=False, description="Allow byte-range I/O", when="@4.7.0:4.9.0")? In any case I would lean toward setting it default=False because it's off by default in the build system itself (both configure and cmake).
There was a problem hiding this comment.
Yes, I agree. I didn't know that it was available in 4.7.0 already. I'll make the change as follows (not that it goes up to 4.9.1):
variant("byterange", default=False, description="Allow byte-range I/O", when="@4.7.0:4.9.1")
variant("byterange", default=True, description="Allow byte-range I/O", when="@4.9.2:")
There was a problem hiding this comment.
Very annoying, but for some reason the above suggestion makes +byterange the default, even for 4.9.0. Looks like you convinced me, for now I'll just use
variant("byterange", default=False, description="Allow byte-range I/O", when="@4.7.0:")
and we deal with enabling it for newer versions later.
| spec = self.spec | ||
| return ["--{0}-doc".format("enable" if "+doc" in spec else "disable")] | ||
|
|
||
| config_args = ["--{0}-doc".format("enable" if "+doc" in spec else "disable")] |
There was a problem hiding this comment.
Minor nitpick: I think this could be "self.enable_or_disable". Feel free to disregard.
… to global-workflow-env
|
Thanks @AlexanderRichert-NOAA. I tested this locally on my macOS, and in order to avoid duplicates I had to enable the |
|
The spack unit tests all passed, merging. |
Description
This PR contains updates for
cdoandncoto build with Intel and fornetcdf-cto avoid a compiler bug in the byterange I/O code for version 4.9.1.This PR is needed for the unified environment. For testing, see JCSDA/spack-stack#454
Fixes JCSDA/spack-stack#468