Hello community,

here is the log from the commit of package superlu for openSUSE:Factory checked 
in at 2019-01-26 22:19:04
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/superlu (Old)
 and      /work/SRC/openSUSE:Factory/.superlu.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "superlu"

Sat Jan 26 22:19:04 2019 rev:19 rq:667989 version:5.2.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/superlu/superlu.changes  2016-07-07 
15:07:51.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.superlu.new.28833/superlu.changes       
2019-01-26 22:19:05.439017274 +0100
@@ -1,0 +2,27 @@
+Tue Jan 22 11:58:01 UTC 2019 - e...@suse.com
+
+- Disable HPC builds for ring testing on Factory submissions.
+
+-------------------------------------------------------------------
+Fri Jan 18 14:46:44 UTC 2019 - e...@suse.com
+
+- Reenable ldconfig in %post and %postun for HPC but don't let it
+  update the cache: this would be pointless for libraries in
+  non-standard locations.
+
+-------------------------------------------------------------------
+Thu Jan 10 09:31:45 UTC 2019 - e...@suse.com
+
+- Moved HPC module from devel to library package.
+- Modified summary for devel package.
+
+-------------------------------------------------------------------
+Fri Oct 26 19:55:59 UTC 2018 - e...@suse.com
+
+- Add environment module support for HPC.
+  * create baselib.conf on the fly.
+- Add superlu-5.2-make.patch:
+  add compiler and build flags in make.inc.
+- Separate off documentation and examples to separate packages.
+
+-------------------------------------------------------------------

Old:
----
  baselibs.conf
  superlu_5.2.1-bsd.tar.gz

New:
----
  _multibuild
  superlu-5.2-make.patch
  superlu_5.2.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ superlu.spec ++++++
--- /var/tmp/diff_new_pack.ZPWUtm/_old  2019-01-26 22:19:07.575015542 +0100
+++ /var/tmp/diff_new_pack.ZPWUtm/_new  2019-01-26 22:19:07.575015542 +0100
@@ -1,8 +1,7 @@
 #
 # spec file for package superlu
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
-# Copyright (c) 2016 Christoph GrĂ¼ninger f...@grueninger.de
+# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,18 +16,57 @@
 #
 
 
-Name:           superlu
-Summary:        A general purpose library for the direct solution of sparse 
systems of linear equations
+%global flavor @BUILD_FLAVOR@%{nil}
+
+# Base package name
+%define pname superlu
+%define ver 5.2.1
+
+%define _ver %(echo %{ver} | tr . _)
+
+%if "%flavor" == ""
+ExclusiveArch:  do_not_build
+%endif
+
+%if "%{flavor}" == "serial"
+%bcond_with hpc
+%endif
+
+%if "%{flavor}" == "gnu-hpc"
+%bcond_without hpc
+%global compiler_family gnu
+%undefine c_f_ver
+%endif
+
+%bcond_with ringdisabled
+
+%if %{with hpc} && %{with ringdisabled}
+ExclusiveArch:  do_not_build
+%endif
+
+%define package_name %pname
+%if %{without hpc}
+%define p_includedir %_includedir
+%define p_libdir %_libdir
+%define _sover 5
+%else
+%{hpc_init -c %compiler_family %{?c_f_ver:-v %{c_f_ver}} %{?ext:-e %{ext}}}
+%define package_name %{hpc_package_name %_ver}
+%define p_includedir %hpc_includedir
+%define p_libdir %hpc_libdir
+%endif
+
+Name:           %{package_name}
+Summary:        A general purpose library for the direct solution of linear 
equations
 License:        BSD-3-Clause
 Group:          Development/Libraries/C and C++
-Version:        5.2.1
+Version:        %{ver}
 Release:        0
-%define soname lib%{name}5
-#Source:         http://crd-legacy.lbl.gov/~xiaoye/SuperLU/superlu_5.2.1.tar.gz
-Source:         %{name}_%{version}-bsd.tar.gz
+Source:         
http://crd-legacy.lbl.gov/%7Exiaoye/SuperLU/%{pname}_%{version}.tar.gz
 Source1:        superlu_ug.pdf
 Source2:        README.SUSE
-Source3:        baselibs.conf
+# PATCH-FEATURE-OPENSUSE superlu-5.2-make.patch : add compiler and build flags 
in make.inc
+Patch0:         superlu-5.2-make.patch
 # PATCH-FIX-UPSTREAM superlu-4.3-include.patch : avoid implicit declaration 
warnings
 Patch1:         superlu-4.3-include.patch
 # PATCH-FIX-UPSTREAM superlu-4.3-dont-opt-away.diff
@@ -36,95 +74,174 @@
 # PATCH-FIX-OPENSUSE superlu-5.2-remove-mc64ad.patch [bnc#796236] 
 # The Harwell Subroutine Library (HSL) routine mc64ad.c have been removed
 # from the original sources for legal reasons. This patch disables the 
