packages: lapack/lapack-automake_support.patch, lapack/lapack.spec - update...

qboosh qboosh at pld-linux.org
Sat Dec 31 15:56:16 CET 2011


Author: qboosh                       Date: Sat Dec 31 14:56:16 2011 GMT
Module: packages                      Tag: HEAD
---- Log message:
- updated to 3.4.0
- updated automake_support patch
- package lapacke libraries (native C interface to LAPACK)

---- Files affected:
packages/lapack:
   lapack-automake_support.patch (1.18 -> 1.19) , lapack.spec (1.47 -> 1.48) 

---- Diffs:

================================================================
Index: packages/lapack/lapack-automake_support.patch
diff -u packages/lapack/lapack-automake_support.patch:1.18 packages/lapack/lapack-automake_support.patch:1.19
--- packages/lapack/lapack-automake_support.patch:1.18	Sat Apr 23 20:00:28 2011
+++ packages/lapack/lapack-automake_support.patch	Sat Dec 31 15:56:11 2011
@@ -1,12 +1,11 @@
-diff -Nur lapack-3.1.1.orig/BLAS/Makefile.am lapack-3.1.1/BLAS/Makefile.am
 --- lapack-3.1.1.orig/BLAS/Makefile.am	1970-01-01 01:00:00.000000000 +0100
 +++ lapack-3.1.1/BLAS/Makefile.am	2007-08-06 22:04:22.000000000 +0100
 @@ -0,0 +1,3 @@
 +SUBDIRS=SRC
 +pkgconfigdir = $(libdir)/pkgconfig
 +pkgconfig_DATA = blas.pc
---- lapack-3.3.0.orig/BLAS/SRC/Makefile.am	1970-01-01 01:00:00.000000000 +0100
-+++ lapack-3.3.0/BLAS/SRC/Makefile.am	2007-08-06 22:05:32.000000000 +0100
+--- lapack-3.4.0.orig/BLAS/SRC/Makefile.am	1970-01-01 01:00:00.000000000 +0100
++++ lapack-3.4.0/BLAS/SRC/Makefile.am	2007-08-06 22:05:32.000000000 +0100
 @@ -0,0 +1,31 @@
 +LIBTOOL = $(SHELL) $(top_builddir)/libtool --tag=F77
 +lib_LTLIBRARIES = libblas.la
@@ -39,8 +38,8 @@
 +	dgemm.f dsymm.f dsyrk.f dsyr2k.f dtrmm.f dtrsm.f \
 +	zgemm.f zsymm.f zsyrk.f zsyr2k.f ztrmm.f ztrsm.f \
 +	zhemm.f zherk.f zher2k.f
---- lapack-3.3.0.orig/configure.in	1970-01-01 01:00:00.000000000 +0100
-+++ lapack-3.3.0/configure.in	2007-08-06 22:04:22.000000000 +0100
+--- lapack-3.4.0.orig/configure.in	1970-01-01 01:00:00.000000000 +0100
++++ lapack-3.4.0/configure.in	2007-08-06 22:04:22.000000000 +0100
 @@ -0,0 +1,19 @@
 +dnl Process this file with autoconf to produce a configure script.
 +
@@ -49,8 +48,8 @@
 +dnl klakier at pld.org.pl
 +
 +AC_INIT
-+AM_INIT_AUTOMAKE(lapack, 3.3.1)
-+LIBVERSION="6:1:4"
++AM_INIT_AUTOMAKE(lapack, 3.4.0)
++LIBVERSION="7:0:5"
 +AC_SUBST([LIBVERSION])
 +AM_CONFIG_HEADER(config.h)
 +
@@ -60,17 +59,17 @@
 +AC_PROG_F77
 +AC_PROG_LIBTOOL
 +
