Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/extra
diff options
context:
space:
mode:
Diffstat (limited to 'extra')
-rw-r--r--extra/openmpi/PKGBUILD44
1 files changed, 44 insertions, 0 deletions
diff --git a/extra/openmpi/PKGBUILD b/extra/openmpi/PKGBUILD
new file mode 100644
index 00000000..a932d3f0
--- /dev/null
+++ b/extra/openmpi/PKGBUILD
@@ -0,0 +1,44 @@
+# no CUDA
+makedepends=(${makedepends[@]//cuda/})
+makedepends=(${makedepends[@]//nvidia-utils/})
+eval "$(
+ declare -f build | \
+ sed '
+ /local configure_options.*/ a \
+ configure_options=(${configure_options[@]/--with-cuda=.*/--without-cuda})
+ '
+)"
+
+# PRRTE warns us about not building on 32-bit, so remove it
+makedepends=(${makedepends[@]//prtte/})
+eval "$(
+ declare -f build | \
+ sed '
+ /local configure_options.*/ a \
+ configure_options=(${configure_options[@]/--with-prrte=external/--without-prrte})
+ '
+)"
+eval "$(
+ declare -f package_openmpi | \
+ sed '
+ /depends.*/ a \
+ depends=(${depends[@]//prrte/})
+ '
+)"
+
+# AMD stuff requires a special LLVM and clang, doesn't build currently
+# (whoever wants to fix that is welcome)
+makedepends=(${makedepends[@]//hip-runtime-amd/})
+
+# openucc doesn't build
+makedepends=(${makedepends[@]//openucc/})
+
+# openucx requires cuda and rocm-language-runtime
+makedepends=(${makedepends[@]//openucx/})
+eval "$(
+ declare -f package_openmpi | \
+ sed '
+ /depends.*/ a \
+ depends=(${depends[@]//openucx/})
+ '
+)"