packages: SPQR/SPQR-shared.patch (NEW), SPQR/SPQR-ufconfig.patch (NEW), SPQ...
qboosh
qboosh at pld-linux.org
Sun Jan 8 12:56:44 CET 2012
Author: qboosh Date: Sun Jan 8 11:56:44 2012 GMT
Module: packages Tag: HEAD
---- Log message:
- new
---- Files affected:
packages/SPQR:
SPQR-shared.patch (NONE -> 1.1) (NEW), SPQR-ufconfig.patch (NONE -> 1.1) (NEW), SPQR.spec (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/SPQR/SPQR-shared.patch
diff -u /dev/null packages/SPQR/SPQR-shared.patch:1.1
--- /dev/null Sun Jan 8 12:56:44 2012
+++ packages/SPQR/SPQR-shared.patch Sun Jan 8 12:56:38 2012
@@ -0,0 +1,250 @@
+--- SPQR/Lib/Makefile.orig 2012-01-08 12:07:16.049602813 +0100
++++ SPQR/Lib/Makefile 2012-01-08 12:22:07.552965999 +0100
+@@ -11,6 +11,7 @@
+ #-------------------------------------------------------------------------------
+ # the optional Partition module requires METIS, CAMD, and CCOLAMD
+ CONFIG = -DNPARTITION
++LIB_WITH_PARTITION =
+ # check if METIS is requested and available
+ ifeq (,$(findstring -DNPARTITION, $(CHOLMOD_CONFIG)))
+ # METIS is requested. See if it is available
+@@ -18,6 +19,7 @@
+ # assume CAMD and CCOLAMD are available
+ # METIS, CAMD, and CCOLAMD is available
+ CONFIG =
++ LIB_WITH_PARTITION = $(METIS) -lccolamd -lcamd
+ endif
+ endif
+ #-------------------------------------------------------------------------------
+@@ -28,14 +30,14 @@
+ # -Wredundant-decls -Wdisabled-optimization \
+ # -ansi -fexceptions
+
+-all: libspqr.a
++all: libspqr.la
+
+-library: libspqr.a
++library: libspqr.la
+
+ purge: distclean
+
+ distclean: clean
+- - $(RM) libspqr.a
++ - $(RM) libspqr.la
+
+ clean:
+ - $(RM) $(CLEAN)
+@@ -92,126 +94,130 @@
+
+ C = $(CXX) $(CF) $(SPQR_CONFIG) $(CONFIG) $(I)
+
+-libspqr.a: $(OBJ)
+- $(ARCHIVE) libspqr.a $(OBJ)
+- - $(RANLIB) libspqr.a
++libspqr.la: $(OBJ)
++ libtool --tag=CC --mode=link $(CXX) $(LDFLAGS) -o libspqr.la -rpath $(libdir) $(OBJ:.o=.lo) \
++ -lcholmod $(LIB_WITH_PARTITION) -lm
++
++install: libspqr.la
++ install -d $(DESTDIR)$(libdir)
++ libtool --mode=install cp libspqr.la $(DESTDIR)$(libdir)/libspqr.la
+
+ spqr_1colamd.o: ../Source/spqr_1colamd.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_1factor.o: ../Source/spqr_1factor.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_1fixed.o: ../Source/spqr_1fixed.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_analyze.o: ../Source/spqr_analyze.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_parallel.o: ../Source/spqr_parallel.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_kernel.o: ../Source/spqr_kernel.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_append.o: ../Source/spqr_append.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_assemble.o: ../Source/spqr_assemble.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_cpack.o: ../Source/spqr_cpack.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_csize.o: ../Source/spqr_csize.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_cumsum.o: ../Source/spqr_cumsum.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_debug.o: ../Source/spqr_debug.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_factorize.o: ../Source/spqr_factorize.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_fcsize.o: ../Source/spqr_fcsize.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_freefac.o: ../Source/spqr_freefac.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_freenum.o: ../Source/spqr_freenum.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_freesym.o: ../Source/spqr_freesym.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_fsize.o: ../Source/spqr_fsize.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_happly.o: ../Source/spqr_happly.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_panel.o: ../Source/spqr_panel.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_happly_work.o: ../Source/spqr_happly_work.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_hpinv.o: ../Source/spqr_hpinv.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_larftb.o: ../Source/spqr_larftb.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_rconvert.o: ../Source/spqr_rconvert.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_rcount.o: ../Source/spqr_rcount.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_rhpack.o: ../Source/spqr_rhpack.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_rsolve.o: ../Source/spqr_rsolve.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_shift.o: ../Source/spqr_shift.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_stranspose1.o: ../Source/spqr_stranspose1.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_stranspose2.o: ../Source/spqr_stranspose2.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_trapezoidal.o: ../Source/spqr_trapezoidal.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_type.o: ../Source/spqr_type.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_front.o: ../Source/spqr_front.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ SuiteSparseQR_expert.o: ../Source/SuiteSparseQR_expert.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_maxcolnorm.o: ../Source/spqr_maxcolnorm.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ SuiteSparseQR_qmult.o: ../Source/SuiteSparseQR_qmult.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ SuiteSparseQR.o: ../Source/SuiteSparseQR.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_tol.o: ../Source/spqr_tol.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ SuiteSparseQR_C.o: ../Source/SuiteSparseQR_C.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+
+ spqr_rmap.o: ../Source/spqr_rmap.cpp
+- $(C) -c $<
++ libtool --tag=CXX --mode=compile $(C) -c $<
+--- SPQR/Demo/Makefile.orig 2012-01-08 12:26:25.106307954 +0100
++++ SPQR/Demo/Makefile 2012-01-08 12:36:06.779660766 +0100
+@@ -24,7 +24,7 @@
+ endif
+ #-------------------------------------------------------------------------------
+
+-CLIB = ../Lib/libspqr.a \
++CLIB = ../Lib/libspqr.la \
+ -lcholmod -lamd -lcolamd $(LIB_WITH_PARTITION) -lm
+
+ # use the BLAS and LAPACK defined by UFconfig.mk; do not use valgrind
+@@ -120,22 +120,22 @@
+ LIBS = $(CLIB) $(FLIB) $(TBB) $(RTLIB)
+
+ qrsimple: qrsimple.cpp library $(INC)
+- $(C) qrsimple.cpp -o qrsimple $(LIBS)
++ libtool --mode=link --tag=CXX $(C) qrsimple.cpp -o qrsimple $(LIBS)
+
+ qrdemo: qrdemo.cpp library $(INC)
+- $(C) qrdemo.cpp -o qrdemo $(LIBS)
++ libtool --mode=link --tag=CXX $(C) qrdemo.cpp -o qrdemo $(LIBS)
+
+ # compile the C code with gcc, but link with g++ to use SuiteSparseQR:
+
+ qrdemoc.o: qrdemoc.c $(INC)
+- $(CC) $(CF) $(SPQR_CONFIG) -ansi $(I) -c $<
++ libtool --mode=compile --tag=CC $(CC) $(CF) $(SPQR_CONFIG) -ansi $(I) -c $<
+
+ qrdemoc: qrdemoc.o library $(INC)
+- $(C) -o qrdemoc qrdemoc.o $(LIBS)
++ libtool --mode=link --tag=CXX $(C) -o qrdemoc qrdemoc.o $(LIBS)
+
+ qrsimplec.o: qrsimplec.c $(INC)
+- $(CC) $(CF) $(SPQR_CONFIG) -ansi $(I) -c $<
++ libtool --mode=compile --tag=CC $(CC) $(CF) $(SPQR_CONFIG) -ansi $(I) -c $<
+
+ qrsimplec: qrsimplec.o library $(INC)
+- $(C) -o qrsimplec qrsimplec.o $(LIBS)
++ libtool --mode=link --tag=CXX $(C) -o qrsimplec qrsimplec.o $(LIBS)
+
================================================================
Index: packages/SPQR/SPQR-ufconfig.patch
diff -u /dev/null packages/SPQR/SPQR-ufconfig.patch:1.1
--- /dev/null Sun Jan 8 12:56:44 2012
+++ packages/SPQR/SPQR-ufconfig.patch Sun Jan 8 12:56:38 2012
@@ -0,0 +1,95 @@
+--- SPQR/Makefile.orig 2011-12-07 23:20:52.000000000 +0100
++++ SPQR/Makefile 2012-01-07 15:26:12.640442839 +0100
+@@ -4,7 +4,7 @@
+
+ VERSION = 1.2.3
+
+-include ../UFconfig/UFconfig.mk
++include /usr/share/misc/UFconfig.mk
+
+ default: all
+
+--- SPQR/Lib/Makefile.orig 2011-12-14 18:48:21.000000000 +0100
++++ SPQR/Lib/Makefile 2012-01-07 15:36:22.723796599 +0100
+@@ -6,7 +6,7 @@
+
+ ccode: all
+
+-include ../../UFconfig/UFconfig.mk
++include /usr/share/misc/UFconfig.mk
+
+ #-------------------------------------------------------------------------------
+ # the optional Partition module requires METIS, CAMD, and CCOLAMD
+@@ -14,13 +14,10 @@
+ # check if METIS is requested and available
+ ifeq (,$(findstring -DNPARTITION, $(CHOLMOD_CONFIG)))
+ # METIS is requested. See if it is available
+- ifeq ($(METIS), $(wildcard $(METIS)))
+- ifeq (../../CAMD, $(wildcard ../../CAMD))
+- ifeq (../../CCOLAMD, $(wildcard ../../CCOLAMD))
++ ifeq ($(WITH_METIS), 1)
++ # assume CAMD and CCOLAMD are available
+ # METIS, CAMD, and CCOLAMD is available
+ CONFIG =
+- endif
+- endif
+ endif
+ endif
+ #-------------------------------------------------------------------------------
+@@ -91,7 +88,7 @@
+
+ $(OBJ): $(INC)
+
+-I = -I../../CHOLMOD/Include -I../../UFconfig -I../Include
++I = -I/usr/include/cholmod -I../Include
+
+ C = $(CXX) $(CF) $(SPQR_CONFIG) $(CONFIG) $(I)
+
+--- SPQR/Demo/Makefile.orig 2011-12-14 18:48:48.000000000 +0100
++++ SPQR/Demo/Makefile 2012-01-08 12:06:51.122935314 +0100
+@@ -6,7 +6,7 @@
+
+ ccode: all
+
+-include ../../UFconfig/UFconfig.mk
++include /usr/share/misc/UFconfig.mk
+
+ #-------------------------------------------------------------------------------
+ # the optional Partition module requires METIS, CAMD, and CCOLAMD
+@@ -15,23 +15,17 @@
+ # check if METIS is requested and available
+ ifeq (,$(findstring -DNPARTITION, $(CHOLMOD_CONFIG)))
+ # METIS is requested. See if it is available
+- ifeq ($(METIS), $(wildcard $(METIS)))
+- ifeq (../../CAMD, $(wildcard ../../CAMD))
+- ifeq (../../CCOLAMD, $(wildcard ../../CCOLAMD))
++ ifeq ($(WITH_METIS), 1)
++ # assume CAMD and CCOLAMD are available
+ # METIS, CAMD, and CCOLAMD is available
+ CONFIG =
+- LIB_WITH_PARTITION = $(METIS) \
+- ../../CCOLAMD/Lib/libccolamd.a \
+- ../../CAMD/Lib/libcamd.a
+- endif
+- endif
++ LIB_WITH_PARTITION = $(METIS) -lccolamd -lcamd
+ endif
+ endif
+ #-------------------------------------------------------------------------------
+
+ CLIB = ../Lib/libspqr.a \
+- ../../CHOLMOD/Lib/libcholmod.a ../../AMD/Lib/libamd.a \
+- ../../COLAMD/Lib/libcolamd.a $(LIB_WITH_PARTITION) -lm
++ -lcholmod -lamd -lcolamd $(LIB_WITH_PARTITION) -lm
+
+ # use the BLAS and LAPACK defined by UFconfig.mk; do not use valgrind
+ FLIB = $(LAPACK) $(BLAS)
+@@ -119,7 +113,7 @@
+ ../Include/SuiteSparseQR_definitions.h \
+ ../Include/SuiteSparseQR.hpp Makefile
+
+-I = -I../../CHOLMOD/Include -I../../UFconfig -I../Include
++I = -I/usr/include/cholmod -I../Include
+
+ C = $(CXX) $(CF) $(SPQR_CONFIG) $(CONFIG) $(I)
+
================================================================
Index: packages/SPQR/SPQR.spec
diff -u /dev/null packages/SPQR/SPQR.spec:1.1
--- /dev/null Sun Jan 8 12:56:44 2012
+++ packages/SPQR/SPQR.spec Sun Jan 8 12:56:38 2012
@@ -0,0 +1,120 @@
+# $Revision$, $Date$
+Summary: SuiteSparseQR: multithreaded multifrontal sparse QR factorization
+Summary(pl.UTF-8): SuiteSparseQR - wielowątkowy, wielofrontalny rozkład QR dla macierzy rzadkich
+Name: SPQR
+Version: 1.2.3
+Release: 1
+License: GPL v2+
+Group: Libraries
+Source0: http://www.cise.ufl.edu/research/sparse/SPQR/%{name}-%{version}.tar.gz
+# Source0-md5: 65e12826a2a3d11a774c517990eabdd7
+Patch0: %{name}-ufconfig.patch
+Patch1: %{name}-shared.patch
+URL: http://www.cise.ufl.edu/research/sparse/SPQR/
+BuildRequires: CHOLMOD-devel >= 1.7.4
+BuildRequires: UFconfig >= 3.7.0
+BuildRequires: libstdc++-devel
+BuildRequires: libtool >= 2:1.5
+BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+%description
+SuiteSparseQR is an implementation of the multifrontal sparse QR
+factorization method. Parallelism is exploited both in the BLAS and
+across different frontal matrices using Intel's Threading Building
+Blocks, a shared-memory programming model for modern multicore
+architectures. It can obtain a substantial fraction of the theoretical
+peak performance of a multicore computer. The package is written in
+C++ with user interfaces for MATLAB, C, and C++.
+
+%description -l pl.UTF-8
+SuiteSparseQR to implementacja wielofrontalnej metody rozkładu QR dla
+macierzy rzadkich. Równoległość jest wykorzystywna zarówno w BLAS, jak
+i poprzez różne macierze frontalne przy użyciu Threading Building
+Blocks Intela - model programowania ze współdzieloną pamięcią dla
+architektur wielordzeniowych. Dzięki temu możliwe jest osiągnięcie
+znaczącej części teoretycznej maksymalnej wydajności na komputerze
+wielordzeniowym. Pakiet jest napisany w C++ z interfejsami dla
+MATLAB-a, C i C++.
+
+%package devel
+Summary: Header files for SPQR library
+Summary(pl.UTF-8): Pliki nagłówkowe biblioteki SPQR
+Group: Development/Libraries
+Requires: %{name} = %{version}-%{release}
+Requires: CHOLMOD-devel >= 1.7.4
+Requires: UFconfig >= 3.7.0
+Requires: libstdc++-devel
+
+%description devel
+Header files for SPQR library.
+
+%description devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki SPQR.
+
+%package static
+Summary: Static SPQR library
+Summary(pl.UTF-8): Statyczna biblioteka SPQR
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description static
+Static SPQR library.
+
+%description static -l pl.UTF-8
+Statyczna biblioteka SPQR.
+
+%prep
+%setup -q -n %{name}
+%patch0 -p1
+%patch1 -p1
+
+%build
+%{__make} \
+ CC="%{__cc}" \
+ CXX="%{__cxx}" \
+ CFLAGS="%{rpmcflags}" \
+ CXXFLAGS="%{rpmcxxflags}" \
+ LDFLAGS="%{rpmldflags}" \
+ libdir=%{_libdir}
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_includedir}/spqr
+
+%{__make} -C Lib install \
+ DESTDIR=$RPM_BUILD_ROOT \
+ libdir=%{_libdir}
+
+install Include/*.{h,hpp} $RPM_BUILD_ROOT%{_includedir}/spqr
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%defattr(644,root,root,755)
+%doc README.txt Doc/ChangeLog
+%attr(755,root,root) %{_libdir}/libspqr.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libspqr.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%doc Doc/{algo_spqr,spqr,spqr_user_guide}.pdf
+%attr(755,root,root) %{_libdir}/libspqr.so
+%{_libdir}/libspqr.la
+%{_includedir}/spqr
+
+%files static
+%defattr(644,root,root,755)
+%{_libdir}/libspqr.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.1 2012/01/08 11:56:38 qboosh
+- new
================================================================
More information about the pld-cvs-commit
mailing list