]> www.ginac.de Git - cln.git/blob - ChangeLog
* src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
[cln.git] / ChangeLog
1 2005-11-02  Richard B. Kreckel  <kreckel@ginac.de>
2
3         * src/integer/conv/cl_I_from_digits.cc: Made input of all numbers in
4         non-power-of-two base much faster.
5         * tests/test_I_io.cc: New file...
6         * tests/Makefile.in, tests/test_I.cc: ...used here.
7
8 2005-10-22  Richard B. Kreckel  <kreckel@ginac.de>
9
10         * Version 1.1.10 released.
11
12 2005-10-22  Richard B. Kreckel  <kreckel@ginac.de>
13
14         * src/Makefile.in: Accept CPPFLAGS from environment.
15         * examples/Makefile.in: Likewise.
16         * benchmarks/Makefile.in: Likewise.
17         * tests/Makefile.in: Likewise.
18
19 2005-08-30  Richard B. Kreckel  <kreckel@ginac.de>
20
21         * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
22         duplication of basic blocks on m68k.
23
24 2005-08-30  Richard B. Kreckel  <kreckel@ginac.de>
25
26         * include/cln/modules.h (CL_JUMP_TO): Fix mips* brokenness.
27
28 2005-08-27  Bruno Haible  <bruno@clisp.org>
29
30         Split aclocal.m4 into individual files.
31         * m4/alloca.m4, m4/as-underscore.m4, m4/c++-constructors.m4:
32         * m4/fpu_control.m4, m4/general.m4, m4/gettimeofday.m4:
33         * m4/longdouble.m4, m4/longlong.m4, m4/param.m4, m4/perror.m4:
34         * m4/proto.m4, m4/rusage.m4, m4/times.m4:
35         New files, extracted from autoconf/aclocal.m4.
36         * autoconf/aclocal.m4: m4_include them.
37         * Makefile.devel (AUTOCONF_MACROS): New variable.
38         (configure): Depend on it.
39         (CLISP_M4DIR): Remove variable.
40         (autoconf/aclocal.m4): Remove rule.
41
42 2005-08-27  Bruno Haible  <bruno@clisp.org>
43
44         * src/integer/bitwise/cl_I_ash_I.cc (ash): Avoid shifting a 32-bit
45         zero value by more than 31 bits.
46
47 2005-08-27  Bruno Haible  <bruno@clisp.org>
48
49         Make the long-float overflow check work on 64-bit platforms.
50         * src/float/lfloat/cl_LF.h (LF_exp_mid, LF_exp_high): Define as
51         'unsigned int', not 'unsigned long'.
52
53 2005-08-27  Bruno Haible  <bruno@clisp.org>
54
55         * include/cln/modules.h (CL_OUTPUT_LABEL): Work around redundant
56         duplication of basic blocks by g++ 4.0.
57         See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23345>.
58
59 2005-08-27  Bruno Haible  <bruno@clisp.org>
60
61         Make it possible to cross-compile CLN.
62         * m4/intparam.m4: New file.
63         * m4/floatparam.m4: New file.
64         * autoconf/aclocal.m4: Include both.
65         (CL_MACHINE): Add an additional CROSS_MACRO parameter.
66         * configure.ac (CL_MACHINE): When cross-compiling, use
67         CL_INTPARAM_CROSS and CL_FLOATPARAM_CROSS.
68
69 2005-08-27  Bruno Haible  <bruno@clisp.org>
70
71         Define HAVE_LONGLONG and HAVE_LONGDOUBLE when cross-compiling.
72         * autoconf/aclocal.m4 (CL_LONGLONG, CL_LONGDOUBLE): When cross-
73         compiling, use the test code from gnulib.
74
75 2005-08-27  Bruno Haible  <bruno@clisp.org>
76
77         * autoconf/aclocal.m4 (CL_RUSAGE): Fix error when cross-compiling.
78
79 2005-08-16  Richard B. Kreckel  <kreckel@ginac.de>
80
81         The patch of 2005-05-01 made it impossible to test the type of a cl_UP
82         by comparing with &cl_class_univpoly_ring. We need an alternative:
83         * include/cln/object.h (cl_class_flags_modint_ring): New #define...
84         * src/polynomial/elem/cl_UP.cc (cl_class_univpoly_ring): ...used here.
85         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
86         * src/polynomial/elem/cl_UP_MI.h: Likewise.
87         * src/polynomial/elem/cl_UP_gen.h: Likewise.
88         * src/polynomial/elem/cl_UP_number.h: Likewise.
89
90 2005-08-15  Richard B. Kreckel  <kreckel@ginac.de>
91
92         * m4/cc.m4 (CL_AS_NOEXECSTACK): New macro...
93         * configure.ac: ...used here for setting ASMFLAGS...
94         * src/Makefile.in: ...which are used here.
95
96 2005-08-02  Andreas Jochens  <aj@andaco.de>
97
98         * include/cln/config.h.in: Add support for PowerPC 64 CPU.
99         * include/cln/modules.h: Likewise.
100         * include/cln/object.h: Likewise.
101         * include/cln/types.h: Likewise.
102
103 2005-07-24  Richard B. Kreckel  <kreckel@ginac.de>
104
105         Make out of the box build on x86_64 system with complete 32 bit
106         userland possible
107         * include/cln/config.h.in: Don't #define __x86_64__ when
108         __i386__ is defined.
109         * src/base/digitseq/cl_asm_x86_64_.cc: New file.
110         * doc/cln.tex: Revert workaround description introduced 2005-05-02.
111
112 2005-06-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
113
114         * Makefile.in: Don't enter nonexisting directories.
115
116 2005-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
117
118         Speed up the linking step
119         * src/Makefile.in: Use -objectlist for linking libcln.la.
120
121 2005-05-15  Richard B. Kreckel  <kreckel@ginac.de>
122
123         * autoconf/ltmain.sh: Upgrade to libtool-1.5.16.
124         * m4/libtool.m4: Upgrade to libtool-1.5.16 (without Comeau patch).
125
126 2005-05-02  Richard B. Kreckel  <kreckel@ginac.de>
127
128         * doc/cln.tex: Document what to do on a x86_64 machine with 32-bit
129         userland.
130
131 2005-05-01  Richard B. Kreckel  <kreckel@ginac.de>
132
133         Fix crashes in find_univpoly_ring and related functions
134         * include/cln/modinteger.h: Remove vptr from cl_heap_modint_ring;
135         remove declaration of cl_class cl_class_modint_ring.
136         * include/cln/univpoly.h: Remove vptr from cl_heap_univpoly_ring;
137         remove declaration of cl_class_univpoly_ring.
138         * include/cln/object.h: cl_class_flags_modint_ring: New #define...
139         * src/modinteger/cl_MI.cc: ...used in cl_class_modint_ring.
140         * src/modinteger/cl_MI_fix16.h: No vptr, but static dtor and type flag.
141         * src/modinteger/cl_MI_fix29.h: Likewise.
142         * src/modinteger/cl_MI_fix32.h: Likewise.
143         * src/modinteger/cl_MI_int32.h: Likewise.
144         * src/modinteger/cl_MI_montgom.h: Likewise.
145         * src/modinteger/cl_MI_pow2: Likewise.
146         * src/modinteger/cl_MI_pow2m1.h: Likewise.
147         * src/modinteger/cl_MI_pow2p1.h: Likewise.
148         * src/modinteger/cl_MI_std.h: Likewise.
149         * src/polynomial/elem/cl_UP.cc (cl_make_univpoly_ring): Compare with
150         cl_class_flags_modint_ring, not with cl_class_modint_ring.
151         * src/polynomial/elem/cl_UP_GF2.h (cl_class_num_univpoly_ring): New.
152         * src/polynomial/elem/cl_UP_MI.h (cl_class_modint_univpoly_ring): New.
153         * src/polynomial/elem/cl_UP_gen.h (cl_class_gen_univpoly_ring): New.
154         * src/polynomial/elem/cl_UP_number.h (cl_class_num_univpoly_ring): New.
155         Reported by Ralf Goertz <R_Goertz@web.de>.
156
157 2005-04-29  Richard B. Kreckel  <kreckel@ginac.de>
158             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
159
160         * m4/cc.m4: Emit a warning if g++ is used and optimization turned off.
161
162 2005-04-24  Richard B. Kreckel  <kreckel@ginac.de>
163
164         Make GCC compiler flags default to -O
165         * m4/cc.m4: New file...
166         * configure.ac: ...used here.
167         * autoconf/aclocal.m4: Regenerate.
168
169 2005-04-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
170
171         * include/cln/string.h: Declare cl_string.
172
173 2005-03-17  Richard B. Kreckel  <kreckel@ginac.de>
174
175         * autoconf/ltmain.sh: Upgrade to libtool-1.5.14.
176         * m4/libtool.m4: Upgrade to libtool-1.5.14 with Comeau patch.
177         * autoconf/aclocal.m4: Regenerate.
178
179 2005-03-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
180
181         * src/Makefile.in: Use $CXX instead of $CC when linking.
182
183 2005-02-27  Richard B. Kreckel  <kreckel@ginac.de>
184         
185         * examples/perfnum.cc: update to presumed 42st Mersenne prime.
186
187 2004-11-28  Richard B. Kreckel  <kreckel@ginac.de>
188
189         Disambiguate binary operators of CLN types with float/double
190         * include/cln/dfloat.h: Add binary operator overloads for arguments of
191         type double.
192         * include/cln/ffloat.h: Likewise, for arguments of type float.
193         * include/cln/float.h: Likewise, both for arguments of types double and
194         float.
195         * include/cln/real.h: Likewise.
196         Reported by Isidro CachadiƱa GutiĆ©rrez <icacha@unex.es>.
197
198 2004-11-03  Richard B. Kreckel  <kreckel@ginac.de>
199
200         * Version 1.1.9 released.
201
202 2004-10-28  Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
203
204         * src/Makefile.in: Let config.status set LDFLAGS.
205
206 2004-10-27  Peter Breitenlohner  <peb@mppmu.mpg.de>
207
208         * cln.pc.in: Fix typo.
209         * Makefile.in (INSTALL_SCRIPT): Added, to be used for scripts like
210         cln-config.  Allows us to do special things to binaries, like
211         installing them with install -s.
212         * doc/Makefile.in: add/remove the cln.info from the installed
213         $(infodir)/dir unless this is debian install-info (code copied from
214         what GNU automake would produce).
215
216 2004-10-26  Richard B. Kreckel  <kreckel@ginac.de>
217
218         * src/integer/input/cl_I_read_stream.cc (read_integer): Fix a bug
219         that caused radix specifiers to not work when reading from a stream.
220         * src/rational/input/cl_RA_read_stream.cc (read_rational): Likewise.
221         * src/real/input/cl_R_read_stream.cc (read_real): Likewise.
222         * src/float/input/cl_F_read_stream.cc (read_float): Likewise.
223         * src/complex/input/cl_N_read_stream.cc (read_complex): Likewise.
224
225 2004-10-25  Richard B. Kreckel  <kreckel@ginac.de>
226
227         * src/base/cl_low.h: Add mulu64 assembler macro for ia64.
228
229 2004-10-24  Richard B. Kreckel  <kreckel@ginac.de>
230
231         * src/base/cl_low.h: Add mul and div macros for x86_64.
232
233 2004-10-23  Richard B. Kreckel  <kreckel@ginac.de>
234
235         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Fix thinko in
236         new code for base power of two.
237
238 2004-10-22  Richard B. Kreckel  <kreckel@ginac.de>
239
240         * src/integer/conv/cl_I_to_digits (I_to_digits): Fix an elusive stack
241         overwriting problem. That was the real cause for Debian bug#246319.
242         * src/integer/output/cl_I_print.cc (print_integer): Revert workaround
243         for the bug fixed above.
244
245 2004-10-20  Richard B. Kreckel  <kreckel@ginac.de>
246
247         * include/cln/types.h: Use 64 bit digits on x86_64 CPU.
248
249 2004-10-12  Richard B. Kreckel  <kreckel@ginac.de>
250
251         * src/integer/conv/cl_I_from_digits.cc (digits_to_I): Speedup when
252         the base is a power of two.
253
254 2004-10-05  Richard B. Kreckel  <kreckel@ginac.de>
255
256         * src/integer/conv/cl_I_to_digits.cc (I_to_digits): Fix bug in base 32.
257
258 2004-09-27  Richard B. Kreckel  <kreckel@ginac.de>
259
260         Support for little-endian Mips, second shot
261         * src/base/digitseq/cl_asm_mipsel_.cc: New file...
262         * src/base/digitseq/cl_asm_cc: ...used here.
263         * src/base/digitseq/cl_asm.h: Include cl_asm_mips.h for any endianness.
264         * include/cln/object.h: Set alignment for mipsel explicitly.
265
266 2004-09-05  Richard B. Kreckel  <kreckel@ginac.de>
267
268         Support for little-endian Mips
269         * include/cln/config.h.in: Add __mipsel__.
270         * include/cln/modules.h: For Mips, this is endianness-agnostic.
271         * src/base/digitseq/cl_asm_.cc, src/base/digitseq/cl_asm.h:
272         Mask out assembler for little-endian Mips.
273
274 2004-08-30  Bruno Haible  <bruno@clisp.org>
275
276         * benchmarks/timebench2.sh: Multiply all repeat counts by 100.
277         * benchmarks/timebench2.results: Add recent PowerPC G4 results.
278
279 2004-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
280
281         * examples/e.cc: remove extra semicolon.
282
283 2004-08-25  Bruno Haible  <bruno@clisp.org>
284
285         * autoconf/ltmain.sh: Upgrade to libtool-1.5.6.
286         * m4/libtool.m4: New file, from libtool-1.5.6 with modifications:
287         2004-08-22  Bruno Haible  <bruno@clisp.org>
288                 * m4/libtool.m4: Add support for Comeau C++ on Linux.
289                 Reported by Prof. Roberto Bagnara <bagnara@cs.unipr.it>.
290         * autoconf/aclocal.m4: Regenerate.
291
292 2004-08-19  Bruno Haible  <bruno@clisp.org>
293
294         * include/cln/modules.h (CL_GLOBALIZE_JUMP_LABEL, CL_JUMP_TO): When
295         converting a label to a string, use ASM_UNDERSCORE_PREFIX. Needed on
296         MacOS X.
297         Reported by Darren Bane <darren.bane@ul.ie>.
298
299 2004-07-01  Richard B. Kreckel  <kreckel@ginac.de>
300
301         * Version 1.1.8 released.
302
303 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
304
305         * src/base/cl_macros.h: alloca(3) has size_t argument type.
306
307 2004-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
308
309         * include/cln/floatformat.h: Do define a type here.
310
311 2004-06-27  Richard B. Kreckel  <kreckel@ginac.de>
312
313         * include/cln/modules.h (CL_JUMP_TO): Fix AMD64 brokenness.
314
315 2004-06-23  Bruno Haible  <bruno@clisp.org>
316
317         * configure.ac: Pretend ftime() is not available. Needed by
318         CL_TIMES_CLOCK.
319
320 2004-06-21  Ralf Stephan  <ralf@ark.in-berlin.de>
321
322         * doc/cln.tex: Document jacobi, isprobprime and nextprobprime.
323
324 2004-06-18  Richard B. Kreckel  <kreckel@ginac.de>
325
326         * rational/transcendental/cl_RA_logp.cc: fix bug where base is
327         reciprocal of an integer.
328         Reported by Niklas Knutsson <nq@altern.org>.
329
330 2004-06-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
331
332         * src/complex/ring/cl_C_ring.cc, src/integer/ring/cl_I_ring.cc,
333         src/rational/ring/cl_RA_ring.cc, src/real/ring/cl_R_ring.cc:
334         Make template specializations explicit.
335
336 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
337
338         * src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
339         src/integer/input/cl_I_read.cc, src/rational/input/cl_RA_read.cc,
340         src/real/input/cl_R_read.cc:  Remove unused labels.
341
342 2004-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
343
344         * benchmarks/timebench1.cc, benchmarks/timebench2a.LiDIA.cc,
345         benchmarks/timebench2a.cc, benchmarks/timebench2ap.cc,
346         benchmarks/timebench2b.LiDIA.cc, benchmarks/timebench2b.cc,
347         examples/atan_recip.cc, examples/atanh_recip.cc,
348         examples/contfrac.cc, examples/e.cc, examples/legendre.cc,
349         examples/lucaslehmer.cc, examples/pi.cc, include/cln/GV.h,
350         include/cln/SV.h, include/cln/malloc.h, include/cln/modules.h,
351         include/cln/object.h, include/cln/string.h, src/base/cl_abort.cc,
352         src/base/cl_alloca.h, src/base/cl_malloc.cc,
353         src/base/random/cl_random_from.cc,
354         src/base/string/cl_spushstring_append.cc,
355         src/base/string/cl_spushstring_push.cc,
356         src/base/string/cl_st_debug.cc,
357         src/base/string/input/cl_st_gettoken.cc,
358         src/complex/input/cl_N_read.cc, src/float/input/cl_F_read.cc,
359         src/float/output/cl_F_dprint.cc, src/integer/input/cl_I_read.cc,
360         src/rational/input/cl_RA_read.cc,
361         src/real/format-output/cl_fmt_integer.cc,
362         src/real/format-output/cl_fmt_paddedstring.cc,
363         src/real/input/cl_R_read.cc, src/timing/cl_t_current.cc,
364         src/timing/cl_t_current2.cc, tests/exam.cc, tests/tests.cc,
365         tests/timeLFRAmul.cc, tests/timeLFatan-compare.cc,
366         tests/timeLFatan.cc, tests/timeLFatanh-compare.cc,
367         tests/timeLFatanh.cc, tests/timeLFcos-compare.cc, tests/timeLFcos.cc,
368         tests/timeLFcosh.cc, tests/timeLFexp-compare.cc, tests/timeLFexp.cc,
369         tests/timeLFln-compare.cc, tests/timeLFln.cc,
370         tests/timeLFsin-compare.cc, tests/timeLFsin.cc, tests/timeLFsinh.cc,
371         tests/timeLFsqrt.cc, tests/timeMImisc5.cc, tests/timeMIpow2div.cc,
372         tests/timeMIpow2recip.cc, tests/timeRALFdiv.cc, tests/timeRAtoLF.cc,
373         tests/timeUPMImul.cc, tests/timecatalan.cc, tests/timediv.cc,
374         tests/timediv2adic-compare.cc, tests/timediv2adic.cc,
375         tests/timeeuler.cc, tests/timeexp1.cc, tests/timefact.cc,
376         tests/timegcd.cc, tests/timemul-compare.cc, tests/timemul.cc,
377         tests/timepi.cc, tests/timeprint-compare.cc, tests/timeprint.cc,
378         tests/timerecip2adic-compare.cc, tests/timerecip2adic.cc,
379         tests/timesqrt.cc, tests/timesqrtmodp.cc, tests/timesquare.cc,
380         tests/timezeta3.cc: Change all C include headers to ISO style
381         within C++ code.
382
383 2004-06-10  Richard B. Kreckel  <kreckel@ginac.de>
384
385         * examples/perfnum.cc: update to presumed 41st Mersenne prime.
386
387 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
388
389         * Version 1.1.7 released.
390
391 2004-05-02  Richard B. Kreckel  <kreckel@ginac.de>
392
393         * examples/pi.cc and examples/pi.1: New files.
394         * examples/Makefile.in: Build the pi executable.
395
396 2004-05-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
397
398         * src/Makefile.in: Fix for parallel build: wait for subdir objects to
399         be finished before creating the library.
400
401 2004-04-30  Richard B. Kreckel  <kreckel@ginac.de>
402
403         * src/integer/output/cl_I_print.cc (print_integer): workaround
404         GCC compiler bug (cf. Debian bug#246319).
405
406 2004-03-20  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
407
408         * m4/gmp.m4 (CL_GMP_CHECK): Do not lose LIBS setting with config.cache
409         enabled.
410
411 2004-03-08  Bruno Haible  <bruno@clisp.org>
412
413         * src/float/lfloat/elem/cl_LF_mul.cc (operator*): Fix the second
414         underflow condition.
415         * src/float/lfloat/algebraic/cl_LF_sqrt.cc (sqrt): Fix a bug with large
416         uexp whereby SQRT of MOST-POSITIVE-LONG-FLOAT was less than 1.
417
418 2004-03-04  Richard B. Kreckel  <kreckel@ginac.de>
419
420         * Makefile.in (install): Add ${srcdir} for cln.m4.
421         * m4/gmp.m4: quote macro names.
422         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
423
424 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
425
426         * Version 1.1.6 released.
427
428 2004-01-01  Richard B. Kreckel  <kreckel@ginac.de>
429
430         * include/cln/univpoly.h, include/cln/univpoly_complex.h,
431           include/cln//univpoly_integer.h, include/cln/univpoly_modint.h,
432           include/cln/univpoly_rational.h, include/cln/univpoly_real.h,
433           src/polynomial/elem/cl_UP_GF2.h, src/polynomial/elem/cl_UP_MI.h,
434           src/polynomial/elem/cl_UP_gen.h, src/polynomial/elem/cl_UP_no_ring.cc,
435           src/polynomial/elem/cl_UP_number.h (ldegree): New function.
436         * doc/cln.tex: Document `ldegree'.
437
438 2003-12-29  Richard B. Kreckel  <kreckel@ginac.de>
439
440         Rework of autoconfiscation infrastructure
441         * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
442         * autoconf/ltmain.sh: Update to GNU version 1.4.3.
443         * autoconf/autoconf: Remove (from now on we assume autoconf is
444           installed properly on the sytem).
445         * autoconf/autoconf.m4: Likewise.
446         * autoconf/autoconf.m4f: Likewise.
447         * autoconf/acgeneral.m4: Likewise.
448         * autoconf/acspecific.m4: Likewise.
449         * autoconf/aclocal.m4: Regenerate.
450         * autoconf/acinclude.m4: Remove (while moving the macros...)
451         * m4/gmp.m4: New file (...to here).
452         * Makefile.devel: Update to new scheme.
453         * configure.ac: Likewise.
454         * include/cln/GV_integer.h: Assume template specializations work.
455         * include/cln/GV_modinteger.h: Likewise.
456         * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
457         * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
458         * src/base/random/cl_random_from.cc: Likewise.
459         * src/timing/cl_base_config.h.in: Likewise.
460         * src/timing/cl_t_current.cc: Likewise.
461
462 2003-12-27  Richard B. Kreckel  <kreckel@ginac.de>
463
464         * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
465           argument is zero.
466         * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
467         * src/polynomial/cl_UP_number.h (num_minus): Likewise.
468         Reported by Munagala Ramanath <amberarrow@yahoo.com>.
469
470 2003-12-02  Richard B. Kreckel  <kreckel@ginac.de>
471
472         * examples/perfnum.cc: update to presumed 40th Mersenne prime.
473
474 2003-11-20  Christian Bauer  <cbauer@ginac.de>
475
476         Added pkg-config support
477         * cln.pc.in: New file.
478         * Makefile.in: Take care of cln.pc.
479         * configure.ac: Likewise.
480
481 2003-08-06  Richard B. Kreckel  <kreckel@ginac.de>
482
483         * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
484         Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
485
486 2003-08-01  Richard Kreckel  <kreckel@ginac.de>
487
488         More dependent base resolution issues
489         * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()): 
490         portable syntactic simplification.
491         * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
492         * src/base/hash/cl_hash1.h: Likewise for member functions.
493         * src/base/hash/cl_hash2.h: Likewise.
494         * src/base/hash/cl_hashuniq.h: Likewise.
495         * src/base/hash/cl_hashuniqweak.h: Likewise.
496         * src/base/hash/cl_hash.h: Revert explicit static member function
497         lookup since that was GCC's fault.
498         * src/base/hash/cl_hash2weak.h: Likewise.
499         * src/base/hash/cl_hashuniqweak.h: Likewise.
500
501 2003-06-29  Richard Kreckel  <kreckel@ginac.de>
502
503         Dependent base resolution needed for GCC-3.4
504         * include/cln/GV.h: Preceed inherited members with this->.
505         * include/cln/SV.h: Likewise.
506         * include/cln/object.h: Likewise.
507         * src/base/hash/cl_hash1.h: Likewise.
508         * src/base/hash/cl_hash1weak.h: Likewise.
509         * src/base/hash/cl_hash2.h: Likewise.
510         * src/base/hash/cl_hashuniq.h: Likewise.
511         * src/base/hash/cl_hash.h: Make lookup of static member function 
512         explicit.
513         * src/base/hash/cl_hash2weak.h: Likewise.
514         * src/base/hash/cl_hashuniqweak.h: Likewise.
515         * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
516
517 2003-02-24  Bruno Haible  <bruno@clisp.org>
518
519         * src/base/random/cl_random_from.cc (random_state::random_state): Add
520         support for MacOS X.
521         * src/modinteger/cl_MI.cc: #undef _R.
522         Reported by Erann Gat <gat@jpl.nasa.gov>.
523
524 2002-08-03  Joerg Arndt  <jj@suse.de>
525
526         * include/cln/config.h.in: Add support for x86_64 CPU.
527         * include/cln/modules.h: Likewise.
528         * include/cln/types.h: Likewise.
529         * include/cln/object.h: Likewise.
530
531 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
532
533         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
534         m68k Assembler routines.
535         * src/base/digitseq/cl_asm_.cc: Likewise.
536
537 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
538
539         * Version 1.1.5 released.
540
541 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
542
543         * include/cln/modules.h (CL_CONCATENATE): New macro.
544
545 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
546
547         * doc/cln.tex (Building the library): Update recommendations for 
548         compiling on Tru64 using g++ 3.0 and 3.1.
549         * README: Update homepage.
550
551 2002-05-05  Bruno Haible  <bruno@clisp.org>
552
553         * doc/cln.tex (Building the library): Give some recommendations for
554         g++ 3.0 and 3.1.
555
556         Force link-time references despite optimizations done by g++ 2.95
557         and newer.
558         * include/cln/modules.h (CL_FORCE_LINK): New macro.
559         * Use CL_FORCE_LINK.
560         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
561         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
562         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
563         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
564         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
565         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
566         Likewise.
567         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
568         Likewise.
569         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
570         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
571         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
572         * include/cln/real.h (cl_R_debug_dummy): Likewise.
573         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
574         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
575         Likewise.
576         * include/cln/string.h (cl_string_debug_dummy): Likewise.
577         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
578         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
579
580         Avoid g++ 3.1 warnings.
581         * src/base/cl_offsetof.h (offsetof): Redefine each time.
582         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
583
584         Avoid g++ 3.1 warnings.
585         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
586         where needed.
587         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
588         htxentry as a shortcut.
589         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
590         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
591         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
592         Likewise.
593
594 2002-03-15  Bruno Haible  <bruno@clisp.org>
595
596         * cln.tex: Document problem with GNU make 3.77.
597         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
598
599 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
600
601         * cln.m4: quote macro name.
602           Pointed out by Roberto Bagnara.
603
604 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
605
606         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
607           (the old one was broken on Linux/Mips.)
608
609 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
610
611         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
612         * Version 1.1.4 released.
613
614 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
615
616         * autoconf/acinclude.m4: revamp MPN-matcher.
617         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
618           sync with CLisp from CVS.
619         * autoconf/autoconf: Likewise.
620         * autoconf/autoconf.m4f: Likewise (new file).
621         * configure.ac: Likewise (new file, replaces configure.in).
622         * configure.in: Likewise (deleted, replaced by configure.ac).
623         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
624         * src/Makefile.in: made VPATH safe for autoconf-2.52.
625         * include/cln/config.h.in: Add __s390__.
626
627 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
628
629         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
630           any more since GMP4 has some C++ support in it.
631
632 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
633
634         * include/cln/modules.h, include/cln/object.h: add support for
635           s390.
636         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
637           on s390, provided by Gerhard Tonn.
638
639 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
640
641         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
642         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
643         * Version 1.1.3 released.
644
645 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
646
647         Interoperability with gcc-3.0 -fuse-cxa-atexit.
648         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
649           global destructors actually exist.
650         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
651           Don't hack the global destructors if there is no global destructors
652           function.
653
654 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
655
656         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
657           values of x, return square(x) instead of x.
658         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
659
660 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
661
662         * Version 1.1.2 released.
663
664 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
665
666         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
667           friend of cl_heap_hashtable<htentry>.
668
669 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
670
671         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
672           _FPU_IEEE is really defined.
673         * include/cln/modules.h: change assembler labels from `label' to
674           `label:' on hppa, needed by Linux (see comment).
675         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
676         * Makefile.devel: adjusted.
677         * autoconf/aclocal.m4: regenerate.
678         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
679           extern "C" elsewhere out of the namespace.
680         * src/base/low/cl_low_div.cc: Likewise.
681
682 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
683
684         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
685         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
686         * autoconf/ltmain.sh: Likewise.
687         * autoconf/ltconfig: Remove file.
688         * autoconf/install-sh: New file.
689         * configure.in: Add AC_CONFIG_AUX_DIR call.
690
691 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
692
693         * tests/tests.cc: resolve namespace ambiguity about strcmp().
694
695 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
696
697         * Version 1.1.1 released.
698
699 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
700
701         * cln/cln.tex: documented problems with shared library on Sparc
702           using gcc older than 2.95.3.
703         * configure.in: Fixed typos in versioning docu.
704
705 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
706
707         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
708           hexadecimal constants.
709
710 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
711
712         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
713         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
714         * Removed LiDIA interface since that is now outdated (namespace cln)
715           and maintained elsewhere.
716         * Adjusted dates and final touches for 1.1.1.
717
718 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
719
720         * INSTALL: Update toolchain info: no egcs, some more platforms.
721         * doc/cln.tex: Likewise.
722
723 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
724
725         * src/base/cl_low.h: prepended variables declared inside macros
726           with underscore.  Fixes equal_hashcode() on various platforms.
727
728 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
729
730         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
731           this definition becomes actually useful.  This is needed for 
732           compilation on Arm until somebody fixes the assembler files for Arm.
733         * src/base/digitseq/cl_asm.h: Likewise.
734         * src/base/digitseq/cl_asm_.cc: Likewise.
735         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
736            one can say `make CPPFLAGS=-DFOOBAR'.
737
738 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
739
740         * src/base/random/cl_random_from.cc: ported to beos.
741
742 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
743
744         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
745
746 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
747
748         * include/cln/number.h (cl_as_N): Remove bogus comment.
749
750 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
751
752         * configure.in: Make build in separate builddir possible (again).
753
754 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
755
756         * include/cln/*.h: Change signatures of all classes' methods
757           cln::cl_foo::operator new(size_t, cl_foo*) to
758           cln::cl_foo::operator new(size_t, void*) so one can declare
759           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
760           certain STL implementations (like libstdc++-v3).
761
762 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
763
764         * Version 1.1 released.
765
766 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
767
768         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
769
770 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
771
772         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
773         * include/cln/version.h.in, src/base/verion.cc: New files.
774         * configure.in: Generate include/cln/version.h.
775         * cln.m4: Rewrote it. Check result of cln-config without compiling.
776           Do cross-check library version and header version information.
777
778 2000-12-02  Christian Bauer  <cbauer@ginac.de>
779
780         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
781         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
782           building.
783
784 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
785
786         * */*: Removed problematic stdin, stdout and stderr definitions.  
787           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
788
789 2000-11-20  Bruno Haible
790
791         * cln-config.1: change title.
792
793 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
794
795         * cln.m4: New file.
796         * doc/cln.tex: Document package tools cln-config and cln.m4.
797         * Makefile.in: Care about cln.m4.
798
799 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
800
801         * cln-config.1: added manpage, as required by a couple of distros.
802         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
803
804 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
805
806         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
807         * configure.in: ...used here.
808         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
809         * include/cln/types.h: ...used here.
810         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
811
812 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
813
814         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
815           in order to guard against an accidented configuration.
816         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
817           struct power_table_entry initialized as ULL instead of as UL, if 
818           intDsize==64 (caused misprinting on MIPS w/ GMP).
819         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
820           HAVE_FAST_LONGLONG.
821         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
822         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
823           generation of Bignum for intDsize==64 and a notreached-check at end.
824         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
825         * include/cln/config.h.in: Prepared support for IA64.
826         * include/cln/types.h: Likewise.
827         * include/cln/object.h: Likewise.
828         * include/cln/modules.h: Likewise.
829         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
830           compiler claims __GNUC_MINOR__==9).
831
832 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
833
834         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
835           HAVE_DD to HAVE_FAST_LONGLONG.
836         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
837         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
838         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
839         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
840
841 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
842
843         * include/cln/object.h (cl_combine): define additional signatures, if
844           HAVE_LONGLONG is defined, in order to keep the compiler happy.
845         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
846         * src/base/cl_macros.h (bit): ...for this macro...
847         * src/base/cl_macros.h (minus_bit): ...and this one.
848         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
849         * src/base/cl_low.h (logcount_64): ...for this macro.
850         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
851         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
852           that turned up when intDsize==32 and cl_word_size==64.
853         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
854           to uint64 that turned up when intDsize==32 and cl_word_size==64.
855
856 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
857
858         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
859           #undef stderr, if it's defined so cln::stderr isn't confused.
860         * src/base/input/cl_read_globals.cc: stdin should not be extern.
861
862 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
863
864         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
865           to the appropiate method instead of prefixing `as_'.
866         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
867         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
868         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
869         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
870         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
871         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
872         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
873         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
874         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
875
876 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
877
878         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
879           the 0^y cases.
880
881 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
882
883         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
884           Rearranged for a clearer distinction between macros and remaining
885           identifiers, so Cint can parse it smoothly.
886
887 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
888
889         * include/cln/number.h, the(const cl_number& x): New template
890           function.
891
892 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
893
894         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
895           following identifiers got their poor-man's namespace (i.e. the 
896           prefix `cl_') stripped off:
897           cl_catalanconst()        ->  catalanconst()
898           cl_compare()             ->  compare()
899           cl_cos_sin()             ->  cos_sin()
900           cl_cos_sin_t             ->  cos_sin_t
901           cl_cosh_sinh()           ->  cosh_sinh()
902           cl_cosh_sinh_t           ->  cosh_sinh_t
903           cl_decoded_dfloat        ->  decoded_dfloat
904           cl_decoded_ffloat        ->  decoded_ffloat
905           cl_decoded_float         ->  decoded_float
906           cl_decoded_lfloat        ->  decoded_lfloat
907           cl_decoded_sfloat        ->  decoded_sfloat
908           cl_default_float_format  ->  default_float_format
909           cl_default_print_flags   ->  default_print_flags
910           cl_default_random_state  ->  default_random_state
911           cl_double_approx()       ->  double_approx()
912           cl_equal()               ->  equal()
913           cl_equal_hashcode()      ->  equal_hashcode()
914           cl_eulerconst()          ->  eulerconst()
915           cl_find_modint_ring()    ->  find_modint_ring()
916           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
917           cl_float_approx()        ->  float_approx
918           cl_float_format()        ->  float_format()
919           cl_float_format_t        ->  float_format_t
920           cl_free_hook()           ->  free_hook()
921           cl_hermite()             ->  hermite()
922           cl_laguerre()            ->  laguerre()
923           cl_legendre()            ->  legandre()
924           cl_malloc_hook()         ->  malloc_hook()
925           cl_pi()                  ->  pi()
926           cl_tschebychev()         ->  tschebychev()
927           cl_zeta()                ->  zeta()
928           NB: For functions these changes includes all signatures.
929         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
930         * cln-config.in: new file.
931
932 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
933
934         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
935           value, not parens.
936
937 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
938
939         * include/cl_univpoly_modint.h: Fix typo.
940
941 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
942
943         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
944           used as precision marker for floats.
945           Reported by Keith Briggs (in 1998) and Thomas Roessler.
946         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
947         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
948         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
949         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
950
951 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
952
953         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
954         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
955           with N32 ABI.
956           (cl_word_size): New macro.
957         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
958           cl_word_size.
959
960 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
961
962         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
963           From a sample that fails with gcc-2.95.2 on Sparc.
964         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
965
966 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
967
968         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
969           New macros.
970         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
971           CL_VERSION_PATCHLEVEL): New definitions.
972         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
973           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
974         * src/Makefile.in, configure.in: release-variables renamed from 
975           CLN_* to CL_*.
976         * configure.in: default to build both shared and static library
977           (i.e. default to the most common behaviour).
978
979 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
980
981         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
982           environment around the patch of 2000-05-23.
983
984 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
985
986         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
987           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
988
989 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
990
991         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
992           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
993
994 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
995
996         * autoconf/config.*: Updated to new version from FSF
997           (the new libtool wants this).
998         * src/Makefile.in: added $(LDFLAGS) to link step.
999         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
1000           break-even points.
1001
1002 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
1003
1004         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
1005           host_vendor, host_os correctly if $host has more than two hyphens.
1006
1007 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
1008
1009         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
1010           better match present-day CPUs whenever GMP3 is used.
1011         * src/base/digitseq/cl_DS_div.cc: dto. 
1012         * src/TUNING: Added comment about order of tuning.
1013         * configure, configure.in: Safer GMP3-detection.
1014         * INSTALL.generic: Clarified behaviour of --with-gmp.
1015         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
1016
1017 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
1018
1019         * gmp/: removed completely.  From now on we are going to link
1020           externally against libgmp3.0 or above!
1021         * configure, configure.in, Makefile.in, */Makeflags: removed support
1022           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
1023           setting $CPPFLAGS instead.
1024         * Makefile.in: Added libtool inter-library dependency for -lgmp and
1025           conforming interface versioning (-version-info).
1026         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
1027           from libtool 1.3.4.
1028
1029 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
1030
1031         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
1032           parameter passing was changed for the MIPS n32 ABI.
1033
1034 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
1035
1036         * gmp/*: Replaced the complete mpn sources with the ones from
1037           Debian since they are maintained while the ones from FSF
1038           aren't and there were problems on some architectures, PowerPC
1039           in particular.  See the file gmp/README.CLN.  This way the
1040           hard links in this directory have vanished, they were causing
1041           trouble for people working in AFS.  This became necessary for
1042           Debian, because there it woudn't compile on PPC.
1043
1044 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
1045
1046         * Version 1.0.3 released.
1047
1048 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
1049
1050         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
1051           use __attribute__ ((__noreturn__)) instead of the __volatile__
1052           storage class.
1053           (nonreturning): Remove macro.
1054         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
1055         * include/cl_integer.h: (doublefactorial): New declaration.
1056         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
1057
1058 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
1059
1060         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
1061           "cat", not "echo".
1062         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
1063         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
1064           'const T', to match definition in src/vector/cl_GV_number.cc.
1065           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
1066         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
1067           yield return code 1.
1068
1069 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
1070
1071         * Version 1.0.2 released.
1072
1073 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
1074
1075         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
1076           boolean expression, write alternatives ending with either
1077           "return cl_true;" or "return cl_false;". This way, g++ does a
1078           better job inlining it.
1079         * src/float/cl_F.h (longfloatp): Likewise.
1080         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
1081         * src/complex/cl_C.h (realp, complexp): Likewise.
1082
1083 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1084
1085         * include/cl_integer.h (cl_equal_hashcode): New declaration.
1086         * include/cl_rational.h (cl_equal_hashcode): New declaration.
1087         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
1088         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
1089         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
1090         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
1091         * include/cl_float.h (cl_equal_hashcode): New declaration.
1092         * include/cl_real.h (cl_equal_hashcode): New declaration.
1093         * include/cl_complex.h (cl_equal_hashcode): New declaration.
1094         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
1095         * src/integer/misc/cl_I_eqhashcode.cc: New file.
1096         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
1097         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
1098         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
1099         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
1100         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
1101         * src/float/misc/cl_F_eqhashcode.cc: New file.
1102         * src/real/misc/cl_R_eqhashcode.cc: New file.
1103         * src/complex/misc/cl_C_eqhashcode.cc: New file.
1104         * doc/cln.tex: Document `cl_equal_hashcode'.
1105
1106 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1107
1108         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
1109           (cl_number_ring): New class.
1110           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
1111           (instanceof): New function.
1112         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
1113         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
1114         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
1115         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
1116         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
1117         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
1118         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
1119         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
1120         * doc/cln.tex: Document `instanceof'.
1121
1122 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1123
1124         * include/cl_rational.h (numerator, denominator): New declarations.
1125         * src/rational/elem/cl_RA_numerator.cc: New file.
1126         * src/rational/elem/cl_RA_denominator.cc: New file.
1127         * include/cl_integer.h (numerator, denominator): New inline functions.
1128         * doc/cln.tex: Document `numerator' and `denominator'.
1129
1130 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1131
1132         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
1133           in the integer case.
1134         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
1135
1136 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
1137
1138         * include/cl_config.h.in: Support for sparc64 CPU.
1139         * include/cl_modules.h: Likewise.
1140         * include/cl_types.h: Likewise.
1141         * include/cl_object.h: Likewise.
1142         * include/cl_GV.h: Likewise.
1143         * src/Makefile.in: Likewise.
1144         * src/base/cl_alloca.h: Likewise.
1145         * src/base/cl_macros.h: Likewise.
1146         * src/base/cl_sysdep.h: Likewise.
1147         * src/base/cl_low.h: Likewise.
1148         * src/base/digitseq/cl_asm.h: Likewise.
1149         * src/base/digitseq/cl_asm_.cc: Likewise.
1150         * src/base/digitseq/cl_asm_sparc64.h: New file.
1151         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
1152         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
1153         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
1154         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
1155         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
1156
1157 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
1158
1159         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
1160           Use the `orn' instruction.
1161
1162 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
1163
1164         Assume all platforms have <stdlib.h> and clock_t.
1165         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
1166         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
1167         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
1168         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
1169         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
1170
1171 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
1172
1173         * gmp/config.guess: Link to autoconf/config.guess.
1174           gmp/config.sub: Link to autoconf/config.sub.
1175           Needed for Win32 platforms.
1176
1177 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
1178
1179         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
1180           "sparc64" according to the C compiler, not the uname result.
1181
1182 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
1183
1184         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
1185           COUNTER_LOOPS version, fortunately not used yet.
1186
1187         * include/cl_modules.h: Prepare for gcc version 3.
1188
1189 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
1190
1191         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
1192           Change the last call from I_I_to_RT to I_I_to_RA.
1193
1194 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1195
1196         * Version 1.0.1 released.
1197
1198 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
1199
1200         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
1201           intDsize==64.
1202
1203 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
1204
1205         * autoconf/intparam.c (printf_underscored): Change argument type to
1206           `const char*'.
1207         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
1208           (CL_PROVIDE, CL_PROVIDE_END): Use them.
1209         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
1210         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
1211         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
1212           cast a cl_I to void here. Works around a bug in g++-2.95.
1213         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
1214         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
1215            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
1216           in g++-2.95.
1217         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
1218           macro.
1219         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
1220         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
1221            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
1222         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
1223           Likewise.
1224
1225 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
1226
1227         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
1228           variants to alpha.
1229
1230 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
1231
1232         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
1233           OpenBSD like NetBSD.
1234         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
1235         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
1236           OpenBSD like NetBSD, and Linux/ELF like SVR4.
1237
1238 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
1239
1240         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
1241           syntax on AIX systems and new assembler syntax on non-AIX systems.
1242
1243 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
1244
1245         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
1246           version from GNU CVS.
1247
1248 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
1249
1250         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
1251           either operand is a positive fixnum, O(1) instead of O(N).
1252         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
1253         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
1254           first operand.
1255
1256 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
1257
1258         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
1259           ctor/dtor needs to be exported.
1260         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
1261         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
1262           CL_GLOBALIZE_LABEL.
1263           (CL_GLOBALIZE_LABEL): New macro.
1264           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
1265           (CL_PROVIDE): Update.
1266
1267 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
1268
1269         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
1270           errors ("unterminated string or character constant").
1271           ($(ASMFILES_LO)): On HPPA, try with various settings of
1272           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
1273
1274 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
1275
1276         * INSTALL: Mention gmp problems on MIPS.
1277         * doc/cln.tex: Likewise.
1278
1279 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
1280
1281         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
1282           the source tree.
1283         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
1284           (CL_GLOBALIZE_ASM_LABEL): New macro.
1285           (CL_PROVIDE): Use it.
1286         * src/base/random/cl_random_from.cc: Handle WIN32.
1287         * src/timing/cl_t_current.cc: Likewise.
1288
1289 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
1290
1291         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
1292           (main8): Adapt for C++.
1293
1294 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
1295
1296         * INSTALL: Mention egcs-1.1 problems on Sparc.
1297         * doc/cln.tex: Likewise.
1298
1299 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
1300
1301         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
1302           messages.
1303
1304 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
1305
1306         * autoconf/aclocal.m4: In test programs, declare `int main()', not
1307           `main()'.
1308
1309         * lidia-interface/src/interfaces/integers/cln/bigint.c
1310           (bigint_to_string): Fix for negative arguments.
1311
1312         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
1313         * src/base/cl_alloca.h: Likewise.
1314
1315         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
1316         * src/base/digitseq/cl_asm_arm_.cc,
1317           src/base/digitseq/cl_asm_mips_.cc,
1318           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
1319
1320         * src/modinteger/cl_MI_pow2.h,
1321           src/modinteger/cl_MI_pow2m1.h,
1322           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
1323
1324 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
1325
1326         * autoconf/acgeneral.m4,
1327           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
1328         * autoconf/config.guess, autoconf/config.sub: Likewise.
1329         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
1330           a macro. Use ${ac_objext}.
1331         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
1332           conforming with CL_ALLOCA.
1333
1334 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
1335
1336         * Version 1.0 released.
1337