From 39905a0e5a53912958fe0b312cfc9b7030e2c208 Mon Sep 17 00:00:00 2001 From: Sichao25 Date: Wed, 29 Jul 2026 00:45:53 -0400 Subject: [PATCH 1/7] enable python starting from version 11.2.0 --- .../builtin/packages/omega_h/package.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index 0cef014b256..14731481f8a 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -21,6 +21,11 @@ class OmegaH(CMakePackage, CudaPackage): maintainers("cwsmith") tags = ["e4s"] version("main", branch="main") + version( + "11.2.0-scorec", + commit="6b26c685cf3a62f595d5f21f05deb0525ae48c6f", + git="https://github.com/SCOREC/omega_h.git", + ) version( "11.1.0-scorec", commit="9254be597e6460df497724e11b466485c37e94ff", @@ -87,6 +92,7 @@ class OmegaH(CMakePackage, CudaPackage): variant("gmsh", default=False, description="Use Gmsh C++ API") variant("kokkos", default=False, description="Use Kokkos") variant("cuda", default=False, description="Enable CUDA backend", when="@:10.10.0") + variant('python', default=False, description='enable python interfaces') depends_on("cxx", type="build") depends_on("c", type="build", when="+mpi") @@ -98,6 +104,10 @@ class OmegaH(CMakePackage, CudaPackage): depends_on("trilinos +kokkos+exodus", when="@:11.0.0-scorec+exodus") depends_on("kokkos", when="+kokkos") depends_on("kokkos@4.3.00:", when="@10.10.0-scorec:+kokkos") + depends_on('python', when='+python') + depends_on('py-numpy', type=('build','link','run'), when='+python') + depends_on('py-pybind11', type='build', when='+python') + depends_on("py-pytest", type="test", when='+python') depends_on("zlib-api", when="+zlib") depends_on("seacas~x11~tests~fortran", when="@11.1.0-scorec:+exodus") @@ -108,6 +118,8 @@ class OmegaH(CMakePackage, CudaPackage): msg="Use SEACASExodus directly or via Trilinos, not both", ) + extends("python") + with when("+cuda"): # https://github.com/SCOREC/omega_h/commit/40a2d36d0b747a7147aeed238a0323f40b227cb2 depends_on("cuda@11.4:", when="@10.8.3:") @@ -127,6 +139,8 @@ class OmegaH(CMakePackage, CudaPackage): # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86610 conflicts("%gcc@8:8.2", when="@:9.22.1") + conflicts("+python", when="~shared", msg="python requires shared build") + def patch(self): if "@:9.34.8" in self.spec: filter_file( @@ -175,6 +189,8 @@ def cmake_args(self): args.append("-DOmega_h_USE_Gmsh:BOOL=ON") if "+kokkos" in self.spec: args.append("-DOmega_h_USE_Kokkos:BOOL=ON") + if "+python" in self.spec: + args.append("-DOmega_h_USE_pybind11:BOOL=ON") if "+zlib" in self.spec: args.append("-DOmega_h_USE_ZLIB:BOOL=ON") args.append("-DZLIB_ROOT:PATH={0}".format(self.spec["zlib-api"].prefix)) From 0610d562ac8dfb68dab72b18dddc74c99af13550 Mon Sep 17 00:00:00 2001 From: Sichao25 <54721834+Sichao25@users.noreply.github.com> Date: Wed, 29 Jul 2026 16:51:33 +0000 Subject: [PATCH 2/7] [@spackbot] updating style on behalf of Sichao25 --- repos/spack_repo/builtin/packages/omega_h/package.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index 14731481f8a..f700a7ed630 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -92,7 +92,7 @@ class OmegaH(CMakePackage, CudaPackage): variant("gmsh", default=False, description="Use Gmsh C++ API") variant("kokkos", default=False, description="Use Kokkos") variant("cuda", default=False, description="Enable CUDA backend", when="@:10.10.0") - variant('python', default=False, description='enable python interfaces') + variant("python", default=False, description="enable python interfaces") depends_on("cxx", type="build") depends_on("c", type="build", when="+mpi") @@ -104,10 +104,10 @@ class OmegaH(CMakePackage, CudaPackage): depends_on("trilinos +kokkos+exodus", when="@:11.0.0-scorec+exodus") depends_on("kokkos", when="+kokkos") depends_on("kokkos@4.3.00:", when="@10.10.0-scorec:+kokkos") - depends_on('python', when='+python') - depends_on('py-numpy', type=('build','link','run'), when='+python') - depends_on('py-pybind11', type='build', when='+python') - depends_on("py-pytest", type="test", when='+python') + depends_on("python", when="+python") + depends_on("py-numpy", type=("build", "link", "run"), when="+python") + depends_on("py-pybind11", type="build", when="+python") + depends_on("py-pytest", type="test", when="+python") depends_on("zlib-api", when="+zlib") depends_on("seacas~x11~tests~fortran", when="@11.1.0-scorec:+exodus") From 4815c082708762ed13e1982e25756d1ae296fe48 Mon Sep 17 00:00:00 2001 From: Sichao25 Date: Mon, 3 Aug 2026 13:54:35 -0400 Subject: [PATCH 3/7] limit version for python variant --- repos/spack_repo/builtin/packages/omega_h/package.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index f700a7ed630..551dfd28c13 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -92,7 +92,7 @@ class OmegaH(CMakePackage, CudaPackage): variant("gmsh", default=False, description="Use Gmsh C++ API") variant("kokkos", default=False, description="Use Kokkos") variant("cuda", default=False, description="Enable CUDA backend", when="@:10.10.0") - variant("python", default=False, description="enable python interfaces") + variant("python", default=False, description="enable python interfaces", when="@11.2.0-scorec:") depends_on("cxx", type="build") depends_on("c", type="build", when="+mpi") From 9699a2b49e0b9ee006e16cfb5b9a436447024c2e Mon Sep 17 00:00:00 2001 From: Sichao25 <54721834+Sichao25@users.noreply.github.com> Date: Mon, 3 Aug 2026 17:58:26 +0000 Subject: [PATCH 4/7] [@spackbot] updating style on behalf of Sichao25 --- repos/spack_repo/builtin/packages/omega_h/package.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index 551dfd28c13..6cd77d97c04 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -92,7 +92,9 @@ class OmegaH(CMakePackage, CudaPackage): variant("gmsh", default=False, description="Use Gmsh C++ API") variant("kokkos", default=False, description="Use Kokkos") variant("cuda", default=False, description="Enable CUDA backend", when="@:10.10.0") - variant("python", default=False, description="enable python interfaces", when="@11.2.0-scorec:") + variant( + "python", default=False, description="enable python interfaces", when="@11.2.0-scorec:" + ) depends_on("cxx", type="build") depends_on("c", type="build", when="+mpi") From 4a3c24a912b3a080d3e3b5acb362239123399f35 Mon Sep 17 00:00:00 2001 From: Sichao25 Date: Thu, 6 Aug 2026 15:04:34 -0400 Subject: [PATCH 5/7] extend python when enabling python --- .../builtin/packages/omega_h/package.py | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index 6cd77d97c04..33c344d2214 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -77,7 +77,11 @@ class OmegaH(CMakePackage, CudaPackage): variant("shared", default=True, description="Build shared libraries") variant("mpi", default=True, description="Activates MPI support") variant("zlib", default=True, description="Activates ZLib support") - variant("trilinos", default=False, description="Use Kokkos and SEACASExodus from trilinos") + variant( + "trilinos", + default=False, + description="Use Kokkos and SEACASExodus from trilinos", + ) variant( "exodus", default=False, @@ -93,7 +97,10 @@ class OmegaH(CMakePackage, CudaPackage): variant("kokkos", default=False, description="Use Kokkos") variant("cuda", default=False, description="Enable CUDA backend", when="@:10.10.0") variant( - "python", default=False, description="enable python interfaces", when="@11.2.0-scorec:" + "python", + default=False, + description="enable python interfaces", + when="@11.2.0-scorec:", ) depends_on("cxx", type="build") @@ -113,14 +120,16 @@ class OmegaH(CMakePackage, CudaPackage): depends_on("zlib-api", when="+zlib") depends_on("seacas~x11~tests~fortran", when="@11.1.0-scorec:+exodus") - conflicts("+trilinos", when="+kokkos", msg="Use Kokkos directly or via Trilinos, not both") + conflicts( + "+trilinos", when="+kokkos", msg="Use Kokkos directly or via Trilinos, not both" + ) conflicts( "+trilinos", when="@11.1.0-scorec:+exodus", msg="Use SEACASExodus directly or via Trilinos, not both", ) - extends("python") + extends("python", when="+python") with when("+cuda"): # https://github.com/SCOREC/omega_h/commit/40a2d36d0b747a7147aeed238a0323f40b227cb2 From 12737e90dabb5f2d5ac578419704b245b6027dc6 Mon Sep 17 00:00:00 2001 From: Bernhard Kaindl Date: Mon, 10 Aug 2026 02:30:02 +0200 Subject: [PATCH 6/7] Apply suggestions from code review: Upstream patch to fix "+exodus +mpi +shared" Co-authored-by: Bernhard Kaindl --- repos/spack_repo/builtin/packages/omega_h/package.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index 33c344d2214..c81df2aac6f 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -152,8 +152,11 @@ class OmegaH(CMakePackage, CudaPackage): conflicts("+python", when="~shared", msg="python requires shared build") - def patch(self): - if "@:9.34.8" in self.spec: + def patch(self): + # https://github.com/SCOREC/omega_h/commit/4dd682ef16ebf2502239ad06883e9f10c611f1c4 + if self.spec.satisfies("@10.8.6-scorec:11.0.0-scorec" ): + filter_file(r"nc_set_log_level\(5\);", "", "src/Omega_h_exodus.cpp") + if self.spec.satisfies("@:9.34.8"): filter_file( r"OUTPUT_QUIET", "OUTPUT_VARIABLE Gmsh_VERSION_STRING", "cmake/FindGmsh.cmake" ) From f30ab1518a4bf45ac676d5132e73acb4e1171a68 Mon Sep 17 00:00:00 2001 From: Sichao25 <54721834+Sichao25@users.noreply.github.com> Date: Mon, 10 Aug 2026 00:31:40 +0000 Subject: [PATCH 7/7] [@spackbot] updating style on behalf of Sichao25 --- .../spack_repo/builtin/packages/omega_h/package.py | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/repos/spack_repo/builtin/packages/omega_h/package.py b/repos/spack_repo/builtin/packages/omega_h/package.py index c81df2aac6f..6bf1a2dc07f 100644 --- a/repos/spack_repo/builtin/packages/omega_h/package.py +++ b/repos/spack_repo/builtin/packages/omega_h/package.py @@ -120,9 +120,7 @@ class OmegaH(CMakePackage, CudaPackage): depends_on("zlib-api", when="+zlib") depends_on("seacas~x11~tests~fortran", when="@11.1.0-scorec:+exodus") - conflicts( - "+trilinos", when="+kokkos", msg="Use Kokkos directly or via Trilinos, not both" - ) + conflicts("+trilinos", when="+kokkos", msg="Use Kokkos directly or via Trilinos, not both") conflicts( "+trilinos", when="@11.1.0-scorec:+exodus", @@ -152,11 +150,11 @@ class OmegaH(CMakePackage, CudaPackage): conflicts("+python", when="~shared", msg="python requires shared build") - def patch(self): - # https://github.com/SCOREC/omega_h/commit/4dd682ef16ebf2502239ad06883e9f10c611f1c4 - if self.spec.satisfies("@10.8.6-scorec:11.0.0-scorec" ): - filter_file(r"nc_set_log_level\(5\);", "", "src/Omega_h_exodus.cpp") - if self.spec.satisfies("@:9.34.8"): + def patch(self): + # https://github.com/SCOREC/omega_h/commit/4dd682ef16ebf2502239ad06883e9f10c611f1c4 + if self.spec.satisfies("@10.8.6-scorec:11.0.0-scorec"): + filter_file(r"nc_set_log_level\(5\);", "", "src/Omega_h_exodus.cpp") + if self.spec.satisfies("@:9.34.8"): filter_file( r"OUTPUT_QUIET", "OUTPUT_VARIABLE Gmsh_VERSION_STRING", "cmake/FindGmsh.cmake" )