The package rpms/superlu_dist.git has added or updated architecture specific content in
its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/superlu_dist.git/commit/?id=5e5f9...
https://src.fedoraproject.org/cgit/rpms/superlu_dist.git/commit/?id=0705a....
Change:
+%ifarch x86_64 %{ix86} armv7hl %{power64} aarch64
+%ifarch %{openblas_arches}
Thanks.
Full change:
============
commit 0705a074367f3a70f38e09b0b133df1552e75e45
Author: Dave Love <loveshack(a)fedoraproject.org>
Date: Fri Jun 9 08:53:09 2017 +0000
Maybe use openblas_arches instead
diff --git a/superlu_dist.spec b/superlu_dist.spec
index 6ba2108..7311807 100644
--- a/superlu_dist.spec
+++ b/superlu_dist.spec
@@ -1,8 +1,9 @@
# Copyright (c) 2016 Dave Love, Liverpool University
# MIT licence, per Fedora policy.
-%ifarch x86_64 %{ix86} armv7hl %{power64} aarch64
-# matches openblas ExclusiveArch
+# Following scalapack
+%{!?openblas_arches:%global openblas_arches x86_64 %{ix86} armv7hl %{power64} aarch64}
+%ifarch %{openblas_arches}
%bcond_without openblas
%else
%bcond_with openblas
@@ -10,7 +11,7 @@
Name: superlu_dist
Version: 5.1.3
-Release: 5%{?dist}
+Release: 6%{?dist}
Summary: Solution of large, sparse, nonsymmetric systems of linear equations
License: BSD
URL:
http://crd-legacy.lbl.gov/~xiaoye/SuperLU/
@@ -252,6 +253,9 @@ make clean
%changelog
+* Fri Jun 9 2017 Dave Love <loveshack(a)fedoraproject.org> - 5.1.3-6
+- Maybe use openblas_arches instead
+
* Thu Jun 8 2017 Dave Love <loveshack(a)fedoraproject.org> - 5.1.3-5
- Fix up mpich-devel requirement for el7 7.3
- Avoid openblas on s3909(x)
commit dcac6e62416d8f726436d71bca1b1da160cb409f
Author: Dave Love <loveshack(a)fedoraproject.org>
Date: Thu Jun 8 20:58:00 2017 +0000
Add cblas patch
diff --git a/superlu_dist-cblas.patch b/superlu_dist-cblas.patch
new file mode 100644
index 0000000..2bb61fa
--- /dev/null
+++ b/superlu_dist-cblas.patch
@@ -0,0 +1,30 @@
+--- SuperLU_DIST_5.1.3/CBLAS/Makefile~ 2017-02-14 04:51:02.000000000 +0000
++++ SuperLU_DIST_5.1.3/CBLAS/Makefile 2017-06-07 22:24:24.229000000 +0000
+@@ -66,22 +66,22 @@
+
+ all: single double complex complex16
+
+-single: $(SBLAS1) $(SBLAS2) $(SBLAS3)
++single: $(SBLAS1) $(SBLAS2) $(SBLAS3) $(ALLBLAS)
+ $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(SBLAS1) $(ALLBLAS) \
+ $(SBLAS2) $(SBLAS3)
+ $(RANLIB) $(BLASLIB)
+
+-double: $(DBLAS1) $(DBLAS2) $(DBLAS3)
++double: $(DBLAS1) $(DBLAS2) $(DBLAS3) $(ALLBLAS)
+ $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(DBLAS1) $(ALLBLAS) \
+ $(DBLAS2) $(DBLAS3)
+ $(RANLIB) $(BLASLIB)
+
+-complex: $(CBLAS1) $(CBLAS2) $(CBLAS3)
++complex: $(CBLAS1) $(CBLAS2) $(CBLAS3) $(ALLBLAS)
+ $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(CBLAS1) $(ALLBLAS) \
+ $(CBLAS2) $(CBLAS3)
+ $(RANLIB) $(BLASLIB)
+
+-complex16: $(ZBLAS1) $(ZBLAS2) $(ZBLAS3)
++complex16: $(ZBLAS1) $(ZBLAS2) $(ZBLAS3) $(ALLBLAS)
+ $(ARCH) $(ARCHFLAGS) $(BLASLIB) $(ZBLAS1) $(ALLBLAS) \
+ $(ZBLAS2) $(ZBLAS3)
+ $(RANLIB) $(BLASLIB)
+
commit 5e5f978aa481d31a03c7c25edbfecdad621e0b0f
Author: Dave Love <loveshack(a)fedoraproject.org>
Date: Thu Jun 8 20:54:52 2017 +0000
Fix up mpich-devel requirement for el7 7.3
Avoid openblas on s3909(x)
diff --git a/superlu_dist-make.inc b/superlu_dist-make.inc
index bc86d36..a9090a6 100644
--- a/superlu_dist-make.inc
+++ b/superlu_dist-make.inc
@@ -17,8 +17,10 @@
#
SuperLUroot =
DSUPERLULIB = $(SuperLUroot)/SRC/libsuperlu_dist.a
+BLASDEF = -DUSE_VENDOR_BLAS
+BLASLIB = -lopenblas
-LIBS = $(DSUPERLULIB) -lptscotchparmetis -lptscotch -lptscotcherr -lmetis -lscotch
-lopenblas
+LIBS = $(DSUPERLULIB) -lptscotchparmetis -lptscotch -lptscotcherr -lmetis -lscotch
$(BLASLIB)
#
# The archiver and the flag(s) to use when building archive (library)
@@ -29,7 +31,7 @@ ARCHFLAGS = cr
RANLIB = /usr/bin/ranlib
CC = mpicc
-CFLAGS += -O3 -DNDEBUG -DUSE_VENDOR_BLAS -DDEBUGlevel=0 -DPRNTlevel=0 -fopenmp
-std=c99 -fPIC -g
+CFLAGS += -O3 -DNDEBUG $(BLASDEF) -DDEBUGlevel=0 -DPRNTlevel=0 -fopenmp -std=c99
-fPIC -g
# CFLAGS += -D
# CFLAGS +=
NOOPTS = -O0
diff --git a/superlu_dist.spec b/superlu_dist.spec
index 4d63f60..6ba2108 100644
--- a/superlu_dist.spec
+++ b/superlu_dist.spec
@@ -1,9 +1,16 @@
# Copyright (c) 2016 Dave Love, Liverpool University
# MIT licence, per Fedora policy.
+%ifarch x86_64 %{ix86} armv7hl %{power64} aarch64
+# matches openblas ExclusiveArch
+%bcond_without openblas
+%else
+%bcond_with openblas
+%endif
+
Name: superlu_dist
Version: 5.1.3
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: Solution of large, sparse, nonsymmetric systems of linear equations
License: BSD
URL:
http://crd-legacy.lbl.gov/~xiaoye/SuperLU/
@@ -14,7 +21,12 @@ Patch1: superlu_dist-parmetis.patch
# Zap diagnostics, recommended in
# <
https://math.berkeley.edu/~linlin/pexsi/page_dependency.html>
Patch2: superlu_dist-output.patch
-BuildRequires: scotch-devel gcc-gfortran openblas-devel
+Patch3: superlu_dist-cblas.patch
+BuildRequires: scotch-devel gcc-gfortran
+%if %{with openblas}
+BuildRequires: openblas-devel
+# Probably not worth a bundled provides for the bundled partial cblas.
+%endif
# The test program runs if we link with -lmetis but crashes if linked with
# -lscotchmetis.
BuildRequires: metis-devel
@@ -124,7 +136,8 @@ This is the mpich version.
%package mpich-devel
Summary: Development files for %name-mpich
-Requires: mpich-devel%{?_isa}
+#
https://bugzilla.redhat.com/show_bug.cgi?id=1397192 (fixed in RHEL 7.4 beta)
+Requires: mpich-devel%{!?el7:%{?_isa}}
Requires: %name-mpich%{?_isa} = %version-%release
%description mpich-devel
@@ -136,6 +149,7 @@ Development files for %name-mpich
%setup -q -n SuperLU_DIST_%version
%patch1 -p1
%patch2 -p1
+%patch3 -p1
cp %SOURCE1 make.inc
%build
@@ -148,13 +162,21 @@ esac
find -name \*.[oa] | xargs rm 2>/dev/null || true # no clean target
pwd
export CFLAGS="%optflags"
+%if %{with openblas}
make SuperLUroot=$(pwd)
+%else
+make blaslib HEADER=. BLASLIB='../libblas.a'
+make SuperLUroot=$(pwd) BLASDEF= BLASLIB='../libblas.a'
+%endif
mkdir -p tmp $m
pushd tmp
ar x ../SRC/libsuperlu_dist.a
mpicc -shared -Wl,-soname=libsuperlu_dist.so.%major -Wl,--as-needed \
-o ../$m/libsuperlu_dist.so.%sover *.o -fopenmp -lptscotchparmetis \
- -lptscotch -lptscotcherr -lscotch -lmetis -lopenblas \
+ -lptscotch -lptscotcherr -lscotch -lmetis \
+%if %{with openblas}
+ -lopenblas \
+%endif
%{?__global_ldflags}
popd
case $m in
@@ -230,6 +252,10 @@ make clean
%changelog
+* Thu Jun 8 2017 Dave Love <loveshack(a)fedoraproject.org> - 5.1.3-5
+- Fix up mpich-devel requirement for el7 7.3
+- Avoid openblas on s3909(x)
+
* Sat Jun 3 2017 Dave Love <loveshack(a)fedoraproject.org> - 5.1.3-4
- Fix mpich conditional
- Build for openmpi on s390 f25+