Add ACCESS-ESM3#410
Conversation
…nd pkgconf files for the UM and GCOM
|
Hi @penguian @harshula - this change is ready for review. It adds access-esm3. See pre-release deployment (still running) in ACCESS-NRI/ACCESS-ESM3#2 |
|
This is ready to review @harshula - I guess Paul is on leave |
|
|
||
| def __create_pkgconfig(self, spec, prefix): | ||
|
|
||
| version = self.spec.version.string |
There was a problem hiding this comment.
concretised gcom as:
- s7wxkfa ^gcom@git.6319ae016dcadc192842a06178f3dbd21a8af64f=7.7.1-git.14 cflags='-march=sapphirerapids -mtune=sapphirerapids -unroll' cxxflags='-march=sapphirerapids -mtune=sapphirerapids -unroll' fflags='-march=sapphirerapids -mtune=sapphirerapids -unroll' +mpi build_system=generic commit=6319ae016dcadc192842a06178f3dbd21a8af64f platform=linux os=rocky8 target=x86_64_v4 %c,fortran=intel@2021.10.0
Fails with
==> Error: AttributeError: 'GitVersion' object has no attribute 'string'
The 'gcom' package cannot find an attribute while trying to build from sources. You can fix this by updating the build recipe, and you can also report the issue as a build-error or a bug at https://github.com/spack/spack/issues
/g/data/tm70/as2285/spack/om3-1.1/access-spack-packages/spack_repo/access/nri/packages/gcom/package.py:89, in install:
86 # Do the build with fcm
87 fcm("make", "-f", "fcm-make/gcom.cfg")
88
>> 89 self.__create_pkgconfig(spec, prefix)
90
91 # Install the library
92 mkdirp(prefix.lib)
There was a problem hiding this comment.
Thanks for checking @git.gitref. Please include the conditional from the MOM5 SPR when you need to extract the version.
|
I think all the review comments have been addressed @harshula @penguian
Demo esm3 build: Demo ram3 build (from an svn source): Demo am3 build: |
| # Upstream is missing a pkgconfig file, so create it | ||
| self.__create_pkgconfig(spec, prefix) | ||
|
|
There was a problem hiding this comment.
I wonder if __create_pkgconfig and its definition should be moved from um_base.py to um/package.py?
I think um_createbc is a different program which uses the build method from UmBasePackage. We possibly shouldn't (?) be creating the pkgconfig file for it.
There was a problem hiding this comment.
It should only create the pkgconf file if a um-atmos library is built now. So that is probably an argument to move it to the um pacakge if um_createbc isn't going to be used to build libraries that get installed ?
There was a problem hiding this comment.
Ah thanks I see, yeah I think it makes sense to move it to the um package
Contributes to #212 - this change adds a bundle package for access-esm3, and supports installing UM13 as a library.
This change depends on ACCESS-NRI/access3-share#40 and https://github.com/ACCESS-NRI/UM/pull/132
The CI manifests are only provided as a demo, and ill drop that commit before merging (as there aren't stable versions of the model components to put in the CI manifests yet). GCOM only builds with intel-classic , therefore it's assumed ESM3 only builds with intel-classic (for now)