Skip to content

Commit 6cdbb13

Browse files
committed
Work in progress: make ctests work for CRTM
1 parent 2332d63 commit 6cdbb13

1 file changed

Lines changed: 25 additions & 9 deletions

File tree

repos/spack_repo/builtin/packages/crtm/package.py

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class Crtm(CMakePackage):
3131

3232
license("CC0-1.0")
3333

34+
version("3.1.3", sha256="517949c4307d2d2de22d49077551912c55cfd84b226dc55687bc6efc178ae352")
3435
version("3.1.2", sha256="a96598e5611c263fa80d6d6375a12d70d74389b261a8070515a6698e41563281")
3536
version(
3637
"3.1.1-build1", sha256="1ed49e594da5d3769cbaa52cc7fc19c1bb0325ee6324f6057227c31e2d95ca67"
@@ -76,7 +77,8 @@ class Crtm(CMakePackage):
7677
depends_on("fortran", type="build")
7778

7879
depends_on("cmake@3.15:", type="build")
79-
depends_on("git-lfs")
80+
depends_on("cmake@3.20:", when="@3.1.3:", type="build")
81+
depends_on("git-lfs", when="@:3.1.2")
8082
depends_on("netcdf-fortran", when="@2.4.0:")
8183
depends_on("netcdf-fortran", when="@v2.3")
8284
depends_on("netcdf-fortran", when="@v2.4")
@@ -87,6 +89,8 @@ class Crtm(CMakePackage):
8789
depends_on("crtm-fix@2.4.0.1_emc", when="@2.4.0.1 +fix")
8890
depends_on("crtm-fix@3.1.1", when="@3.1.1 +fix")
8991
depends_on("crtm-fix@3.1.2", when="@3.1.2 +fix")
92+
# Note. crtm@3.1.3 uses crtm-fix@3.1.2
93+
depends_on("crtm-fix@3.1.2", when="@3.1.3 +fix")
9094

9195
depends_on("ecbuild", type=("build"), when="@v2.3")
9296
depends_on("ecbuild", type=("build"), when="@v2.4")
@@ -124,6 +128,14 @@ def patch(self):
124128
if not self.run_tests:
125129
filter_file(r"add_subdirectory\(test\)", "# disable testing", "CMakeLists.txt")
126130

131+
@run_before("cmake")
132+
def link_fixed_files(self):
133+
if self.spec.satisfies("@3.1.2: +fix"):
134+
symlink(
135+
join_path(self.spec["crtm-fix"].prefix, "fix"),
136+
join_path(self.stage.source_path, "fix"),
137+
)
138+
127139
@when("@3.1.1-build1")
128140
@run_after("install")
129141
def cmake_config_softlinks(self):
@@ -132,13 +144,17 @@ def cmake_config_softlinks(self):
132144
os.symlink(srcpath, join_path(self.prefix, "cmake", os.path.basename(srcpath)))
133145

134146
def check(self):
135-
skipped_tests = None
136-
# with when("@v2.4.1-jedi.2"):
137-
# skipped_tests = []
138-
147+
# Until issues with fixed data organization are resolved, just run the basic test
139148
ctest = Executable(self.spec["cmake"].prefix.bin.ctest)
140149
with working_dir(self.build_directory):
141-
if skipped_tests:
142-
ctest("--timeout", "120", "-E", "|".join(skipped_tests))
143-
else:
144-
ctest("--timeout", "120")
150+
ctest("--timeout", "120", "-R", "test_check_crtm")
151+
# skipped_tests = None
152+
# # with when("@v2.4.1-jedi.2"):
153+
# # skipped_tests = []
154+
#
155+
# ctest = Executable(self.spec["cmake"].prefix.bin.ctest)
156+
# with working_dir(self.build_directory):
157+
# if skipped_tests:
158+
# ctest("--timeout", "120", "-E", "|".join(skipped_tests))
159+
# else:
160+
# ctest("--timeout", "120")

0 commit comments

Comments
 (0)