inclusion of
-# this routine in the library which, however, remains fully functionnal
+# this routine in the library which, however, remains fully functional
 Patch3:         superlu-5.2-remove-mc64ad.patch
-Url:            http://crd.lbl.gov/~xiaoye/SuperLU/
-BuildRequires:  blas-devel
+URL:            http://crd.lbl.gov/~xiaoye/SuperLU/
 BuildRequires:  cmake >= 2.8.12
 BuildRequires:  fdupes
-BuildRequires:  gcc-fortran
 BuildRequires:  tcsh
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
+%if %{without hpc}
+BuildRequires:  blas-devel
+BuildRequires:  gcc-fortran
+%else
+Requires:       %{compiler_family}%{?c_f_ver}-compilers-hpc
+BuildRequires:  %{compiler_family}%{?c_f_ver}-compilers-hpc-macros-devel
+BuildRequires:  libopenblas%{?hpc_ext}-%{compiler_family}%{?c_f_ver}-hpc-devel
+BuildRequires:  suse-hpc >= 0.3
+%hpc_requires
+%hpc_requires_devel
+%endif
 
 %description
 SuperLU is an algorithm that uses group theory to optimize LU
 decomposition of sparse matrices.
 
-%package -n %soname
+Docu can be found in the %{name}-doc package or on http://www.netlib.org.
+
+%package -n lib%{name}%{?_sover}
 Summary:        SuperLU matrix solver
 Group:          System/Libraries
 
-%description -n %soname
+%description -n lib%{name}%{?_sover}
 SuperLU is an algorithm that uses group theory to optimize LU
 decomposition of sparse matrices.
 
 %package        devel
-Summary:        Development files for %{name}
+Summary:        Headers and development library for lib%{name}%{?_sover}
 Group:          Development/Libraries/C and C++
-Requires:       %soname = %{version}
-# The standalone superlu RPM has been eliminated, and the relevant
-# files are now in superlu-devel
-# The last standalone superlu RPM was was v3.0
-Provides:       superlu = %{version}
-Obsoletes:      superlu <= 3.0
+Requires:       lib%{name}%{?_sover} = %version
+Recommends:     %name-doc
 
 %description    devel
-The %{name}-devel package contains libraries and header files for
-developing applications that use %{name}.
+SuperLU headers and libraries files needed for development
+
+%package        doc
+Summary:        Documentation for %name
+Group:          Documentation/Other
+
+%description    doc
+Documentation (HTML/PDF) for SuperLU.
+SuperLU is an algorithm that uses group theory to optimize LU
+decomposition of sparse matrices.
+
+%package        examples
+Summary:        Examples for %name
+Group:          Documentation/Other
+Recommends:     %name-devel
+
+%description    examples
+Example programs for SuperLU.
+SuperLU is an algorithm that uses group theory to optimize LU
+decomposition of sparse matrices.
+
+%if %{with hpc}
+%{hpc_master_package -l -L}
+%{hpc_master_package devel}
+%{hpc_master_package doc}
+%{hpc_master_package examples}
+%endif
 
 %prep
 %setup -q -n SuperLU_%{version}
+%patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-# superlu_ug.pdf in %%doc 
 cp %SOURCE1 %SOURCE2 ./
+# Create baselib.conf dynamically (non-HPC build only).
+%if %{without hpc}
+cat > %{_sourcedir}/baselibs.conf  <<EOF
+lib%{name}%{?_sover}
+EOF
+%endif
 
 %build
-# FIXME: Drop the -Denable_tests=OFF flag when MATGEN linking issues are 
resolved
+%{?hpc_setup}
+%if %{without hpc}
 %cmake \
+%else
+module load openblas
+%hpc_cmake \
+%endif
   -DCMAKE_BUILD_TYPE=Release -DUSE_XSDK_DEFAULTS='TRUE' -Denable_tests=OFF
-
 make %{?_smp_mflags}
-cd ..
 
 %install
 %cmake_install
