326 lines
8.7 KiB
Diff
326 lines
8.7 KiB
Diff
diff --git a/Demo/Makefile.am b/Demo/Makefile.am
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/Demo/Makefile.am
|
|
@@ -0,0 +1,131 @@
|
|
+AM_CPPFLAGS = -I$(top_srcdir)/Include $(SUITESPARSECONFIG_CFLAGS)
|
|
+LDADD = $(top_builddir)/Source/libcxsparse.la
|
|
+
|
|
+noinst_HEADERS = \
|
|
+ cs_demo.h \
|
|
+ cs_ci_demo.h \
|
|
+ cs_cl_demo.h \
|
|
+ cs_di_demo.h \
|
|
+ cs_dl_demo.h
|
|
+
|
|
+check_PROGRAMS = \
|
|
+ cs_demo1 \
|
|
+ cs_demo2 \
|
|
+ cs_demo3 \
|
|
+ cs_ci_demo1 \
|
|
+ cs_ci_demo2 \
|
|
+ cs_ci_demo3 \
|
|
+ cs_cl_demo1 \
|
|
+ cs_cl_demo2 \
|
|
+ cs_cl_demo3 \
|
|
+ cs_di_demo1 \
|
|
+ cs_di_demo2 \
|
|
+ cs_di_demo3 \
|
|
+ cs_dl_demo1 \
|
|
+ cs_dl_demo2 \
|
|
+ cs_dl_demo3 \
|
|
+ cs_idemo \
|
|
+ cs_ldemo
|
|
+
|
|
+cs_demo1_SOURCES = cs_demo1.c
|
|
+cs_demo2_SOURCES = cs_demo2.c cs_demo.c
|
|
+cs_demo3_SOURCES = cs_demo3.c cs_demo.c
|
|
+cs_ci_demo1_SOURCES = cs_ci_demo1.c
|
|
+cs_ci_demo2_SOURCES = cs_ci_demo2.c cs_ci_demo.c
|
|
+cs_ci_demo3_SOURCES = cs_ci_demo3.c cs_ci_demo.c
|
|
+cs_cl_demo1_SOURCES = cs_cl_demo1.c
|
|
+cs_cl_demo2_SOURCES = cs_cl_demo2.c cs_cl_demo.c
|
|
+cs_cl_demo3_SOURCES = cs_cl_demo3.c cs_cl_demo.c
|
|
+cs_di_demo1_SOURCES = cs_di_demo1.c
|
|
+cs_di_demo2_SOURCES = cs_di_demo2.c cs_di_demo.c
|
|
+cs_di_demo3_SOURCES = cs_di_demo3.c cs_di_demo.c
|
|
+cs_dl_demo1_SOURCES = cs_dl_demo1.c
|
|
+cs_dl_demo2_SOURCES = cs_dl_demo2.c cs_dl_demo.c
|
|
+cs_dl_demo3_SOURCES = cs_dl_demo3.c cs_dl_demo.c
|
|
+
|
|
+cs_idemo_SOURCES = cs_idemo.c
|
|
+cs_ldemo_SOURCES = cs_ldemo.c
|
|
+cs_ldemo_CPPFLAGS = $(AM_CPPFLAGS) -DCS_LONG
|
|
+
|
|
+MATRICES = \
|
|
+ $(top_srcdir)/Matrix/ash219 \
|
|
+ $(top_srcdir)/Matrix/bcsstk01 \
|
|
+ $(top_srcdir)/Matrix/bcsstk16 \
|
|
+ $(top_srcdir)/Matrix/c4 \
|
|
+ $(top_srcdir)/Matrix/c_mbeacxc \
|
|
+ $(top_srcdir)/Matrix/c_west0067 \
|
|
+ $(top_srcdir)/Matrix/fs_183_1 \
|
|
+ $(top_srcdir)/Matrix/lp_afiro \
|
|
+ $(top_srcdir)/Matrix/mbeacxc \
|
|
+ $(top_srcdir)/Matrix/mhd1280b \
|
|
+ $(top_srcdir)/Matrix/neumann \
|
|
+ $(top_srcdir)/Matrix/qc324 \
|
|
+ $(top_srcdir)/Matrix/t1 \
|
|
+ $(top_srcdir)/Matrix/t2 \
|
|
+ $(top_srcdir)/Matrix/t3 \
|
|
+ $(top_srcdir)/Matrix/t4 \
|
|
+ $(top_srcdir)/Matrix/west0067 \
|
|
+ $(top_srcdir)/Matrix/young1c
|
|
+
|
|
+check-local: $(check_PROGRAMS) $(MATRICES)
|
|
+ -./cs_demo1 < $(top_srcdir)/Matrix/t1
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/t1
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/fs_183_1
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/west0067
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/lp_afiro
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/ash219
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/mbeacxc
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/bcsstk01
|
|
+ -./cs_demo3 < $(top_srcdir)/Matrix/bcsstk01
|
|
+ -./cs_demo2 < $(top_srcdir)/Matrix/bcsstk16
|
|
+ -./cs_demo3 < $(top_srcdir)/Matrix/bcsstk16
|
|
+ -./cs_di_demo1 < $(top_srcdir)/Matrix/t1
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/t1
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/fs_183_1
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/west0067
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/lp_afiro
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/ash219
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/mbeacxc
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/bcsstk01
|
|
+ -./cs_di_demo3 < $(top_srcdir)/Matrix/bcsstk01
|
|
+ -./cs_di_demo2 < $(top_srcdir)/Matrix/bcsstk16
|
|
+ -./cs_di_demo3 < $(top_srcdir)/Matrix/bcsstk16
|
|
+ -./cs_dl_demo1 < $(top_srcdir)/Matrix/t1
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/t1
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/fs_183_1
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/west0067
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/lp_afiro
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/ash219
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/mbeacxc
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/bcsstk01
|
|
+ -./cs_dl_demo3 < $(top_srcdir)/Matrix/bcsstk01
|
|
+ -./cs_dl_demo2 < $(top_srcdir)/Matrix/bcsstk16
|
|
+ -./cs_dl_demo3 < $(top_srcdir)/Matrix/bcsstk16
|
|
+ -./cs_ci_demo1 < $(top_srcdir)/Matrix/t2
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/t2
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/t3
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/t4
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/c_west0067
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/c_mbeacxc
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/young1c
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/qc324
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/neumann
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/c4
|
|
+ -./cs_ci_demo3 < $(top_srcdir)/Matrix/c4
|
|
+ -./cs_ci_demo2 < $(top_srcdir)/Matrix/mhd1280b
|
|
+ -./cs_ci_demo3 < $(top_srcdir)/Matrix/mhd1280b
|
|
+ -./cs_cl_demo1 < $(top_srcdir)/Matrix/t2
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/t2
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/t3
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/t4
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/c_west0067
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/c_mbeacxc
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/young1c
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/qc324
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/neumann
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/c4
|
|
+ -./cs_cl_demo3 < $(top_srcdir)/Matrix/c4
|
|
+ -./cs_cl_demo2 < $(top_srcdir)/Matrix/mhd1280b
|
|
+ -./cs_cl_demo3 < $(top_srcdir)/Matrix/mhd1280b
|
|
+ -./cs_idemo < $(top_srcdir)/Matrix/t2
|
|
+ -./cs_ldemo < $(top_srcdir)/Matrix/t2
|
|
diff --git a/Include/Makefile.am b/Include/Makefile.am
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/Include/Makefile.am
|
|
@@ -0,0 +1 @@
|
|
+pkginclude_HEADERS = cs.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 Matrix Demo
|
|
+EXTRA_DIST = README.txt Doc/ChangeLog Doc/License.txt Doc/lesser.txt
|
|
+
|
|
+pkgconfigdir = $(libdir)/pkgconfig
|
|
+pkgconfig_DATA = cxsparse.pc
|
|
diff --git a/Matrix/Makefile.am b/Matrix/Makefile.am
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/Matrix/Makefile.am
|
|
@@ -0,0 +1,23 @@
|
|
+dist_noinst_DATA = \
|
|
+ ash219 \
|
|
+ bcsstk01 \
|
|
+ bcsstk16 \
|
|
+ c4 \
|
|
+ c_ibm32a \
|
|
+ c_ibm32b \
|
|
+ c_mbeacxc \
|
|
+ c_west0067 \
|
|
+ fs_183_1 \
|
|
+ ibm32a \
|
|
+ ibm32b \
|
|
+ lp_afiro \
|
|
+ mbeacxc \
|
|
+ mhd1280b \
|
|
+ neumann \
|
|
+ qc324 \
|
|
+ t1 \
|
|
+ t2 \
|
|
+ t3 \
|
|
+ t4 \
|
|
+ west0067 \
|
|
+ young1c
|
|
diff --git a/Source/Makefile.am b/Source/Makefile.am
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/Source/Makefile.am
|
|
@@ -0,0 +1,72 @@
|
|
+AM_CPPFLAGS = -I$(top_srcdir)/Include $(SUITESPARSECONFIG_CFLAGS)
|
|
+
|
|
+CS_SOURCE = \
|
|
+ cs_add.c \
|
|
+ cs_amd.c \
|
|
+ cs_chol.c \
|
|
+ cs_cholsol.c \
|
|
+ cs_compress.c \
|
|
+ cs_counts.c \
|
|
+ cs_cumsum.c \
|
|
+ cs_dfs.c \
|
|
+ cs_dmperm.c \
|
|
+ cs_droptol.c \
|
|
+ cs_dropzeros.c \
|
|
+ cs_dupl.c \
|
|
+ cs_entry.c \
|
|
+ cs_ereach.c \
|
|
+ cs_etree.c \
|
|
+ cs_fkeep.c \
|
|
+ cs_gaxpy.c \
|
|
+ cs_happly.c \
|
|
+ cs_house.c \
|
|
+ cs_ipvec.c \
|
|
+ cs_leaf.c \
|
|
+ cs_load.c \
|
|
+ cs_lsolve.c \
|
|
+ cs_ltsolve.c \
|
|
+ cs_lu.c \
|
|
+ cs_lusol.c \
|
|
+ cs_malloc.c \
|
|
+ cs_maxtrans.c \
|
|
+ cs_multiply.c \
|
|
+ cs_norm.c \
|
|
+ cs_permute.c \
|
|
+ cs_pinv.c \
|
|
+ cs_post.c \
|
|
+ cs_print.c \
|
|
+ cs_pvec.c \
|
|
+ cs_qr.c \
|
|
+ cs_qrsol.c \
|
|
+ cs_randperm.c \
|
|
+ cs_reach.c \
|
|
+ cs_scatter.c \
|
|
+ cs_scc.c \
|
|
+ cs_schol.c \
|
|
+ cs_spsolve.c \
|
|
+ cs_sqr.c \
|
|
+ cs_symperm.c \
|
|
+ cs_tdfs.c \
|
|
+ cs_transpose.c \
|
|
+ cs_updown.c \
|
|
+ cs_usolve.c \
|
|
+ cs_util.c \
|
|
+ cs_utsolve.c
|
|
+
|
|
+lib_LTLIBRARIES = libcxsparse.la
|
|
+noinst_LTLIBRARIES = libcxsparse_di.la libcxsparse_dl.la libcxsparse_ci.la libcxsparse_cl.la
|
|
+
|
|
+libcxsparse_di_la_SOURCES = $(CS_SOURCE)
|
|
+
|
|
+libcxsparse_dl_la_SOURCES = $(CS_SOURCE)
|
|
+libcxsparse_dl_la_CPPFLAGS = $(AM_CPPFLAGS) -DCS_LONG
|
|
+
|
|
+libcxsparse_ci_la_SOURCES = $(CS_SOURCE)
|
|
+libcxsparse_ci_la_CPPFLAGS = $(AM_CPPFLAGS) -DCS_COMPLEX
|
|
+
|
|
+libcxsparse_cl_la_SOURCES = $(CS_SOURCE)
|
|
+libcxsparse_cl_la_CPPFLAGS = $(AM_CPPFLAGS) -DCS_LONG -DCS_COMPLEX
|
|
+
|
|
+libcxsparse_la_SOURCES = cs_convert.c
|
|
+libcxsparse_la_LIBADD = libcxsparse_di.la libcxsparse_dl.la libcxsparse_ci.la libcxsparse_cl.la -lm
|
|
+libcxsparse_la_LDFLAGS = -no-undefined -release $(PACKAGE_VERSION)
|
|
diff --git a/configure.ac b/configure.ac
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/configure.ac
|
|
@@ -0,0 +1,45 @@
|
|
+# -*- Autoconf -*-
|
|
+# Process this file with autoconf to produce a configure script.
|
|
+
|
|
+AC_PREREQ([2.69])
|
|
+AC_INIT([CXSparse],[3.1.4],[DrTimothyAldenDavis@gmail.com],[cxsparse],[http://www.suitesparse.com/])
|
|
+AC_CONFIG_SRCDIR([Source/cs_print.c])
|
|
+AC_CONFIG_HEADERS([config.h])
|
|
+AM_INIT_AUTOMAKE([foreign])
|
|
+LT_INIT
|
|
+
|
|
+# Checks for programs.
|
|
+AC_PROG_INSTALL
|
|
+AC_PROG_CC
|
|
+
|
|
+LIBS_SAVED=$LIBS
|
|
+
|
|
+# Checks for libraries.
|
|
+AC_CHECK_LIB([m], [sqrt])
|
|
+
|
|
+PKG_PROG_PKG_CONFIG
|
|
+PKG_CHECK_MODULES([SUITESPARSECONFIG],[suitesparseconfig],
|
|
+ [],
|
|
+ [AC_MSG_ERROR([cannot find suitesparseconfig])])
|
|
+
|
|
+# Checks for header files.
|
|
+AC_CHECK_HEADERS([limits.h stdlib.h])
|
|
+
|
|
+# Checks for typedefs, structures, and compiler characteristics.
|
|
+AC_TYPE_SIZE_T
|
|
+
|
|
+# Checks for library functions.
|
|
+AC_FUNC_MALLOC
|
|
+AC_FUNC_REALLOC
|
|
+AC_CHECK_FUNCS([sqrt])
|
|
+
|
|
+LIBS=$LIBS_SAVED
|
|
+
|
|
+AC_CONFIG_FILES([
|
|
+ cxsparse.pc
|
|
+ Makefile
|
|
+ Demo/Makefile
|
|
+ Include/Makefile
|
|
+ Matrix/Makefile
|
|
+ Source/Makefile])
|
|
+AC_OUTPUT
|
|
diff --git a/cxsparse.pc.in b/cxsparse.pc.in
|
|
new file mode 100644
|
|
--- /dev/null
|
|
+++ b/cxsparse.pc.in
|
|
@@ -0,0 +1,13 @@
|
|
+prefix=@prefix@
|
|
+exec_prefix=@exec_prefix@
|
|
+libdir=@libdir@
|
|
+includedir=@includedir@
|
|
+
|
|
+Name: @PACKAGE_NAME@
|
|
+Description: An extended version of CSparse
|
|
+Version: @PACKAGE_VERSION@
|
|
+URL: @PACKAGE_URL@
|
|
+Requires.private: suitesparseconfig
|
|
+Libs: -L${libdir} -lcxsparse
|
|
+Libs.private: -lm
|
|
+Cflags: -I${includedir}/cxsparse
|