forked from spack/spack
-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: Update MAPL and other GEOS-ESM packages #174
Closed
mathomp4
wants to merge
50
commits into
JCSDA:jcsda_emc_spack_stack
from
GMAO-SI-Team:feature/mathomp4/update-add-gfe-mapl
Closed
Changes from all commits
Commits
Show all changes
50 commits
Select commit
Hold shift + click to select a range
1434223
Update GFE and MAPL packages
mathomp4 dd12538
Add FLAP
mathomp4 5e969bc
Bring back old yafyaml
mathomp4 5fdccf7
Try and fix up CI issues
mathomp4 7a88dd0
Fix more formatting issues
mathomp4 a1a5dbc
Fix more formatting issues. Again.
mathomp4 bff5c07
Hopefully final style issue
mathomp4 7c3c89c
Split msg in hopes of passing CI
mathomp4 d157dc1
Make msg small
mathomp4 45f3e4a
Fix up depends_on
mathomp4 2b0073c
Add mepo
mathomp4 4374475
Add 32bit option to FMS
mathomp4 75f5978
Add python and perl as prereqs of MAPL
mathomp4 024e0e6
Add geosgcm package
mathomp4 1802f57
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 37ad170
Update for beta
mathomp4 e76cffb
Update fargparse
mathomp4 1d2b1e5
Update pfunit
mathomp4 bb74cdb
Add esmf 8.4.0
mathomp4 eda087a
Update versions in MAPL
mathomp4 64f9a62
Add GEOSgcm v10.23.1
mathomp4 d6159e0
Update mepo
mathomp4 77bb746
Move GFE packages from jcsda-emc to builtin
mathomp4 639cf7b
Add tclune, remove kgerheiser
mathomp4 ef144c0
Make tclune prime maintainer
mathomp4 c66c45f
update geosgcm package
mathomp4 a617cb9
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 11cd1a9
Fix v3.3.0
mathomp4 8d0c71d
Update MAPL versions
mathomp4 fb3c55e
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 bbb982a
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 fe7ef86
cleanup esmf
mathomp4 871a4f5
Add MAPL 2.34
mathomp4 00a9498
Add mepo 1.48
mathomp4 c5da6c6
Update geosgcm package
mathomp4 274a664
Pull in @bd4 pfunit changes from mainline spack
mathomp4 afe0a5f
Update fms comment
mathomp4 0249644
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 fff78c5
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 c1b264c
Update mapl versions
mathomp4 1b1cce2
Move geosgcm to use complete tarball
mathomp4 866633f
Move to jcsda esmf package
mathomp4 83bd44d
Move to spack mainline pfunit
mathomp4 909df35
Revert back to older pfunit package
mathomp4 e37cfee
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 d61ce82
Fixes to allow pfunit variant to build
mathomp4 9cea6e3
Add latest geosgcm version
mathomp4 3febd00
Add list_url for mapl
mathomp4 8662c6b
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 84e6e16
Merge branch 'jcsda_emc_spack_stack' into feature/mathomp4/update-add…
mathomp4 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other | ||
# Spack Project Developers. See the top-level COPYRIGHT file for details. | ||
# | ||
# SPDX-License-Identifier: (Apache-2.0 OR MIT) | ||
|
||
|
||
from spack.package import * | ||
|
||
|
||
class Flap(CMakePackage): | ||
"""Fortran command Line Arguments Parser for poor people""" | ||
|
||
homepage = "https://github.com/mathomp4/FLAP" | ||
url = "https://github.com/mathomp4/FLAP/archive/refs/tags/geos/v1.10.0.tar.gz" | ||
git = "https://github.com/mathomp4/FLAP.git" | ||
|
||
maintainers = ["mathomp4"] | ||
|
||
version("geos", branch="geos", submodules=True) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other | ||
# Spack Project Developers. See the top-level COPYRIGHT file for details. | ||
# | ||
# SPDX-License-Identifier: (Apache-2.0 OR MIT) | ||
|
||
from spack.package import * | ||
|
||
|
||
class Geosgcm(CMakePackage): | ||
""" | ||
GEOS Earth System Model GEOSgcm Fixture | ||
""" | ||
|
||
homepage = "https://github.com/GEOS-ESM/GEOSgcm" | ||
url = "https://github.com/GEOS-ESM/GEOSgcm/releases/download/v10.25.0/GEOSgcm-v10.25.0.COMPLETE.tar.xz" | ||
git = "https://github.com/GEOS-ESM/GEOSgcm.git" | ||
|
||
maintainers = ["mathomp4", "tclune"] | ||
|
||
def url_for_version(self, version): | ||
url_base = "https://github.com/GEOS-ESM/GEOSgcm/releases/download/" | ||
url = url_base + "v{0}/GEOSgcm-v{0}.COMPLETE.tar.xz" | ||
|
||
return url.format(version) | ||
|
||
version("main", branch="main") | ||
|
||
version("10.25.1", sha256="f541dc38163c554177c21746999e8cd9fb2daa127de1a4171ef82ac1a536fa2f") | ||
version("10.25.0", sha256="08887ca652387d51d92e62fd16c0944e6c2a53513abb081cc1150a28d128c4c3") | ||
version("10.24.0", sha256="59e35b446f258a36ba41f753c5724eb08c7cd0ccbafca1cfb329419cac045e24") | ||
version("10.23.3", sha256="131585394b2ece57af7585247e73d7bff6e27c42daa40cd05b47f90a471d06cf") | ||
version("10.23.2", sha256="0f3adb6f65e57cab372bbf1e00b4fcd5d6e7009d4851d4968d2f4c87345a43ec") | ||
version("10.23.1", sha256="6469331858ef005bf0d8eb90fe1c4d7b37648bebc0529a32284a0ceaf8d9274f") | ||
version("10.23.0", sha256="99579429f6116e4f4e82587f423132dc896f7cfd336499487094ddeb227b450a") | ||
|
||
variant("f2py", default=False, description="Build with f2py support") | ||
variant("extdata2g", default=True, description="Use ExtData2G") | ||
|
||
variant( | ||
"build_type", | ||
default="Release", | ||
description="The build type to build", | ||
values=("Debug", "Release", "Aggressive"), | ||
) | ||
|
||
depends_on("cmake@3.17:") | ||
depends_on("mpi") | ||
depends_on("ecbuild") | ||
|
||
# These are for MAPL AGC and stubber | ||
depends_on("python@3:") | ||
depends_on("py-pyyaml") | ||
depends_on("perl") | ||
|
||
# These are similarly the dependencies of MAPL. Not sure if we'll ever use MAPL as library | ||
depends_on("hdf5") | ||
depends_on("netcdf-c@4.9.0:") | ||
depends_on("netcdf-fortran@4.6.0:") | ||
depends_on("esmf@8.4.0:") | ||
depends_on("gftl@1.5.5:") | ||
depends_on("gftl-shared@1.3.1:") | ||
depends_on("yafyaml@1.0.4:", when="+extdata2g") | ||
depends_on("pflogger@1.9.1:") | ||
depends_on("fargparse@1.4.1:") | ||
depends_on("flap@geos") | ||
|
||
# MAPL as library would be like: | ||
# depends_on("mapl@2.34:+flap+pflogger+extdata2g+fargparse") | ||
# but we don't want to do this in general due to the speed of MAPL development | ||
|
||
# When we move to FMS as library, we'll need to add this: | ||
#depends_on("fms@2022.04:~gfs_phys+fpic~quad_precision+32bit+64bit+yaml constants=GEOS") | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. When the time comes, we'll need a way to describe the different variants in the module names (not now!), e.g. |
||
|
||
def cmake_args(self): | ||
args = [ | ||
self.define_from_variant("USE_F2PY", "f2py"), | ||
self.define_from_variant("USE_EXTDATA2G", "extdata2g"), | ||
self.define("CMAKE_MODULE_PATH", self.spec["esmf"].prefix.cmake), | ||
"-DCMAKE_C_COMPILER=%s" % self.spec["mpi"].mpicc, | ||
"-DCMAKE_CXX_COMPILER=%s" % self.spec["mpi"].mpicxx, | ||
"-DCMAKE_Fortran_COMPILER=%s" % self.spec["mpi"].mpifc, | ||
] | ||
|
||
return args |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other | ||
# Spack Project Developers. See the top-level COPYRIGHT file for details. | ||
# | ||
# SPDX-License-Identifier: (Apache-2.0 OR MIT) | ||
|
||
from spack.package import * | ||
|
||
|
||
class Mepo(Package): | ||
""" | ||
Tool to manage (m)ultiple git r(epo)sitories | ||
""" | ||
|
||
homepage = "https://github.com/GEOS-ESM/mepo/" | ||
url = "https://github.com/GEOS-ESM/mepo/archive/refs/tags/v1.47.0.tar.gz" | ||
|
||
maintainers = ['mathomp4'] | ||
|
||
# retrieved with spack checksum mepo@x.y.z | ||
version("1.48.0", sha256="df873e2b9c6f63bd7c3e31a6656980660af22cbe48db39c80c1b54feb0c98043") | ||
version("1.47.0", sha256="5e9484f4cd5d2c7c6a84954e949ce78cf94b0a709779f586ecbd17d50920f2ff") | ||
version("1.46.0", sha256="bf4dc62807b82f0ddc110a9e188141a70eb3e5207121b26519dcef39938d6c52") | ||
version('1.45.0', sha256='276ca8eb12f7bd9e5117a7f7a2596147456b7db05dbe93f5cd778da0b2ed80de') | ||
|
||
depends_on('python@3.9:', type=('run')) | ||
depends_on('py-pyyaml', type=('run')) | ||
|
||
def install(self, spec, prefix): | ||
install_tree(self.stage.source_path, prefix) | ||
|
||
def setup_run_environment(self, env): | ||
env.prepend_path('PATH', self.prefix) |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Instead of this we should pull in the updates from https://github.com/spack/spack/blob/develop/var/spack/repos/builtin/packages/fms/package.py (can be a separate PR so you don't have to deal with it)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can do this if you like
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@climbfuji If you can, please. I have a PR in to spack mainline to update some other GFE packages.
It's also possible we might want to wait for the ESMF PR from @theurich before pulling in spack? Not sure.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, I will say I tried using the newer spack
maintainers()
function in this PR but spack wasn't happy. It's possible my spack was old?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We haven't yet pulled that functionality from main spack, so with NOAA-EMC spack it will yell at you about the function being undefined :)