-+AC_OUTPUT([Makefile SRC/Makefile BLAS/Makefile BLAS/SRC/Makefile BLAS/blas.pc lapack.pc])
++AC_OUTPUT([Makefile SRC/Makefile BLAS/Makefile BLAS/SRC/Makefile lapacke/Makefile lapacke/src/Makefile BLAS/blas.pc lapack.pc])
 diff -Nur lapack-3.1.1.orig/Makefile.am lapack-3.1.1/Makefile.am
 --- lapack-3.1.1.orig/Makefile.am	1970-01-01 01:00:00.000000000 +0100
 +++ lapack-3.1.1/Makefile.am	2007-08-06 22:04:22.000000000 +0100
 @@ -0,0 +1,3 @@
-+SUBDIRS=BLAS SRC
++SUBDIRS=BLAS SRC lapacke
 +pkgconfigdir = $(libdir)/pkgconfig
 +pkgconfig_DATA = lapack.pc
---- lapack-3.3.0.orig/SRC/Makefile.am	1970-01-01 01:00:00.000000000 +0100
-+++ lapack-3.3.0/SRC/Makefile.am	2007-08-06 22:06:57.000000000 +0100
-@@ -0,0 +1,313 @@
+--- lapack-3.4.0.orig/SRC/Makefile.am	1970-01-01 01:00:00.000000000 +0100
++++ lapack-3.4.0/SRC/Makefile.am	2007-08-06 22:06:57.000000000 +0100
+@@ -0,0 +1,321 @@
 +LIBTOOL = $(SHELL) $(top_builddir)/libtool --tag=F77
 +lib_LTLIBRARIES = liblapack.la
 +liblapack_la_LDFLAGS = -version-info @LIBVERSION@
@@ -166,6 +165,8 @@
 +	sgejsv.f  sgesvj.f  sgsvj0.f  sgsvj1.f \
 +	sgeequb.f ssyequb.f spoequb.f sgbequb.f \
 +	sbbcsd.f slapmr.f sorbdb.f sorcsd.f \
++	sgeqrt.f sgeqrt2.f sgeqrt3.f sgemqrt.f \
++	stpqrt.f stpqrt2.f stpmqrt.f stprfb.f \
 +	cbdsqr.f cgbbrd.f cgbcon.f cgbequ.f cgbrfs.f cgbsv.f  cgbsvx.f \
 +	cgbtf2.f cgbtrf.f cgbtrs.f cgebak.f cgebal.f cgebd2.f cgebrd.f \
 +	cgecon.f cgeequ.f cgees.f  cgeesx.f cgeev.f  cgeevx.f \
@@ -225,6 +226,8 @@
 +	ctfttr.f ctpttf.f ctpttr.f ctrttf.f ctrttp.f \
 +	cgeequb.f cgbequb.f csyequb.f cpoequb.f cheequb.f \
 +	cbbcsd.f clapmr.f cunbdb.f cuncsd.f \
++	cgeqrt.f cgeqrt2.f cgeqrt3.f cgemqrt.f \
++	ctpqrt.f ctpqrt2.f ctpmqrt.f ctprfb.f \
 +	dgbbrd.f dgbcon.f dgbequ.f dgbrfs.f dgbsv.f \
 +	dgbsvx.f dgbtf2.f dgbtrf.f dgbtrs.f dgebak.f dgebal.f dgebd2.f \
 +	dgebrd.f dgecon.f dgeequ.f dgees.f  dgeesx.f dgeev.f  dgeevx.f \
@@ -281,6 +284,8 @@
 +	dgejsv.f  dgesvj.f  dgsvj0.f  dgsvj1.f \
 +	dgeequb.f dsyequb.f dpoequb.f dgbequb.f \
 +	dbbcsd.f dlapmr.f dorbdb.f dorcsd.f \
++	dgeqrt.f dgeqrt2.f dgeqrt3.f dgemqrt.f \
++	dtpqrt.f dtpqrt2.f dtpmqrt.f dtprfb.f \
 +	zbdsqr.f zgbbrd.f zgbcon.f zgbequ.f zgbrfs.f zgbsv.f  zgbsvx.f \
 +	zgbtf2.f zgbtrf.f zgbtrs.f zgebak.f zgebal.f zgebd2.f zgebrd.f \
 +	zgecon.f zgeequ.f zgees.f  zgeesx.f zgeev.f  zgeevx.f \
