From 2a00aa7aa99d1847b166ebaff6de8f4f254fb68be57baebb1c9158cdd26b922c Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Sat, 3 Jun 2017 23:48:03 +0000 Subject: [PATCH] Accepting request 500237 from science 1 OBS-URL: https://build.opensuse.org/request/show/500237 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/lapack?expand=0&rev=41 --- lapack-man.changes | 8 +++ lapack-man.spec | 141 +++++++++++++++++++++++++++++++++++++++++++++ lapack.changes | 8 +++ lapack.spec | 115 +----------------------------------- 4 files changed, 158 insertions(+), 114 deletions(-) create mode 100644 lapack-man.changes create mode 100644 lapack-man.spec diff --git a/lapack-man.changes b/lapack-man.changes new file mode 100644 index 0000000..302edc3 --- /dev/null +++ b/lapack-man.changes @@ -0,0 +1,8 @@ +------------------------------------------------------------------- +Wed May 17 22:59:46 UTC 2017 - dimstar@opensuse.org + +- Build the man pages in a separate .spec file (lapack-man). The + resulting rpm names are kept identical. This allows us to drop + doxygen out of lapack's main package buildroot, thus eliminating + a build cycle. + diff --git a/lapack-man.spec b/lapack-man.spec new file mode 100644 index 0000000..e5ca0f7 --- /dev/null +++ b/lapack-man.spec @@ -0,0 +1,141 @@ +# +# spec file for package lapack-man +# +# Copyright (c) 2017 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 +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# + + +Name: lapack-man +%define _name lapack +Version: 3.5.0 +Release: 0 +Summary: Manpages for LAPACK +License: BSD-3-Clause +Group: Development/Libraries/Parallel +Url: http://www.netlib.org/lapack/ +Source0: http://www.netlib.org/lapack/%{_name}-%{version}.tgz +BuildRequires: doxygen >= 1.7 +Provides: lapack-manpages = %{version} +Obsoletes: lapack-manpages < %{version} +BuildArch: noarch +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +Manpages for LAPACK + +%package -n blas-man +Summary: Documentation for BLAS (Basic Linear Algebra Subprograms) +Group: Development/Libraries/Parallel +Provides: blasman = %{version} +Obsoletes: blasman < %{version} + +%description -n blas-man +The blas-man package contains documentation for BLAS (Basic Linear +Algebra subprograms) routines, in the form of man pages. + +%prep +%setup -q -n %{_name}-%{version} + +%build +cp make.inc.example make.inc +# Create man pages - and do some cleanup +make man %{?_smp_mflags} +rm -f DOCS/man/man3/*tst* +rm -f DOCS/man/man3/TST* +rm -f DOCS/man/man3/MYSUB.3 +rm -f DOCS/man/man3/INSTALL_lsame.f.3 +rm -f DOCS/man/man3/xerbla.f.3 +rm -f DOCS/man/man3/xerbla_array.f.3 +rm -f DOCS/man/man3/*_.3 +rm -f DOCS/man/man3/dsecnd_*.3 +rm -f DOCS/man/man3/DSECND.3 +rm -f DOCS/man/man3/second_*3 +rm -f DOCS/man/man3/SECOND.3 +rm -f DOCS/man/man3/LAPACK_version.f.3 +rm -f DOCS/man/man3/SRC_ilaver.f.3 +rm -f DOCS/man/man3/SRC_xerbla.f.3 +rm -f DOCS/man/man3/SRC_xerbla_array.f.3 +rm -f DOCS/man/man3/SLAMC2.3.gz +rm -f DOCS/man/man3/SLAMC3.3.gz +rm -f DOCS/man/man3/SLAMC4.3.gz +rm -f DOCS/man/man3/SLAMC5.3.gz +rm -f DOCS/man/man3/DLAMC2.3.gz +rm -f DOCS/man/man3/DLAMC3.3.gz +rm -f DOCS/man/man3/DLAMC4.3.gz +rm -f DOCS/man/man3/DLAMC5.3.gz +rm -f DOCS/man/man3/SLADIV1.3.gz +rm -f DOCS/man/man3/SLADIV2.3.gz +rm -f DOCS/man/man3/DLADIV1.3.gz +rm -f DOCS/man/man3/DLADIV2.3.gz +mv DOCS/man/man3/BLAS_SRC_lsame.f.3 DOCS/man/man3/lsame.f.3 +mv DOCS/man/man3/BLAS_SRC_xerbla.f.3 DOCS/man/man3/xerbla.f.3 +mv DOCS/man/man3/BLAS_SRC_xerbla_array.f.3 DOCS/man/man3/xerbla_array.f.3 +mv DOCS/man/man3/INSTALL_ilaver.f.3 DOCS/man/man3/ilaver.f.3 +rm -f DOCS/psfig.tex # see bnc#757332 + +%install +install -d %{buildroot}%{_mandir}/man3 +install -m 0644 DOCS/man/man3/*.3 %{buildroot}%{_mandir}/man3/ +find BLAS/SRC/ -name \*.f -type f -printf "%{_mandir}/man3/%f.3.gz\n" \ + > blasmans +find BLAS/SRC/ -name \*.f -type f -printf "%f\n" \ + | tr 'a-z' 'A-Z' |sed -e 's#\(.*\).F#'%{_mandir}/man3/'\1.3.gz#' \ + >> blasmans +find SRC/ -name \*.f -type f -printf "%{_mandir}/man3/%f.3.gz\n" \ + | grep -v -E 'lsame.f|sceil.f|xerbla.f|xerbla_array.f' \ + | sort -u > lapackmans +find SRC/ -name \*.f -type f -printf "%f\n" \ + | grep -v -E 'sceil.f|xerbla.f|xerbla_array.f' \ + | tr 'a-z' 'A-Z' |sed -e 's#\(.*\).F#'%{_mandir}/man3/'\1.3.gz#' \ + | sort -u >> lapackmans +echo %{_mandir}/man3/SLAMC1.3.gz >> lapackmans +echo %{_mandir}/man3/SLAMC2.3.gz >> lapackmans +echo %{_mandir}/man3/SLAMC3.3.gz >> lapackmans +echo %{_mandir}/man3/SLAMC4.3.gz >> lapackmans +echo %{_mandir}/man3/SLAMC5.3.gz >> lapackmans +echo %{_mandir}/man3/SLAMCH.3.gz >> lapackmans +echo %{_mandir}/man3/DLAMC1.3.gz >> lapackmans +echo %{_mandir}/man3/DLAMC2.3.gz >> lapackmans +echo %{_mandir}/man3/DLAMC3.3.gz >> lapackmans +echo %{_mandir}/man3/DLAMC4.3.gz >> lapackmans +echo %{_mandir}/man3/DLAMC5.3.gz >> lapackmans +echo %{_mandir}/man3/DLAMCH.3.gz >> lapackmans +echo %{_mandir}/man3/SLADIV1.3.gz >> lapackmans +echo %{_mandir}/man3/SLADIV2.3.gz >> lapackmans +echo %{_mandir}/man3/DLADIV1.3.gz >> lapackmans +echo %{_mandir}/man3/DLADIV2.3.gz >> lapackmans +echo %{_mandir}/man3/slamch.f.3.gz >> lapackmans +echo %{_mandir}/man3/slamchf77.f.3.gz >> lapackmans +echo %{_mandir}/man3/dlamch.f.3.gz >> lapackmans +echo %{_mandir}/man3/dlamchf77.f.3.gz >> lapackmans +ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC2.3.gz +ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC4.3.gz +ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC5.3.gz +ln -s SLAMCH.3.gz %{buildroot}/%{_mandir}/man3/SLAMC3.3.gz +ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC2.3.gz +ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC4.3.gz +ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC5.3.gz +ln -s DLAMCH.3.gz %{buildroot}/%{_mandir}/man3/DLAMC3.3.gz +ln -s SLADIV.3.gz %{buildroot}/%{_mandir}/man3/SLADIV1.3.gz +ln -s SLADIV.3.gz %{buildroot}/%{_mandir}/man3/SLADIV2.3.gz +ln -s DLADIV.3.gz %{buildroot}/%{_mandir}/man3/DLADIV1.3.gz +ln -s DLADIV.3.gz %{buildroot}/%{_mandir}/man3/DLADIV2.3.gz + +%files -f lapackmans +%defattr(-,root,root) + +%files -n blas-man -f blasmans +%defattr(-,root,root) + +%changelog diff --git a/lapack.changes b/lapack.changes index 4fc246a..41f7a91 100644 --- a/lapack.changes +++ b/lapack.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Wed May 17 22:59:46 UTC 2017 - dimstar@opensuse.org + +- Build the man pages in a separate .spec file (lapack-man). The + resulting rpm names are kept identical. This allows us to drop + doxygen out of lapack's main package buildroot, thus eliminating + a build cycle. + ------------------------------------------------------------------- Fri May 8 20:20:52 UTC 2015 - dmitry_r@opensuse.org diff --git a/lapack.spec b/lapack.spec index cf48195..94e7263 100644 --- a/lapack.spec +++ b/lapack.spec @@ -1,7 +1,7 @@ # # spec file for package lapack # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 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 @@ -26,7 +26,6 @@ Url: http://www.netlib.org/lapack/ Source0: http://www.netlib.org/lapack/%{name}-%{version}.tgz Source99: baselibs.conf Patch1: lapack-3.2.2.patch -BuildRequires: doxygen >= 1.7 BuildRequires: gcc-fortran BuildRequires: python BuildRequires: update-alternatives @@ -135,31 +134,6 @@ linear algebra. BLAS is fast and well-tested, was written in FORTRAN 77 and built with gfortran. BLAS manual pages are available in the blas-man package. -%package man -Summary: Manpages for LAPACK -Group: Development/Libraries/Parallel -Provides: lapack-manpages = %{version} -Obsoletes: lapack-manpages < %{version} -%if 0%{?suse_version} >= 1120 -BuildArch: noarch -%endif - -%description man -Manpages for LAPACK - -%package -n blas-man -Summary: Documentation for BLAS (Basic Linear Algebra Subprograms) -Group: Development/Libraries/Parallel -Provides: blasman = %{version} -Obsoletes: blasman < %{version} -%if 0%{?suse_version} >= 1120 -BuildArch: noarch -%endif - -%description -n blas-man -The blas-man package contains documentation for BLAS (Basic Linear -Algebra subprograms) routines, in the form of man pages. - %package -n liblapacke3 Summary: LAPACKE development files Group: Development/Libraries/C and C++ @@ -275,40 +249,6 @@ if grep -B15 -A15 FAIL TESTING/*.out; then else true # No failures fi -# Create man pages - and do some cleanup -make man %{?_smp_mflags} -rm -f DOCS/man/man3/*tst* -rm -f DOCS/man/man3/TST* -rm -f DOCS/man/man3/MYSUB.3 -rm -f DOCS/man/man3/INSTALL_lsame.f.3 -rm -f DOCS/man/man3/xerbla.f.3 -rm -f DOCS/man/man3/xerbla_array.f.3 -rm -f DOCS/man/man3/*_.3 -rm -f DOCS/man/man3/dsecnd_*.3 -rm -f DOCS/man/man3/DSECND.3 -rm -f DOCS/man/man3/second_*3 -rm -f DOCS/man/man3/SECOND.3 -rm -f DOCS/man/man3/LAPACK_version.f.3 -rm -f DOCS/man/man3/SRC_ilaver.f.3 -rm -f DOCS/man/man3/SRC_xerbla.f.3 -rm -f DOCS/man/man3/SRC_xerbla_array.f.3 -rm -f DOCS/man/man3/SLAMC2.3.gz -rm -f DOCS/man/man3/SLAMC3.3.gz -rm -f DOCS/man/man3/SLAMC4.3.gz -rm -f DOCS/man/man3/SLAMC5.3.gz -rm -f DOCS/man/man3/DLAMC2.3.gz -rm -f DOCS/man/man3/DLAMC3.3.gz -rm -f DOCS/man/man3/DLAMC4.3.gz -rm -f DOCS/man/man3/DLAMC5.3.gz -rm -f DOCS/man/man3/SLADIV1.3.gz -rm -f DOCS/man/man3/SLADIV2.3.gz -rm -f DOCS/man/man3/DLADIV1.3.gz -rm -f DOCS/man/man3/DLADIV2.3.gz -mv DOCS/man/man3/BLAS_SRC_lsame.f.3 DOCS/man/man3/lsame.f.3 -mv DOCS/man/man3/BLAS_SRC_xerbla.f.3 DOCS/man/man3/xerbla.f.3 -mv DOCS/man/man3/BLAS_SRC_xerbla_array.f.3 DOCS/man/man3/xerbla_array.f.3 -mv DOCS/man/man3/INSTALL_ilaver.f.3 DOCS/man/man3/ilaver.f.3 -rm -f DOCS/psfig.tex # see bnc#757332 %install install -d %{buildroot}/%{_libdir} @@ -343,53 +283,6 @@ install -m 755 liblapacke.so.%{version} %{buildroot}/%{_libdir} ln -s liblapacke.so.%{version} %{buildroot}/%{_libdir}/liblapacke.so.3 ln -s liblapacke.so.%{version} %{buildroot}/%{_libdir}/liblapacke.so cd .. -## documentation -install -d %{buildroot}%{_mandir}/man3 -install -m 0644 DOCS/man/man3/*.3 %{buildroot}%{_mandir}/man3/ -find BLAS/SRC/ -name \*.f -type f -printf "%{_mandir}/man3/%f.3.gz\n" \ - > blasmans -find BLAS/SRC/ -name \*.f -type f -printf "%f\n" \ - | tr 'a-z' 'A-Z' |sed -e 's#\(.*\).F#'%{_mandir}/man3/'\1.3.gz#' \ - >> blasmans -find SRC/ -name \*.f -type f -printf "%{_mandir}/man3/%f.3.gz\n" \ - | grep -v -E 'lsame.f|sceil.f|xerbla.f|xerbla_array.f' \ - | sort -u > lapackmans -find SRC/ -name \*.f -type f -printf "%f\n" \ - | grep -v -E 'sceil.f|xerbla.f|xerbla_array.f' \ - | tr 'a-z' 'A-Z' |sed -e 's#\(.*\).F#'%{_mandir}/man3/'\1.3.gz#' \ - | sort -u >> lapackmans -echo %{_mandir}/man3/SLAMC1.3.gz >> lapackmans -echo %{_mandir}/man3/SLAMC2.3.gz >> lapackmans -echo %{_mandir}/man3/SLAMC3.3.gz >> lapackmans -echo %{_mandir}/man3/SLAMC4.3.gz >> lapackmans -echo %{_mandir}/man3/SLAMC5.3.gz >> lapackmans -echo %{_mandir}/man3/SLAMCH.3.gz >> lapackmans -echo %{_mandir}/man3/DLAMC1.3.gz >> lapackmans -echo %{_mandir}/man3/DLAMC2.3.gz >> lapackmans -echo %{_mandir}/man3/DLAMC3.3.gz >> lapackmans -echo %{_mandir}/man3/DLAMC4.3.gz >> lapackmans -echo %{_mandir}/man3/DLAMC5.3.gz >> lapackmans -echo %{_mandir}/man3/DLAMCH.3.gz >> lapackmans -echo %{_mandir}/man3/SLADIV1.3.gz >> lapackmans -echo %{_mandir}/man3/SLADIV2.3.gz >> lapackmans -echo %{_mandir}/man3/DLADIV1.3.gz >> lapackmans -echo %{_mandir}/man3/DLADIV2.3.gz >> lapackmans -echo %{_mandir}/man3/slamch.f.3.gz >> lapackmans -echo %{_mandir}/man3/slamchf77.f.3.gz >> lapackmans -echo %{_mandir}/man3/dlamch.f.3.gz >> lapackmans -echo %{_mandir}/man3/dlamchf77.f.3.gz >> lapackmans -ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC2.3.gz -ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC4.3.gz -ln -s SLAMC1.3.gz %{buildroot}/%{_mandir}/man3/SLAMC5.3.gz -ln -s SLAMCH.3.gz %{buildroot}/%{_mandir}/man3/SLAMC3.3.gz -ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC2.3.gz -ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC4.3.gz -ln -s DLAMC1.3.gz %{buildroot}/%{_mandir}/man3/DLAMC5.3.gz -ln -s DLAMCH.3.gz %{buildroot}/%{_mandir}/man3/DLAMC3.3.gz -ln -s SLADIV.3.gz %{buildroot}/%{_mandir}/man3/SLADIV1.3.gz -ln -s SLADIV.3.gz %{buildroot}/%{_mandir}/man3/SLADIV2.3.gz -ln -s DLADIV.3.gz %{buildroot}/%{_mandir}/man3/DLADIV1.3.gz -ln -s DLADIV.3.gz %{buildroot}/%{_mandir}/man3/DLADIV2.3.gz %post -n libblas3 %{_sbindir}/update-alternatives --install \ @@ -479,12 +372,6 @@ fi %{_libdir}/libblas.a %{_libdir}/libblas_pic.a -%files man -f lapackmans -%defattr(-,root,root) - -%files -n blas-man -f blasmans -%defattr(-,root,root) - %files -n liblapacke3 %defattr(-,root,root,-) %{_libdir}/liblapacke.so.%{version}