]> www.ginac.de Git - cln.git/commitdiff
build: switch to ordinary auto* tools system.
authorAlexei Sheplyakov <varg@theor.jinr.ru>
Sat, 23 Aug 2008 18:33:09 +0000 (22:33 +0400)
committerAlexei Sheplyakov <varg@theor.jinr.ru>
Wed, 27 Aug 2008 04:41:09 +0000 (08:41 +0400)
Benefits:

1. If a header file gets modified, all dependent stuff gets rebuilt.
   No need for 'make clean' after each header modification, no more
   spurious errors, no more spurious rebuilds.
2. No more errors due to redefined preprocessor, compiler, and linker
   FLAGS.
3. Build scripts don't try to build every *.cc file which happen to
   lurk in the source directory.

17 files changed:
Makefile.am [new file with mode: 0644]
Makefile.in [deleted file]
autoconf/aclocal.m4 [deleted file]
configure.ac
doc/Makefile.am [new file with mode: 0644]
doc/Makefile.in [deleted file]
examples/Makefile.am [new file with mode: 0644]
examples/Makefile.in [deleted file]
include/cln/config.h.in [deleted file]
include/cln/host_cpu.h.in [new file with mode: 0644]
m4/cc.m4
m4/gmp.m4
m4/longdouble.m4
src/Makefile.am [new file with mode: 0644]
src/Makefile.in [deleted file]
tests/Makefile.am [new file with mode: 0644]
tests/Makefile.in [deleted file]

