Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2024-09-13 08:59:56 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2024-09-13 08:59:56 +0200
commita46cebdc885fa760cf6d148ba0cc50b7aa3e6c73 (patch)
tree3d26dc810332fec62ef46b05934ffe8691aa0947
parente3a77b242d316e3f6595956ef68aad67a6736ace (diff)
extra/openmpi: patched out all non-working software for 32-bit
-rw-r--r--blacklist/pentium4/openmpi/comgr2
-rw-r--r--blacklist/pentium4/openmpi/hip-runtime-amd1
-rw-r--r--blacklist/pentium4/openmpi/hsa-rocr2
-rw-r--r--blacklist/pentium4/openmpi/nccl1
-rw-r--r--blacklist/pentium4/openmpi/openucc1
-rw-r--r--blacklist/pentium4/openmpi/openucx1
-rw-r--r--blacklist/pentium4/openmpi/rocminfo1
-rw-r--r--extra/openmpi/PKGBUILD44
8 files changed, 53 insertions, 0 deletions
diff --git a/blacklist/pentium4/openmpi/comgr b/blacklist/pentium4/openmpi/comgr
new file mode 100644
index 00000000..61943a63
--- /dev/null
+++ b/blacklist/pentium4/openmpi/comgr
@@ -0,0 +1,2 @@
+presumably due to rocm-llvm:
+<command-line>: error: token "=" is not valid in preprocessor expressions
diff --git a/blacklist/pentium4/openmpi/hip-runtime-amd b/blacklist/pentium4/openmpi/hip-runtime-amd
new file mode 100644
index 00000000..9ee4984e
--- /dev/null
+++ b/blacklist/pentium4/openmpi/hip-runtime-amd
@@ -0,0 +1 @@
+doesn't build and prerequisites don't build
diff --git a/blacklist/pentium4/openmpi/hsa-rocr b/blacklist/pentium4/openmpi/hsa-rocr
new file mode 100644
index 00000000..c23c199b
--- /dev/null
+++ b/blacklist/pentium4/openmpi/hsa-rocr
@@ -0,0 +1,2 @@
+presumably due to rocm-llvm
+clang-17: error: invalid target ID 'gfx1150'; format is a processor name followed by an optional colon-delimited list of features followed by an enable/disable sign (e.g., 'gfx908:sramecc+:xnack-')
diff --git a/blacklist/pentium4/openmpi/nccl b/blacklist/pentium4/openmpi/nccl
new file mode 100644
index 00000000..b1692332
--- /dev/null
+++ b/blacklist/pentium4/openmpi/nccl
@@ -0,0 +1 @@
+requires cuda
diff --git a/blacklist/pentium4/openmpi/openucc b/blacklist/pentium4/openmpi/openucc
new file mode 100644
index 00000000..6cc129f3
--- /dev/null
+++ b/blacklist/pentium4/openmpi/openucc
@@ -0,0 +1 @@
+requires cuda, hip-runtime-amd, nccl, rccl
diff --git a/blacklist/pentium4/openmpi/openucx b/blacklist/pentium4/openmpi/openucx
new file mode 100644
index 00000000..5b1567e3
--- /dev/null
+++ b/blacklist/pentium4/openmpi/openucx
@@ -0,0 +1 @@
+requires cuda, rocm-language-runtime \ No newline at end of file
diff --git a/blacklist/pentium4/openmpi/rocminfo b/blacklist/pentium4/openmpi/rocminfo
new file mode 100644
index 00000000..0f5b14b0
--- /dev/null
+++ b/blacklist/pentium4/openmpi/rocminfo
@@ -0,0 +1 @@
+needs hsa-rocr
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/})
+ '
+)"