@@ -344,18 +349,20 @@
 +	zhfrk.f ztfttp.f zlanhf.f zpftrf.f zpftri.f zpftrs.f ztfsm.f ztftri.f \
 +	ztfttr.f ztpttf.f ztpttr.f ztrttf.f ztrttp.f \
 +	zgeequb.f zgbequb.f zsyequb.f zpoequb.f zheequb.f \
-+	zbbcsd.f zlapmr.f zunbdb.f zuncsd.f
++	zbbcsd.f zlapmr.f zunbdb.f zuncsd.f \
++	zgeqrt.f zgeqrt2.f zgeqrt3.f zgemqrt.f \
++	ztpqrt.f ztpqrt2.f ztpmqrt.f ztprfb.f
 +# these require XBLAS
 +XBLASSRC = \
 +	sgesvxx.f sgerfsx.f sla_gerfsx_extended.f sla_geamv.f \
-+	sla_gercond.f sla_rpvgrw.f ssysvxx.f ssyrfsx.f \		
++	sla_gercond.f sla_gerpvgrw.f ssysvxx.f ssyrfsx.f \
 +	sla_syrfsx_extended.f sla_syamv.f sla_syrcond.f sla_syrpvgrw.f \
 +	sposvxx.f sporfsx.f sla_porfsx_extended.f sla_porcond.f	\
 +	sla_porpvgrw.f sgbsvxx.f sgbrfsx.f sla_gbrfsx_extended.f \
 +	sla_gbamv.f sla_gbrcond.f sla_gbrpvgrw.f sla_lin_berr.f slarscl2.f \
 +	slascl2.f sla_wwaddw.f \
 +	cgesvxx.f cgerfsx.f cla_gerfsx_extended.f cla_geamv.f \
-+	cla_gercond_c.f cla_gercond_x.f cla_rpvgrw.f \
++	cla_gercond_c.f cla_gercond_x.f cla_gerpvgrw.f \
 +	csysvxx.f csyrfsx.f cla_syrfsx_extended.f cla_syamv.f \
 +	cla_syrcond_c.f cla_syrcond_x.f cla_syrpvgrw.f \
 +	cposvxx.f cporfsx.f cla_porfsx_extended.f \
@@ -366,14 +373,14 @@
 +	cla_hercond_c.f cla_hercond_x.f cla_herpvgrw.f \
 +	cla_lin_berr.f clarscl2.f clascl2.f cla_wwaddw.f \
 +	dgesvxx.f dgerfsx.f dla_gerfsx_extended.f dla_geamv.f \
-+	dla_gercond.f dla_rpvgrw.f dsysvxx.f dsyrfsx.f \
++	dla_gercond.f dla_gerpvgrw.f dsysvxx.f dsyrfsx.f \
 +	dla_syrfsx_extended.f dla_syamv.f dla_syrcond.f dla_syrpvgrw.f \
 +	dposvxx.f dporfsx.f dla_porfsx_extended.f dla_porcond.f \
 +	dla_porpvgrw.f dgbsvxx.f dgbrfsx.f dla_gbrfsx_extended.f \
 +	dla_gbamv.f dla_gbrcond.f dla_gbrpvgrw.f dla_lin_berr.f dlarscl2.f \
 +	dlascl2.f dla_wwaddw.f \
 +	zgesvxx.f zgerfsx.f zla_gerfsx_extended.f zla_geamv.f \
-+	zla_gercond_c.f zla_gercond_x.f zla_rpvgrw.f zsysvxx.f zsyrfsx.f \
++	zla_gercond_c.f zla_gercond_x.f zla_gerpvgrw.f zsysvxx.f zsyrfsx.f \
 +	zla_syrfsx_extended.f zla_syamv.f zla_syrcond_c.f zla_syrcond_x.f \
 +	zla_syrpvgrw.f zposvxx.f zporfsx.f zla_porfsx_extended.f \
 +	zla_porcond_c.f zla_porcond_x.f zla_porpvgrw.f zgbsvxx.f zgbrfsx.f \
