@@ -20,6 +20,8 @@ class Pfunit(CMakePackage):
2020
2121 maintainers ("mathomp4" , "tclune" )
2222
23+ version ("4.14.0" , sha256 = "3f5fcc79cf5f12ed08eb8e49aff23e0826243b14d4b2b2efee91ce823ac1749d" )
24+ version ("4.13.0" , sha256 = "f4f894faea5cc591f05e071a2bb16ddf613c3c22f88a6dc3b8149f5c4f159548" )
2325 version ("4.12.0" , sha256 = "facbef73b3e225ca552a376d0ec4502881ad0876f706cd0b5cffed8a089b92e4" )
2426 version ("4.11.1" , sha256 = "db954ce44e857fe17cf4212f91223d2ab73248de0c3af405e2e1224f92ed8d42" )
2527 version ("4.10.0" , sha256 = "ee5e899dfb786bac46e3629b272d120920bafdb7f6a677980fc345f6acda0f99" )
@@ -50,44 +52,8 @@ class Pfunit(CMakePackage):
5052 version ("4.1.12" , sha256 = "7d71b0fb996497fe9a20eb818d02d596cd0d3cded1033a89a9081fbd925c68f2" )
5153 version ("4.1.11" , sha256 = "16160bac223aaa3ed2b27e30287d25fdaec3cf6f2c570ebd8d61196e6aa6180f" )
5254 version ("4.1.10" , sha256 = "051c35ad9678002943f4a4f2ab532a6b44de86ca414751616f93e69f393f5373" )
53- version (
54- "3.3.3" ,
55- sha256 = "9f673b58d20ad23148040a100227b4f876458a9d9aee0f0d84a5f0eef209ced5" ,
56- deprecated = True ,
57- )
58- version (
59- "3.3.2" ,
60- sha256 = "b1cc2e109ba602ea71bccefaa3c4a06e7ab1330db9ce6c08db89cfde497b8ab8" ,
61- deprecated = True ,
62- )
63- version (
64- "3.3.1" ,
65- sha256 = "f8f4bea7de991a518a0371b4c70b19e492aa9a0d3e6715eff9437f420b0cdb45" ,
66- deprecated = True ,
67- )
68- version (
69- "3.3.0" ,
70- sha256 = "4036ab448b821b500fbe8be5e3d5ab3e419ebae8be82f7703bcf84ab1a0ff862" ,
71- deprecated = True ,
72- )
73- version (
74- "3.2.10" ,
75- sha256 = "b9debba6d0e31b682423ffa756531e9728c10acde08c4d8e1609b4554f552b1a" ,
76- deprecated = True ,
77- )
78- version (
79- "3.2.9" ,
80- sha256 = "403f9a150865700c8b4240fd033162b8d3e8aeefa265c50c5a6fe14c455fbabc" ,
81- deprecated = True ,
82- )
8355
8456 variant ("mpi" , default = False , description = "Enable MPI" )
85- variant (
86- "use_comm_world" ,
87- default = False ,
88- description = "Enable MPI_COMM_WORLD for testing" ,
89- when = "@:3 +mpi" ,
90- )
9157 variant ("openmp" , default = False , description = "Enable OpenMP" )
9258 variant ("fhamcrest" , default = False , description = "Enable hamcrest support" )
9359 variant ("esmf" , default = False , description = "Enable esmf support" )
@@ -127,9 +93,9 @@ class Pfunit(CMakePackage):
12793 depends_on ("python" , type = ("build" , "run" ))
12894 depends_on ("mpi" , when = "+mpi" )
12995 depends_on ("esmf" , when = "+esmf" )
130- depends_on ("m4" , when = "@4.1.5:" , type = "build" )
96+ depends_on ("m4" , type = "build" )
13197 depends_on (
"[email protected] :" ,
when = "@4.10.0:" )
132- depends_on ("fargparse" , when = "@4:" )
98+ depends_on ("fargparse" )
13399
134100 depends_on (
"[email protected] :3" ,
type = "build" ,
when = "@:4.11" )
135101 depends_on (
"[email protected] :" ,
type = "build" ,
when = "@4.12" )
@@ -138,12 +104,10 @@ class Pfunit(CMakePackage):
138104 # CMake 3.25.0 has an issue with pFUnit
139105 # https://gitlab.kitware.com/cmake/cmake/-/issues/24203
140106 conflicts (
141- 142- when = "@4.0.0:" ,
143- msg = "CMake 3.25.0 has a bug with pFUnit. Please use another version." ,
107+ "^[email protected] " ,
msg = "CMake 3.25.0 has a bug with pFUnit. Please use another version." 144108 )
145109
146- conflicts ("%gcc@:8.3.9" , when = "@4.0.0:" , msg = "pFUnit requires GCC 8.4.0 or newer" )
110+ conflicts ("%gcc@:8.3.9" , msg = "pFUnit requires GCC 8.4.0 or newer" )
147111
148112 # pfunit only works with the Fujitsu compiler from 4.9.0 onwards
149113 conflicts (
@@ -181,32 +145,13 @@ def cmake_args(self):
181145 self .define ("CMAKE_Fortran_MODULE_DIRECTORY" , spec .prefix .include ),
182146 self .define_from_variant ("ENABLE_BUILD_DOXYGEN" , "docs" ),
183147 self .define ("ENABLE_TESTS" , self .run_tests ),
148+ self .define ("SKIP_MPI" , self .spec .satisfies ("~mpi" )),
149+ self .define ("SKIP_OPENMP" , self .spec .satisfies ("~openmp" )),
150+ self .define ("SKIP_FHAMCREST" , self .spec .satisfies ("~fhamcrest" )),
151+ self .define ("SKIP_ESMF" , self .spec .satisfies ("~esmf" )),
152+ self .define_from_variant ("MAX_ASSERT_RANK" , "max_array_rank" ),
184153 ]
185154
186- if spec .satisfies ("@4.0.0:" ):
187- args .extend (
188- [
189- self .define ("SKIP_MPI" , self .spec .satisfies ("~mpi" )),
190- self .define ("SKIP_OPENMP" , self .spec .satisfies ("~openmp" )),
191- self .define ("SKIP_FHAMCREST" , self .spec .satisfies ("~fhamcrest" )),
192- self .define ("SKIP_ESMF" , self .spec .satisfies ("~esmf" )),
193- self .define_from_variant ("MAX_ASSERT_RANK" , "max_array_rank" ),
194- ]
195- )
196- else :
197- if spec .satisfies ("%gcc@10:" ):
198- args .append (
199- self .define ("CMAKE_Fortran_FLAGS_DEBUG" , "-g -O2 -fallow-argument-mismatch" )
200- )
201-
202- args .extend (
203- [
204- self .define_from_variant ("MPI" , "mpi" ),
205- self .define_from_variant ("OPENMP" , "openmp" ),
206- self .define_from_variant ("MAX_RANK" , "max_array_rank" ),
207- ]
208- )
209-
210155 if spec .satisfies ("@:4.2.1" ) and spec .satisfies ("%gcc@5:" ):
211156 # prevents breakage when max_array_rank is larger than default. Note
212157 # that 4.0.0-4.2.1 still had a 512 limit
@@ -249,7 +194,3 @@ def compiler_vendor(self):
249194 if self .spec .satisfies (key ):
250195 return value
251196 raise InstallError ("Unsupported compiler." )
252-
253- def setup_build_environment (self , env : EnvironmentModifications ) -> None :
254- if self .spec .satisfies ("@:3" ):
255- env .set ("F90_VENDOR" , self .compiler_vendor ())
0 commit comments