-
 #fix permissions
 chmod 644 MATLAB/*
 
 # remove all build examples
 cd EXAMPLE
 make clean
-rm -rf *itersol*
+rm -rf *itersol* .gitignore
 cd ..
 mv EXAMPLE examples
+rm -f examples/.gitignore
 cp FORTRAN/README README.fortran
 %fdupes -s examples
 
-%check
-ln -s examples/ EXAMPLE
-export LD_LIBRARY_PATH=%{buildroot}%{_libdir}
-make testing
-echo -ne "\nTest results\n"
-for i in stest dtest ctest ztest; do
-    cat TESTING/$i.out
-done
-
-%post -n %soname -p /sbin/ldconfig
-
-%postun -n %soname -p /sbin/ldconfig
+%if %{with hpc}
+# TODO: is there any path to add for Matlab files?
+%hpc_write_modules_files
+#%Module1.0#####################################################################
+
+proc ModulesHelp { } {
+
+puts stderr " "
+puts stderr "This module loads the SuperLU library built with the 
%{compiler_family} compiler"
+puts stderr "toolchain."
+puts stderr " "
+puts stderr "Note that this build of SuperLU leverages the OpenBLAS linear 
algebra libraries."
+puts stderr "Consequently, openblas is loaded automatically with this module."
+
+puts stderr "\nVersion %{version}\n"
+
+}
+module-whatis "Name: %{pname} built with %{compiler_family} compiler"
+module-whatis "Version: %{version}"
+module-whatis "Category: runtime library"
+module-whatis "%{url}"
+
+set     version                     %{version}
+
+depends-on openblas
+
+prepend-path    INCLUDE             %{hpc_includedir}
+prepend-path    LD_LIBRARY_PATH     %{hpc_libdir}
+
+setenv          %{hpc_PNAME %pname}_DIR        %{hpc_prefix}
+setenv          %{hpc_PNAME %pname}_INC        %{hpc_includedir}
+setenv          %{hpc_PNAME %pname}_LIB        %{hpc_libdir}
+
+EOF
+%endif
+
+%if %{without hpc}
+%post -n lib%{name}%{?_sover} -p /sbin/ldconfig
+%postun -n lib%{name}%{?_sover} -p /sbin/ldconfig
+%else
+%post -n lib%{name}%{?_sover}
+/sbin/ldconfig -N %hpc_libdir
+%postun -n lib%{name}%{?_sover}
+/sbin/ldconfig -N %hpc_libdir
+%endif
 
-%files -n %soname
-%defattr(-,root,root,-)
+%files -n lib%{name}%{?_sover}
 %doc README MATLAB README.SUSE
-%{_libdir}/*.so.*
+%{?hpc_dirs}
+%{?hpc_modules_files}
+%{p_libdir}/*.so.*
 
 %files devel
-%defattr(-,root,root,-)
-%doc DOC/html examples README.fortran superlu_ug.pdf
-%{_includedir}/*.h
-%{_libdir}/*.so
+%doc README.fortran
+%{p_includedir}/%{!?with_hpc:*}
+%{p_libdir}/*.so
+
+%files doc
+%doc DOC/html superlu_ug.pdf
+
+%files examples
+%doc examples
 
 %changelog

++++++ _multibuild ++++++
<multibuild>
  <package>gnu-hpc</package>
  <package>serial</package>
</multibuild>
++++++ superlu-5.2-make.patch ++++++
diff -ruN SuperLU_5.2.1.old/make.inc SuperLU_5.2.1/make.inc
--- SuperLU_5.2.1.old/make.inc  2016-05-22 17:08:28.000000000 +0100
+++ SuperLU_5.2.1/make.inc      2016-09-29 21:04:09.000000000 +0100
@@ -18,14 +18,14 @@
 #
 #  The name of the libraries to be created/linked to
 #
-SuperLUroot    = /home/xiaoye/Dropbox/Codes/SuperLU/SuperLU_5.2.1/build
+SuperLUroot    = ../
 SUPERLULIB     = $(SuperLUroot)/SRC/libsuperlu.a
 
 TMGLIB         = libtmglib.a
 
-# BLASDEF      = -DUSE_VENDOR_BLAS
-BLASLIB                = 
/home/xiaoye/Dropbox/Codes/SuperLU/SuperLU_5.2.1/build/CBLAS/libblas.a
-LIBS           = $(SUPERLULIB) 
/home/xiaoye/Dropbox/Codes/SuperLU/SuperLU_5.2.1/build/CBLAS/libblas.a
+BLASDEF        = -DUSE_VENDOR_BLAS
+BLASLIB                = -lopenblas
+LIBS           = $(SUPERLULIB) $(BLASLIB)
 
 #
 #  The archiver and the flag(s) to use when building archive (library)
@@ -35,10 +35,11 @@
 ARCHFLAGS    = cr
 RANLIB       = /usr/bin/ranlib
 
-CC           = /usr/bin/cc
-CFLAGS              = -O3 -DNDEBUG -DPRNTlevel=0 -DAdd_  
-NOOPTS       = -O0
-FORTRAN             = /usr/bin/gfortran
+#CC           = gcc
+CFLAGS       = $(RPM_OPT_FLAGS) -fPIC -DPIC
+NOOPTS       = $(RPM_OPT_FLAGS) -Os -fPIC -DPIC
+#FORTRAN            = gfortran #g77
+FFLAGS       = $(RPM_OPT_FLAGS) -fPIC
 
 LOADER       = $(CC)
 LOADOPTS     =
@@ -46,4 +47,4 @@
 #
 # The directory in which Matlab is installed
 #
-MATLAB      = /Applications/MATLAB_R2015b.app
+#MATLAB             = /Applications/MATLAB_R2015b.app
++++++ superlu_5.2.1-bsd.tar.gz -> superlu_5.2.1.tar.gz ++++++
++++ 2649 lines of diff (skipped)


Reply via email to