@@ -384,3 +391,17 @@
 +
 +# these sources use hacks to detect fp precision, optimization would break them
 +slamch.lo dlamch.lo:: FFLAGS += -O0
+--- lapack-3.4.0.orig/lapacke/Makefile.am	1970-01-01 01:00:00.000000000 +0100
++++ lapack-3.4.0/lapacke/Makefile.am	2007-08-06 22:06:57.000000000 +0100
+@@ -0,0 +1,2 @@
++SUBDIRS=src
++include_HEADERS=include/lapacke.h include/lapacke_config.h include/lapacke_utils.h
+--- lapack-3.4.0.orig/lapacke/src/Makefile.am	1970-01-01 01:00:00.000000000 +0100
++++ lapack-3.4.0/lapacke/src/Makefile.am	2007-08-06 22:06:57.000000000 +0100
+@@ -0,0 +1,6 @@
++LIBTOOL = $(SHELL) $(top_builddir)/libtool
++lib_LTLIBRARIES = liblapacke.la
++liblapacke_la_CPPFLAGS = -I$(top_srcdir)/lapacke/include
++liblapacke_la_LDFLAGS = -version-info @LIBVERSION@
++liblapacke_la_LIBADD = $(top_builddir)/SRC/liblapack.la $(top_builddir)/BLAS/SRC/libblas.la
++liblapacke_la_SOURCES = @LAPACKE_FILES@

================================================================
Index: packages/lapack/lapack.spec
diff -u packages/lapack/lapack.spec:1.47 packages/lapack/lapack.spec:1.48
--- packages/lapack/lapack.spec:1.47	Sat Apr 23 20:00:28 2011
+++ packages/lapack/lapack.spec	Sat Dec 31 15:56:11 2011
@@ -1,16 +1,20 @@
 # $Revision$, $Date$
+# NOTE: when updating automake_support patch, look both on included
+#  cmake suite and plain Makefiles - one of them is mostly outdated
+#  (as of 3.4.0, cmake misses some files added in 3.4; also it
+#   doesn't care about setting soname, so currently isn't worth using)
 Summary:	The LAPACK libraries for numerical linear algebra
 Summary(pl.UTF-8):	Biblioteki numeryczne LAPACK do algebry liniowej
 Name:		lapack
-Version:	3.3.1
-%define	man_ver	3.3.1
+Version:	3.4.0
+%define	man_ver	3.4.0
 Release:	1
 License:	freely distributable
 Group:		Libraries
 Source0:	http://www.netlib.org/lapack/%{name}-%{version}.tgz
-# Source0-md5:	d0d533ec9a5b74933c2a1e84eedc58b4
+# Source0-md5:	02d5706ec03ba885fc246e5fa10d8c70
 Source1:	http://www.netlib.org/lapack/manpages-%{man_ver}.tgz
-# Source1-md5:	0f88dbcf41bb53ef98890ee834da913e
+# Source1-md5:	b9448c036dcfb174215ecbd207168fad
 Patch0:		%{name}-automake_support.patch
 Patch1:		blas-nan.patch
 URL:		http://www.netlib.org/lapack/
@@ -111,16 +115,65 @@
 Pliki programistyczne BLAS.
 
 %package -n blas-static
-Summary:	Static BLAS libraries
-Summary(pl.UTF-8):	Biblioteki statyczne BLAS
+Summary:	Static BLAS library
+Summary(pl.UTF-8):	Biblioteka statyczna BLAS
 Group:		Development/Libraries
 Requires:	blas-devel = %{version}-%{release}
 
 %description -n blas-static
-Static BLAS libraries.
+Static BLAS library.
 
 %description -n blas-static -l pl.UTF-8
