summaryrefslogtreecommitdiff
path: root/libraries/SPQR
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/SPQR')
-rw-r--r--libraries/SPQR/SPQR.SlackBuild8
-rw-r--r--libraries/SPQR/SPQR.info6
-rw-r--r--libraries/SPQR/autotoolize.diff59
-rw-r--r--libraries/SPQR/slack-desc2
4 files changed, 52 insertions, 23 deletions
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 <elyk03@gmail.com>
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