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.
While at it, remove work around for ancient (fixed in 8+ years) glibc/Linux
bug (the kernel and/or libc was initializing FPU into non-IEEE mode, so division
by 0 resulted in SIGFPE instead of NaN).
* autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
* autoconf/ltmain.sh: Update to GNU version 1.4.3.
* autoconf/autoconf: Remove (from now on we assume autoconf is
installed properly on the sytem).
* autoconf/autoconf.m4: Likewise.
* autoconf/autoconf.m4f: Likewise.
* autoconf/acgeneral.m4: Likewise.
* autoconf/acspecific.m4: Likewise.
* autoconf/aclocal.m4: Regenerate.
* autoconf/acinclude.m4: Remove (while moving the macros...)
* m4/gmp.m4: New file (...to here).
* Makefile.devel: Update to new scheme.
* configure.ac: Likewise.
* include/cln/GV_integer.h: Assume template specializations work.
* include/cln/GV_modinteger.h: Likewise.
* include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
* src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
* src/base/random/cl_random_from.cc: Likewise.
* src/timing/cl_base_config.h.in: Likewise.
* src/timing/cl_t_current.cc: Likewise.
* autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
sync with CLisp from CVS.
* autoconf/autoconf: Likewise.
* autoconf/autoconf.m4f: Likewise (new file).
* configure.ac: Likewise (new file, replaces configure.in).
* configure.in: Likewise (deleted, replaced by configure.ac).
* autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
* src/Makefile.in: made VPATH safe for autoconf-2.52.
* include/cln/config.h.in: Add __s390__.
_FPU_IEEE is really defined.
* include/cln/modules.h: change assembler labels from `label' to
`label:' on hppa, needed by Linux (see comment).
* autoconf/acinclude.m4: new file (for storing CLN-specific macros).
* Makefile.devel: adjusted.
* autoconf/aclocal.m4: regenerate.
* src/base/low/cl_low_mul.cc: moved POD variables that are declared
extern "C" elsewhere out of the namespace.
* src/base/low/cl_low_div.cc: Likewise.
* configure.in: ...used here.
* include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
* include/cln/types.h: ...used here.
* autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
in order to guard against an accidented configuration.
* src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of
struct power_table_entry initialized as ULL instead of as UL, if
intDsize==64 (caused misprinting on MIPS w/ GMP).
* src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if
HAVE_FAST_LONGLONG.
* src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
* src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival
generation of Bignum for intDsize==64 and a notreached-check at end.
* autoconf/config.guess, autoconf/config.sub: updated from FSF.
* include/cln/config.h.in: Prepared support for IA64.
* include/cln/types.h: Likewise.
* include/cln/object.h: Likewise.
* include/cln/modules.h: Likewise.
* src/base/cl_macros.h (nonreturning_function): Likewise (NUE's
compiler claims __GNUC_MINOR__==9).
* src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
HAVE_DD to HAVE_FAST_LONGLONG.
* src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
* src/base/cl_low.h: actually no need to include "cln/types.h" here.
* src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
* src/base/random/cl_UL_random.cc (random32): a is always ULL.
I am too lazy for a detailed discussion of all the changes.
Many identifiers got their `cl_' stripped off. Ok, this is a
clumpsy CVS log-entry. Promise: more will soon go into the
file ChangeLog. I apologize for the inconvenience. :-(
New macros.
- configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
CL_VERSION_PATCHLEVEL): New definitions.
- autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
- src/Makefile.in, configure.in: release-variables renamed from
CLN_* to CL_*.
- configure.in: default to build both shared and static library
(i.e. default to the most common behaviour).