summaryrefslogtreecommitdiff
path: root/libraries/UMFPACK
diff options
context:
space:
mode:
authorKyle Guinn <elyk03@gmail.com>2014-01-24 21:25:49 -0600
committerRobby Workman <rworkman@slackbuilds.org>2014-01-31 00:54:12 -0600
commit06d88577d57923b4599c47d57a9ac921cd3d0660 (patch)
tree5bca4e9a44d058ad1ff2bcc2ed5f4422db34b385 /libraries/UMFPACK
parentfadc4225ddff17a0275b188837a00dd1d74513b6 (diff)
downloadslackbuilds-06d88577d57923b4599c47d57a9ac921cd3d0660.tar.gz
academic/umfpack: Renamed and moved from libraries.
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
Diffstat (limited to 'libraries/UMFPACK')
-rw-r--r--libraries/UMFPACK/README4
-rw-r--r--libraries/UMFPACK/UMFPACK.SlackBuild108
-rw-r--r--libraries/UMFPACK/UMFPACK.info10
-rw-r--r--libraries/UMFPACK/atlas-threaded-blas.diff26
-rw-r--r--libraries/UMFPACK/autotoolize.diff972
-rw-r--r--libraries/UMFPACK/slack-desc19
6 files changed, 0 insertions, 1139 deletions
diff --git a/libraries/UMFPACK/README b/libraries/UMFPACK/README
deleted file mode 100644
index 0a47fa35a3..0000000000
--- a/libraries/UMFPACK/README
+++ /dev/null
@@ -1,4 +0,0 @@
-UMFPACK is a set of routines for solving unsymmetric sparse linear
-systems, Ax=b, using the Unsymmetric MultiFrontal method.
-
-This package is part of SuiteSparse.
diff --git a/libraries/UMFPACK/UMFPACK.SlackBuild b/libraries/UMFPACK/UMFPACK.SlackBuild
deleted file mode 100644
index 163f454c9e..0000000000
--- a/libraries/UMFPACK/UMFPACK.SlackBuild
+++ /dev/null
@@ -1,108 +0,0 @@
-#!/bin/sh
-
-# Slackware build script for UMFPACK
-
-# Copyright 2013 Kyle Guinn <elyk03@gmail.com>, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-PRGNAM=UMFPACK
-VERSION=${VERSION:-5.6.2}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-
-if [ -z "$ARCH" ]; then
- case "$(uname -m)" in
- i?86) ARCH=i486 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$(uname -m) ;;
- esac
-fi
-
-CWD=$(pwd)
-TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM
-OUTPUT=${OUTPUT:-/tmp}
-
-DOCS="README.txt Doc/ChangeLog Doc/License Doc/gpl.txt"
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-# Recommended by SuiteSparse
-SLKCFLAGS="$SLKCFLAGS -fexceptions -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE"
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM
-chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-patch -p1 < $CWD/autotoolize.diff
-patch -p1 < $CWD/atlas-threaded-blas.diff
-autoreconf -vif
-
-CFLAGS="$SLKCFLAGS" \
-FFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --infodir=/usr/info \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-shared \
- --disable-static \
- --disable-dependency-tracking \
- --build=$ARCH-slackware-linux
-
-make
-make check
-make install-strip DESTDIR=$PKG
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/libraries/UMFPACK/UMFPACK.info b/libraries/UMFPACK/UMFPACK.info
deleted file mode 100644
index cc0d268eeb..0000000000
--- a/libraries/UMFPACK/UMFPACK.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="UMFPACK"
-VERSION="5.6.2"
-HOMEPAGE="https://www.cise.ufl.edu/research/sparse/umfpack/"
-DOWNLOAD="https://www.cise.ufl.edu/research/sparse/umfpack/UMFPACK-5.6.2.tar.gz"
-MD5SUM="8d16f73dd16216f0d2ebb54460ae10a0"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="blas SuiteSparse_config AMD CHOLMOD"
-MAINTAINER="Kyle Guinn"
-EMAIL="elyk03@gmail.com"
diff --git a/libraries/UMFPACK/atlas-threaded-blas.diff b/libraries/UMFPACK/atlas-threaded-blas.diff
deleted file mode 100644
index e7f34ef011..0000000000
--- a/libraries/UMFPACK/atlas-threaded-blas.diff
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/ax_blas.m4 b/ax_blas.m4
---- a/ax_blas.m4
-+++ b/ax_blas.m4
-@@ -117,12 +117,16 @@
- # BLAS in ATLAS library? (http://math-atlas.sourceforge.net/)
- if test $ax_blas_ok = no; then
- AC_CHECK_LIB(atlas, ATL_xerbla,
-- [AC_CHECK_LIB(f77blas, $sgemm,
-- [AC_CHECK_LIB(cblas, cblas_dgemm,
-- [ax_blas_ok=yes
-- BLAS_LIBS="-lcblas -lf77blas -latlas"],
-- [], [-lf77blas -latlas])],
-- [], [-latlas])])
-+ [AC_CHECK_LIB(ptf77blas, $sgemm,
-+ [AC_CHECK_LIB(ptcblas, cblas_dgemm,
-+ [ax_blas_ok=yes; BLAS_LIBS="-lptcblas -lptf77blas -latlas"],,
-+ [-lptf77blas -latlas])],
-+ [AC_CHECK_LIB(f77blas, $sgemm,
-+ [AC_CHECK_LIB(cblas, cblas_dgemm,
-+ [ax_blas_ok=yes; BLAS_LIBS="-lcblas -lf77blas -latlas"],,
-+ [-lf77blas -latlas])],,
-+ [-latlas])],
-+ [-latlas])])
- fi
-
- # BLAS in PhiPACK libraries? (requires generic BLAS lib, too)
diff --git a/libraries/UMFPACK/autotoolize.diff b/libraries/UMFPACK/autotoolize.diff
deleted file mode 100644
index f2879a07cf..0000000000
--- a/libraries/UMFPACK/autotoolize.diff
+++ /dev/null
@@ -1,972 +0,0 @@
-diff --git a/Demo/Makefile.am b/Demo/Makefile.am
-new file mode 100644
---- /dev/null
-+++ b/Demo/Makefile.am
-@@ -0,0 +1,152 @@
-+AM_CPPFLAGS = -I$(top_srcdir)/Include $(AMD_CFLAGS) $(SUITESPARSECONFIG_CFLAGS)
-+LDADD = $(top_builddir)/Source/libumfpack.la
-+
-+EXTRA_DIST = \
-+ umfpack_di_demo.out \
-+ umfpack_dl_demo.out \
-+ umfpack_zi_demo.out \
-+ umfpack_zl_demo.out \
-+ umf4.out \
-+ umf4hb.out \
-+ umf4hb64.out \
-+ umf4zhb.out
-+
-+# Disable the .out implicit pattern rule. Prevents GNU make from
-+# adding bogus dependencies for the .out files listed above.
-+%.out: %
-+
-+SIMPLE = \
-+ umfpack_simple
-+
-+DEMO = \
-+ umfpack_di_demo \
-+ umfpack_dl_demo \
-+ umfpack_zi_demo \
-+ umfpack_zl_demo
-+
-+READHB = \
-+ readhb \
-+ readhb_nozeros \
-+ readhb_size
-+
-+UMF4 = \
-+ umf4
-+
-+UMF4HB = \
-+ umf4hb \
-+ umf4hb64 \
-+ umf4zhb
-+
-+HB = \
-+ HB/arc130.rua \
-+ HB/can_24.psa \
-+ HB/fs_183_6.rua \
-+ HB/qc324.cua \
-+ HB/west0067.rua
-+
-+umfpack_%_demo.c: umfpack_xx_demo.c umfpack_%_demo.sed
-+ -sed -f umfpack_$*_demo.sed < umfpack_xx_demo.c > umfpack_$*_demo.c
-+
-+dist_noinst_DATA = \
-+ umfpack_xx_demo.c \
-+ umfpack_di_demo.sed \
-+ umfpack_dl_demo.sed \
-+ umfpack_zi_demo.sed \
-+ umfpack_zl_demo.sed \
-+ $(HB)
-+
-+dist_noinst_SCRIPTS = \
-+ dodefault \
-+ dospd
-+
-+check_PROGRAMS = \
-+ $(SIMPLE) \
-+ $(DEMO) \
-+ $(READHB) \
-+ $(UMF4) \
-+ $(UMF4HB)
-+
-+check_LTLIBRARIES = \
-+ libumf4_f77wrapper.la \
-+ libumf4_f77zwrapper.la \
-+ libumf4_f77wrapper64.la \
-+ libumf4_f77zwrapper64.la
-+
-+umfpack_simple_SOURCES = umfpack_simple.c
-+umfpack_di_demo_SOURCES = umfpack_di_demo.c
-+umfpack_dl_demo_SOURCES = umfpack_dl_demo.c
-+umfpack_zi_demo_SOURCES = umfpack_zi_demo.c
-+umfpack_zl_demo_SOURCES = umfpack_zl_demo.c
-+
-+readhb_SOURCES = readhb.f
-+readhb_LDADD =
-+
-+readhb_nozeros_SOURCES = readhb_nozeros.f
-+readhb_nozeros_LDADD =
-+
-+readhb_size_SOURCES = readhb_size.f
-+readhb_size_LDADD =
-+
-+umf4_SOURCES = umf4.c
-+
-+umf4hb_SOURCES = umf4hb.f
-+umf4hb_LDADD = libumf4_f77wrapper.la $(LDADD)
-+
-+umf4zhb_SOURCES = umf4zhb.f
-+umf4zhb_LDADD = libumf4_f77zwrapper.la $(LDADD)
-+
-+umf4hb64_SOURCES = umf4hb64.f
-+umf4hb64_LDADD = libumf4_f77wrapper64.la $(LDADD)
-+
-+libumf4_f77wrapper_la_SOURCES = umf4_f77wrapper.c
-+libumf4_f77wrapper_la_CPPFLAGS = $(AM_CPPFLAGS)
-+
-+libumf4_f77zwrapper_la_SOURCES = umf4_f77zwrapper.c
-+libumf4_f77zwrapper_la_CPPFLAGS = $(AM_CPPFLAGS)
-+
-+libumf4_f77wrapper64_la_SOURCES = umf4_f77wrapper.c
-+libumf4_f77wrapper64_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG
-+
-+libumf4_f77zwrapper64_la_SOURCES = umf4_f77zwrapper.c
-+libumf4_f77zwrapper64_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG
-+
-+check-local: $(SIMPLE) $(DEMO) $(DEMO:=.out) $(READHB) $(HB) $(UMF4) $(UMF4HB) $(UMF4HB:=.out)
-+ ./umfpack_simple
-+ ./umfpack_di_demo > my_umfpack_di_demo.out
-+ -diff -u $(srcdir)/umfpack_di_demo.out my_umfpack_di_demo.out
-+ ./umfpack_dl_demo > my_umfpack_dl_demo.out
-+ -diff -u $(srcdir)/umfpack_dl_demo.out my_umfpack_dl_demo.out
-+ ./umfpack_zi_demo > my_umfpack_zi_demo.out
-+ -diff -u $(srcdir)/umfpack_zi_demo.out my_umfpack_zi_demo.out
-+ ./umfpack_zl_demo > my_umfpack_zl_demo.out
-+ -diff -u $(srcdir)/umfpack_zl_demo.out my_umfpack_zl_demo.out
-+ -$(MKDIR_P) tmp
-+ -./readhb_nozeros < $(srcdir)/HB/can_24.psa > tmp/A
-+ -./readhb_size < $(srcdir)/HB/can_24.psa > tmp/Asize
-+ -./umf4
-+ -./readhb_nozeros < $(srcdir)/HB/west0067.rua > tmp/A
-+ -./readhb_size < $(srcdir)/HB/west0067.rua > tmp/Asize
-+ -./umf4
-+ -./readhb_nozeros < $(srcdir)/HB/fs_183_6.rua > tmp/A
-+ -./readhb_size < $(srcdir)/HB/fs_183_6.rua > tmp/Asize
-+ -./umf4
-+ -./readhb < $(srcdir)/HB/fs_183_6.rua > tmp/A
-+ -./readhb_size < $(srcdir)/HB/fs_183_6.rua > tmp/Asize
-+ -./umf4
-+ -./readhb < $(srcdir)/HB/arc130.rua > tmp/A
-+ -./readhb_size < $(srcdir)/HB/arc130.rua > tmp/Asize
-+ -./umf4
-+ -./readhb_nozeros < $(srcdir)/HB/arc130.rua > tmp/A
-+ -./readhb_size < $(srcdir)/HB/arc130.rua > tmp/Asize
-+ -./umf4
-+ -./readhb_nozeros < $(srcdir)/HB/arc130.rua > tmp/A
-+ -./readhb_size < $(srcdir)/HB/arc130.rua > tmp/Asize
-+ -./umf4 a 1e-6
-+ -./umf4hb < $(srcdir)/HB/west0067.rua > my_umf4hb.out
-+ -diff -u $(srcdir)/umf4hb.out my_umf4hb.out
-+ -./umf4zhb < $(srcdir)/HB/qc324.cua > my_umf4zhb.out
-+ -diff -u $(srcdir)/umf4zhb.out my_umf4zhb.out
-+ -./umf4hb64 < $(srcdir)/HB/west0067.rua > my_umf4hb64.out
-+ -diff -u $(srcdir)/umf4hb64.out my_umf4hb64.out
-+
-+CLEANFILES = my_*.out *.umf tmp/* tmp
-diff --git a/Doc/Makefile.am b/Doc/Makefile.am
-new file mode 100644
---- /dev/null
-+++ b/Doc/Makefile.am
-@@ -0,0 +1,97 @@
-+EXTRA_DIST = \
-+ ChangeLog \
-+ License \
-+ gpl.txt
-+
-+dist_noinst_DATA = \
-+ QuickStart.tex \
-+ UserGuide.bib \
-+ UserGuide.sed1 \
-+ UserGuide.sed2 \
-+ UserGuide.stex
-+
-+dist_pdf_DATA = \
-+ QuickStart.pdf \
-+ UserGuide.pdf
-+
-+# Unlike UserGuide.sed1, use \input{filename.tex} to insert the source code
-+# which we will construct below. Also remove the \begin{verbatim} and
-+# \end{verbatim} on the adjacent lines and add them to filename.tex.
-+define sed1 =
-+sed -e ':more;$$!N;s/\n/&/2;t enough;$$!b more;:enough;/^\\begin{verbatim}\nINCLUDE umfpack\(.*\)\.\([ch]\) via sed\n\\end{verbatim}$$/s//\\input{\1_\2.tex}/;P;D' $< > $@
-+endef
-+
-+# UserGuide.sed2 currently strips out C-style comments. In some cases it
-+# strips out too much due to formatting; we'll leave that for upstream to fix.
-+define sed2 =
-+echo '\begin{verbatim}' > $@
-+sed -e '/[/][*]/d' -e '/[*][/]/d' < $< | expand -8 >> $@
-+echo '\end{verbatim}' >> $@
-+endef
-+
-+UserGuide.tex: $(srcdir)/UserGuide.stex
-+ $(sed1)
-+
-+_simple_c.tex: $(top_srcdir)/Demo/umfpack_simple.c
-+ $(sed2)
-+%_h.tex: $(top_srcdir)/Include/umfpack%.h
-+ $(sed2)
-+
-+SRC = \
-+ _simple_c.tex \
-+ _col_to_triplet_h.tex \
-+ _defaults_h.tex \
-+ _free_numeric_h.tex \
-+ _free_symbolic_h.tex \
-+ _get_determinant_h.tex \
-+ _get_lunz_h.tex \
-+ _get_numeric_h.tex \
-+ _get_symbolic_h.tex \
-+ _load_numeric_h.tex \
-+ _load_symbolic_h.tex \
-+ _numeric_h.tex \
-+ _qsymbolic_h.tex \
-+ _report_control_h.tex \
-+ _report_info_h.tex \
-+ _report_matrix_h.tex \
-+ _report_numeric_h.tex \
-+ _report_perm_h.tex \
-+ _report_status_h.tex \
-+ _report_symbolic_h.tex \
-+ _report_triplet_h.tex \
-+ _report_vector_h.tex \
-+ _save_numeric_h.tex \
-+ _save_symbolic_h.tex \
-+ _scale_h.tex \
-+ _solve_h.tex \
-+ _symbolic_h.tex \
-+ _tictoc_h.tex \
-+ _timer_h.tex \
-+ _transpose_h.tex \
-+ _triplet_to_col_h.tex \
-+ _wsolve_h.tex
-+
-+.INTERMEDIATE: UserGuide.tex $(SRC)
-+UserGuide.tex: $(SRC)
-+
-+TEX = TEXINPUTS="$(srcdir):" pdflatex -interaction nonstopmode -file-line-error
-+BIB = BIBINPUTS="$(srcdir):" bibtex
-+%.pdf: %.tex %.bbl
-+ $(TEX) $*
-+ while grep -q "Rerun to get cross-references right" $*.log; do \
-+ $(TEX) $*; \
-+ done
-+%.bbl: %.aux %.bib
-+ $(BIB) $*
-+%.aux: %.tex
-+ $(TEX) $*
-+
-+# QuickStart does not include a bibliography, so the above rule won't work.
-+QuickStart.pdf: %.pdf: %.tex
-+ $(TEX) $*
-+ while grep -q "Rerun to get cross-references right" $*.log; do \
-+ $(TEX) $*; \
-+ done
-+
-+CLEANFILES = *.aux *.bbl *.blg *.log *.toc UserGuide.tex
-+MAINTAINERCLEANFILES = $(dist_pdf_DATA)
-diff --git a/Include/Makefile.am b/Include/Makefile.am
-new file mode 100644
---- /dev/null
-+++ b/Include/Makefile.am
-@@ -0,0 +1,34 @@
-+pkginclude_HEADERS = \
-+ umfpack.h \
-+ umfpack_col_to_triplet.h \
-+ umfpack_defaults.h \
-+ umfpack_free_numeric.h \
-+ umfpack_free_symbolic.h \
-+ umfpack_get_determinant.h \
-+ umfpack_get_lunz.h \
-+ umfpack_get_numeric.h \
-+ umfpack_get_symbolic.h \
-+ umfpack_global.h \
-+ umfpack_load_numeric.h \
-+ umfpack_load_symbolic.h \
-+ umfpack_numeric.h \
-+ umfpack_qsymbolic.h \
-+ umfpack_report_control.h \
-+ umfpack_report_info.h \
-+ umfpack_report_matrix.h \
-+ umfpack_report_numeric.h \
-+ umfpack_report_perm.h \
-+ umfpack_report_status.h \
-+ umfpack_report_symbolic.h \
-+ umfpack_report_triplet.h \
-+ umfpack_report_vector.h \
-+ umfpack_save_numeric.h \
-+ umfpack_save_symbolic.h \
-+ umfpack_scale.h \
-+ umfpack_solve.h \
-+ umfpack_symbolic.h \
-+ umfpack_tictoc.h \
-+ umfpack_timer.h \
-+ umfpack_transpose.h \
-+ umfpack_triplet_to_col.h \
-+ umfpack_wsolve.h
-diff --git a/Makefile.am b/Makefile.am
-new file mode 100644
---- /dev/null
-+++ b/Makefile.am
-@@ -0,0 +1,5 @@
-+SUBDIRS = Include Source Demo Doc
-+EXTRA_DIST = README.txt
-+
-+pkgconfigdir = $(libdir)/pkgconfig
-+pkgconfig_DATA = umfpack.pc
-diff --git a/Source/Makefile.am b/Source/Makefile.am
-new file mode 100644
---- /dev/null
-+++ b/Source/Makefile.am
-@@ -0,0 +1,318 @@
-+AM_CPPFLAGS = -I$(top_srcdir)/Include $(CHOLMOD_CFLAGS) $(AMD_CFLAGS) $(SUITESPARSECONFIG_CFLAGS)
-+
-+# non-user-callable umf_*.[ch] files:
-+UMF = \
-+ umf_assemble.c \
-+ umf_blas3_update.c \
-+ umf_build_tuples.c \
-+ umf_create_element.c \
-+ umf_dump.c \
-+ umf_extend_front.c \
-+ umf_garbage_collection.c \
-+ umf_get_memory.c \
-+ umf_grow_front.c \
-+ umf_init_front.c \
-+ umf_kernel.c \
-+ umf_kernel_init.c \
-+ umf_kernel_wrapup.c \
-+ umf_local_search.c \
-+ umf_lsolve.c \
-+ umf_ltsolve.c \
-+ umf_mem_alloc_element.c \
-+ umf_mem_alloc_head_block.c \
-+ umf_mem_alloc_tail_block.c \
-+ umf_mem_free_tail_block.c \
-+ umf_mem_init_memoryspace.c \
-+ umf_report_vector.c \
-+ umf_row_search.c \
-+ umf_scale.c \
-+ umf_scale_column.c \
-+ umf_set_stats.c \
-+ umf_solve.c \
-+ umf_start_front.c \
-+ umf_store_lu.c \
-+ umf_symbolic_usage.c \
-+ umf_transpose.c \
-+ umf_triplet.c \
-+ umf_tuple_lengths.c \
-+ umf_usolve.c \
-+ umf_utsolve.c \
-+ umf_valid_numeric.c \
-+ umf_valid_symbolic.c
-+
-+# non-user-callable umf_*.[ch] files
-+# int/SuiteSparse_long versions only (no real/complex):
-+UMFINT = \
-+ umf_analyze.c \
-+ umf_apply_order.c \
-+ umf_cholmod.c \
-+ umf_colamd.c \
-+ umf_free.c \
-+ umf_fsize.c \
-+ umf_is_permutation.c \
-+ umf_malloc.c \
-+ umf_realloc.c \
-+ umf_report_perm.c \
-+ umf_singletons.c
-+
-+# user-callable umfpack_*.c files
-+# (int/SuiteSparse_long and real/complex):
-+UMFPACK = \
-+ umfpack_col_to_triplet.c \
-+ umfpack_defaults.c \
-+ umfpack_free_numeric.c \
-+ umfpack_free_symbolic.c \
-+ umfpack_get_determinant.c \
-+ umfpack_get_lunz.c \
-+ umfpack_get_numeric.c \
-+ umfpack_get_symbolic.c \
-+ umfpack_load_numeric.c \
-+ umfpack_load_symbolic.c \
-+ umfpack_numeric.c \
-+ umfpack_qsymbolic.c \
-+ umfpack_report_control.c \
-+ umfpack_report_info.c \
-+ umfpack_report_matrix.c \
-+ umfpack_report_numeric.c \
-+ umfpack_report_perm.c \
-+ umfpack_report_status.c \
-+ umfpack_report_symbolic.c \
-+ umfpack_report_triplet.c \
-+ umfpack_report_vector.c \
-+ umfpack_save_numeric.c \
-+ umfpack_save_symbolic.c \
-+ umfpack_scale.c \
-+ umfpack_solve.c \
-+ umfpack_symbolic.c \
-+ umfpack_transpose.c \
-+ umfpack_triplet_to_col.c
-+
-+# user-callable umfpack_*.c files
-+# only one version for int/SuiteSparse_long, real/complex:
-+GENERIC = \
-+ umfpack_timer.c \
-+ umfpack_tictoc.c \
-+ umfpack_global.c
-+
-+noinst_HEADERS = \
-+ cholmod_blas.h \
-+ umf_config.h \
-+ umf_internal.h \
-+ umf_version.h \
-+ $(UMF:.c=.h) \
-+ $(UMFINT:.c=.h)
-+
-+noinst_LTLIBRARIES = \
-+ libumf_i.la \
-+ libumf_l.la \
-+ libumf_di_hsolve.la \
-+ libumf_di_triplet_map_x.la \
-+ libumf_di_triplet_map_nox.la \
-+ libumf_di_triplet_nomap_x.la \
-+ libumf_di_assemble_fixq.la \
-+ libumf_di_store_lu_drop.la \
-+ libumf_di.la \
-+ libumfpack_di_wsolve.la \
-+ libumfpack_di.la \
-+ libumf_dl_hsolve.la \
-+ libumf_dl_triplet_map_x.la \
-+ libumf_dl_triplet_map_nox.la \
-+ libumf_dl_triplet_nomap_x.la \
-+ libumf_dl_assemble_fixq.la \
-+ libumf_dl_store_lu_drop.la \
-+ libumf_dl.la \
-+ libumfpack_dl_wsolve.la \
-+ libumfpack_dl.la \
-+ libumf_zi_hsolve.la \
-+ libumf_zi_triplet_map_x.la \
-+ libumf_zi_triplet_map_nox.la \
-+ libumf_zi_triplet_nomap_x.la \
-+ libumf_zi_assemble_fixq.la \
-+ libumf_zi_store_lu_drop.la \
-+ libumf_zi.la \
-+ libumfpack_zi_wsolve.la \
-+ libumfpack_zi.la \
-+ libumf_zl_hsolve.la \
-+ libumf_zl_triplet_map_x.la \
-+ libumf_zl_triplet_map_nox.la \
-+ libumf_zl_triplet_nomap_x.la \
-+ libumf_zl_assemble_fixq.la \
-+ libumf_zl_store_lu_drop.la \
-+ libumf_zl.la \
-+ libumfpack_zl_wsolve.la \
-+ libumfpack_zl.la
-+
-+# compile each int and SuiteSparse_long routine (with no real/complex version)
-+libumf_i_la_SOURCES = $(UMFINT)
-+libumf_i_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT
-+
-+libumf_l_la_SOURCES = $(UMFINT)
-+libumf_l_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG
-+
-+if CHOLMOD
-+libumf_i_la_LIBADD = $(CHOLMOD_LIBS)
-+libumf_l_la_LIBADD = $(CHOLMOD_LIBS)
-+else
-+libumf_i_la_CPPFLAGS += -DNCHOLMOD
-+libumf_l_la_CPPFLAGS += -DNCHOLMOD
-+endif
-+
-+# compile each routine in the DI version
-+libumf_di_hsolve_la_SOURCES = umf_ltsolve.c umf_utsolve.c
-+libumf_di_hsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DCONJUGATE_SOLVE
-+
-+libumf_di_triplet_map_x_la_SOURCES = umf_triplet.c
-+libumf_di_triplet_map_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DDO_MAP -DDO_VALUES
-+
-+libumf_di_triplet_map_nox_la_SOURCES = umf_triplet.c
-+libumf_di_triplet_map_nox_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DDO_MAP
-+
-+libumf_di_triplet_nomap_x_la_SOURCES = umf_triplet.c
-+libumf_di_triplet_nomap_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DDO_VALUES
-+
-+libumf_di_assemble_fixq_la_SOURCES = umf_assemble.c
-+libumf_di_assemble_fixq_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DFIXQ
-+
-+libumf_di_store_lu_drop_la_SOURCES = umf_store_lu.c
-+libumf_di_store_lu_drop_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DDROP
-+
-+libumf_di_la_SOURCES = $(UMF)
-+libumf_di_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT
-+libumf_di_la_LIBADD = \
-+ libumf_di_hsolve.la \
-+ libumf_di_triplet_map_x.la \
-+ libumf_di_triplet_map_nox.la \
-+ libumf_di_triplet_nomap_x.la \
-+ libumf_di_assemble_fixq.la \
-+ libumf_di_store_lu_drop.la
-+
-+libumfpack_di_wsolve_la_SOURCES = umfpack_solve.c
-+libumfpack_di_wsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT -DWSOLVE
-+
-+libumfpack_di_la_SOURCES = $(UMFPACK)
-+libumfpack_di_la_CPPFLAGS = $(AM_CPPFLAGS) -DDINT
-+libumfpack_di_la_LIBADD = \
-+ libumfpack_di_wsolve.la
-+
-+# compile each routine in the DL version
-+libumf_dl_hsolve_la_SOURCES = umf_ltsolve.c umf_utsolve.c
-+libumf_dl_hsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DCONJUGATE_SOLVE
-+
-+libumf_dl_triplet_map_x_la_SOURCES = umf_triplet.c
-+libumf_dl_triplet_map_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DDO_MAP -DDO_VALUES
-+
-+libumf_dl_triplet_map_nox_la_SOURCES = umf_triplet.c
-+libumf_dl_triplet_map_nox_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DDO_MAP
-+
-+libumf_dl_triplet_nomap_x_la_SOURCES = umf_triplet.c
-+libumf_dl_triplet_nomap_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DDO_VALUES
-+
-+libumf_dl_assemble_fixq_la_SOURCES = umf_assemble.c
-+libumf_dl_assemble_fixq_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DFIXQ
-+
-+libumf_dl_store_lu_drop_la_SOURCES = umf_store_lu.c
-+libumf_dl_store_lu_drop_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DDROP
-+
-+libumf_dl_la_SOURCES = $(UMF)
-+libumf_dl_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG
-+libumf_dl_la_LIBADD = \
-+ libumf_dl_hsolve.la \
-+ libumf_dl_triplet_map_x.la \
-+ libumf_dl_triplet_map_nox.la \
-+ libumf_dl_triplet_nomap_x.la \
-+ libumf_dl_assemble_fixq.la \
-+ libumf_dl_store_lu_drop.la
-+
-+libumfpack_dl_wsolve_la_SOURCES = umfpack_solve.c
-+libumfpack_dl_wsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG -DWSOLVE
-+
-+libumfpack_dl_la_SOURCES = $(UMFPACK)
-+libumfpack_dl_la_CPPFLAGS = $(AM_CPPFLAGS) -DDLONG
-+libumfpack_dl_la_LIBADD = \
-+ libumfpack_dl_wsolve.la
-+
-+# compile each routine in the ZI version
-+libumf_zi_hsolve_la_SOURCES = umf_ltsolve.c umf_utsolve.c
-+libumf_zi_hsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DCONJUGATE_SOLVE
-+
-+libumf_zi_triplet_map_x_la_SOURCES = umf_triplet.c
-+libumf_zi_triplet_map_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DDO_MAP -DDO_VALUES
-+
-+libumf_zi_triplet_map_nox_la_SOURCES = umf_triplet.c
-+libumf_zi_triplet_map_nox_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DDO_MAP
-+
-+libumf_zi_triplet_nomap_x_la_SOURCES = umf_triplet.c
-+libumf_zi_triplet_nomap_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DDO_VALUES
-+
-+libumf_zi_assemble_fixq_la_SOURCES = umf_assemble.c
-+libumf_zi_assemble_fixq_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DFIXQ
-+
-+libumf_zi_store_lu_drop_la_SOURCES = umf_store_lu.c
-+libumf_zi_store_lu_drop_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DDROP
-+
-+libumf_zi_la_SOURCES = $(UMF)
-+libumf_zi_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT
-+libumf_zi_la_LIBADD = \
-+ libumf_zi_hsolve.la \
-+ libumf_zi_triplet_map_x.la \
-+ libumf_zi_triplet_map_nox.la \
-+ libumf_zi_triplet_nomap_x.la \
-+ libumf_zi_assemble_fixq.la \
-+ libumf_zi_store_lu_drop.la
-+
-+libumfpack_zi_wsolve_la_SOURCES = umfpack_solve.c
-+libumfpack_zi_wsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT -DWSOLVE
-+
-+libumfpack_zi_la_SOURCES = $(UMFPACK)
-+libumfpack_zi_la_CPPFLAGS = $(AM_CPPFLAGS) -DZINT
-+libumfpack_zi_la_LIBADD = \
-+ libumfpack_zi_wsolve.la
-+
-+# compile each routine in the ZL version
-+libumf_zl_hsolve_la_SOURCES = umf_ltsolve.c umf_utsolve.c
-+libumf_zl_hsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DCONJUGATE_SOLVE
-+
-+libumf_zl_triplet_map_x_la_SOURCES = umf_triplet.c
-+libumf_zl_triplet_map_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DDO_MAP -DDO_VALUES
-+
-+libumf_zl_triplet_map_nox_la_SOURCES = umf_triplet.c
-+libumf_zl_triplet_map_nox_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DDO_MAP
-+
-+libumf_zl_triplet_nomap_x_la_SOURCES = umf_triplet.c
-+libumf_zl_triplet_nomap_x_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DDO_VALUES
-+
-+libumf_zl_assemble_fixq_la_SOURCES = umf_assemble.c
-+libumf_zl_assemble_fixq_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DFIXQ
-+
-+libumf_zl_store_lu_drop_la_SOURCES = umf_store_lu.c
-+libumf_zl_store_lu_drop_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DDROP
-+
-+libumf_zl_la_SOURCES = $(UMF)
-+libumf_zl_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG
-+libumf_zl_la_LIBADD = \
-+ libumf_zl_hsolve.la \
-+ libumf_zl_triplet_map_x.la \
-+ libumf_zl_triplet_map_nox.la \
-+ libumf_zl_triplet_nomap_x.la \
-+ libumf_zl_assemble_fixq.la \
-+ libumf_zl_store_lu_drop.la
-+
-+libumfpack_zl_wsolve_la_SOURCES = umfpack_solve.c
-+libumfpack_zl_wsolve_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG -DWSOLVE
-+
-+libumfpack_zl_la_SOURCES = $(UMFPACK)
-+libumfpack_zl_la_CPPFLAGS = $(AM_CPPFLAGS) -DZLONG
-+libumfpack_zl_la_LIBADD = \
-+ libumfpack_zl_wsolve.la
-+
-+lib_LTLIBRARIES = libumfpack.la
-+libumfpack_la_SOURCES = $(GENERIC)
-+libumfpack_la_LIBADD = \
-+ libumf_i.la \
-+ libumf_l.la \
-+ libumf_di.la libumfpack_di.la \
-+ libumf_dl.la libumfpack_dl.la \
-+ libumf_zi.la libumfpack_zi.la \
-+ libumf_zl.la libumfpack_zl.la \
-+ $(AMD_LIBS) $(SUITESPARSECONFIG_LIBS) $(BLAS_LIBS) -lm
-+libumfpack_la_LDFLAGS = -no-undefined -version-number 5:6:2
-diff --git a/ax_blas.m4 b/ax_blas.m4
-new file mode 100644
---- /dev/null
-+++ b/ax_blas.m4
-@@ -0,0 +1,238 @@
-+# ===========================================================================
-+# http://www.gnu.org/software/autoconf-archive/ax_blas.html
-+# ===========================================================================
-+#
-+# SYNOPSIS
-+#
-+# AX_BLAS([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]])
-+#
-+# DESCRIPTION
-+#
-+# This macro looks for a library that implements the BLAS linear-algebra
-+# interface (see http://www.netlib.org/blas/). On success, it sets the
-+# BLAS_LIBS output variable to hold the requisite library linkages.
-+#
-+# To link with BLAS, you should link with:
-+#
-+# $BLAS_LIBS $LIBS $FLIBS
-+#
-+# in that order. FLIBS is the output variable of the
-+# AC_F77_LIBRARY_LDFLAGS macro (called if necessary by AX_BLAS), and is
-+# sometimes necessary in order to link with F77 libraries. Users will also
-+# need to use AC_F77_DUMMY_MAIN (see the autoconf manual), for the same
-+# reason.
-+#
-+# Many libraries are searched for, from ATLAS to CXML to ESSL. The user
-+# may also use --with-blas=<lib> in order to use some specific BLAS
-+# library <lib>. In order to link successfully, however, be aware that you
-+# will probably need to use the same Fortran compiler (which can be set
-+# via the F77 env. var.) as was used to compile the BLAS library.
-+#
-+# ACTION-IF-FOUND is a list of shell commands to run if a BLAS library is
-+# found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it is
-+# not found. If ACTION-IF-FOUND is not specified, the default action will
-+# define HAVE_BLAS.
-+#
-+# LICENSE
-+#
-+# Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu>
-+#
-+# This program is free software: you can redistribute it and/or modify it
-+# under the terms of the GNU General Public License as published by the
-+# Free Software Foundation, either version 3 of the License, or (at your
-+# option) any later version.
-+#
-+# This program is distributed in the hope that it will be useful, but
-+# WITHOUT ANY WARRANTY; without even the implied warranty of
-+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
-+# Public License for more details.
-+#
-+# You should have received a copy of the GNU General Public License along
-+# with this program. If not, see <http://www.gnu.org/licenses/>.
-+#
-+# As a special exception, the respective Autoconf Macro's copyright owner
-+# gives unlimited permission to copy, distribute and modify the configure
-+# scripts that are the output of Autoconf when processing the Macro. You
-+# need not follow the terms of the GNU General Public License when using
-+# or distributing such scripts, even though portions of the text of the
-+# Macro appear in them. The GNU General Public License (GPL) does govern
-+# all other use of the material that constitutes the Autoconf Macro.
-+#
-+# This special exception to the GPL applies to versions of the Autoconf
-+# Macro released by the Autoconf Archive. When you make and distribute a
-+# modified version of the Autoconf Macro, you may extend this special
-+# exception to the GPL to apply to your modified version as well.
-+
-+#serial 14
-+
-+AU_ALIAS([ACX_BLAS], [AX_BLAS])
-+AC_DEFUN([AX_BLAS], [
-+AC_PREREQ(2.50)
-+AC_REQUIRE([AC_F77_LIBRARY_LDFLAGS])
-+AC_REQUIRE([AC_CANONICAL_HOST])
-+ax_blas_ok=no
-+
-+AC_ARG_WITH(blas,
-+ [AS_HELP_STRING([--with-blas=<lib>], [use BLAS library <lib>])])
-+case $with_blas in
-+ yes | "") ;;
-+ no) ax_blas_ok=disable ;;
-+ -* | */* | *.a | *.so | *.so.* | *.o) BLAS_LIBS="$with_blas" ;;
-+ *) BLAS_LIBS="-l$with_blas" ;;
-+esac
-+
-+# Get fortran linker names of BLAS functions to check for.
-+AC_F77_FUNC(sgemm)
-+AC_F77_FUNC(dgemm)
-+
-+ax_blas_save_LIBS="$LIBS"
-+LIBS="$LIBS $FLIBS"
-+
-+# First, check BLAS_LIBS environment variable
-+if test $ax_blas_ok = no; then
-+if test "x$BLAS_LIBS" != x; then
-+ save_LIBS="$LIBS"; LIBS="$BLAS_LIBS $LIBS"
-+ AC_MSG_CHECKING([for $sgemm in $BLAS_LIBS])
-+ AC_TRY_LINK_FUNC($sgemm, [ax_blas_ok=yes], [BLAS_LIBS=""])
-+ AC_MSG_RESULT($ax_blas_ok)
-+ LIBS="$save_LIBS"
-+fi
-+fi
-+
-+# BLAS linked to by default? (happens on some supercomputers)
-+if test $ax_blas_ok = no; then
-+ save_LIBS="$LIBS"; LIBS="$LIBS"
-+ AC_MSG_CHECKING([if $sgemm is being linked in already])
-+ AC_TRY_LINK_FUNC($sgemm, [ax_blas_ok=yes])
-+ AC_MSG_RESULT($ax_blas_ok)
-+ LIBS="$save_LIBS"
-+fi
-+
-+# BLAS in OpenBLAS library? (http://xianyi.github.com/OpenBLAS/)
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(openblas, $sgemm, [ax_blas_ok=yes
-+ BLAS_LIBS="-lopenblas"])
-+fi
-+
-+# BLAS in ATLAS library? (http://math-atlas.sourceforge.net/)
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(atlas, ATL_xerbla,
-+ [AC_CHECK_LIB(f77blas, $sgemm,
-+ [AC_CHECK_LIB(cblas, cblas_dgemm,
-+ [ax_blas_ok=yes
-+ BLAS_LIBS="-lcblas -lf77blas -latlas"],
-+ [], [-lf77blas -latlas])],
-+ [], [-latlas])])
-+fi
-+
-+# BLAS in PhiPACK libraries? (requires generic BLAS lib, too)
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(blas, $sgemm,
-+ [AC_CHECK_LIB(dgemm, $dgemm,
-+ [AC_CHECK_LIB(sgemm, $sgemm,
-+ [ax_blas_ok=yes; BLAS_LIBS="-lsgemm -ldgemm -lblas"],
-+ [], [-lblas])],
-+ [], [-lblas])])
-+fi
-+
-+# BLAS in Intel MKL library?
-+if test $ax_blas_ok = no; then
-+ # MKL for gfortran
-+ if test x"$ac_cv_fc_compiler_gnu" = xyes; then
-+ # 64 bit
-+ if test $host_cpu = x86_64; then
-+ AC_CHECK_LIB(mkl_gf_lp64, $sgemm,
-+ [ax_blas_ok=yes;BLAS_LIBS="-lmkl_gf_lp64 -lmkl_sequential -lmkl_core -lpthread"],,
-+ [-lmkl_gf_lp64 -lmkl_sequential -lmkl_core -lpthread])
-+ # 32 bit
-+ elif test $host_cpu = i686; then
-+ AC_CHECK_LIB(mkl_gf, $sgemm,
-+ [ax_blas_ok=yes;BLAS_LIBS="-lmkl_gf -lmkl_sequential -lmkl_core -lpthread"],,
-+ [-lmkl_gf -lmkl_sequential -lmkl_core -lpthread])
-+ fi
-+ # MKL for other compilers (Intel, PGI, ...?)
-+ else
-+ # 64-bit
-+ if test $host_cpu = x86_64; then
-+ AC_CHECK_LIB(mkl_intel_lp64, $sgemm,
-+ [ax_blas_ok=yes;BLAS_LIBS="-lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread"],,
-+ [-lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lpthread])
-+ # 32-bit
-+ elif test $host_cpu = i686; then
-+ AC_CHECK_LIB(mkl_intel, $sgemm,
-+ [ax_blas_ok=yes;BLAS_LIBS="-lmkl_intel -lmkl_sequential -lmkl_core -lpthread"],,
-+ [-lmkl_intel -lmkl_sequential -lmkl_core -lpthread])
-+ fi
-+ fi
-+fi
-+# Old versions of MKL
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(mkl, $sgemm, [ax_blas_ok=yes;BLAS_LIBS="-lmkl -lguide -lpthread"],,[-lguide -lpthread])
-+fi
-+
-+# BLAS in Apple vecLib library?
-+if test $ax_blas_ok = no; then
-+ save_LIBS="$LIBS"; LIBS="-framework vecLib $LIBS"
-+ AC_MSG_CHECKING([for $sgemm in -framework vecLib])
-+ AC_TRY_LINK_FUNC($sgemm, [ax_blas_ok=yes;BLAS_LIBS="-framework vecLib"])
-+ AC_MSG_RESULT($ax_blas_ok)
-+ LIBS="$save_LIBS"
-+fi
-+
-+# BLAS in Alpha CXML library?
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(cxml, $sgemm, [ax_blas_ok=yes;BLAS_LIBS="-lcxml"])
-+fi
-+
-+# BLAS in Alpha DXML library? (now called CXML, see above)
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(dxml, $sgemm, [ax_blas_ok=yes;BLAS_LIBS="-ldxml"])
-+fi
-+
-+# BLAS in Sun Performance library?
-+if test $ax_blas_ok = no; then
-+ if test "x$GCC" != xyes; then # only works with Sun CC
-+ AC_CHECK_LIB(sunmath, acosp,
-+ [AC_CHECK_LIB(sunperf, $sgemm,
-+ [BLAS_LIBS="-xlic_lib=sunperf -lsunmath"
-+ ax_blas_ok=yes],[],[-lsunmath])])
-+ fi
-+fi
-+
-+# BLAS in SCSL library? (SGI/Cray Scientific Library)
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(scs, $sgemm, [ax_blas_ok=yes; BLAS_LIBS="-lscs"])
-+fi
-+
-+# BLAS in SGIMATH library?
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(complib.sgimath, $sgemm,
-+ [ax_blas_ok=yes; BLAS_LIBS="-lcomplib.sgimath"])
-+fi
-+
-+# BLAS in IBM ESSL library? (requires generic BLAS lib, too)
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(blas, $sgemm,
-+ [AC_CHECK_LIB(essl, $sgemm,
-+ [ax_blas_ok=yes; BLAS_LIBS="-lessl -lblas"],
-+ [], [-lblas $FLIBS])])
-+fi
-+
-+# Generic BLAS library?
-+if test $ax_blas_ok = no; then
-+ AC_CHECK_LIB(blas, $sgemm, [ax_blas_ok=yes; BLAS_LIBS="-lblas"])
-+fi
-+
-+AC_SUBST(BLAS_LIBS)
-+
-+LIBS="$ax_blas_save_LIBS"
-+
-+# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND:
-+if test x"$ax_blas_ok" = xyes; then
-+ ifelse([$1],,AC_DEFINE(HAVE_BLAS,1,[Define if you have a BLAS library.]),[$1])
-+ :
-+else
-+ ax_blas_ok=no
-+ $2
-+fi
-+])dnl AX_BLAS
-diff --git a/configure.ac b/configure.ac
-new file mode 100644
---- /dev/null
-+++ b/configure.ac
-@@ -0,0 +1,75 @@
-+# -*- Autoconf -*-
-+# Process this file with autoconf to produce a configure script.
-+
-+AC_PREREQ([2.69])
-+AC_INIT([UMFPACK],[5.6.2],[DrTimothyAldenDavis@gmail.com],[umfpack],[http://www.suitesparse.com/])
-+AC_CONFIG_SRCDIR([Source/umfpack_global.c])
-+AC_CONFIG_HEADERS([config.h])
-+AM_INIT_AUTOMAKE([foreign])
-+LT_INIT
-+
-+# Checks for programs.
-+AC_PROG_INSTALL
-+AC_PROG_CC
-+AC_PROG_F77
-+
-+AC_MSG_CHECKING([whether to use cholmod])
-+AC_ARG_WITH([cholmod],
-+ [AS_HELP_STRING(
-+ [--without-cholmod],
-+ [do not use CHOLMOD for ordering methods])],
-+ [cholmod=$withval],
-+ [cholmod="yes"])
-+AC_MSG_RESULT([$cholmod])
-+
-+LIBS_SAVED=$LIBS
-+
-+# Checks for libraries.
-+AC_CHECK_LIB([m], [sqrt])
-+
-+sinclude(ax_blas.m4)
-+AX_BLAS
-+if test "x$ax_blas_ok" != "xyes"; then
-+ AC_MSG_ERROR([cannot find blas])
-+fi
-+
-+PKG_PROG_PKG_CONFIG
-+PKG_CHECK_MODULES([SUITESPARSECONFIG],[suitesparseconfig],
-+ [],
-+ [AC_MSG_ERROR([cannot find suitesparseconfig])])
-+PKG_CHECK_MODULES([AMD],[amd],
-+ [],
-+ [AC_MSG_ERROR([cannot find amd])])
-+UMFPACK_REQUIRES="suitesparseconfig amd"
-+
-+if test "x$cholmod" = "xyes"; then
-+ PKG_CHECK_MODULES([CHOLMOD],[cholmod],
-+ [UMFPACK_REQUIRES="$UMFPACK_REQUIRES cholmod"],
-+ [AC_MSG_ERROR([cannot find cholmod])])
-+fi
-+
-+# Checks for header files.
-+AC_CHECK_HEADERS([float.h stdlib.h string.h])
-+
-+# Checks for typedefs, structures, and compiler characteristics.
-+AC_TYPE_SIZE_T
-+
-+# Checks for library functions.
-+AC_FUNC_ERROR_AT_LINE
-+AC_FUNC_MALLOC
-+AC_CHECK_FUNCS([pow sqrt])
-+
-+LIBS=$LIBS_SAVED
-+
-+AM_CONDITIONAL([CHOLMOD], [test "x$cholmod" = "xyes"])
-+
-+AC_SUBST([UMFPACK_REQUIRES])
-+
-+AC_CONFIG_FILES([
-+ umfpack.pc
-+ Makefile
-+ Demo/Makefile
-+ Doc/Makefile
-+ Include/Makefile
-+ Source/Makefile])
-+AC_OUTPUT
-diff --git a/umfpack.pc.in b/umfpack.pc.in
-new file mode 100644
---- /dev/null
-+++ b/umfpack.pc.in
-@@ -0,0 +1,13 @@
-+prefix=@prefix@
-+exec_prefix=@exec_prefix@
-+libdir=@libdir@
-+includedir=@includedir@
-+
-+Name: @PACKAGE_NAME@
-+Description: Sparse multifrontal LU factorization
-+Version: @PACKAGE_VERSION@
-+URL: @PACKAGE_URL@
-+Requires.private: @UMFPACK_REQUIRES@
-+Libs: -L${libdir} -lumfpack
-+Libs.private: @BLAS_LIBS@ -lm
-+Cflags: -I${includedir}/umfpack
diff --git a/libraries/UMFPACK/slack-desc b/libraries/UMFPACK/slack-desc
deleted file mode 100644
index 0e25faeab0..0000000000
--- a/libraries/UMFPACK/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description.
-# Line up the first '|' above the ':' following the base package name, and
-# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':' except on otherwise blank lines.
-
- |-----handy-ruler------------------------------------------------------|
-UMFPACK: UMFPACK (sparse matrix routines)
-UMFPACK:
-UMFPACK: UMFPACK is a set of routines for solving unsymmetric sparse linear
-UMFPACK: systems, Ax=b, using the Unsymmetric MultiFrontal method.
-UMFPACK:
-UMFPACK:
-UMFPACK:
-UMFPACK:
-UMFPACK:
-UMFPACK:
-UMFPACK: