diff --git a/env/sles15/x86_64/sysconfigs/packages.yaml b/env/sles15/x86_64/sysconfigs/packages.yaml index cf01771..2828235 100644 --- a/env/sles15/x86_64/sysconfigs/packages.yaml +++ b/env/sles15/x86_64/sysconfigs/packages.yaml @@ -12,8 +12,6 @@ packages: # Grace Hopper arch variants: - cuda_arch=80 - amrex: - require: '%gcc@7.5.0' berkeley-db: require: '%gcc@7.5.0' boost: diff --git a/packages/mithra/mithra-fPIC.patch b/packages/mithra/mithra-fPIC.patch index 3a42b8e..43b0530 100644 --- a/packages/mithra/mithra-fPIC.patch +++ b/packages/mithra/mithra-fPIC.patch @@ -6,7 +6,7 @@ diff -u mithra-2.0.orig/makefile mithra-2.0/makefile SHELL = /bin/sh COMP = mpic++ -+CFLAGS+=-fPIC ++CFLAGS+=-fPIC -fPIE CFLAGS+=-std=c++11 CFLAGS+=-O3 diff --git a/packages/mithra/package.py b/packages/mithra/package.py index 75fa32b..d900c34 100644 --- a/packages/mithra/package.py +++ b/packages/mithra/package.py @@ -18,6 +18,8 @@ class Mithra(MakefilePackage): version("2.0", sha256="66f27ba6ca2c1ab05abb76338d00e661a6fe96b95283b85409c37625b4758deb") + patch("mithra-fPIC.patch") + variant("mpi", default=True, description="Enable MPI support") depends_on("mpi", when="+mpi") diff --git a/packages/opal/package.py b/packages/opal/package.py index df2e2b8..f199f03 100644 --- a/packages/opal/package.py +++ b/packages/opal/package.py @@ -22,6 +22,7 @@ class Opal(CMakePackage): version('master', branch="master") version("2022.1.0", sha256="31f6811032e9d5400169d28a8ae6c7dee2e4a803ee82e90584d31ff7a0a18d80") + version("2024.1.0", sha256="65c4c263d6394b4b234323a74fc55eb963fb75cb80ea904d6c82054cfc64033c") variant( "build_type", @@ -45,12 +46,12 @@ class Opal(CMakePackage): depends_on("blas") depends_on("boost+chrono+filesystem+iostreams+regex+serialization+system+timer") depends_on("boost+mpi", when="+mpi") - depends_on("boost+python", when="+python") + depends_on("boost+python+shared", when="+python") depends_on("python@3.0:", when="+python") depends_on( "boost+mpi+chrono+filesystem+iostreams+regex+serialization+system+timer", when="+mpi" ) - depends_on("gsl~shared") + depends_on("gsl+shared") depends_on("h5hut+mpi", when="+mpi") depends_on("h5hut~mpi", when="~mpi") @@ -59,14 +60,14 @@ class Opal(CMakePackage): "amrex@18.07 precision=double dimensions=3 +mpi~openmp+particles+pic~eb", when="+amr+amr_mg_solver+mpi", ) - depends_on("googletest@1.10.0:", when="+tests") + depends_on("googletest@1.10.0: +shared", when="+tests") depends_on("mithra@2.0", when="+opal_fel") depends_on( - "trilinos@12.0.1: cxxstd=17 +mpi+muelu+nox+zoltan+zoltan2+isorropia gotype=long", + "trilinos@12.0.1: cxxstd=17 +mpi+muelu+nox+zoltan+zoltan2+isorropia+shared gotype=long", when="+saamg_solver", ) depends_on( - "trilinos@12.0.1: cxxstd=17 +mpi+muelu+nox+zoltan+zoltan2+isorropia gotype=long", + "trilinos@12.0.1: cxxstd=17 +mpi+muelu+nox+zoltan+zoltan2+isorropia+shared gotype=long", when="+amr_mg_solver", ) depends_on("parmetis@4.0.3:", when="+saamg_solver") @@ -74,8 +75,8 @@ class Opal(CMakePackage): # @master depends_on("h5hut@2.0.0rc6", when="@master") - depends_on("trilinos@13.4.0:", when="@master+saamg_solver") - depends_on("trilinos@13.4.0:", when="@master+amr_mg_solver") + depends_on("trilinos@13.4.0: +shared", when="@master+saamg_solver") + depends_on("trilinos@13.4.0: +shared", when="@master+amr_mg_solver") # @2022.1%gcc@10.4.0 depends_on("h5hut@2.0.0rc6", when="@2022.1") @@ -83,6 +84,7 @@ class Opal(CMakePackage): depends_on("trilinos@13.4.0", when="@2022.1+amr_mg_solver") conflicts("~amr", "+amr_mg_solver") + conflicts("~mpi", msg="OPAL can not run without mpi!") # AMRex version is too old for any newer Trilinos version requires( @@ -105,11 +107,12 @@ class Opal(CMakePackage): self.define_from_variant("ENABLE_AMR", "amr"), self.define_from_variant("ENABLE_AMR_MG_SOLVER", "amr_mg_solver"), self.define_from_variant("ENABLE_BANDRF", "bandrf"), - self.define_from_variant("USE_STATIC_LIBRARIES", "static"), self.define_from_variant("ENABLE_OPAL_FEL", "opal_fel"), self.define_from_variant("ENABLE_SAAMG_SOLVER", "saamg_solver"), self.define_from_variant("BUILD_OPAL_PYTHON", "python"), + self.define_from_variant("WILL_BUILD_SHARED_LIBRARY", "python"), self.define_from_variant("ENABLE_IPPLTESTS", "ippltests"), self.define_from_variant("ENABLE_MSLANG", "mslang"), ] + return args