-Biblioteki statyczne BLAS.
+Biblioteka statyczna BLAS.
+
+%package -n lapacke
+Summary:	LAPACKE - native C interface to LAPACK library routines
+Summary(pl.UTF-8):	LAPACKE - natywny interfejs C do procedur biblioteki LAPACK
+Group:		Libraries
+Requires:	lapack = %{version}-%{release}
+
+%description -n lapacke
+This library is a part of reference implementation for the C interface
+to LAPACK project according to the specifications described at the
+forum for the Intel(R) Math Kernel Library (Intel(R) MKL).
+
+This implementation provides a native C interface to LAPACK routines
+to facilitate usage of LAPACK functionality for C programmers.
+
+%description -n lapacke -l pl.UTF-8
+Ta bilioteka jest częścią implementacji referencyjnej interfejsu C do
+projektu LAPACK, zgodnej ze specyfikacją opisaną na forum biblioteki
+Intel(R) Math Kernel Library.
+
+Ta implementacja udostępnia natywny interfejs C do procedur biblioteki
+LAPACK, ułatwiając jej użycie programistom C.
+
+%package -n lapacke-devel
+Summary:	Header files for LAPACKE - native C interface to LAPACK
+Summary(pl.UTF-8):	Pliki nagłówkowe biblioteki LAPACKE - natywnego interfejsu C do biblioteki LAPACK
+Group:		Development/Libraries
+Requires:	lapack-devel = %{version}-%{release}
+Requires:	lapacke = %{version}-%{release}
+
+%description -n lapacke-devel
+Header files for LAPACKE - native C interface to LAPACK.
+
+%description -n lapacke-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki LAPACKE - natywnego interfejsu C do
+biblioteki LAPACK.
+
+%package -n lapacke-static
+Summary:	Static LAPACKE library - native C interface to LAPACK
+Summary(pl.UTF-8):	Statyczna biblioteka LAPACKE - natywny interfejs C do biblioteki LAPACK
+Group:		Development/Libraries
+Requires:	lapacke-devel = %{version}-%{release}
+
+%description -n lapacke-static
+Static LAPACKE library - native C interface to LAPACK.
+
+%description -n lapacke-static -l pl.UTF-8
+Statyczna biblioteka LAPACKE - natywny interfejs C do biblioteki
+LAPACK.
 
 %prep
 %setup -q -a1
@@ -131,6 +184,26 @@
 # copy selected routines; use INT_ETIME versions of second
 cp -f INSTALLSRC/{ilaver,slamch,dlamch,second_INT_ETIME,dsecnd_INT_ETIME}.f SRC
 
+# fill in lapacke files, omitting matgen and xblas-dependent files
+sed -i -e "s, at LAPACKE_FILES@,$(cd lapacke/src ; ls -1 *.c ../utils/*.c | grep -Ev 'lagge|laghe|lagsy|latms|gbrfsx|gbsvxx|gerfsx|gesvxx|herfsx|hesvxx|porfsx|posvxx|syrfsx|sysvxx' |tr '\n' ' ')," lapacke/src/Makefile.am
+
+# bogus
+%{__rm} man/man3/_Users_julie_Desktop_lapack-*.3 \
+	man/man3/__*.3
+# duplicated...
+%{__rm} man/man3/{INSTALL_ilaver,INSTALL_lsame,SRC_xerbla,SRC_xerbla_array}.f.3
+# ...in BLAS and LAPACK sources; keep versions from BLAS
+mv -f man/man3/BLAS_SRC_lsame.f.3 man/man3/lsame.f.3
+mv -f man/man3/BLAS_SRC_xerbla.f.3 man/man3/xerbla.f.3
+mv -f man/man3/BLAS_SRC_xerbla_array.f.3 man/man3/xerbla_array.f.3
+sed -i -e 's,man3/INSTALL_,man3/,' man/man3/LSAME.3
+sed -i -e 's,man3/SRC_,man3/,' man/man3/{ILAVER,XERBLA,XERBLA_ARRAY}.3
+# ...in SRC and INSTALL dirs
+mv -f man/man3/SRC_ilaver.f.3 man/man3/ilaver.f.3
+# [sd]lamchf77.f is not used
+%{__rm} man/man3/{DLAMC1,DLAMC2,DLAMC4,DLAMC5,dlamchf77.f}.3
+%{__rm} man/man3/{SLAMC1,SLAMC2,SLAMC4,SLAMC5,slamchf77.f}.3
+
 %build
 %{__libtoolize}
 %{__aclocal}
