diff --git a/Demo/Makefile.am b/Demo/Makefile.am new file mode 100644 --- /dev/null +++ b/Demo/Makefile.am @@ -0,0 +1,23 @@ +AM_CPPFLAGS = -I$(top_srcdir)/Include $(UFCONFIG_CFLAGS) +LDADD = $(top_builddir)/Source/librbio.la $(UFCONFIG_LIBS) + +EXTRA_DIST = \ + RBdemo.out + +# Disable the .out implicit pattern rule. Prevents GNU make from +# adding bogus dependencies for the .out files listed above. +%.out: % + +check_PROGRAMS = \ + RBdemo + +RBdemo_SOURCES = RBdemo.c + +RB = \ + ../RBio/private/west0479.rua + +check-local: $(check_PROGRAMS) $(RB) + ./RBdemo < ../RBio/private/west0479.rua + +clean-local: + -$(RM) temp.rb diff --git a/Include/Makefile.am b/Include/Makefile.am new file mode 100644 --- /dev/null +++ b/Include/Makefile.am @@ -0,0 +1,2 @@ +pkgincludedir = $(includedir)/rbio +pkginclude_HEADERS = RBio.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 RBio Demo Tcov +EXTRA_DIST = README.txt Doc/ChangeLog Doc/License.txt Doc/gpl.txt + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = rbio.pc diff --git a/RBio/Makefile.am b/RBio/Makefile.am new file mode 100644 --- /dev/null +++ b/RBio/Makefile.am @@ -0,0 +1,3 @@ +SUBDIRS = private +dist_noinst_DATA = \ + mywest diff --git a/RBio/private/Makefile.am b/RBio/private/Makefile.am new file mode 100644 --- /dev/null +++ b/RBio/private/Makefile.am @@ -0,0 +1,7 @@ +dist_noinst_DATA = \ + bcsstk01.rb \ + farm.rb \ + lap_25.pse \ + lap_25.rb \ + west0479.rb \ + west0479.rua diff --git a/Source/Makefile.am b/Source/Makefile.am new file mode 100644 --- /dev/null +++ b/Source/Makefile.am @@ -0,0 +1,18 @@ +AM_CPPFLAGS = -I$(top_srcdir)/Include $(UFCONFIG_CFLAGS) + +RBIOSRC = \ + RBio.c + +lib_LTLIBRARIES = librbio.la +noinst_LTLIBRARIES = librbioi.la librbiol.la + +librbioi_la_SOURCES = $(RBIOSRC) +librbioi_la_LIBADD = $(UFCONFIG_LIBS) +librbioi_la_CPPFLAGS = $(AM_CPPFLAGS) -DINT + +librbiol_la_SOURCES = $(RBIOSRC) +librbiol_la_LIBADD = $(UFCONFIG_LIBS) + +librbio_la_SOURCES = +librbio_la_LIBADD = librbioi.la librbiol.la +librbio_la_LDFLAGS = -no-undefined -version-info 2:1:0 diff --git a/Tcov/Makefile.am b/Tcov/Makefile.am new file mode 100644 --- /dev/null +++ b/Tcov/Makefile.am @@ -0,0 +1,94 @@ +AM_CC = gcc +AM_CFLAGS = -O0 -g --coverage +AM_CPPFLAGS = -I$(top_srcdir)/Include $(UFCONFIG_CFLAGS) +LDADD = $(UFCONFIG_LIBS) + +dist_noinst_DATA = \ + matrices/Tina_DisCog.tar.gz \ + matrices/dwg961a.tar.gz \ + matrices/m4.rb \ + matrices/m4b.rb \ + matrices/mhd1280a.tar.gz \ + matrices/mhd1280b.tar.gz \ + matrices/plskz362.tar.gz \ + matrices/qc324.tar.gz \ + matrices/s4.rb \ + matrices/west0067.tar.gz \ + mangled/1.rb \ + mangled/2.rb \ + mangled/3.rb \ + mangled/4.rb \ + mangled/5.rb \ + mangled/6.rb \ + mangled/7.rb \ + mangled/8.rb \ + mangled/9.rb \ + mangled/10.rb \ + mangled/11.rb \ + mangled/12.rb \ + mangled/13.rb \ + mangled/14.rb \ + mangled/15.rb + +check_PROGRAMS = \ + RBdemo \ + RBtest + +RBio.c: ../Source/RBio.c + $(LN_S) -f $< $@ + +RBdemo.c: ../Demo/RBdemo.c + $(LN_S) -f $< $@ + +RBdemo_SOURCES = RBdemo.c RBio.c +RBtest_SOURCES = RBtest.c RBio.c + +TAR = tar -O -xvvzf + +RB = \ + ../RBio/private/bcsstk01.rb \ + ../RBio/private/farm.rb \ + ../RBio/private/lap_25.pse \ + ../RBio/private/lap_25.rb \ + ../RBio/private/west0479.rb \ + ../RBio/private/west0479.rua \ + $(dist_noinst_DATA) + +check-local: $(check_PROGRAMS) $(RB) + -./RBdemo ../RBio/private/bcsstk01.rb + -./RBdemo ../RBio/private/farm.rb + -./RBdemo ../RBio/private/lap_25.pse + -./RBdemo ../RBio/private/lap_25.rb + -./RBdemo ../RBio/private/west0479.rb + -./RBdemo ../RBio/private/west0479.rua + -$(TAR) matrices/dwg961a.tar.gz dwg961a/dwg961a.rb | ./RBdemo + -$(TAR) matrices/mhd1280a.tar.gz mhd1280a/mhd1280a.rb | ./RBdemo + -$(TAR) matrices/mhd1280b.tar.gz mhd1280b/mhd1280b.rb | ./RBdemo + -$(TAR) matrices/qc324.tar.gz qc324/qc324.rb | ./RBdemo + -$(TAR) matrices/plskz362.tar.gz plskz362/plskz362.rb | ./RBdemo + -$(TAR) matrices/west0067.tar.gz west0067/west0067.rb | ./RBdemo + -$(TAR) matrices/Tina_DisCog.tar.gz Tina_DisCog/Tina_DisCog.rb | ./RBdemo + -./RBdemo matrices/m4.rb + -./RBdemo matrices/s4.rb + -./RBdemo matrices/m4b.rb + -./RBdemo mangled/1.rb + -./RBdemo mangled/2.rb + -./RBdemo mangled/3.rb + -./RBdemo mangled/4.rb + -./RBdemo mangled/5.rb + -./RBdemo mangled/6.rb + -./RBdemo mangled/7.rb + -./RBdemo mangled/8.rb + -./RBdemo mangled/9.rb + -./RBdemo mangled/10.rb + -./RBdemo mangled/11.rb + -./RBdemo mangled/12.rb + -./RBdemo mangled/13.rb + -./RBdemo mangled/14.rb + -./RBdemo mangled/15.rb + -./RBtest + -gcov *.c > gcov.out + -grep "#####" RBio.c.gcov | wc -l + +clean-local: + -$(RM) gcov.out *.gcov *.gcda *.gcno temp*.rb diff --git a/configure.ac b/configure.ac new file mode 100644 --- /dev/null +++ b/configure.ac @@ -0,0 +1,31 @@ +AC_PREREQ([2.68]) +AC_INIT([RBio],[2.0.1],[davis@cise.ufl.edu]) +AC_CONFIG_SRCDIR([Source/RBio.c]) +AC_CONFIG_HEADER([config.h]) +AM_INIT_AUTOMAKE([foreign]) +LT_INIT + +AC_PROG_INSTALL +AC_PROG_CC + +LIBS_SAVED=$LIBS + +AC_CHECK_HEADERS([stddef.h stdlib.h string.h]) + +PKG_PROG_PKG_CONFIG +PKG_CHECK_MODULES([UFCONFIG],[ufconfig], + [], + [AC_MSG_ERROR([cannot find ufconfig])]) + +LIBS=$LIBS_SAVED + +AC_CONFIG_FILES([ + rbio.pc + Makefile + Demo/Makefile + Include/Makefile + RBio/Makefile + RBio/private/Makefile + Source/Makefile + Tcov/Makefile]) +AC_OUTPUT diff --git a/rbio.pc.in b/rbio.pc.in new file mode 100644 --- /dev/null +++ b/rbio.pc.in @@ -0,0 +1,11 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: @PACKAGE_NAME@ +Description: Toolbox for reading/writing sparse matrices in Rutherford/Boeing format +Version: @PACKAGE_VERSION@ +Requires.private: ufconfig +Libs: -L${libdir} -lrbio +Cflags: -I${includedir}/rbio