diff --git a/Makefile.am b/Makefile.am
new file mode 100644 (file)
index 0000000..abca0df
--- /dev/null
@@ -0,0 +1,104 @@
+SUBDIRS = src tests examples doc
+DIST_SUBDIRS = src tests examples doc
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = cln.pc
+
+EXTRA_DIST = cln.pc.in cln.spec.in
+
+$(pkgconfig_DATA): config.status
+
+# Rule to build tar-bzipped distribution package
+$(PACKAGE)-$(VERSION).tar.gz: dist
+
+ACLOCAL_AMFLAGS = -I m4
+
+
+clnincludedir = $(includedir)/cln
+
+clninclude_HEADERS = \
+include/cln/SV_real.h \
+include/cln/GV_integer.h \
+include/cln/floatformat.h \
+include/cln/lfloat.h \
+include/cln/null_ring.h \
+include/cln/io.h \
+include/cln/ring.h \
+include/cln/V.h \
+include/cln/GV.h \
+include/cln/GV_number.h \
+include/cln/complex_io.h \
+include/cln/condition.h \
+include/cln/integer_ring.h \
+include/cln/dfloat_io.h \
+include/cln/random.h \
+include/cln/SV_ringelt.h \
+include/cln/ffloat_io.h \
+include/cln/float_class.h \
+include/cln/cln.h \
+include/cln/ffloat_class.h \
+include/cln/float.h \
+include/cln/string.h \
+include/cln/lfloat_io.h \
+include/cln/malloc.h \
+include/cln/lfloat_class.h \
+include/cln/number_io.h \
+include/cln/numtheory.h \
+include/cln/object.h \
+include/cln/proplist.h \
+include/cln/univpoly_rational.h \
+include/cln/univpoly_real.h \
+include/cln/output.h \
+include/cln/real_io.h \
+include/cln/ffloat.h \
+include/cln/sfloat_io.h \
+include/cln/timing.h \
+include/cln/SV_number.h \
+include/cln/complex_ring.h \
+include/cln/univpoly_complex.h \
+include/cln/version.h \
+include/cln/rational.h \
+include/cln/rational_class.h \
+include/cln/rational_io.h \
+include/cln/types.h \
+include/cln/univpoly_modint.h \
+include/cln/modinteger.h \
+include/cln/rational_ring.h \
+include/cln/univpoly_integer.h \
+include/cln/number.h \
+include/cln/GV_complex.h \
+include/cln/GV_modinteger.h \
+include/cln/GV_real.h \
+include/cln/SV_complex.h \
+include/cln/SV_integer.h \
+include/cln/complex.h \
+include/cln/exception.h \
+include/cln/univpoly.h \
+include/cln/SV_rational.h \
+include/cln/complex_class.h \
+include/cln/real.h \
+include/cln/symbol.h \
+include/cln/dfloat_class.h \
+include/cln/modules.h \
+include/cln/real_ring.h \
+include/cln/float_io.h \
+include/cln/GV_rational.h \
+include/cln/input.h \
+include/cln/integer_class.h \
+include/cln/integer_io.h \
+include/cln/real_class.h \
+include/cln/sfloat.h \
+include/cln/sfloat_class.h \
+include/cln/dfloat.h \
+include/cln/SV.h \
+include/cln/integer.h
+
+## FIXME: we should NOT expose these macros to users
+cln_GENERATEDdir = $(includedir)/cln
+cln_GENERATED_HEADERS = \
+include/cln/config.h \
+include/cln/host_cpu.h
+
+EXTRA_DIST += include/cln/config.h.in \
+            include/cln/host_cpu.h.in \
+            include/cln/version.h.in
diff --git a/Makefile.in b/Makefile.in
deleted file mode 100644 (file)
index 1331aad..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-# Makefile for cln
-
-#### Start of system configuration section. ####
-
-# Directories used by "make install":
-prefix = @prefix@
-local_prefix = /usr/local
-exec_prefix = @exec_prefix@
-srcdir = @srcdir@
-bindir = @bindir@
-datarootdir = @datarootdir@
-datadir = @datadir@
-libdir = @libdir@
-includedir = @includedir@
-mandir = @mandir@
-DESTDIR =
-
-# Programs used by "make":
-CC = @CC@
-CFLAGS = @CFLAGS@
-RM = rm -f
-MKDIR = mkdir -p
-@SET_MAKE@
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_SCRIPT = @INSTALL_SCRIPT@
-INSTALL_DATA = @INSTALL_DATA@
-
-#### End of system configuration section. ####
-
-SHELL = /bin/sh
-
-all : force
-       cd @subdir@ && ${MAKE} all
-
-install : installdirs force
-       cd @subdir@ && ${MAKE} install
-       ${INSTALL_DATA} cln.pc ${DESTDIR}${libdir}/pkgconfig/cln.pc
-
-installdirs : force
-       cd @subdir@ && ${MAKE} installdirs
-       ${MKDIR} ${DESTDIR}${mandir}/man1
-       ${MKDIR} ${DESTDIR}${datadir}/aclocal
-       ${MKDIR} ${DESTDIR}${bindir}
-       ${MKDIR} ${DESTDIR}${libdir}/pkgconfig
-
-uninstall : force
-       cd @subdir@ && ${MAKE} uninstall
-       ${RM} ${DESTDIR}${libdir}/pkgconfig/cln.pc
-
-check : force
-       cd @subdir@ && ${MAKE} check
-
-mostlyclean : force
-       cd @subdir@ && ${MAKE} mostlyclean
-
-clean : force
-       cd @subdir@ && ${MAKE} clean
-
-distclean : force
-       cd @subdir@ && if test -f Makefile; then ${MAKE} distclean; fi
-       ${RM} config.status config.log config.cache Makefile
-       ${RM} cln.pc
-       ${RM} libtool
-       ${RM} include/cln/config.h include/cln/intparam.h include/cln/floatparam.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/float/cl_float_config.h src/timing/cl_t_config.h
-
-maintainer-clean : force
-       cd @subdir@ && if test -f Makefile; then ${MAKE} maintainer-clean; fi
-       ${RM} config.status config.log config.cache Makefile
-       ${RM} cln.spec cln.pc
-       ${RM} libtool
-       ${RM} include/cln/config.h include/cln/intparam.h include/cln/floatparam.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/float/cl_float_config.h src/timing/cl_t_config.h
-
-force :
diff --git a/autoconf/aclocal.m4 b/autoconf/aclocal.m4
deleted file mode 100644 (file)
index 06a06c2..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-m4_include([cc.m4])
-m4_include([intparam.m4])
-m4_include([floatparam.m4])
-m4_include([gmp.m4])
-
-dnl Borrowed from GNU clisp.
-m4_include([alloca.m4])
-m4_include([as-underscore.m4])
-m4_include([general.m4])
-m4_include([gettimeofday.m4])
-m4_include([param.m4]) dnl called intparam.m4 in clisp
-m4_include([longdouble.m4])
-m4_include([longlong.m4])
-m4_include([perror.m4])
-m4_include([proto.m4])
-m4_include([rusage.m4])
-m4_include([times.m4])
-
-dnl Borrowed from GNU libtool.
-m4_include([libtool.m4])
index ba188cb554b99f3261ebf448601b4a8270d38ad0..2636046840ca7fda3968f3040ed0b0854d4dfecd 100644 (file)
@@ -1,44 +1,35 @@
-dnl  AUTOCONF configuration for CLN
-dnl
-dnl  configure.ac ---<autoconf>--->> configure
-dnl
-dnl  configure    ---<sh>--->> config.status
-dnl                      --->> include/cln/config.h
-dnl        cln-config.in --->> cln-config
-dnl          Makefile.in --->> Makefile
-dnl      src/Makefile.in --->> src/Makefile
-dnl
-dnl  Makefile   ---<make>--->> libcln.a
-dnl
-dnl
-AC_INIT(src/integer/gcd/cl_I_gcd.cc)
-AC_CONFIG_AUX_DIR(autoconf)
-AC_CONFIG_HEADER(include/cln/config.h include/cln/version.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/timing/cl_t_config.h)
-AC_PROG_MAKE_SET
-dnl This piece of sed script replaces every line containing '@subdir@'
-dnl by several consecutive lines, each referencing one subdir.
-extrasub="$extrasub"'
-/@subdir@/{
-h
-g
-s/@subdir@/src/
-p
-g
-s/@subdir@/tests/
-p
-g
-s/@subdir@/benchmarks/
-p
-g
-s/@subdir@/examples/
-p
-g
-s/@subdir@/doc/
-p
-d
-}
-'
-dnl
+dnl run autoreconf -iv to produce the configure script.
+
+m4_define([cl_version_major], [1])
+m4_define([cl_version_minor], [2])
+m4_define([cl_version_patchlevel], [2])
+m4_define([cl_version], [cl_version_major.cl_version_minor.cl_version_patchlevel])
+
+dnl Libtool's library version information for CLN.
+dnl (Not to be confused with CLN's release version.)
+dnl Making new releases:
+dnl * increment CL_REVISION,
+dnl * if any functions/classes have been added, removed or changed, increment
+dnl   CL_CURRENT and set CL_REVISION to 0,
+dnl * if any functions/classes have been added, increment CL_AGE,
+dnl * if backwards compatibility has been broken, set CL_AGE to 0.
+dnl $(CL_CURRENT):$(CL_REVISION):$(CL_AGE) results in
+dnl libcln.so.$(CL_CURRENT)-$(CL_AGE)
+m4_define([cl_current], [6])
+m4_define([cl_revision], [0])
+m4_define([cl_age], [0])
+m4_define([cl_lt_version], [cl_current:cl_revision:cl_age])
+
+AC_INIT([cln], cln_version)
+AC_PREREQ(2.59)
+AC_CONFIG_SRCDIR(src/integer/gcd/cl_I_gcd.cc)
+AC_CONFIG_AUX_DIR([autoconf])
+AC_CONFIG_HEADERS(include/cln/config.h include/cln/host_cpu.h include/cln/version.h src/base/cl_base_config.h src/base/cl_gmpconfig.h src/timing/cl_t_config.h)
+AM_INIT_AUTOMAKE([foreign 1.8 dist-bzip2])
+AH_TOP([#ifdef _CL_CONFIG_H])
+AH_TOP([#include "cln/host_cpu.h"])
+AH_BOTTOM([#endif /* _CL_CONFIG_H */])
+
 dnl           checks for programs
 dnl
 AC_PROG_CC
@@ -53,8 +44,6 @@ CL_AS_UNDERSCORE
                       dnl sets variable AS_UNDERSCORE, DEFS ASM_UNDERSCORE
 CL_AS_NOEXECSTACK
                       dnl sets variable ASMFLAGS
-AC_PROG_RANLIB
-                      dnl sets variable RANLIB
 AC_PROG_INSTALL
                       dnl sets variables INSTALL, INSTALL_DATA, INSTALL_PROGRAM
 dnl
@@ -64,11 +53,6 @@ CL_CANONICAL_HOST(autoconf)
                       dnl sets variables host, host_cpu, host_vendor, host_os
 CL_CANONICAL_HOST_CPU
                       dnl DEFS __${host_cpu}__
-dnl
-dnl           check for build configuration
-dnl
-PACKAGE=cln
-                      dnl libtool wants PACKAGE
 case $host_os in
     *mingw*)
      AC_DISABLE_SHARED
@@ -81,40 +65,25 @@ esac
 AC_PROG_LIBTOOL
                       dnl sets variable LIBTOOL
 
-dnl Libtool's library version information for CLN.
-dnl (Not to be confused with CLN's release version.)
-dnl Making new releases:
-dnl * increment CL_REVISION,
-dnl * if any functions/classes have been added, removed or changed, increment
-dnl   CL_CURRENT and set CL_REVISION to 0,
-dnl * if any functions/classes have been added, increment CL_AGE,
-dnl * if backwards compatibility has been broken, set CL_AGE to 0.
-dnl $(CL_CURRENT):$(CL_REVISION):$(CL_AGE) results in
-dnl libcln.so.$(CL_CURRENT)-$(CL_AGE)
-CL_CURRENT=6
-CL_REVISION=0
-CL_AGE=0
-dnl make substitutions
-AC_SUBST(CL_CURRENT)
-AC_SUBST(CL_REVISION)
-AC_SUBST(CL_AGE)
+LT_VERSION_INFO=cl_lt_version
+AC_SUBST(LT_VERSION_INFO)
+
 dnl release version
-CL_VERSION_MAJOR=1
-CL_VERSION_MINOR=2
-CL_VERSION_PATCHLEVEL=2
+CL_VERSION_MAJOR=cl_version_major
+CL_VERSION_MINOR=cl_version_minor
+CL_VERSION_PATCHLEVEL=cl_version_patchlevel
 dnl release version for cln/config.h, so it can be tested by the preprocessor
-AC_DEFINE_UNQUOTED(CL_VERSION_MAJOR, $CL_VERSION_MAJOR)
-AC_DEFINE_UNQUOTED(CL_VERSION_MINOR, $CL_VERSION_MINOR)
-AC_DEFINE_UNQUOTED(CL_VERSION_PATCHLEVEL, $CL_VERSION_PATCHLEVEL)
+AC_DEFINE_UNQUOTED(CL_VERSION_MAJOR, $CL_VERSION_MAJOR, [Major version number of CLN])
+AC_DEFINE_UNQUOTED(CL_VERSION_MINOR, $CL_VERSION_MINOR, [Minor version number of CLN])
+AC_DEFINE_UNQUOTED(CL_VERSION_PATCHLEVEL, $CL_VERSION_PATCHLEVEL, [Patchlevel version number of CLN])
 dnl concatenated release version
-CL_VERSION=$CL_VERSION_MAJOR.$CL_VERSION_MINOR.$CL_VERSION_PATCHLEVEL
-AC_DEFINE_UNQUOTED(CL_VERSION, $CL_VERSION)
+CL_VERSION=cl_version
+AC_DEFINE_UNQUOTED(CL_VERSION, $CL_VERSION, [CLN release number])
 AC_SUBST(CL_VERSION)
 
-dnl
 dnl           checks for compiler characteristics
 dnl
-AC_LANG_CPLUSPLUS
+AC_LANG([C++])
 dnl
 CL_LONGLONG
                       dnl DEFS HAVE_LONGLONG
@@ -166,14 +135,4 @@ CL_LIBGMP
 dnl
 dnl           That's it.
 dnl
-for f in 'tests/.gdbinit'; do
-  if test '!' -f "$f"; then
-    echo "creating $f"
-changequote(,)dnl
-    g=`echo "$f" | sed -e 's,/[^/]*$,,'`
-changequote([,])dnl
-    test "$g" = "$f" || test -d "$g" || mkdir "$g"
-    cp "$srcdir/$f" "$f"
-  fi
-done
-AC_OUTPUT([Makefile src/Makefile tests/Makefile benchmarks/Makefile examples/Makefile doc/Makefile cln.spec cln.pc])
+AC_OUTPUT([Makefile src/Makefile tests/Makefile examples/Makefile doc/Makefile cln.spec cln.pc])
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644 (file)
index 0000000..90746d7
--- /dev/null
@@ -0,0 +1,4 @@
+
+info_TEXINFOS = cln.texi
+AM_MAKEINFOHTMLFLAGS = --no-split
+
diff --git a/doc/Makefile.in b/doc/Makefile.in
deleted file mode 100644 (file)
index cab75eb..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-# Makefile for cln/doc
-
-#### Start of system configuration section. ####
-
-# Directories used by "make":
-srcdir = @srcdir@
-
-# Directories used by "make install":
-prefix = @prefix@
-local_prefix = /usr/local
-exec_prefix = @exec_prefix@
-datarootdir = @datarootdir@
-datadir = @datadir@
-infodir = @infodir@
-mandir = @mandir@
-htmldir = ${datadir}/html
-dvidir = ${datadir}/dvi
-DESTDIR =
-
-# Programs used by "make":
-RM = rm -f
-RM_R = rm -rf
-MKDIR = mkdir -p
-@SET_MAKE@
-
-# Programs used by "make" if you have changed the documentation files:
-TEX = tex
-TEXI2DVI = texi2dvi
-DVIPS = dvips -D600
-MAKEINFO = LANGUAGE= makeinfo
-TEXI2HTML = texi2html
-
-# Programs used by "make install":
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-#### End of system configuration section. ####
-
-PACKAGE = cln
-
-SHELL = /bin/sh
-
-VPATH = ${srcdir}
-
-all : info dvi ps html
-
-
-info : ${srcdir}/${PACKAGE}.info
-
-${srcdir}/${PACKAGE}.info : ${srcdir}/${PACKAGE}.texi
-       cd ${srcdir} && ${MAKEINFO} --no-split ${PACKAGE}.texi
-
-
-dvi : ${srcdir}/${PACKAGE}.dvi
-
-${srcdir}/${PACKAGE}.dvi : ${srcdir}/${PACKAGE}.texi
-       cd ${srcdir} && ${TEXI2DVI} ${PACKAGE}.texi
-
-
-ps : ${srcdir}/${PACKAGE}.ps
-
-${srcdir}/${PACKAGE}.ps : ${srcdir}/${PACKAGE}.dvi
-       ${DVIPS} -o $@ $<
-
-
-html : ${PACKAGE}.html ${PACKAGE}/${PACKAGE}.html
-
-${PACKAGE}.html : ${srcdir}/${PACKAGE}.texi
-       cd ${srcdir} && ${TEXI2HTML} -expandinfo -number -monolithic ${PACKAGE}.texi
-
-${PACKAGE}/${PACKAGE}.html : ${srcdir}/${PACKAGE}.texi
-       cd ${srcdir} && ${TEXI2HTML} -expandinfo -number -split_chapter ${PACKAGE}.texi
-
-
-install : all installdirs force
-       ${INSTALL_DATA} ${srcdir}/${PACKAGE}.info ${DESTDIR}${infodir}/${PACKAGE}.info
-       @if (install-info --version && \
-            install-info --version 2>&1 | sed 1q | fgrep -i -v debian) >/dev/null 2>&1; then \
-         echo " install-info --info-dir=${DESTDIR}${infodir} ${DESTDIR}${infodir}/${PACKAGE}.info";\
-         install-info --info-dir=${DESTDIR}${infodir} ${DESTDIR}${infodir}/${PACKAGE}.info || :;\
-       else : ; fi
-       ${INSTALL_DATA} ${srcdir}/${PACKAGE}/${PACKAGE}*.html ${DESTDIR}${htmldir}
-       ${INSTALL_DATA} ${srcdir}/${PACKAGE}.dvi ${DESTDIR}${dvidir}/${PACKAGE}.dvi
-
-installdirs : force
-       ${MKDIR} ${DESTDIR}${datadir}
-       ${MKDIR} ${DESTDIR}${infodir}
-       ${MKDIR} ${DESTDIR}${htmldir}
-       ${MKDIR} ${DESTDIR}${dvidir}
-
-uninstall : force
-       @if (install-info --version && \
-            install-info --version 2>&1 | sed 1q | fgrep -i -v debian) >/dev/null 2>&1; then \
-         echo " install-info --info-dir=${DESTDIR}${infodir} --remove ${DESTDIR}${infodir}/${PACKAGE}.info"; \
-         install-info --info-dir=${DESTDIR}${infodir} --remove ${DESTDIR}${infodir}/${PACKAGE}.info; \
-       else :; fi
-       ${RM} ${DESTDIR}${infodir}/${PACKAGE}.info
-       ${RM} ${DESTDIR}${htmldir}/${PACKAGE}_*.html
-       ${RM} ${DESTDIR}${dvidir}/${PACKAGE}.dvi
-
-check : all
-
-mostlyclean : clean
-
-clean : force
-       ${RM} *~ *.aux *.toc *.cp *.fn *.ky *.pg *.tp *.vr *.my *.mys *.log core
-
-distclean : clean
-       ${RM} Makefile
-
-maintainer-clean : distclean
-       ${RM} *.info *.dvi *.ps *.html
-       ${RM_R} cln/
-
-force :
-
diff --git a/examples/Makefile.am b/examples/Makefile.am
new file mode 100644 (file)
index 0000000..627d72c
--- /dev/null
@@ -0,0 +1,29 @@
+noinst_PROGRAMS = contfrac e fibonacci legendre lucaslehmer nextprime perfnum pi
+
+
+contfrac_SOURCES = contfrac.cc
+contfrac_LDADD = ../src/libcln.la
+
+e_SOURCES = e.cc
+e_LDADD = ../src/libcln.la
+
+fibonacci_SOURCES = fibonacci.cc
+fibonacci_LDADD = ../src/libcln.la
+
+legendre_SOURCES = legendre.cc
+legendre_LDADD = ../src/libcln.la
+
+lucaslehmer_SOURCES = lucaslehmer.cc
+lucaslehmer_LDADD = ../src/libcln.la
+
+nextprime_SOURCES = nextprime.cc
+nextprime_LDADD = ../src/libcln.la
+
+perfnum_SOURCES = perfnum.cc
+perfnum_LDADD = ../src/libcln.la
+
+pi_SOURCES = pi.cc
+pi_LDADD = ../src/libcln.la
+
+
+AM_CPPFLAGS = -I../include -I$(top_srcdir)/include
diff --git a/examples/Makefile.in b/examples/Makefile.in
deleted file mode 100644 (file)
index 4e9517f..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-# Makefile for cln/examples
-# This is only needed while CLN has not been installed in a public place on
-# your system (such as /usr/local/include and /usr/local/lib). Once CLN is
-# installed, a simple C++ compiler command suffices.
-
-#### Start of system configuration section. ####
-
-# Directories used by "make":
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-
-# Programs used by "make":
-# C compiler
-CC = @CC@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-# C++ compiler
-CXX = @CXX@
-CXXFLAGS = @CXXFLAGS@
-CXXCPP = @CXXCPP@
-INCLUDES = -I../include -I${top_srcdir}/include -I${srcdir}
-override CPPFLAGS += ${INCLUDES}
-LIBTOOL = @LIBTOOL@
-LIBTOOL_LINK = ${LIBTOOL} --mode=link
-MV = mv
-LN = ln
-RM = rm -f
-@SET_MAKE@
-EXEEXT = @EXEEXT@
-
-#### End of system configuration section. ####
-
-SHELL = /bin/sh
-
-# Needed by ${LIBTOOL}.
-top_builddir = ..
-
-VPATH = ${srcdir}
-
-FILES_CC := $(notdir $(wildcard ${srcdir}/*.cc))
-FILES_CC := $(filter-out %.i.cc, ${FILES_CC})
-
-FILES_I_CC := $(patsubst %.cc,%.i.cc,${FILES_CC})
-
-FILES_S := $(patsubst %.cc,%.s,${FILES_CC})
-
-FILES_O := $(patsubst %.cc,%.o,${FILES_CC})
-
-OBJECTS = ${FILES_O}
-
-LIBS = ../src/libcln.la -lm
-LIBDEPS = ../src/libcln.la
-
-PROGRAMS = $(addsuffix ${EXEEXT},contfrac e fibonacci legendre lucaslehmer nextprime perfnum pi)
-MODULES_contfrac = contfrac
-MODULES_e = e
-MODULES_fibonacci = fibonacci
-MODULES_legendre = legendre
-MODULES_lucaslehmer = lucaslehmer
-MODULES_nextprime = nextprime
-MODULES_perfnum = perfnum
-MODULES_pi = pi
-
-all : $(addsuffix ${EXEEXT}, contfrac e fibonacci legendre lucaslehmer nextprime perfnum pi)
-
-%.s : %.c
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
-
-%.s : %.cc
-       ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
-
-%.o : %.c
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
-
-%.o : %.cc
-       ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
-
-%.i : %.c
-       ${CPP} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
-
-%.i.cc : %.cc
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
-
-contfrac${EXEEXT} : $(patsubst %,%.o,${MODULES_contfrac})
-e${EXEEXT} : $(patsubst %,%.o,${MODULES_e})
-fibonacci${EXEEXT} : $(patsubst %,%.o,${MODULES_fibonacci})
-legendre${EXEEXT} : $(patsubst %,%.o,${MODULES_legendre})
-lucaslehmer${EXEEXT} : $(patsubst %,%.o,${MODULES_lucaslehmer})
-nextprime${EXEEXT} : $(patsubst %,%.o,${MODULES_nextprime})
-perfnum${EXEEXT} : $(patsubst %,%.o,${MODULES_perfnum})
-pi${EXEEXT} : $(patsubst %,%.o,${MODULES_pi})
-${PROGRAMS} : %${EXEEXT} : ${LIBDEPS}
-       ${LIBTOOL_LINK} ${CXX} ${CXXFLAGS} ${TARGET_ARCH} $(patsubst %,%.o,$(MODULES_$(*F))) ${LDFLAGS} ${LIBS} -o $@
-
-
-install : all
-
-installdirs :
-
-uninstall :
-
-check : all
-
-mostlyclean : clean
-
-clean : force
-       ${RM} *.s *.o *.a ${PROGRAMS} a.out core
-       ${RM} -r .libs _libs
-
-distclean : clean
-       ${RM} config.status config.log config.cache Makefile
-
-maintainer-clean : distclean
-
-force :
diff --git a/include/cln/config.h.in b/include/cln/config.h.in
deleted file mode 100644 (file)
index 7aad23c..0000000
+++ /dev/null
@@ -1,146 +0,0 @@
-// Defines CPU and compiler dependent macros
-
-#ifndef _CL_CONFIG_H
-#define _CL_CONFIG_H
-
-/* These definitions are adjusted by `configure' automatically. */
-
-
-/* release version */
-
-#undef CL_VERSION_MAJOR
-#undef CL_VERSION_MINOR
-#undef CL_VERSION_PATCHLEVEL
-#undef CL_VERSION
-
-
-/* CPU */
-#ifndef __i386__
-#undef __i386__
-#endif
-
-#ifndef __x86_64__
-#undef __x86_64__
-#endif
-
-#ifndef __m68k__
-#undef __m68k__
-#endif
-
-// NB: GCC def's __mips__ both on big-endian and little-endian systems.
-#ifndef __mips__
-#undef __mips__
-#endif
-
-#ifndef __mipsel__
-#undef __mipsel__
-#endif
-
-#ifndef __mips64__
-#undef __mips64__
-#endif
-
-#ifndef __sparc__
-#undef __sparc__
-#endif
-
-#ifndef __sparc64__
-#undef __sparc64__
-#endif
-
-#ifndef __alpha__
-#undef __alpha__
-#endif
-
-#ifndef __hppa__
-#undef __hppa__
-#endif
-
-#ifndef __arm__
-#undef __arm__
-#endif
-
-#ifndef __rs6000__
-#undef __rs6000__
-#endif
-
-#ifndef __powerpc64__
-#undef __powerpc64__
-#endif
-
-#ifndef __m88k__
-#undef __m88k__
-#endif
-
-#ifndef __convex__
-#undef __convex__
-#endif
-
-#ifndef __ia64__
-#undef __ia64__
-#endif
-
-#ifndef __s390__
-#undef __s390__
-#endif
-
-
-/* assembler syntax */
-
-/* CL_AS_UNDERSCORE */
-/* Define if C symbols are prefixed by an underscore in assembly language. */
-#undef ASM_UNDERSCORE
-
-
-/* compiler characteristics */
-
-/* CL_LONGLONG */
-/* Define if your compiler supports the `long long' type. */
-#undef HAVE_LONGLONG
-
-/* CL_LONGDOUBLE */
-/* Define if your compiler supports the `long double' type. */
-#undef HAVE_LONGDOUBLE
-
-
-/* header files */
-
-/* CL_UNISTD_H */
-/* Define if you have <unistd.h>. */
-#undef HAVE_UNISTD_H
-
-/* CL_GMP_SET_UINTD */
-/* Define one of the following so sizeof(uintD) matches sizeof(mp_limb_t). */
-#undef GMP_DEMANDS_UINTD_LONG_LONG
-#undef GMP_DEMANDS_UINTD_LONG
-#undef GMP_DEMANDS_UINTD_INT
-
-
-/* functions and declarations */
-
-/* CL_ALLOCA */
-/* Define if you have <alloca.h> and it should be used (not Ultrix). */
-#undef HAVE_ALLOCA_H
-/* Define if you need to link with an external alloca.o when using alloca(). */
-#undef NO_ALLOCA
-
-
-/* compiler characteristics */
-
-/* Define if the compiler knows about __attribute__((flatten)). */
-#ifndef CL_HAVE_ATTRIBUTE_FLATTEN
-#undef CL_HAVE_ATTRIBUTE_FLATTEN
-#endif
-
-/* CL_CHAR_UNSIGNED */
-#ifndef __CHAR_UNSIGNED__
-#undef __CHAR_UNSIGNED__
-#endif
-
-/* CL_MACHINE */
-/* see cl_intparam.h */
-/* see cl_floatparam.h */
-
-
-#endif /* _CL_CONFIG_H */
-
diff --git a/include/cln/host_cpu.h.in b/include/cln/host_cpu.h.in
new file mode 100644 (file)
index 0000000..b18e05f
--- /dev/null
@@ -0,0 +1,79 @@
+// Defines CPU dependent macros
+
+#ifndef _CL_HOST_CPU_CONFIG_H
+#define _CL_HOST_CPU_CONFIG_H
+
+/* These definitions are adjusted by `configure' automatically. */
+
+/* CPU */
+#ifndef __i386__
+#undef __i386__
+#endif
+
+#ifndef __x86_64__
+#undef __x86_64__
+#endif
+
+#ifndef __m68k__
+#undef __m68k__
+#endif
+
+// NB: GCC def's __mips__ both on big-endian and little-endian systems.
+#ifndef __mips__
+#undef __mips__
+#endif
+
+#ifndef __mipsel__
+#undef __mipsel__
+#endif
+
+#ifndef __mips64__
+#undef __mips64__
+#endif
+
+#ifndef __sparc__
+#undef __sparc__
+#endif
+
+#ifndef __sparc64__
+#undef __sparc64__
+#endif
+
+#ifndef __alpha__
+#undef __alpha__
+#endif
+
+#ifndef __hppa__
+#undef __hppa__
+#endif
+
+#ifndef __arm__
+#undef __arm__
+#endif
+
+#ifndef __rs6000__
+#undef __rs6000__
+#endif
+
+#ifndef __powerpc64__
+#undef __powerpc64__
+#endif
+
+#ifndef __m88k__
+#undef __m88k__
+#endif
+
+#ifndef __convex__
+#undef __convex__
+#endif
+
+#ifndef __ia64__
+#undef __ia64__
+#endif
+
+#ifndef __s390__
+#undef __s390__
+#endif
+
+#endif /* _CL_HOST_CPU_CONFIG_H */
+
index b1c001fa389756df58e6855be0d623027f125050..425e799172f336566467b0a3f05e739a9ced06bf 100644 (file)
--- a/m4/cc.m4
+++ b/m4/cc.m4
@@ -3,14 +3,15 @@ dnl to the C-compiler when acting on .s files. Appends that option to ASFLAGS.
 dnl This macro is adapted from one found in GLIBC-2.3.5.
 AC_DEFUN([CL_AS_NOEXECSTACK],[
 AC_REQUIRE([AC_PROG_CC])
+AC_REQUIRE([AM_PROG_AS])
 AC_CACHE_CHECK([whether --noexecstack is desirable for .s files], cl_cv_as_noexecstack, [dnl
   cat > conftest.c <<EOF
 void foo() {}
 EOF
-  if AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS
+  if AC_TRY_COMMAND([${CCAS} $CFLAGS $CPPFLAGS
                      -S -o conftest.s conftest.c >/dev/null]) \
      && grep -q .note.GNU-stack conftest.s \
-     && AC_TRY_COMMAND([${CC} $CFLAGS $CPPFLAGS -Wa,--noexecstack
+     && AC_TRY_COMMAND([${CCAS} $CFLAGS $CPPFLAGS -Wa,--noexecstack
                        -c -o conftest.o conftest.s >/dev/null])
   then
     cl_cv_as_noexecstack=yes
@@ -19,9 +20,8 @@ EOF
   fi
   rm -f conftest*])
   if test "$cl_cv_as_noexecstack" = yes; then
-    ASMFLAGS="$ASMFLAGS -Wa,--noexecstack"
+    CCASFLAGS="$CCASFLAGS -Wa,--noexecstack"
   fi
-  AC_SUBST(ASMFLAGS)
 ])
 
 
@@ -45,6 +45,6 @@ fi
 rm -f conftest*
 ])
 if test $cl_cv_have_attr_flatten = yes; then
-  AC_DEFINE(CL_HAVE_ATTRIBUTE_FLATTEN)
+  AC_DEFINE(CL_HAVE_ATTRIBUTE_FLATTEN, ,[Define if compiler supports __attribute__((flatten))])
 fi
 ])
index 1ad8898b151fc4bd1fb717b0f01ab3ca1eb14172..205101e26589bf31316375491b31926644f55465 100644 (file)
--- a/m4/gmp.m4
+++ b/m4/gmp.m4
@@ -81,7 +81,7 @@ case $with_gmp in
       CL_GMP_CHECK
       if test "$cl_cv_new_libgmp" = yes; then
         CL_GMP_SET_UINTD
-        AC_DEFINE(CL_USE_GMP)
+        AC_DEFINE(CL_USE_GMP, 1, [Define if GNU MP library is available])
       else
         AC_MSG_WARN([The GNU MP library is too old to be used.])
       fi
index 70b08e417b3d4a4f1a9070430e1a4c795339d43a..e51c4c5544d43209d2b043ffa6fb31db40768ad7 100644 (file)
@@ -26,6 +26,6 @@ AC_TRY_COMPILE([
   ], , cl_cv_c_longdouble=yes, cl_cv_c_longdouble=no)])
 ])
 if test $cl_cv_c_longdouble = yes; then
-  AC_DEFINE(HAVE_LONGDOUBLE)
+  AC_DEFINE(HAVE_LONGDOUBLE, ,[Define if compiler supports long double type])
 fi
 ])
diff --git a/src/Makefile.am b/src/Makefile.am
new file mode 100644 (file)
index 0000000..8f373cc
--- /dev/null
@@ -0,0 +1,984 @@
+lib_LTLIBRARIES = libcln.la
+
+AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src -I$(top_builddir)/include -I$(top_builddir)/src
+libcln_la_LDFLAGS = -version-info $(LT_VERSION_INFO)
+
+libcln_la_SOURCES = \
+base/cl_N.h \
+base/cl_alloca.cc \
+base/cl_alloca.h \
+base/cl_as_exception.cc \
+base/cl_condition.cc \
+base/cl_d0_exception.cc \
+base/cl_debug.cc \
+base/cl_debugout.cc \
+base/cl_free.cc \
+base/cl_immclasses.cc \
+base/cl_inline.h \
+base/cl_inline2.h \
+base/cl_iterator.h \
+base/cl_low.h \
+base/cl_macros.h \
+base/cl_malloc.cc \
+base/cl_maybe_inline.h \
+base/cl_notreached_exception.cc \
+base/cl_offsetof.h \
+base/cl_sysdep.h \
+base/cl_version.cc \
+base/cl_xmacros.h \
+base/digit/cl_2D.h \
+base/digit/cl_2D_div.cc \
+base/digit/cl_2D_exptpos.cc \
+base/digit/cl_D.h \
+base/digitseq/cl_2DS.h \
+base/digitseq/cl_2DS_div.cc \
+base/digitseq/cl_2DS_recip.cc \
+base/digitseq/cl_DS.h \
+base/digitseq/cl_DS_div.cc \
+base/digitseq/cl_DS_endian.h \
+base/digitseq/cl_DS_mul.cc \
+base/digitseq/cl_DS_mul_fftc.h \
+base/digitseq/cl_DS_mul_fftcs.h \
+base/digitseq/cl_DS_mul_fftm.h \
+base/digitseq/cl_DS_mul_fftp.h \
+base/digitseq/cl_DS_mul_fftp3.h \
+base/digitseq/cl_DS_mul_fftp3m.h \
+base/digitseq/cl_DS_mul_fftr.h \
+base/digitseq/cl_DS_mul_kara.h \
+base/digitseq/cl_DS_mul_kara_sqr.h \
+base/digitseq/cl_DS_mul_nuss.h \
+base/digitseq/cl_DS_random.cc \
+base/digitseq/cl_DS_recip.cc \
+base/digitseq/cl_DS_recipsqrt.cc \
+base/digitseq/cl_DS_sqrt.cc \
+base/digitseq/cl_DS_trandom.cc \
+base/digitseq/cl_asm.h \
+base/hash/cl_hash.h \
+base/hash/cl_hash1.h \
+base/hash/cl_hash1weak.h \
+base/hash/cl_hash2.h \
+base/hash/cl_hash2weak.h \
+base/hash/cl_hashset.h \
+base/hash/cl_hashuniq.h \
+base/hash/cl_hashuniqweak.h \
+base/hash/cl_rcpointer2_hashweak_rcpointer.cc \
+base/hash/cl_rcpointer2_hashweak_rcpointer.h \
+base/hash/cl_rcpointer_hashweak_rcpointer.cc \
+base/hash/cl_rcpointer_hashweak_rcpointer.h \
+base/input/cl_read_bad_syntax_exception.cc \
+base/input/cl_read_eof_exception.cc \
+base/input/cl_read_junk_exception.cc \
+base/low/cl_low_div.cc \
+base/low/cl_low_isqrt.cc \
+base/low/cl_low_isqrt2.cc \
+base/low/cl_low_mul.cc \
+base/output/cl_output_dec.cc \
+base/output/cl_output_hex.cc \
+base/output/cl_prin_globals.cc \
+base/proplist/cl_pl_add.cc \
+base/proplist/cl_pl_d.cc \
+base/proplist/cl_pl_get.cc \
+base/random/cl_UL_random.cc \
+base/random/cl_random_def.cc \
+base/random/cl_random_from.cc \
+base/random/cl_random_impl.h \
+base/ring/cl_no_ring.cc \
+base/ring/cl_ring_debug.cc \
+base/string/cl_spushstring.h \
+base/string/cl_spushstring_append.cc \
+base/string/cl_spushstring_push.cc \
+base/string/cl_sstring.cc \
+base/string/cl_sstring.h \
+base/string/cl_st_c2.cc \
+base/string/cl_st_concat1.cc \
+base/string/cl_st_concat2.cc \
+base/string/cl_st_concat3.cc \
+base/string/cl_st_debug.cc \
+base/string/cl_st_hashcode.cc \
+base/string/cl_st_make0.cc \
+base/string/cl_st_make0.h \
+base/string/cl_st_make1.cc \
+base/string/cl_st_make2.cc \
+base/string/cl_st_null.cc \
+base/string/input/cl_st_get1.cc \
+base/string/input/cl_st_get2.cc \
+base/string/input/cl_st_getline1.cc \
+base/string/input/cl_st_getline2.cc \
+base/string/input/cl_st_gettoken.cc \
+base/string/misc/cl_st_class.cc \
+base/string/output/cl_st_print.cc \
+base/symbol/cl_sy_hashcode.cc \
+base/symbol/cl_symbol.cc \
+complex/algebraic/cl_C_abs.cc \
+complex/algebraic/cl_C_abs_aux.cc \
+complex/algebraic/cl_C_signum.cc \
+complex/algebraic/cl_C_sqrt.cc \
+complex/algebraic/cl_DF_hypot.cc \
+complex/algebraic/cl_FF_hypot.cc \
+complex/algebraic/cl_LF_hypot.cc \
+complex/algebraic/cl_R_hypot.cc \
+complex/algebraic/cl_SF_hypot.cc \
+complex/cl_C.h \
+complex/elem/cl_C_equal.cc \
+complex/elem/cl_C_from_R_R_complex.cc \
+complex/elem/cl_C_from_R_R_complex1.cc \
+complex/elem/cl_C_imagpart.cc \
+complex/elem/cl_C_minus.cc \
+complex/elem/cl_C_minus1.cc \
+complex/elem/cl_C_mul.cc \
+complex/elem/cl_C_plus.cc \
+complex/elem/cl_C_plus1.cc \
+complex/elem/cl_C_realpart.cc \
+complex/elem/cl_C_square.cc \
+complex/elem/cl_C_uminus.cc \
+complex/elem/cl_C_zerop.cc \
+complex/elem/division/cl_C_DF_recip.cc \
+complex/elem/division/cl_C_FF_recip.cc \
+complex/elem/division/cl_C_LF_recip.cc \
+complex/elem/division/cl_C_SF_recip.cc \
+complex/elem/division/cl_C_div.cc \
+complex/elem/division/cl_C_recip.cc \
+complex/input/cl_N_from_string.cc \
+complex/input/cl_N_read.cc \
+complex/input/cl_N_read_stream.cc \
+complex/misc/cl_C_class.cc \
+complex/misc/cl_C_conjugate.cc \
+complex/misc/cl_C_debug.cc \
+complex/misc/cl_C_eqhashcode.cc \
+complex/misc/cl_C_expt.cc \
+complex/misc/cl_C_expt_I.cc \
+complex/misc/cl_N_as.cc \
+complex/output/cl_N_aprint.cc \
+complex/output/cl_N_bprint.cc \
+complex/ring/cl_C_ring.cc \
+complex/transcendental/cl_C_acos.cc \
+complex/transcendental/cl_C_acosh.cc \
+complex/transcendental/cl_C_asin.cc \
+complex/transcendental/cl_C_asinh.cc \
+complex/transcendental/cl_C_asinh_aux.cc \
+complex/transcendental/cl_C_atan.cc \
+complex/transcendental/cl_C_atanh.cc \
+complex/transcendental/cl_C_atanh_aux.cc \
+complex/transcendental/cl_C_cis.cc \
+complex/transcendental/cl_C_cos.cc \
+complex/transcendental/cl_C_cosh.cc \
+complex/transcendental/cl_C_exp.cc \
+complex/transcendental/cl_C_expt_C.cc \
+complex/transcendental/cl_C_log.cc \
+complex/transcendental/cl_C_log2.cc \
+complex/transcendental/cl_C_phase.cc \
+complex/transcendental/cl_C_sin.cc \
+complex/transcendental/cl_C_sinh.cc \
+complex/transcendental/cl_C_tan.cc \
+complex/transcendental/cl_C_tanh.cc \
+complex/transcendental/cl_R_cis.cc \
+float/algebraic/cl_F_sqrt.cc \
+float/base/cl_F_globals.cc \
+float/base/cl_F_nan_exception.cc \
+float/base/cl_F_overflow_exception.cc \
+float/base/cl_F_underflow_exception.cc \
+float/cl_F.h \
+float/conv/cl_DF_to_FF.cc \
+float/conv/cl_DF_to_LF.cc \
+float/conv/cl_DF_to_SF.cc \
+float/conv/cl_DF_to_double.cc \
+float/conv/cl_DF_to_float.cc \
+float/conv/cl_FF_to_DF.cc \
+float/conv/cl_FF_to_LF.cc \
+float/conv/cl_FF_to_SF.cc \
+float/conv/cl_FF_to_double.cc \
+float/conv/cl_FF_to_float.cc \
+float/conv/cl_F_from_F.cc \
+float/conv/cl_F_from_F_f.cc \
+float/conv/cl_F_from_I.cc \
+float/conv/cl_F_from_I_def.cc \
+float/conv/cl_F_from_I_f.cc \
+float/conv/cl_F_from_RA.cc \
+float/conv/cl_F_from_RA_def.cc \
+float/conv/cl_F_from_RA_f.cc \
+float/conv/cl_F_to_DF.cc \
+float/conv/cl_F_to_FF.cc \
+float/conv/cl_F_to_LF.cc \
+float/conv/cl_F_to_SF.cc \
+float/conv/cl_F_to_double.cc \
+float/conv/cl_F_to_float.cc \
+float/conv/cl_LF_to_DF.cc \
+float/conv/cl_LF_to_FF.cc \
+float/conv/cl_LF_to_SF.cc \
+float/conv/cl_LF_to_double.cc \
+float/conv/cl_LF_to_float.cc \
+float/conv/cl_SF_to_DF.cc \
+float/conv/cl_SF_to_FF.cc \
+float/conv/cl_SF_to_LF.cc \
+float/conv/cl_SF_to_double.cc \
+float/conv/cl_SF_to_float.cc \
+float/dfloat/algebraic/cl_DF_sqrt.cc \
+float/dfloat/cl_DF.h \
+float/dfloat/conv/cl_DF_from_double.cc \
+float/dfloat/conv/cl_DF_to_doublej.cc \
+float/dfloat/conv/cl_I_to_double.cc \
+float/dfloat/conv/cl_RA_to_double.cc \
+float/dfloat/division/cl_DF_ceil22.cc \
+float/dfloat/division/cl_DF_fceil.cc \
+float/dfloat/division/cl_DF_floor22.cc \
+float/dfloat/division/cl_DF_recip.cc \
+float/dfloat/division/cl_DF_round22.cc \
+float/dfloat/division/cl_DF_trunc22.cc \
+float/dfloat/elem/cl_DF_compare.cc \
+float/dfloat/elem/cl_DF_div.cc \
+float/dfloat/elem/cl_DF_ffloor.cc \
+float/dfloat/elem/cl_DF_from_I.cc \
+float/dfloat/elem/cl_DF_from_RA.cc \
+float/dfloat/elem/cl_DF_fround.cc \
+float/dfloat/elem/cl_DF_ftrunc.cc \
+float/dfloat/elem/cl_DF_futrunc.cc \
+float/dfloat/elem/cl_DF_globals.cc \
+float/dfloat/elem/cl_DF_minus.cc \
+float/dfloat/elem/cl_DF_minusp.cc \
+float/dfloat/elem/cl_DF_mul.cc \
+float/dfloat/elem/cl_DF_plus.cc \
+float/dfloat/elem/cl_DF_plusp.cc \
+float/dfloat/elem/cl_DF_scale.cc \
+float/dfloat/elem/cl_DF_scale_I.cc \
+float/dfloat/elem/cl_DF_to_I.cc \
+float/dfloat/elem/cl_DF_uminus.cc \
+float/dfloat/elem/cl_DF_zerop.cc \
+float/dfloat/input/cl_DF_from_string.cc \
+float/dfloat/misc/cl_DF_abs.cc \
+float/dfloat/misc/cl_DF_as.cc \
+float/dfloat/misc/cl_DF_class.cc \
+float/dfloat/misc/cl_DF_debug.cc \
+float/dfloat/misc/cl_DF_decode.cc \
+float/dfloat/misc/cl_DF_digits.cc \
+float/dfloat/misc/cl_DF_eqhashcode.cc \
+float/dfloat/misc/cl_DF_exponent.cc \
+float/dfloat/misc/cl_DF_idecode.cc \
+float/dfloat/misc/cl_DF_max.cc \
+float/dfloat/misc/cl_DF_min.cc \
+float/dfloat/misc/cl_DF_precision.cc \
+float/dfloat/misc/cl_DF_sign.cc \
+float/dfloat/misc/cl_DF_signum.cc \
+float/division/cl_F_ceil1.cc \
+float/division/cl_F_ceil2.cc \
+float/division/cl_F_ceil22.cc \
+float/division/cl_F_fceil1.cc \
+float/division/cl_F_fceil2.cc \
+float/division/cl_F_ffloor1.cc \
+float/division/cl_F_ffloor2.cc \
+float/division/cl_F_floor1.cc \
+float/division/cl_F_floor2.cc \
+float/division/cl_F_floor22.cc \
+float/division/cl_F_fround1.cc \
+float/division/cl_F_fround2.cc \
+float/division/cl_F_ftrunc1.cc \
+float/division/cl_F_ftrunc2.cc \
+float/division/cl_F_round1.cc \
+float/division/cl_F_round2.cc \
+float/division/cl_F_round22.cc \
+float/division/cl_F_trunc1.cc \
+float/division/cl_F_trunc2.cc \
+float/division/cl_F_trunc22.cc \
+float/elem/cl_F_I_div.cc \
+float/elem/cl_F_I_mul.cc \
+float/elem/cl_F_RA_div.cc \
+float/elem/cl_F_RA_mul.cc \
+float/elem/cl_F_compare.cc \
+float/elem/cl_F_div.cc \
+float/elem/cl_F_minus.cc \
+float/elem/cl_F_minusp.cc \
+float/elem/cl_F_mul.cc \
+float/elem/cl_F_plus.cc \
+float/elem/cl_F_plusp.cc \
+float/elem/cl_F_recip.cc \
+float/elem/cl_F_scale.cc \
+float/elem/cl_F_scale_I.cc \
+float/elem/cl_F_square.cc \
+float/elem/cl_F_uminus.cc \
+float/elem/cl_F_zerop.cc \
+float/elem/cl_I_F_div.cc \
+float/elem/cl_RA_F_div.cc \
+float/ffloat/algebraic/cl_FF_sqrt.cc \
+float/ffloat/cl_FF.h \
+float/ffloat/conv/cl_FF_from_float.cc \
+float/ffloat/conv/cl_FF_to_floatj.cc \
+float/ffloat/conv/cl_I_to_float.cc \
+float/ffloat/conv/cl_RA_to_float.cc \
+float/ffloat/division/cl_FF_ceil22.cc \
+float/ffloat/division/cl_FF_fceil.cc \
+float/ffloat/division/cl_FF_floor22.cc \
+float/ffloat/division/cl_FF_recip.cc \
+float/ffloat/division/cl_FF_round22.cc \
+float/ffloat/division/cl_FF_trunc22.cc \
+float/ffloat/elem/cl_FF_compare.cc \
+float/ffloat/elem/cl_FF_div.cc \
+float/ffloat/elem/cl_FF_ffloor.cc \
+float/ffloat/elem/cl_FF_from_I.cc \
+float/ffloat/elem/cl_FF_from_RA.cc \
+float/ffloat/elem/cl_FF_fround.cc \
+float/ffloat/elem/cl_FF_ftrunc.cc \
+float/ffloat/elem/cl_FF_futrunc.cc \
+float/ffloat/elem/cl_FF_globals.cc \
+float/ffloat/elem/cl_FF_minus.cc \
+float/ffloat/elem/cl_FF_minusp.cc \
+float/ffloat/elem/cl_FF_mul.cc \
+float/ffloat/elem/cl_FF_plus.cc \
+float/ffloat/elem/cl_FF_plusp.cc \
+float/ffloat/elem/cl_FF_scale.cc \
+float/ffloat/elem/cl_FF_scale_I.cc \
+float/ffloat/elem/cl_FF_to_I.cc \
+float/ffloat/elem/cl_FF_uminus.cc \
+float/ffloat/elem/cl_FF_zerop.cc \
+float/ffloat/input/cl_FF_from_string.cc \
+float/ffloat/misc/cl_FF_abs.cc \
+float/ffloat/misc/cl_FF_as.cc \
+float/ffloat/misc/cl_FF_class.cc \
+float/ffloat/misc/cl_FF_debug.cc \
+float/ffloat/misc/cl_FF_decode.cc \
+float/ffloat/misc/cl_FF_digits.cc \
+float/ffloat/misc/cl_FF_eqhashcode.cc \
+float/ffloat/misc/cl_FF_exponent.cc \
+float/ffloat/misc/cl_FF_idecode.cc \
+float/ffloat/misc/cl_FF_max.cc \
+float/ffloat/misc/cl_FF_min.cc \
+float/ffloat/misc/cl_FF_precision.cc \
+float/ffloat/misc/cl_FF_sign.cc \
+float/ffloat/misc/cl_FF_signum.cc \
+float/input/cl_F_from_string.cc \
+float/input/cl_F_read.cc \
+float/input/cl_F_read_stream.cc \
+float/input/cl_F_readparsed.cc \
+float/lfloat/algebraic/cl_LF_sqrt.cc \
+float/lfloat/cl_LF.h \
+float/lfloat/cl_LF_impl.h \
+float/lfloat/division/cl_LF_ceil22.cc \
+float/lfloat/division/cl_LF_fceil.cc \
+float/lfloat/division/cl_LF_floor22.cc \
+float/lfloat/division/cl_LF_recip.cc \
+float/lfloat/division/cl_LF_round22.cc \
+float/lfloat/division/cl_LF_trunc22.cc \
+float/lfloat/elem/cl_I_LF_div.cc \
+float/lfloat/elem/cl_LF_1minus.cc \
+float/lfloat/elem/cl_LF_1plus.cc \
+float/lfloat/elem/cl_LF_2minus.cc \
+float/lfloat/elem/cl_LF_2plus.cc \
+float/lfloat/elem/cl_LF_I_div.cc \
+float/lfloat/elem/cl_LF_I_mul.cc \
+float/lfloat/elem/cl_LF_RA_div.cc \
+float/lfloat/elem/cl_LF_RA_mul.cc \
+float/lfloat/elem/cl_LF_compare.cc \
+float/lfloat/elem/cl_LF_div.cc \
+float/lfloat/elem/cl_LF_ffloor.cc \
+float/lfloat/elem/cl_LF_from_I.cc \
+float/lfloat/elem/cl_LF_from_RA.cc \
+float/lfloat/elem/cl_LF_fround.cc \
+float/lfloat/elem/cl_LF_ftrunc.cc \
+float/lfloat/elem/cl_LF_futrunc.cc \
+float/lfloat/elem/cl_LF_globals.cc \
+float/lfloat/elem/cl_LF_minus1.cc \
+float/lfloat/elem/cl_LF_minusp.cc \
+float/lfloat/elem/cl_LF_mul.cc \
+float/lfloat/elem/cl_LF_plus1.cc \
+float/lfloat/elem/cl_LF_plusp.cc \
+float/lfloat/elem/cl_LF_scale.cc \
+float/lfloat/elem/cl_LF_scale_I.cc \
+float/lfloat/elem/cl_LF_square.cc \
+float/lfloat/elem/cl_LF_to_I.cc \
+float/lfloat/elem/cl_LF_uminus.cc \
+float/lfloat/elem/cl_LF_zerop.cc \
+float/lfloat/elem/cl_RA_LF_div.cc \
+float/lfloat/input/cl_LF_from_string.cc \
+float/lfloat/misc/cl_LF_abs.cc \
+float/lfloat/misc/cl_LF_as.cc \
+float/lfloat/misc/cl_LF_class.cc \
+float/lfloat/misc/cl_LF_debug.cc \
+float/lfloat/misc/cl_LF_decode.cc \
+float/lfloat/misc/cl_LF_digits.cc \
+float/lfloat/misc/cl_LF_eqhashcode.cc \
+float/lfloat/misc/cl_LF_exponent.cc \
+float/lfloat/misc/cl_LF_extend.cc \
+float/lfloat/misc/cl_LF_idecode.cc \
+float/lfloat/misc/cl_LF_leninc.cc \
+float/lfloat/misc/cl_LF_lenincx.cc \
+float/lfloat/misc/cl_LF_max.cc \
+float/lfloat/misc/cl_LF_min.cc \
+float/lfloat/misc/cl_LF_precision.cc \
+float/lfloat/misc/cl_LF_shorten.cc \
+float/lfloat/misc/cl_LF_shortenrel.cc \
+float/lfloat/misc/cl_LF_shortenwith.cc \
+float/lfloat/misc/cl_LF_sign.cc \
+float/lfloat/misc/cl_LF_signum.cc \
+float/lfloat/misc/cl_LF_to_LF.cc \
+float/misc/cl_F_abs.cc \
+float/misc/cl_F_as.cc \
+float/misc/cl_F_decode.cc \
+float/misc/cl_F_digits.cc \
+float/misc/cl_F_epsneg.cc \
+float/misc/cl_F_epspos.cc \
+float/misc/cl_F_eqhashcode.cc \
+float/misc/cl_F_exponent.cc \
+float/misc/cl_F_extendsqrt.cc \
+float/misc/cl_F_extendsqrtx.cc \
+float/misc/cl_F_idecode.cc \
+float/misc/cl_F_leastneg.cc \
+float/misc/cl_F_leastpos.cc \
+float/misc/cl_F_max.cc \
+float/misc/cl_F_min.cc \
+float/misc/cl_F_mostneg.cc \
+float/misc/cl_F_mostpos.cc \
+float/misc/cl_F_precision.cc \
+float/misc/cl_F_rational.cc \
+float/misc/cl_F_shortenrel.cc \
+float/misc/cl_F_sign.cc \
+float/misc/cl_F_sign2.cc \
+float/misc/cl_F_signum.cc \
+float/misc/cl_float_format.cc \
+float/output/cl_F_aprint.cc \
+float/output/cl_F_bprint.cc \
+float/output/cl_F_cprint.cc \
+float/output/cl_F_dprint.cc \
+float/output/cl_F_printb.cc \
+float/random/cl_F_random.cc \
+float/sfloat/algebraic/cl_SF_sqrt.cc \
+float/sfloat/cl_SF.h \
+float/sfloat/division/cl_SF_ceil22.cc \
+float/sfloat/division/cl_SF_fceil.cc \
+float/sfloat/division/cl_SF_ffloor.cc \
+float/sfloat/division/cl_SF_floor22.cc \
+float/sfloat/division/cl_SF_recip.cc \
+float/sfloat/division/cl_SF_round22.cc \
+float/sfloat/division/cl_SF_trunc22.cc \
+float/sfloat/elem/cl_SF_compare.cc \
+float/sfloat/elem/cl_SF_div.cc \
+float/sfloat/elem/cl_SF_from_I.cc \
+float/sfloat/elem/cl_SF_from_RA.cc \
+float/sfloat/elem/cl_SF_fround.cc \
+float/sfloat/elem/cl_SF_ftrunc.cc \
+float/sfloat/elem/cl_SF_futrunc.cc \
+float/sfloat/elem/cl_SF_minus.cc \
+float/sfloat/elem/cl_SF_minusp.cc \
+float/sfloat/elem/cl_SF_mul.cc \
+float/sfloat/elem/cl_SF_plus.cc \
+float/sfloat/elem/cl_SF_plusp.cc \
+float/sfloat/elem/cl_SF_scale.cc \
+float/sfloat/elem/cl_SF_scale_I.cc \
+float/sfloat/elem/cl_SF_to_I.cc \
+float/sfloat/elem/cl_SF_uminus.cc \
+float/sfloat/elem/cl_SF_zerop.cc \
+float/sfloat/input/cl_SF_from_string.cc \
+float/sfloat/misc/cl_SF_abs.cc \
+float/sfloat/misc/cl_SF_as.cc \
+float/sfloat/misc/cl_SF_class.cc \
+float/sfloat/misc/cl_SF_debug.cc \
+float/sfloat/misc/cl_SF_decode.cc \
+float/sfloat/misc/cl_SF_digits.cc \
+float/sfloat/misc/cl_SF_eqhashcode.cc \
+float/sfloat/misc/cl_SF_exponent.cc \
+float/sfloat/misc/cl_SF_idecode.cc \
+float/sfloat/misc/cl_SF_max.cc \
+float/sfloat/misc/cl_SF_min.cc \
+float/sfloat/misc/cl_SF_precision.cc \
+float/sfloat/misc/cl_SF_sign.cc \
+float/sfloat/misc/cl_SF_signum.cc \
+float/transcendental/Makefile.devel \
+float/transcendental/cl_F_atanhx.cc \
+float/transcendental/cl_F_atanx.cc \
+float/transcendental/cl_F_catalanconst.cc \
+float/transcendental/cl_F_catalanconst_def.cc \
+float/transcendental/cl_F_catalanconst_f.cc \
+float/transcendental/cl_F_catalanconst_var.cc \
+float/transcendental/cl_F_catalanconst_var.h \
+float/transcendental/cl_F_cos.cc \
+float/transcendental/cl_F_cosh.cc \
+float/transcendental/cl_F_coshsinh.cc \
+float/transcendental/cl_F_cossin.cc \
+float/transcendental/cl_F_eulerconst.cc \
+float/transcendental/cl_F_eulerconst_def.cc \
+float/transcendental/cl_F_eulerconst_f.cc \
+float/transcendental/cl_F_eulerconst_var.cc \
+float/transcendental/cl_F_eulerconst_var.h \
+float/transcendental/cl_F_exp.cc \
+float/transcendental/cl_F_exp1.cc \
+float/transcendental/cl_F_exp1_def.cc \
+float/transcendental/cl_F_exp1_f.cc \
+float/transcendental/cl_F_exp1_var.cc \
+float/transcendental/cl_F_exp1_var.h \
+float/transcendental/cl_F_expx.cc \
+float/transcendental/cl_F_ln.cc \
+float/transcendental/cl_F_ln10.cc \
+float/transcendental/cl_F_ln10_f.cc \
+float/transcendental/cl_F_ln10_var.cc \
+float/transcendental/cl_F_ln10_var.h \
+float/transcendental/cl_F_ln2.cc \
+float/transcendental/cl_F_ln2_f.cc \
+float/transcendental/cl_F_ln2_var.cc \
+float/transcendental/cl_F_ln2_var.h \
+float/transcendental/cl_F_lnx.cc \
+float/transcendental/cl_F_pi.cc \
+float/transcendental/cl_F_pi_def.cc \
+float/transcendental/cl_F_pi_f.cc \
+float/transcendental/cl_F_pi_var.cc \
+float/transcendental/cl_F_pi_var.h \
+float/transcendental/cl_F_roundpi.cc \
+float/transcendental/cl_F_roundpi2.cc \
+float/transcendental/cl_F_sin.cc \
+float/transcendental/cl_F_sinh.cc \
+float/transcendental/cl_F_sinhx.cc \
+float/transcendental/cl_F_sinx.cc \
+float/transcendental/cl_F_tan.cc \
+float/transcendental/cl_F_tanh.cc \
+float/transcendental/cl_F_tran.h \
+float/transcendental/cl_F_zeta_int.cc \
+float/transcendental/cl_F_zeta_int_def.cc \
+float/transcendental/cl_F_zeta_int_f.cc \
+float/transcendental/cl_LF_atan_recip.cc \
+float/transcendental/cl_LF_atanh_recip.cc \
+float/transcendental/cl_LF_catalanconst.cc \
+float/transcendental/cl_LF_coshsinh.cc \
+float/transcendental/cl_LF_coshsinh_aux.cc \
+float/transcendental/cl_LF_cossin.cc \
+float/transcendental/cl_LF_cossin_aux.cc \
+float/transcendental/cl_LF_eulerconst.cc \
+float/transcendental/cl_LF_exp1.cc \
+float/transcendental/cl_LF_exp_aux.cc \
+float/transcendental/cl_LF_ln10.cc \
+float/transcendental/cl_LF_ln2.cc \
+float/transcendental/cl_LF_pi.cc \
+float/transcendental/cl_LF_ratseries_.cc \
+float/transcendental/cl_LF_ratseries_a.cc \
+float/transcendental/cl_LF_ratseries_ab.cc \
+float/transcendental/cl_LF_ratseries_b.cc \
+float/transcendental/cl_LF_ratseries_p.cc \
+float/transcendental/cl_LF_ratseries_pa.cc \
+float/transcendental/cl_LF_ratseries_pab.cc \
+float/transcendental/cl_LF_ratseries_pb.cc \
+float/transcendental/cl_LF_ratseries_pq.cc \
+float/transcendental/cl_LF_ratseries_pqa.cc \
+float/transcendental/cl_LF_ratseries_pqab.cc \
+float/transcendental/cl_LF_ratseries_pqb.cc \
+float/transcendental/cl_LF_ratseries_q.cc \
+float/transcendental/cl_LF_ratseries_qa.cc \
+float/transcendental/cl_LF_ratseries_qab.cc \
+float/transcendental/cl_LF_ratseries_qb.cc \
+float/transcendental/cl_LF_ratsumseries_pqcd.cc \
+float/transcendental/cl_LF_ratsumseries_pqcd_aux.cc \
+float/transcendental/cl_LF_ratsumseries_pqd.cc \
+float/transcendental/cl_LF_ratsumseries_pqd_aux.cc \
+float/transcendental/cl_LF_tran.h \
+float/transcendental/cl_LF_zeta3.cc \
+float/transcendental/cl_LF_zeta_int.cc \
+integer/2adic/cl_I_2adic_div.cc \
+integer/2adic/cl_I_2adic_recip.cc \
+integer/algebraic/cl_I_rootp.cc \
+integer/algebraic/cl_I_rootp_I.cc \
+integer/algebraic/cl_I_rootp_aux.cc \
+integer/algebraic/cl_I_sqrt.cc \
+integer/algebraic/cl_I_sqrtp.cc \
+integer/bitwise/cl_I_ash.cc \
+integer/bitwise/cl_I_ash_I.cc \
+integer/bitwise/cl_I_ash_exception.cc \
+integer/bitwise/cl_I_boole.cc \
+integer/bitwise/cl_I_byte.h \
+integer/bitwise/cl_I_dpb.cc \
+integer/bitwise/cl_I_dpf.cc \
+integer/bitwise/cl_I_fullbyte.cc \
+integer/bitwise/cl_I_ilength.cc \
+integer/bitwise/cl_I_ldb.cc \
+integer/bitwise/cl_I_ldbtest.cc \
+integer/bitwise/cl_I_ldbx.cc \
+integer/bitwise/cl_I_ldbxtest.cc \
+integer/bitwise/cl_I_log.h \
+integer/bitwise/cl_I_log_aux.cc \
+integer/bitwise/cl_I_logand.cc \
+integer/bitwise/cl_I_logandc2.cc \
+integer/bitwise/cl_I_logbitp.cc \
+integer/bitwise/cl_I_logbitp_I.cc \
+integer/bitwise/cl_I_logcount.cc \
+integer/bitwise/cl_I_logeqv.cc \
+integer/bitwise/cl_I_logior.cc \
+integer/bitwise/cl_I_lognand.cc \
+integer/bitwise/cl_I_lognor.cc \
+integer/bitwise/cl_I_lognot.cc \
+integer/bitwise/cl_I_logorc2.cc \
+integer/bitwise/cl_I_logtest.cc \
+integer/bitwise/cl_I_logxor.cc \
+integer/bitwise/cl_I_mkf.cc \
+integer/bitwise/cl_I_mkfx.cc \
+integer/cl_I.h \
+integer/conv/cl_I_cached_power.cc \
+integer/conv/cl_I_cached_power.h \
+integer/conv/cl_I_digits_need.cc \
+integer/conv/cl_I_from_DS.cc \
+integer/conv/cl_I_from_L.cc \
+integer/conv/cl_I_from_L2.cc \
+integer/conv/cl_I_from_NDS.cc \
+integer/conv/cl_I_from_NUDS.cc \
+integer/conv/cl_I_from_Q.cc \
+integer/conv/cl_I_from_Q2.cc \
+integer/conv/cl_I_from_UDS.cc \
+integer/conv/cl_I_from_UL.cc \
+integer/conv/cl_I_from_UL2.cc \
+integer/conv/cl_I_from_UQ.cc \
+integer/conv/cl_I_from_digits.cc \
+integer/conv/cl_I_mul10plus.cc \
+integer/conv/cl_I_to_L.cc \
+integer/conv/cl_I_to_Q.cc \
+integer/conv/cl_I_to_UL.cc \
+integer/conv/cl_I_to_UQ.cc \
+integer/conv/cl_I_to_digits.cc \
+integer/division/cl_I_ceil1.cc \
+integer/division/cl_I_ceil2.cc \
+integer/division/cl_I_exquo.cc \
+integer/division/cl_I_exquo_exception.cc \
+integer/division/cl_I_exquopos.cc \
+integer/division/cl_I_floor1.cc \
+integer/division/cl_I_floor2.cc \
+integer/division/cl_I_mod.cc \
+integer/division/cl_I_rem.cc \
+integer/division/cl_I_round1.cc \
+integer/division/cl_I_round2.cc \
+integer/division/cl_I_trunc1.cc \
+integer/division/cl_I_trunc2.cc \
+integer/elem/cl_I_compare.cc \
+integer/elem/cl_I_div.cc \
+integer/elem/cl_I_equal.cc \
+integer/elem/cl_I_minus.cc \
+integer/elem/cl_I_minus1.cc \
+integer/elem/cl_I_minusp.cc \
+integer/elem/cl_I_mul.cc \
+integer/elem/cl_I_plus.cc \
+integer/elem/cl_I_plus1.cc \
+integer/elem/cl_I_plusp.cc \
+integer/elem/cl_I_square.cc \
+integer/elem/cl_I_uminus.cc \
+integer/elem/cl_I_zerop.cc \
+integer/gcd/cl_I_gcd.cc \
+integer/gcd/cl_I_gcd_aux.cc \
+integer/gcd/cl_I_gcd_aux2.cc \
+integer/gcd/cl_I_lcm.cc \
+integer/gcd/cl_I_xgcd.cc \
+integer/gcd/cl_low_gcd.cc \
+integer/hash/cl_I_hash_gcobject.cc \
+integer/hash/cl_I_hash_gcobject.h \
+integer/hash/cl_I_hash_gcpointer.cc \
+integer/hash/cl_I_hash_gcpointer.h \
+integer/hash/cl_I_hash_pointer.cc \
+integer/hash/cl_I_hash_pointer.h \
+integer/hash/cl_I_hash_rcobject.cc \
+integer/hash/cl_I_hash_rcobject.h \
+integer/hash/cl_I_hash_rcpointer.cc \
+integer/hash/cl_I_hash_rcpointer.h \
+integer/hash/cl_I_hashcode.cc \
+integer/hash/cl_I_hashweak_rcpointer.cc \
+integer/hash/cl_I_hashweak_rcpointer.h \
+integer/input/cl_I_from_string.cc \
+integer/input/cl_I_read.cc \
+integer/input/cl_I_read_stream.cc \
+integer/input/cl_I_readparsed.cc \
+integer/misc/cl_BN_class.cc \
+integer/misc/cl_FN_class.cc \
+integer/misc/cl_I_abs.cc \
+integer/misc/cl_I_as.cc \
+integer/misc/cl_I_debug.cc \
+integer/misc/cl_I_eqhashcode.cc \
+integer/misc/cl_I_exptpos.cc \
+integer/misc/cl_I_exptpos_I.cc \
+integer/misc/cl_I_max.cc \
+integer/misc/cl_I_min.cc \
+integer/misc/cl_I_oddp.cc \
+integer/misc/cl_I_ord2.cc \
+integer/misc/cl_I_power2p.cc \
+integer/misc/cl_I_signum.cc \
+integer/misc/combin/cl_I_binomial.cc \
+integer/misc/combin/cl_I_combin.h \
+integer/misc/combin/cl_I_doublefactorial.cc \
+integer/misc/combin/cl_I_factorial.cc \
+integer/misc/combin/cl_I_factorial_aux.cc \
+integer/output/cl_I_aprint.cc \
+integer/output/cl_I_bprint.cc \
+integer/output/cl_I_cprint.cc \
+integer/output/cl_I_decstring.cc \
+integer/output/cl_I_dprint.cc \
+integer/output/cl_I_print.cc \
+integer/output/cl_I_print_string.cc \
+integer/random/cl_I_random.cc \
+integer/random/cl_I_trandom.cc \
+integer/ring/cl_0_ring.cc \
+integer/ring/cl_I_ring.cc \
+modinteger/cl_MI.cc \
+modinteger/cl_MI.h \
+modinteger/cl_MI_cond_composite.cc \
+modinteger/cl_MI_debug.cc \
+modinteger/cl_MI_err_comp.cc \
+modinteger/cl_MI_fix16.h \
+modinteger/cl_MI_fix29.h \
+modinteger/cl_MI_fix32.h \
+modinteger/cl_MI_int.h \
+modinteger/cl_MI_int32.h \
+modinteger/cl_MI_lshift.cc \
+modinteger/cl_MI_montgom.h \
+modinteger/cl_MI_pow2.h \
+modinteger/cl_MI_pow2m1.h \
+modinteger/cl_MI_pow2p1.h \
+modinteger/cl_MI_rshift.cc \
+modinteger/cl_MI_std.h \
+numtheory/cl_IF.h \
+numtheory/cl_IF_millerrabin.cc \
+numtheory/cl_IF_smallprimes.cc \
+numtheory/cl_IF_trialdiv.cc \
+numtheory/cl_IF_trialdiv1.cc \
+numtheory/cl_IF_trialdiv2.cc \
+numtheory/cl_nt_cornacchia1.cc \
+numtheory/cl_nt_cornacchia4.cc \
+numtheory/cl_nt_isprobprime.cc \
+numtheory/cl_nt_jacobi.cc \
+numtheory/cl_nt_jacobi_low.cc \
+numtheory/cl_nt_nextprobprime.cc \
+numtheory/cl_nt_sqrtmodp.cc \
+polynomial/cl_UP.h \
+polynomial/elem/cl_UP.cc \
+polynomial/elem/cl_UP_GF2.h \
+polynomial/elem/cl_UP_MI.h \
+polynomial/elem/cl_UP_gen.h \
+polynomial/elem/cl_UP_named.cc \
+polynomial/elem/cl_UP_no_ring.cc \
+polynomial/elem/cl_UP_number.h \
+polynomial/elem/cl_UP_unnamed.cc \
+polynomial/misc/cl_UP_I_hermite.cc \
+polynomial/misc/cl_UP_I_laguerre.cc \
+polynomial/misc/cl_UP_I_tchebychev.cc \
+polynomial/misc/cl_UP_RA_legendre.cc \
+polynomial/misc/cl_UP_debug.cc \
+polynomial/misc/cl_UP_deriv.cc \
+rational/algebraic/cl_RA_rootp.cc \
+rational/algebraic/cl_RA_rootp_I.cc \
+rational/algebraic/cl_RA_sqrtp.cc \
+rational/cl_RA.h \
+rational/division/cl_RA_ceil1.cc \
+rational/division/cl_RA_ceil12.cc \
+rational/division/cl_RA_ceil2.cc \
+rational/division/cl_RA_ceil22.cc \
+rational/division/cl_RA_floor1.cc \
+rational/division/cl_RA_floor12.cc \
+rational/division/cl_RA_floor2.cc \
+rational/division/cl_RA_floor22.cc \
+rational/division/cl_RA_round1.cc \
+rational/division/cl_RA_round12.cc \
+rational/division/cl_RA_round2.cc \
+rational/division/cl_RA_round22.cc \
+rational/division/cl_RA_trunc1.cc \
+rational/division/cl_RA_trunc12.cc \
+rational/division/cl_RA_trunc2.cc \
+rational/division/cl_RA_trunc22.cc \
+rational/elem/cl_RA_compare.cc \
+rational/elem/cl_RA_denominator.cc \
+rational/elem/cl_RA_div.cc \
+rational/elem/cl_RA_equal.cc \
+rational/elem/cl_RA_from_I_I_div.cc \
+rational/elem/cl_RA_from_I_posI.cc \
+rational/elem/cl_RA_from_I_posI1.cc \
+rational/elem/cl_RA_from_I_posI_div.cc \
+rational/elem/cl_RA_minus.cc \
+rational/elem/cl_RA_minus1.cc \
+rational/elem/cl_RA_minusp.cc \
+rational/elem/cl_RA_mul.cc \
+rational/elem/cl_RA_numerator.cc \
+rational/elem/cl_RA_plus.cc \
+rational/elem/cl_RA_plus1.cc \
+rational/elem/cl_RA_plusp.cc \
+rational/elem/cl_RA_recip.cc \
+rational/elem/cl_RA_square.cc \
+rational/elem/cl_RA_uminus.cc \
+rational/elem/cl_RA_zerop.cc \
+rational/input/cl_RA_from_string.cc \
+rational/input/cl_RA_read.cc \
+rational/input/cl_RA_read_stream.cc \
+rational/input/cl_RA_readparsed.cc \
+rational/misc/cl_RA_abs.cc \
+rational/misc/cl_RA_as.cc \
+rational/misc/cl_RA_class.cc \
+rational/misc/cl_RA_debug.cc \
+rational/misc/cl_RA_eqhashcode.cc \
+rational/misc/cl_RA_expt.cc \
+rational/misc/cl_RA_expt_I.cc \
+rational/misc/cl_RA_exptpos.cc \
+rational/misc/cl_RA_exptpos_I.cc \
+rational/misc/cl_RA_max.cc \
+rational/misc/cl_RA_min.cc \
+rational/misc/cl_RA_signum.cc \
+rational/output/cl_RA_aprint.cc \
+rational/output/cl_RA_bprint.cc \
+rational/output/cl_RA_cprint.cc \
+rational/output/cl_RA_dprint.cc \
+rational/output/cl_RA_print.cc \
+rational/ring/cl_RA_ring.cc \
+rational/transcendental/cl_I_logp.cc \
+rational/transcendental/cl_RA_logp.cc \
+real/algebraic/cl_RA_sqrt.cc \
+real/algebraic/cl_R_sqrt.cc \
+real/cl_R.h \
+real/conv/cl_F_from_R.cc \
+real/conv/cl_F_from_R_def.cc \
+real/conv/cl_F_from_R_f.cc \
+real/conv/cl_R_to_DF.cc \
+real/conv/cl_R_to_FF.cc \
+real/conv/cl_R_to_LF.cc \
+real/conv/cl_R_to_SF.cc \
+real/conv/cl_R_to_double.cc \
+real/conv/cl_R_to_float.cc \
+real/division/cl_R_ceil1.cc \
+real/division/cl_R_ceil12.cc \
+real/division/cl_R_ceil2.cc \
+real/division/cl_R_ceil22.cc \
+real/division/cl_R_div_t.h \
+real/division/cl_R_fceil1.cc \
+real/division/cl_R_fceil12.cc \
+real/division/cl_R_fceil2.cc \
+real/division/cl_R_fceil22.cc \
+real/division/cl_R_ffloor1.cc \
+real/division/cl_R_ffloor12.cc \
+real/division/cl_R_ffloor2.cc \
+real/division/cl_R_ffloor22.cc \
+real/division/cl_R_floor1.cc \
+real/division/cl_R_floor12.cc \
+real/division/cl_R_floor2.cc \
+real/division/cl_R_floor22.cc \
+real/division/cl_R_fround1.cc \
+real/division/cl_R_fround12.cc \
+real/division/cl_R_fround2.cc \
+real/division/cl_R_fround22.cc \
+real/division/cl_R_ftrunc1.cc \
+real/division/cl_R_ftrunc12.cc \
+real/division/cl_R_ftrunc2.cc \
+real/division/cl_R_ftrunc22.cc \
+real/division/cl_R_mod.cc \
+real/division/cl_R_rem.cc \
+real/division/cl_R_round1.cc \
+real/division/cl_R_round12.cc \
+real/division/cl_R_round2.cc \
+real/division/cl_R_round22.cc \
+real/division/cl_R_trunc1.cc \
+real/division/cl_R_trunc12.cc \
+real/division/cl_R_trunc2.cc \
+real/division/cl_R_trunc22.cc \
+real/elem/cl_R_compare.cc \
+real/elem/cl_R_div.cc \
+real/elem/cl_R_equal.cc \
+real/elem/cl_R_minus.cc \
+real/elem/cl_R_minus1.cc \
+real/elem/cl_R_minusp.cc \
+real/elem/cl_R_mul.cc \
+real/elem/cl_R_plus.cc \
+real/elem/cl_R_plus1.cc \
+real/elem/cl_R_plusp.cc \
+real/elem/cl_R_recip.cc \
+real/elem/cl_R_square.cc \
+real/elem/cl_R_uminus.cc \
+real/elem/cl_R_zerop.cc \
+real/format-output/TODO-format \
+real/format-output/cl_fmt_cardinal.cc \
+real/format-output/cl_fmt_floatstring.cc \
+real/format-output/cl_fmt_integer.cc \
+real/format-output/cl_fmt_newroman.cc \
+real/format-output/cl_fmt_oldroman.cc \
+real/format-output/cl_fmt_ordinal.cc \
+real/format-output/cl_fmt_paddedstring.cc \
+real/format-output/cl_fmt_scaleexp.cc \
+real/format-output/cl_fmt_tens.cc \
+real/format-output/cl_format.h \
+real/input/cl_R_from_string.cc \
+real/input/cl_R_read.cc \
+real/input/cl_R_read_stream.cc \
+real/misc/cl_R_abs.cc \
+real/misc/cl_R_as.cc \
+real/misc/cl_R_contagion.cc \
+real/misc/cl_R_debug.cc \
+real/misc/cl_R_eqhashcode.cc \
+real/misc/cl_R_expt.cc \
+real/misc/cl_R_expt_I.cc \
+real/misc/cl_R_max.cc \
+real/misc/cl_R_min.cc \
+real/misc/cl_R_rational.cc \
+real/misc/cl_R_rationalize.cc \
+real/misc/cl_R_signum.cc \
+real/output/cl_R_aprint.cc \
+real/output/cl_R_bprint.cc \
+real/output/cl_R_cprint.cc \
+real/random/cl_R_random.cc \
+real/ring/cl_R_ring.cc \
+real/transcendental/cl_R_atan.cc \
+real/transcendental/cl_R_atan2.cc \
+real/transcendental/cl_R_cos.cc \
+real/transcendental/cl_R_cosh.cc \
+real/transcendental/cl_R_coshsinh.cc \
+real/transcendental/cl_R_cossin.cc \
+real/transcendental/cl_R_exp.cc \
+real/transcendental/cl_R_ln.cc \
+real/transcendental/cl_R_log.cc \
+real/transcendental/cl_R_sin.cc \
+real/transcendental/cl_R_sinh.cc \
+real/transcendental/cl_R_tan.cc \
+real/transcendental/cl_R_tanh.cc \
+timing/cl_t_c1.cc \
+timing/cl_t_c2.cc \
+timing/cl_t_current.cc \
+timing/cl_t_current2.cc \
+timing/cl_t_d.cc \
+timing/cl_t_dec.cc \
+timing/cl_t_inc.cc \
+timing/cl_t_minus.cc \
+timing/cl_t_report.cc \
+timing/cl_t_td_minus.cc \
+timing/cl_t_td_plus.cc \
+vector/cl_GV_I.cc \
+vector/cl_GV_I_copy.cc \
+vector/cl_GV_I_debug.cc \
+vector/cl_GV_io.h \
+vector/cl_GV_number.cc \
+vector/cl_GV_number_copy.cc \
+vector/cl_GV_number_debug.cc \
+vector/cl_SV_copy.cc \
+vector/cl_SV_io.h \
+vector/cl_SV_number.cc \
+vector/cl_SV_number_debug.cc \
+vector/cl_SV_ringelt.cc \
+vector/cl_SV_ringelt_debug.cc \
+vector/output/cl_GV_number_aprint.cc \
+vector/output/cl_SV_aprint.cc \
+vector/output/cl_SV_number_aprint.cc
+
+nodist_libcln_la_SOURCES = \
+base/digitseq/cl_asm.S \
+polynomial/elem/cl_asm_GF2.S
+
+
+ASMFILES = \
+base/digitseq/cl_asm_.cc \
+base/digitseq/cl_asm_arm.h \
+base/digitseq/cl_asm_arm_.cc \
+base/digitseq/cl_asm_hppa.h \
+base/digitseq/cl_asm_hppa_.cc \
+base/digitseq/cl_asm_i386.h \
+base/digitseq/cl_asm_i386_.cc \
+base/digitseq/cl_asm_m68k.h \
+base/digitseq/cl_asm_m68k_.cc \
+base/digitseq/cl_asm_mips.h \
+base/digitseq/cl_asm_mips_.cc \
+base/digitseq/cl_asm_mipsel_.cc \
+base/digitseq/cl_asm_sparc.h \
+base/digitseq/cl_asm_sparc64.h \
+base/digitseq/cl_asm_sparc64_.cc \
+base/digitseq/cl_asm_sparc_.cc
+
+base/digitseq/cl_asm.S: $(ASMFILES)
+       $(MKDIR_P) base/digitseq; cp $< $@
+
+MORE_ASMFILES = \
+polynomial/elem/cl_asm_GF2.cc \
+polynomial/elem/cl_asm_sparc_GF2.cc
+
+
+polynomial/elem/cl_asm_GF2.S: $(MORE_ASMFILES)
+       $(MKDIR_P) polynomial/elem; cp $< $@
+
+EXTRA_DIST = $(ASMFILES)
+
diff --git a/src/Makefile.in b/src/Makefile.in
deleted file mode 100644 (file)
index 11115e1..0000000
+++ /dev/null
@@ -1,267 +0,0 @@
-# Makefile for cln/src
-
-#### Start of system configuration section. ####
-
-# Directories used by "make":
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-
-# Directories used by "make install":
-prefix = @prefix@
-local_prefix = /usr/local
-exec_prefix = @exec_prefix@
-datarootdir = @datarootdir@
-datadir = @datadir@
-libdir = @libdir@
-includedir = @includedir@
-mandir = @mandir@
-DESTDIR =
-
-# Programs used by "make":
-# C compiler
-CC = @CC@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-# C++ compiler
-CXX = @CXX@
-CXXFLAGS = @CXXFLAGS@
-CXXCPP = @CXXCPP@
-INCLUDES = -I$(top_srcdir)/src -I$(top_builddir)/src -I../include -I${top_srcdir}/include
-override CPPFLAGS += ${INCLUDES}
-LDFLAGS = @LDFLAGS@
-LIBS = @LIBS@
-LIBTOOL = @LIBTOOL@
-LIBTOOL_COMPILE = ${LIBTOOL} --mode=compile
-LIBTOOL_LINK = ${LIBTOOL} --mode=link
-LIBTOOL_INSTALL = ${LIBTOOL} --mode=install
-LIBTOOL_UNINSTALL = ${LIBTOOL} --mode=uninstall
-AR = ar
-AR_FLAGS = rc
-RANLIB = @RANLIB@
-MV = mv
-LN = ln
-RM = rm -f
-MKDIR = mkdir -p
-@SET_MAKE@
-# Libtool's library interface versions:
-CL_CURRENT = @CL_CURRENT@
-CL_REVISION = @CL_REVISION@
-CL_AGE = @CL_AGE@
-
-# Programs used by "make install":
-INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
-INSTALL_DATA = @INSTALL_DATA@
-
-#### End of system configuration section. ####
-
-SHELL = /bin/sh
-
-# Needed by ${LIBTOOL}.
-top_builddir = ..
-
-# When this Makefile is called with SUBDIR=some_subdirectory, it builds
-# only the object files belonging to sources in that subdirectory. The
-# final library is built only if SUBDIR=.
-SUBDIR = .
-
-# Define the search path for sources.
-# The variable ${aux_srcdir} is needed because new versions of aufoconf tend to
-# remove ${srcdir}, ${srcdir} and so on...
-aux_srcdir = @srcdir@
-VPATH = ${aux_srcdir}/${SUBDIR}
-
-
-# Need to know the system name.
-SYSTEM := $(shell uname -s)
-
-FILES_CC := $(notdir $(wildcard ${srcdir}/${SUBDIR}/*.cc))
-FILES_CC := $(filter-out %.i.cc, ${FILES_CC})
-ASMFILES_CC := $(patsubst cl_asm_@host_cpu@_%.cc,cl_asm_%.cc, $(filter cl_asm_@host_cpu@_%.cc, ${FILES_CC}))
-FILES_CC := $(filter-out cl_asm_%.cc, ${FILES_CC})
-
-FILES_I_CC := $(patsubst %.cc,%.i.cc,${FILES_CC})
-
-FILES_S := $(patsubst %.cc,%.s,${FILES_CC})
-
-FILES_LO := $(patsubst %.cc,%.lo,${FILES_CC})
-
-ASMFILES_S := $(patsubst %.cc,%.s,${ASMFILES_CC})
-
-ASMFILES_LO := $(patsubst %.cc,%.lo,${ASMFILES_CC})
-
-OBJECTS_LO = ${FILES_LO} ${ASMFILES_LO}
-
-SUBDIRS := $(patsubst ${srcdir}/%/.,%,$(wildcard ${srcdir}/${SUBDIR}/*/.))
-# Avoid certain subdirectories:
-#   private/ and old/ don't contain valid sources,
-#   CVS/, RCS/ and SCCS/ are created when people put the sources under version control,
-#   ii_files/ is created during "make" by SGI C++.
-SUBDIRS := $(filter-out old ./old private ./private CVS %/CVS RCS %/RCS SCCS %/SCCS ii_files ./ii_files,${SUBDIRS})
-
-
-# Rule 'all' must be the first in the file.
-all : _all_
-
-
-# Recurse into subdirectories
-
-SUBDIRS_DIRDEP := $(patsubst %,%.dirdep,${SUBDIRS})
-
-${SUBDIRS_DIRDEP} : %.dirdep :
-
-
-# Target 'all' creates all necessary files for $(SUBDIR) and its subdirectories.
-
-SUBDIRS_TARGET_ALL := $(patsubst %,%.target_all,${SUBDIRS})
-
-${SUBDIRS_TARGET_ALL} : %.target_all : %.dirdep
-       ${MAKE} SUBDIR=$* all
-
-ifeq (${SUBDIR},.)
-ALLFILES_CC := $(notdir $(wildcard ${srcdir}/*.cc) $(foreach subdir,${SUBDIRS}, $(wildcard ${srcdir}/${subdir}/*.cc) $(wildcard ${srcdir}/${subdir}/*/*.cc) $(wildcard ${srcdir}/${subdir}/*/*/*.cc)))
-ALLFILES_CC := $(filter-out %.i.cc, ${ALLFILES_CC})
-ALLASMFILES_CC := $(patsubst cl_asm_@host_cpu@_%.cc,cl_asm_%.cc, $(filter cl_asm_@host_cpu@_%.cc, ${ALLFILES_CC}))
-ALLFILES_CC := $(filter-out cl_asm_%.cc, ${ALLFILES_CC})
-ALLFILES_LO := $(patsubst %.cc,%.lo,${ALLFILES_CC})
-ALLASMFILES_LO := $(patsubst %.cc,%.lo,${ALLASMFILES_CC})
-ALLOBJECTS_LO = ${ALLFILES_LO} ${ALLASMFILES_LO}
-
-_all_ : allo-local ${SUBDIRS_TARGET_ALL} libcln.la
-else
-_all_ : allo-local ${SUBDIRS_TARGET_ALL}
-endif
-
-
-# Target 'alls' creates all .s files for $(SUBDIR) and its subdirectories.
-
-SUBDIRS_TARGET_ALLS := $(patsubst %,%.target_alls,${SUBDIRS})
-
-${SUBDIRS_TARGET_ALLS} : %.target_alls : %.dirdep
-       ${MAKE} SUBDIR=$* alls
-
-alls : alls-local ${SUBDIRS_TARGET_ALLS}
-
-alls-local : ${FILES_S} ${ASMFILES_S}
-
-
-# Target 'allo' creates all .lo files for $(SUBDIR) and its subdirectories.
-SUBDIRS_TARGET_ALLO := $(patsubst %,%.target_allo,${SUBDIRS})
-
-${SUBDIRS_TARGET_ALLO} : %.target_allo : %.dirdep
-       ${MAKE} SUBDIR=$* allo
-
-allo : allo-local ${SUBDIRS_TARGET_ALLO}
-
-allo-local : ${FILES_LO} ${ASMFILES_LO}
-
-
-ASMFLAGS := @ASMFLAGS@
-ifeq (@AS_UNDERSCORE@,true)
-ASMFLAGS += -DUNDERSCORE
-endif
-
-# Rules for normal compilation.
-
-%.lo : %.c
-       ${LIBTOOL_COMPILE} ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $<
-
-%.lo : %.cc
-       ${LIBTOOL_COMPILE} ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $<
-
-# Rules for normal compilation, only needed for debugging.
-
-%.s : %.c
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
-
-%.s : %.cc
-       ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
-
-# Rules for preprocessing.
-
-%.i : %.c
-       ${CPP} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
-
-%.i.cc : %.cc
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
-
-# Rules for assembly language files,
-
-ifneq (${ASMFILES_LO},)
-
-ifneq ($(filter @host_cpu@,sparc sparc64),)
-${ASMFILES_S} : %.s : %.cc
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} ${ASMFLAGS} $< | grep -v '^#' | grep -v '^ *#line' | sed -e 's/\([.%]\) /\1/g' -e 's/ , /,/g' -e 's/ :/:/g' -e 's/\$$/#/g' > $@
-else
-ifeq (@host_cpu@,m68k)
-${ASMFILES_S} : %.s : %.cc
-ifeq (@AS_UNDERSCORE@,true)
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -P ${ASMFLAGS} $< | sed -e 's/\\#/#/g' -e 's/\$$//g' > $@
-else
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -P ${ASMFLAGS} $< | sed -e 's/\\#/#/g' -e 's/\$$/%/g' > $@
-endif
-else
-ifeq (@host_cpu@,hppa)
-${ASMFILES_S} : %.s : %.cc
-       -${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -P ${ASMFLAGS} $< > $@
-else
-${ASMFILES_S} : %.s : %.cc
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -P ${ASMFLAGS} $< > $@
-endif
-endif
-endif
-
-ifeq (@host_cpu@,hppa)
-# Only the native as groks the .SHORTDATA statements
-${ASMFILES_LO} : %.lo : %.s
-       ${LIBTOOL_COMPILE} ${CC} ${CFLAGS} ${TARGET_ARCH} -c $< \
-       || COMPILER_PATH=/usr/ccs/bin ${LIBTOOL_COMPILE} ${CC} ${CFLAGS} ${TARGET_ARCH} -c $< \
-       || COMPILER_PATH=/bin ${LIBTOOL_COMPILE} ${CC} ${CFLAGS} ${TARGET_ARCH} -c $<
-else
-${ASMFILES_LO} : %.lo : %.s
-       ${LIBTOOL_COMPILE} ${CC} ${CFLAGS} ${ASMFLAGS} ${TARGET_ARCH} -c $<
-endif
-
-endif
-
-
-ifeq (${SUBDIR},.)
-
-${ALLOBJECTS_LO} : ${SUBDIRS_TARGET_ALL}
-
-libcln.la : ${LIBTOOL} ${ALLOBJECTS_LO}
-       echo ${ALLOBJECTS_LO} | tr ' ' '\n' > libcln.objectlist
-       ${LIBTOOL_LINK} ${CXX} -o libcln.la -rpath ${libdir} -version-info ${CL_CURRENT}:${CL_REVISION}:${CL_AGE} ${LDFLAGS} ${LIBS} -objectlist libcln.objectlist
-
-install : all force
-       ${MKDIR} ${DESTDIR}${libdir}
-       ${LIBTOOL_INSTALL} ${INSTALL_PROGRAM} libcln.la ${DESTDIR}${libdir}/libcln.la
-       ${MKDIR} ${DESTDIR}${includedir}/cln
-       ${INSTALL_DATA} ${top_srcdir}/include/cln/*.h ${DESTDIR}${includedir}/cln
-       ${INSTALL_DATA} ../include/cln/*.h ${DESTDIR}${includedir}/cln
-
-installdirs : force
-       ${MKDIR} ${DESTDIR}${libdir}
-       ${MKDIR} ${DESTDIR}${includedir}/cln
-
-uninstall : force
-       ${LIBTOOL_UNINSTALL} ${RM} ${DESTDIR}${libdir}/libcln.la
-       ${RM} -r ${DESTDIR}${includedir}/cln
-
-check : all
-
-mostlyclean : clean
-
-clean : force
-       ${RM} *.s *.o *.lo *.a *.la *.objectlist core
-       ${RM} -r .libs _libs
-
-distclean : clean
-       ${RM} config.status config.log config.cache Makefile
-
-maintainer-clean : distclean
-
-endif
-
-force :
diff --git a/tests/Makefile.am b/tests/Makefile.am
new file mode 100644 (file)
index 0000000..0685351
--- /dev/null
@@ -0,0 +1,170 @@
+
+ALL_TESTS = \
+exam \
+tests 
+
+ALL_TIMINGS = \
+timemul \
+timesquare \
+timediv \
+timesqrt \
+timegcd \
+timefact \
+timeprint \
+timeLFsqrt \
+timeRAtoLF \
+timeLFRAmul \
+timeRALFdiv \
+timepi \
+timeLFln \
+timeLFexp \
+timeLFsin \
+timeLFcos \
+timeLFsinh \
+timeLFcosh \
+timeLFatan \
+timeLFatanh \
+timeMIpow2recip \
+timeMIpow2div \
+timeMImisc5 \
+timeUPMImul \
+timesqrtmodp \
+main
+
+##timeexp1 \
+##timeeuler \
+##timecatalan \
+##timezeta3 \
+##timerecip2adic \
+##timediv2adic \
+
+TESTS = $(ALL_TESTS)
+check_PROGRAMS = $(ALL_TESTS)
+
+AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/src \
+-I$(top_builddir)/include -I$(top_builddir)/src
+
+
+exam_SOURCES = exam.cc exam_I.cc exam_RA.cc exam_SF.cc \
+       exam_FF.cc exam_DF.cc exam_LF.cc exam_I_gcd.cc exam_I_sqrtp.cc
+       
+exam_LDADD = ../src/libcln.la
+
+tests_SOURCES = tests.cc test_I.cc test_I_abs.cc test_I_compare.cc \
+       test_I_plus.cc test_I_minus.cc test_I_plus1.cc \
+       test_I_minus1.cc test_I_mul.cc test_I_div.cc \
+       test_I_gcd.cc test_I_xgcd.cc test_I_ash.cc \
+       test_I_evenp.cc test_I_oddp.cc test_I_lognot.cc \
+       test_I_logand.cc test_I_logandc1.cc test_I_logandc2.cc \
+       test_I_logior.cc test_I_logorc1.cc test_I_logorc2.cc \
+       test_I_logxor.cc test_I_lognand.cc test_I_lognor.cc \
+       test_I_logeqv.cc test_I_boole.cc test_I_logbitp.cc \
+       test_I_logtest.cc test_I_ldb.cc test_I_ldbtest.cc \
+       test_I_mkf.cc test_I_dpb.cc test_I_dpf.cc \
+       test_I_logcount.cc test_I_ilength.cc test_I_ord2.cc \
+       test_I_power2p.cc test_I_isqrt.cc test_I_sqrtp.cc \
+       test_I_io.cc test_I_GV.cc \
+       test_MI.cc test_MI_canonhom.cc test_MI_plus.cc \
+       test_MI_minus.cc test_MI_mul.cc test_MI_recip.cc \
+       test_MI_div.cc test_MI_expt.cc \
+       test_nt.cc test_nt_jacobi.cc
+       
+tests_LDADD = ../src/libcln.la
+
+timemul_SOURCES = timemul.cc
+timemul_LDADD = ../src/libcln.la
+
+timesquare_SOURCES = timesquare.cc
+timesquare_LDADD = ../src/libcln.la
+
+timediv_SOURCES = timediv.cc
+timediv_LDADD = ../src/libcln.la
+
+timesqrt_SOURCES = timesqrt.cc
+timesqrt_LDADD = ../src/libcln.la
+
+timegcd_SOURCES = timegcd.cc
+timegcd_LDADD = ../src/libcln.la
+
+timefact_SOURCES = timefact.cc
+timefact_LDADD = ../src/libcln.la
+
+timeprint_SOURCES = timeprint.cc
+timeprint_LDADD = ../src/libcln.la
+
+timeLFsqrt_SOURCES = timeLFsqrt.cc
+timeLFsqrt_LDADD = ../src/libcln.la
+
+timeRAtoLF_SOURCES = timeRAtoLF.cc
+timeRAtoLF_LDADD = ../src/libcln.la
+
+timeLFRAmul_SOURCES = timeLFRAmul.cc
+timeLFRAmul_LDADD = ../src/libcln.la
+
+timeRALFdiv_SOURCES = timeRALFdiv.cc
+timeRALFdiv_LDADD = ../src/libcln.la
+
+timepi_SOURCES = timepi.cc
+timepi_LDADD = ../src/libcln.la
+
+timeexp1_SOURCES = timeexp1.cc
+timeexp1_LDADD = ../src/libcln.la
+
+timeeuler_SOURCES = timeeuler.cc
+timeeuler_LDADD = ../src/libcln.la
+
+timecatalan_SOURCES = timecatalan.cc
+timecatalan_LDADD = ../src/libcln.la
+
+timezeta3_SOURCES = timezeta3.cc
+timezeta3_LDADD = ../src/libcln.la
+
+timeLFln_SOURCES = timeLFln.cc
+timeLFln_LDADD = ../src/libcln.la
+
+timeLFexp_SOURCES = timeLFexp.cc
+timeLFexp_LDADD = ../src/libcln.la
+
+timeLFsin_SOURCES = timeLFsin.cc
+timeLFsin_LDADD = ../src/libcln.la
+
+timeLFcos_SOURCES = timeLFcos.cc
+timeLFcos_LDADD = ../src/libcln.la
+
+timeLFsinh_SOURCES = timeLFsinh.cc
+timeLFsinh_LDADD = ../src/libcln.la
+
+timeLFcosh_SOURCES = timeLFcosh.cc
+timeLFcosh_LDADD = ../src/libcln.la
+
+timeLFatan_SOURCES = timeLFatan.cc
+timeLFatan_LDADD = ../src/libcln.la
+
+timeLFatanh_SOURCES = timeLFatanh.cc
+timeLFatanh_LDADD = ../src/libcln.la
+
+timerecip2adic_SOURCES = timerecip2adic.cc
+timerecip2adic_LDADD = ../src/libcln.la
+
+timediv2adic_SOURCES = timediv2adic.cc
+timediv2adic_LDADD = ../src/libcln.la
+
+timeMIpow2recip_SOURCES = timeMIpow2recip.cc
+timeMIpow2recip_LDADD = ../src/libcln.la
+
+timeMIpow2div_SOURCES = timeMIpow2div.cc
+timeMIpow2div_LDADD = ../src/libcln.la
+
+timeMImisc5_SOURCES = timeMImisc5.cc
+timeMImisc5_LDADD = ../src/libcln.la
+
+timeUPMImul_SOURCES = timeUPMImul.cc
+timeUPMImul_LDADD = ../src/libcln.la
+
+timesqrtmodp_SOURCES = timesqrtmodp.cc
+timesqrtmodp_LDADD = ../src/libcln.la
+
+main_SOURCES = main.cc
+main_LDADD = ../src/libcln.la
+
+
diff --git a/tests/Makefile.in b/tests/Makefile.in
deleted file mode 100644 (file)
index 42c5629..0000000
+++ /dev/null
@@ -1,189 +0,0 @@
-# Makefile for cln/tests
-
-#### Start of system configuration section. ####
-
-# Directories used by "make":
-srcdir = @srcdir@
-top_srcdir = @top_srcdir@
-
-# Programs used by "make":
-# C compiler
-CC = @CC@
-CFLAGS = @CFLAGS@
-CPP = @CPP@
-CPPFLAGS = @CPPFLAGS@
-# C++ compiler
-CXX = @CXX@
-CXXFLAGS = @CXXFLAGS@
-CXXCPP = @CXXCPP@
-INCLUDES = -I../include -I${top_srcdir}/include -I${srcdir} -I${top_srcdir}/src -I$(top_builddir)/src
-override CPPFLAGS += ${INCLUDES}
-LIBTOOL = @LIBTOOL@
-LIBTOOL_LINK = ${LIBTOOL} --mode=link
-MV = mv
-LN = ln
-RM = rm -f
-@SET_MAKE@
-EXEEXT = @EXEEXT@
-
-#### End of system configuration section. ####
-
-SHELL = /bin/sh
-
-# Needed by ${LIBTOOL}.
-top_builddir = ..
-
-VPATH = ${srcdir}
-
-FILES_CC := $(notdir $(wildcard ${srcdir}/*.cc))
-FILES_CC := $(filter-out %.i.cc, ${FILES_CC})
-
-FILES_I_CC := $(patsubst %.cc,%.i.cc,${FILES_CC})
-
-FILES_S := $(patsubst %.cc,%.s,${FILES_CC})
-
-FILES_O := $(patsubst %.cc,%.o,${FILES_CC})
-
-OBJECTS = ${FILES_O}
-
-LIBS = ../src/libcln.la -lm
-LIBDEPS = ../src/libcln.la
-
-PROGRAMS = $(addsuffix ${EXEEXT},exam tests timemul timesquare timediv timesqrt timegcd timefact timeprint timeLFsqrt timeRAtoLF timeLFRAmul timeRALFdiv timepi timeexp1 timeeuler timecatalan timezeta3 timeLFln timeLFexp timeLFsin timeLFcos timeLFsinh timeLFcosh timeLFatan timeLFatanh timerecip2adic timediv2adic timeMIpow2recip timeMIpow2div timeMImisc5 timeUPMImul timesqrtmodp main)
-MODULES_exam = exam exam_I exam_RA exam_SF exam_FF exam_DF exam_LF exam_I_gcd exam_I_sqrtp
-MODULES_tests = tests \
-                test_I \
-                test_I_abs test_I_compare test_I_plus test_I_minus test_I_plus1 test_I_minus1 test_I_mul test_I_div \
-                test_I_gcd test_I_xgcd \
-                test_I_ash test_I_evenp test_I_oddp test_I_lognot test_I_logand test_I_logandc1 test_I_logandc2 test_I_logior test_I_logorc1 test_I_logorc2 test_I_logxor test_I_lognand test_I_lognor test_I_logeqv test_I_boole test_I_logbitp test_I_logtest test_I_ldb test_I_ldbtest test_I_mkf test_I_dpb test_I_dpf test_I_logcount test_I_ilength test_I_ord2 test_I_power2p \
-                test_I_isqrt test_I_sqrtp \
-                test_I_io test_I_GV \
-                test_MI \
-                test_MI_canonhom test_MI_plus test_MI_minus test_MI_mul test_MI_recip test_MI_div test_MI_expt \
-                test_nt \
-                test_nt_jacobi
-MODULES_timemul = timemul
-MODULES_timesquare = timesquare
-MODULES_timediv = timediv
-MODULES_timesqrt = timesqrt
-MODULES_timegcd = timegcd
-MODULES_timefact = timefact
-MODULES_timeprint = timeprint
-MODULES_timeLFsqrt = timeLFsqrt
-MODULES_timeRAtoLF = timeRAtoLF
-MODULES_timeLFRAmul = timeLFRAmul
-MODULES_timeRALFdiv = timeRALFdiv
-MODULES_timepi = timepi
-MODULES_timeexp1 = timeexp1
-MODULES_timeeuler = timeeuler
-MODULES_timecatalan = timecatalan
-MODULES_timezeta3 = timezeta3
-MODULES_timeLFln = timeLFln
-MODULES_timeLFexp = timeLFexp
-MODULES_timeLFsin = timeLFsin
-MODULES_timeLFcos = timeLFcos
-MODULES_timeLFsinh = timeLFsinh
-MODULES_timeLFcosh = timeLFcosh
-MODULES_timeLFatan = timeLFatan
-MODULES_timeLFatanh = timeLFatanh
-MODULES_timerecip2adic = timerecip2adic
-MODULES_timediv2adic = timediv2adic
-MODULES_timeMIpow2recip = timeMIpow2recip
-MODULES_timeMIpow2div = timeMIpow2div
-MODULES_timeMImisc5 = timeMImisc5
-MODULES_timeUPMImul = timeUPMImul
-MODULES_timesqrtmodp = timesqrtmodp
-MODULES_main = main
-
-all : exam${EXEEXT} tests${EXEEXT}
-
-%.s : %.c
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
-
-%.s : %.cc
-       ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -S $< -o $@
-
-ifdef notyet
-
-%.o : %.c
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
-
-%.o : %.cc
-       ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
-
-else
-
-${FILES_O} : %.o : %.s
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} -c $< -o $@
-
-endif
-
-%.i : %.c
-       ${CPP} ${CFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
-
-%.i.cc : %.cc
-       ${CXXCPP} ${CXXFLAGS} ${CPPFLAGS} ${TARGET_ARCH} $< > $@
-
-../src/libcln.a :
-       cd ../src ; ${MAKE} libcln.a
-
-exam${EXEEXT} : $(patsubst %,%.o,$(MODULES_exam))
-tests${EXEEXT} : $(patsubst %,%.o,$(MODULES_tests))
-timemul${EXEEXT} : $(patsubst %,%.o,$(MODULES_timemul))
-timesquare${EXEEXT} : $(patsubst %,%.o,$(MODULES_timesquare))
-timediv${EXEEXT} : $(patsubst %,%.o,$(MODULES_timediv))
-timesqrt${EXEEXT} : $(patsubst %,%.o,$(MODULES_timesqrt))
-timegcd${EXEEXT} : $(patsubst %,%.o,$(MODULES_timegcd))
-timefact${EXEEXT} : $(patsubst %,%.o,$(MODULES_timefact))
-timeprint${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeprint))
-timeLFsqrt${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFsqrt))
-timeRAtoLF${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeRAtoLF))
-timeLFRAmul${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFRAmul))
-timeRALFdiv${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeRALFdiv))
-timepi${EXEEXT} : $(patsubst %,%.o,$(MODULES_timepi))
-timeexp1${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeexp1))
-timeeuler${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeeuler))
-timecatalan${EXEEXT} : $(patsubst %,%.o,$(MODULES_timecatalan))
-timezeta3${EXEEXT} : $(patsubst %,%.o,$(MODULES_timezeta3))
-timeLFln${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFln))
-timeLFexp${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFexp))
-timeLFsin${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFsin))
-timeLFcos${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFcos))
-timeLFsinh${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFsinh))
-timeLFcosh${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFcosh))
-timeLFatan${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFatan))
-timeLFatanh${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeLFatanh))
-timerecip2adic${EXEEXT} : $(patsubst %,%.o,$(MODULES_timerecip2adic))
-timediv2adic${EXEEXT} : $(patsubst %,%.o,$(MODULES_timediv2adic))
-timeMIpow2recip${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeMIpow2recip))
-timeMIpow2div${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeMIpow2div))
-timeMImisc5${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeMImisc5))
-timeUPMImul${EXEEXT} : $(patsubst %,%.o,$(MODULES_timeUPMImul))
-timesqrtmodp${EXEEXT} : $(patsubst %,%.o,$(MODULES_timesqrtmodp))
-main${EXEEXT} : $(patsubst %,%.o,$(MODULES_main))
-${PROGRAMS} : %${EXEEXT} : ${LIBDEPS}
-       ${LIBTOOL_LINK} ${CXX} ${CXXFLAGS} ${TARGET_ARCH} $(patsubst %,%.o,$(MODULES_$(*F))) ${LDFLAGS} ${LIBS} -o $@
-
-
-install : all
-
-installdirs :
-
-uninstall :
-
-check : all
-       ./exam${EXEEXT}
-       ./tests${EXEEXT}
-
-mostlyclean : clean
-
-clean : force
-       ${RM} *.s *.o *.a exam tests${EXEEXT} main a.out core
-       ${RM} -r .libs _libs
-
-distclean : clean
-       ${RM} config.status config.log config.cache Makefile
-
-maintainer-clean : distclean
-
-force :