openblas: use "all" target since it's marked sequential (#35905)

openblas likes to concurrently writes to the same archive from different
targets, and solves that through .NOTPARALLEL: all

We run `make x y z` which is not affected by `NOTPARALLEL`, running into
races.
This commit is contained in:
Harmen Stoppels 2023-04-03 11:45:38 +02:00 committed by GitHub
parent 7e4927b892
commit 93cad90413
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 1 additions and 25 deletions

View file

@ -1,14 +0,0 @@
diff --git a/Makefile b/Makefile
index 967ab1bb6..98666e853 100644
--- a/Makefile
+++ b/Makefile
@@ -42,6 +42,9 @@ SUBDIRS_ALL = $(SUBDIRS) test ctest utest exports benchmark ../laswp ../bench cp
.PHONY : all libs netlib $(RELA) test ctest shared install
.NOTPARALLEL : all libs $(RELA) prof lapack-test install blas-test
+shared: libs netlib $(RELA)
+tests: libs netlib $(RELA) shared
+
all :: libs netlib $(RELA) tests shared
@echo
@echo " OpenBLAS build complete. ($(LIB_COMPONENTS))"

View file

@ -182,10 +182,6 @@ class Openblas(MakefilePackage):
when="@0.3.21 %gcc@:9",
)
# Generic fix (https://github.com/xianyi/OpenBLAS/pull/3902) so we don't
# have to build tests
patch("fix-shared-tests-prereqs.patch", when="@0.2.20:0.3.21")
# See https://github.com/spack/spack/issues/19932#issuecomment-733452619
# Notice: fixed on Amazon Linux GCC 7.3.1 (which is an unofficial version
# as GCC only has major.minor releases. But the bound :7.3.0 doesn't hurt)
@ -452,13 +448,7 @@ def libs(self):
@property
def build_targets(self):
targets = ["libs", "netlib"]
# Build shared if variant is set.
if "+shared" in self.spec:
targets += ["shared"]
return self.make_defs + targets
return self.make_defs + ["all"]
@run_after("build")
@on_package_attributes(run_tests=True)