@@ -147,18 +220,30 @@
 %{__make} install \
 	DESTDIR=$RPM_BUILD_ROOT
 
-# present both in blas and lapack
-%{__rm} manpages/man/manl/{lsame,xerbla,xerbla_array}.l
-
+# install man pages, distributing them among blas-devel and lapack-devel
 install -d $RPM_BUILD_ROOT%{_mandir}/man3
-for d in manpages/man/manl/*.l manpages/blas/man/manl/*.l ; do
-	install $d $RPM_BUILD_ROOT%{_mandir}/man3/`basename $d .l`.3
-done
-
 echo "%defattr(644,root,root,755)" > blasmans.list
-find manpages/blas/man/manl -name "*.l" -printf "%{_mandir}/man3/%%f\n" | sed 's/\.l/.3*/' >> blasmans.list
 echo "%defattr(644,root,root,755)" > mans.list
-find manpages/man/manl -name "*.l" -printf "%{_mandir}/man3/%%f\n" | sed 's/\.l/.3*/' >> mans.list
+for f in man/man3/*.3 ; do
+	cp -p "$f" $RPM_BUILD_ROOT%{_mandir}/man3
+	bn=$(basename $f)
+	if echo "$bn" | grep '\.f\.3$' ; then
+		ffn="${bn%.3}"
+	elif grep '\.f\.3$' "$f" ; then
+		ffn=$(sed -e '1s,^\.so man3/\(.*\.f\)\.3,\1,' $f)
+	else
+		echo "Unknown manpage: $f"
+		exit 1
+	fi
+	if [ -f "BLAS/SRC/$ffn" ]; then
+		echo "%{_mandir}/man3/${bn}*" >> blasmans.list
+	elif [ -f "SRC/$ffn" -o -f "INSTALLSRC/$ffn" ]; then
+		echo "%{_mandir}/man3/${bn}*" >> mans.list
+	else
+		echo "Unknown manpage: $f (source file: $ffn)"
+		exit 1
+	fi
+done
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -169,6 +254,9 @@
 %post   -n blas -p /sbin/ldconfig
 %postun -n blas -p /sbin/ldconfig
 
+%post   -n lapacke -p /sbin/ldconfig
+%postun -n lapacke -p /sbin/ldconfig
+
 %files
 %defattr(644,root,root,755)
 %doc README
@@ -200,12 +288,33 @@
 %defattr(644,root,root,755)
 %{_libdir}/libblas.a
 
+%files -n lapacke
+%defattr(644,root,root,755)
+%doc lapacke/{LICENSE,README}
+%attr(755,root,root) %{_libdir}/liblapacke.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/liblapacke.so.2
+
+%files -n lapacke-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/liblapacke.so
+%{_libdir}/liblapacke.la
+%{_includedir}/lapacke*.h
+
+%files -n lapacke-static
+%defattr(644,root,root,755)
+%{_libdir}/liblapacke.a
+
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <feedback at pld-linux.org>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.48  2011/12/31 14:56:11  qboosh
+- updated to 3.4.0
+- updated automake_support patch
+- package lapacke libraries (native C interface to LAPACK)
+
 Revision 1.47  2011/04/23 18:00:28  qboosh
 - updated to 3.3.1 (manpages too)
 - updated automake_support patch
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/lapack/lapack-automake_support.patch?r1=1.18&r2=1.19&f=u
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/lapack/lapack.spec?r1=1.47&r2=1.48&f=u



More information about the pld-cvs-commit mailing list