diff --git a/libraries/SPQR/SPQR.SlackBuild b/libraries/SPQR/SPQR.SlackBuild index e20ab545fc..42867dfeb8 100644 --- a/libraries/SPQR/SPQR.SlackBuild +++ b/libraries/SPQR/SPQR.SlackBuild @@ -4,7 +4,7 @@ # Written by Kyle Guinn PRGNAM=SPQR -VERSION=${VERSION:-1.2.0} +VERSION=${VERSION:-1.2.2} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -37,6 +37,9 @@ else LIBDIRSUFFIX="" fi +# Recommended by SuiteSparse +SLKCFLAGS="$SLKCFLAGS -fexceptions -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE" + set -e rm -rf $PKG @@ -59,7 +62,10 @@ CXXFLAGS="$SLKCFLAGS" \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/man \ + --infodir=/usr/info \ --docdir=/usr/doc/$PRGNAM-$VERSION \ + --enable-shared \ + --disable-static \ --build=$ARCH-slackware-linux make diff --git a/libraries/SPQR/SPQR.info b/libraries/SPQR/SPQR.info index 7a735255a7..d1f9d776ce 100644 --- a/libraries/SPQR/SPQR.info +++ b/libraries/SPQR/SPQR.info @@ -1,8 +1,8 @@ PRGNAM="SPQR" -VERSION="1.2.0" +VERSION="1.2.2" HOMEPAGE="http://www.cise.ufl.edu/research/sparse/SPQR/" -DOWNLOAD="http://www.cise.ufl.edu/research/sparse/SPQR/SPQR-1.2.0.tar.gz" -MD5SUM="94edeb2c2a7f849f9041b4049e96b58b" +DOWNLOAD="http://www.cise.ufl.edu/research/sparse/SPQR/SPQR-1.2.2.tar.gz" +MD5SUM="4ea91c05bc3c207ffa9039a4896e42f5" DOWNLOAD_x86_64="" MD5SUM_x86_64="" MAINTAINER="Kyle Guinn" diff --git a/libraries/SPQR/autotoolize.diff b/libraries/SPQR/autotoolize.diff index 6603194865..151336a075 100644 --- a/libraries/SPQR/autotoolize.diff +++ b/libraries/SPQR/autotoolize.diff @@ -3,7 +3,7 @@ new file mode 100644 --- /dev/null +++ b/Demo/Makefile.am @@ -0,0 +1,109 @@ -+AM_CPPFLAGS = -I$(top_srcdir)/Include ++AM_CPPFLAGS = -I$(top_srcdir)/Include $(CHOLMOD_CFLAGS) $(UFCONFIG_CFLAGS) +LDADD = $(top_builddir)/Source/libspqr.la + +EXTRA_DIST = \ @@ -145,8 +145,9 @@ diff --git a/Include/Makefile.am b/Include/Makefile.am new file mode 100644 --- /dev/null +++ b/Include/Makefile.am -@@ -0,0 +1,5 @@ -+include_HEADERS = \ +@@ -0,0 +1,6 @@ ++pkgincludedir = $(includedir)/spqr ++pkginclude_HEADERS = \ + SuiteSparseQR.hpp \ + SuiteSparseQR_C.h \ + SuiteSparseQR_definitions.h \ @@ -155,9 +156,12 @@ diff --git a/Makefile.am b/Makefile.am new file mode 100644 --- /dev/null +++ b/Makefile.am -@@ -0,0 +1,2 @@ +@@ -0,0 +1,5 @@ +SUBDIRS = Include Source Matrix Demo Doc +EXTRA_DIST = README.txt ++ ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA = spqr.pc diff --git a/Matrix/Makefile.am b/Matrix/Makefile.am new file mode 100644 --- /dev/null @@ -199,8 +203,8 @@ diff --git a/Source/Makefile.am b/Source/Makefile.am new file mode 100644 --- /dev/null +++ b/Source/Makefile.am -@@ -0,0 +1,51 @@ -+AM_CPPFLAGS = -I$(top_srcdir)/Include +@@ -0,0 +1,50 @@ ++AM_CPPFLAGS = -I$(top_srcdir)/Include $(TBB_CFLAGS) $(CHOLMOD_CFLAGS) $(UFCONFIG_CFLAGS) +AM_CPPFLAGS += $(SPQR_NPARTITION) +AM_CPPFLAGS += $(SPQR_HAVE_TBB) + @@ -248,9 +252,8 @@ new file mode 100644 + spqr_trapezoidal.cpp \ + spqr_type.cpp + -+libspqr_la_CPPFLAGS = $(AM_CPPFLAGS) $(METIS_CFLAGS) $(TBB_CFLAGS) $(LAPACK_CFLAGS) -+libspqr_la_LIBADD = $(TBB_LIBS) -lcholmod $(LAPACK_LIBS) $(BLAS_LIBS) -lm -+libspqr_la_LDFLAGS = -no-undefined -version-info 3:0:2 ++libspqr_la_LIBADD = $(TBB_LIBS) $(CHOLMOD_LIBS) $(LAPACK_LIBS) $(BLAS_LIBS) -lm ++libspqr_la_LDFLAGS = -no-undefined -version-info 3:2:2 diff --git a/acx_blas.m4 b/acx_blas.m4 new file mode 100644 --- /dev/null @@ -589,9 +592,9 @@ diff --git a/configure.ac b/configure.ac new file mode 100644 --- /dev/null +++ b/configure.ac -@@ -0,0 +1,89 @@ -+AC_PREREQ([2.65]) -+AC_INIT([SPQR], [1.2.0], [davis@cise.ufl.edu]) +@@ -0,0 +1,92 @@ ++AC_PREREQ([2.68]) ++AC_INIT([SPQR],[1.2.2],[davis@cise.ufl.edu]) +AC_CONFIG_SRCDIR([Source/spqr_kernel.cpp]) +AC_CONFIG_HEADER([config.h]) +AM_INIT_AUTOMAKE([foreign]) @@ -634,6 +637,8 @@ new file mode 100644 + +AC_CHECK_LIB([m], [sqrt]) + ++AC_CHECK_HEADERS([float.h stdlib.h sys/time.h]) ++ +sinclude([acx_blas.m4]) +sinclude([acx_lapack.m4]) +ACX_LAPACK @@ -646,10 +651,13 @@ new file mode 100644 + AC_MSG_ERROR([cannot find lapack]) +fi + -+AC_CHECK_HEADERS([cholmod.h]) -+AC_CHECK_LIB([cholmod], [cholmod_solve], ++PKG_PROG_PKG_CONFIG ++PKG_CHECK_MODULES([UFCONFIG],[ufconfig], + [], -+ [AC_MSG_ERROR([cannot find libcholmod])]) ++ [AC_MSG_ERROR([cannot find ufconfig])]) ++PKG_CHECK_MODULES([CHOLMOD],[cholmod], ++ [], ++ [AC_MSG_ERROR([cannot find cholmod])]) + +if test "x$with_tbb" = "xyes"; then + AC_CHECK_HEADERS([tbb/task.h]) @@ -657,9 +665,6 @@ new file mode 100644 + AC_SUBST([TBB_LIBS], ["-ltbb"]) +fi + -+AC_CHECK_HEADERS([float.h stdlib.h sys/time.h]) -+AC_CHECK_HEADERS([UFconfig.h]) -+ +AC_HEADER_STDBOOL +AC_C_INLINE +AC_TYPE_SIZE_T @@ -672,6 +677,7 @@ new file mode 100644 +AM_CONDITIONAL([WITH_TBB], [test "x$with_tbb" = "xyes"]) + +AC_CONFIG_FILES([ ++ spqr.pc + Makefile + Demo/Makefile + Doc/Makefile @@ -679,3 +685,20 @@ new file mode 100644 + Matrix/Makefile + Source/Makefile]) +AC_OUTPUT +diff --git a/spqr.pc.in b/spqr.pc.in +new file mode 100644 +--- /dev/null ++++ b/spqr.pc.in +@@ -0,0 +1,12 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: @PACKAGE_NAME@ ++Description: Multifrontal sparse QR factorization ++Version: @PACKAGE_VERSION@ ++Requires.private: cholmod ufconfig ++Libs: -L${libdir} -lspqr ++Libs.private: @TBB_LIBS@ @LAPACK_LIBS@ @BLAS_LIBS@ -lm ++Cflags: -I${includedir}/spqr diff --git a/libraries/SPQR/slack-desc b/libraries/SPQR/slack-desc index 463d20b648..a111b704d1 100644 --- a/libraries/SPQR/slack-desc +++ b/libraries/SPQR/slack-desc @@ -6,7 +6,7 @@ # customary to leave one space after the ':'. |-----handy-ruler------------------------------------------------------| -SPQR: SuiteSparseQR (sparse matrix factorizing routines) +SPQR: SuiteSparseQR (sparse matrix factoring routines) SPQR: SPQR: SuiteSparseQR is an implementation of the multifrontal sparse QR SPQR: factorization method. Parallelism is exploited both in the BLAS