]> www.ginac.de Git - cln.git/blob - ChangeLog
Rework of autoconfiscation infrastructure
[cln.git] / ChangeLog
1 2003-12-29  Richard B. Kreckel  <kreckel@ginac.de>
2
3         Rework of autoconfiscation infrastructure
4         * autoconf/config.{guess,sub}: Update to GNU version 2003-10-07.
5         * autoconf/ltmain.sh: Update to GNU version 1.4.3.
6         * autoconf/autoconf: Remove (from now on we assume autoconf is
7           installed properly on the sytem).
8         * autoconf/autoconf.m4: Likewise.
9         * autoconf/autoconf.m4f: Likewise.
10         * autoconf/acgeneral.m4: Likewise.
11         * autoconf/acspecific.m4: Likewise.
12         * autoconf/aclocal.m4: Regenerate.
13         * autoconf/acinclude.m4: Remove (while moving the macros...)
14         * m4/gmp.m4: New file (...to here).
15         * Makefile.devel: Update to new scheme.
16         * configure.ac: Likewise.
17         * include/cln/GV_integer.h: Assume template specializations work.
18         * include/cln/GV_modinteger.h: Likewise.
19         * include/cln/config.h.in: Likewise, and drop HAVE_BOOL.
20         * src/base/cl_base_config.h.in: Drop support for obsolete ftime(3).
21         * src/base/random/cl_random_from.cc: Likewise.
22         * src/timing/cl_base_config.h.in: Likewise.
23         * src/timing/cl_t_current.cc: Likewise.
24
25 2003-12-27  Richard B. Kreckel  <kreckel@ginac.de>
26
27         * src/polynomial/cl_UP_gen.h (gen_minus): Fix case where first
28           argument is zero.
29         * src/polynomial/cl_UP_MI.h (modint_minus): Likewise.
30         * src/polynomial/cl_UP_number.h (num_minus): Likewise.
31         Reported by Munagala Ramanath <amberarrow@yahoo.com>.
32
33 2003-12-02  Richard B. Kreckel  <kreckel@ginac.de>
34
35         * examples/perfnum.cc: update to presumed 40th Mersenne prime.
36
37 2003-08-06  Richard Kreckel  <kreckel@ginac.de>
38
39         * src/numtheory/cl_nt_sqrtmodp.cc: #undef _R.
40         Reported by Andrew Rechnitzer <A.Rechnitzer@ms.unimelb.edu.au>.
41
42 2003-08-01  Richard Kreckel  <kreckel@ginac.de>
43
44         More dependent base resolution issues
45         * src/base/hash/cl_hash.h (cl_heap_hashtable<T>::iterator()): 
46         portable syntactic simplification.
47         * src/base/hash/cl_hashset.h: Preceed inherited members with this->.
48         * src/base/hash/cl_hash1.h: Likewise for member functions.
49         * src/base/hash/cl_hash2.h: Likewise.
50         * src/base/hash/cl_hashuniq.h: Likewise.
51         * src/base/hash/cl_hashuniqweak.h: Likewise.
52         * src/base/hash/cl_hash.h: Revert explicit static member function
53         lookup since that was GCC's fault.
54         * src/base/hash/cl_hash2weak.h: Likewise.
55         * src/base/hash/cl_hashuniqweak.h: Likewise.
56
57 2003-06-29  Richard Kreckel  <kreckel@ginac.de>
58
59         Dependent base resolution needed for GCC-3.4
60         * include/cln/GV.h: Preceed inherited members with this->.
61         * include/cln/SV.h: Likewise.
62         * include/cln/object.h: Likewise.
63         * src/base/hash/cl_hash1.h: Likewise.
64         * src/base/hash/cl_hash1weak.h: Likewise.
65         * src/base/hash/cl_hash2.h: Likewise.
66         * src/base/hash/cl_hashuniq.h: Likewise.
67         * src/base/hash/cl_hash.h: Make lookup of static member function 
68         explicit.
69         * src/base/hash/cl_hash2weak.h: Likewise.
70         * src/base/hash/cl_hashuniqweak.h: Likewise.
71         * src/modinteger/cl_MI.cc: Make shell-comment a C-comment. Geez.
72
73 2003-02-24  Bruno Haible  <bruno@clisp.org>
74
75         * src/base/random/cl_random_from.cc (random_state::random_state): Add
76         support for MacOS X.
77         * src/modinteger/cl_MI.cc: #undef _R.
78         Reported by Erann Gat <gat@jpl.nasa.gov>.
79
80 2002-08-03  Joerg Arndt  <jj@suse.de>
81
82         * include/cln/config.h.in: Add support for x86_64 CPU.
83         * include/cln/modules.h: Likewise.
84         * include/cln/types.h: Likewise.
85         * include/cln/object.h: Likewise.
86
87 2002-06-08  Richard Kreckel  <kreckel@ginac.de>
88
89         * src/base/digitseq/cl_asm.h: ensure intCsize==16 when including
90         m68k Assembler routines.
91         * src/base/digitseq/cl_asm_.cc: Likewise.
92
93 2002-05-28  Richard Kreckel  <kreckel@ginac.de>
94
95         * Version 1.1.5 released.
96
97 2002-05-27  Richard Kreckel  <kreckel@ginac.de>
98
99         * include/cln/modules.h (CL_CONCATENATE): New macro.
100
101 2002-05-10  Richard Kreckel  <kreckel@ginac.de>
102
103         * doc/cln.tex (Building the library): Update recommendations for 
104         compiling on Tru64 using g++ 3.0 and 3.1.
105         * README: Update homepage.
106
107 2002-05-05  Bruno Haible  <bruno@clisp.org>
108
109         * doc/cln.tex (Building the library): Give some recommendations for
110         g++ 3.0 and 3.1.
111
112         Force link-time references despite optimizations done by g++ 2.95
113         and newer.
114         * include/cln/modules.h (CL_FORCE_LINK): New macro.
115         * Use CL_FORCE_LINK.
116         * include/cln/GV_integer.h (cl_GV_I_debug_dummy): Likewise.
117         * include/cln/GV_number.h (cl_GV_number_debug_dummy): Likewise.
118         * include/cln/SV_number.h (cl_SV_number_debug_dummy): Likewise.
119         * include/cln/SV_ringelt.h (cl_SV_ringelt_debug_dummy): Likewise.
120         * include/cln/dfloat.h (cl_DF_debug_dummy): Likewise.
121         * include/cln/ffloat.h (cl_FF_classes_dummy, cl_FF_debug_dummy):
122         Likewise.
123         * include/cln/integer.h (cl_I_classes_dummy, cl_I_debug_dummy):
124         Likewise.
125         * include/cln/lfloat.h (cl_LF_debug_dummy): Likewise.
126         * include/cln/modinteger.h (cl_MI_debug_dummy): Likewise.
127         * include/cln/rational.h (cl_RA_debug_dummy): Likewise.
128         * include/cln/real.h (cl_R_debug_dummy): Likewise.
129         * include/cln/ring.h (cl_ring_debug_dummy): Likewise.
130         * include/cln/sfloat.h (cl_SF_classes_dummy, cl_SF_classes_dummy):
131         Likewise.
132         * include/cln/string.h (cl_string_debug_dummy): Likewise.
133         * include/cln/univpoly.h (cl_UP_debug_dummy): Likewise.
134         * src/float/base/cl_ieee.h (cl_ieee_dummy_NNN): Likewise.
135
136         Avoid g++ 3.1 warnings.
137         * src/base/cl_offsetof.h (offsetof): Redefine each time.
138         * src/base/digitseq/cl_DS.h: Include "cl_offsetof.h" after <gmp.h>.
139
140         Avoid g++ 3.1 warnings.
141         * src/base/hash/cl_hash.h (struct cl_heap_hashtable): Use typename
142         where needed.
143         * src/base/hash/cl_hash1.h (struct cl_heap_hashtable_1): typedef
144         htxentry as a shortcut.
145         * src/base/hash/cl_hash2.h (struct cl_heap_hashtable_2): Likewise.
146         * src/base/hash/cl_hashset.h (struct cl_heap_hashtable_set): Likewise.
147         * src/base/hash/cl_hashuniq.h (struct cl_heap_hashtable_uniq):
148         Likewise.
149
150 2002-03-15  Bruno Haible  <bruno@clisp.org>
151
152         * cln.tex: Document problem with GNU make 3.77.
153         Reported by Michael Somos <somos@grail.cba.csuohio.edu>.
154
155 2002-02-16  Richard Kreckel  <kreckel@ginac.de>
156
157         * cln.m4: quote macro name.
158           Pointed out by Roberto Bagnara.
159
160 2002-01-20  Richard Kreckel  <kreckel@ginac.de>
161
162         * autoconf/config.{guess,sub}: Update to GNU version 2002-01-02.
163           (the old one was broken on Linux/Mips.)
164
165 2002-01-04  Richard Kreckel  <kreckel@ginac.de>
166
167         * autoconf/autoconf.m4f: get brutal in order to adhere to FHS.
168         * Version 1.1.4 released.
169
170 2002-01-03  Richard Kreckel  <kreckel@ginac.de>
171
172         * autoconf/acinclude.m4: revamp MPN-matcher.
173         * autoconf/aclocal.m4: upgrade to autoconf-2.52 infrastructure,
174           sync with CLisp from CVS.
175         * autoconf/autoconf: Likewise.
176         * autoconf/autoconf.m4f: Likewise (new file).
177         * configure.ac: Likewise (new file, replaces configure.in).
178         * configure.in: Likewise (deleted, replaced by configure.ac).
179         * autoconf/config.{guess,sub}: Update to GNU version 2001-12-13.
180         * src/Makefile.in: made VPATH safe for autoconf-2.52.
181         * include/cln/config.h.in: Add __s390__.
182
183 2001-12-31  Richard Kreckel  <kreckel@ginac.de>
184
185         * src/base/digitseq/cl_DS.h: <gmp.h> is not included extern "C"
186           any more since GMP4 has some C++ support in it.
187
188 2001-12-14  Richard Kreckel  <kreckel@ginac.de>
189
190         * include/cln/modules.h, include/cln/object.h: add support for
191           s390.
192         * src/numtheory/cl_nt_sqrtmodp.cc: workaround for GCC2.x compiler-bug
193           on s390, provided by Gerhard Tonn.
194
195 2001-11-05  Richard Kreckel  <kreckel@ginac.de>
196
197         * autoconf/ltmain.sh: Upgrade to libtool-1.4.2.
198         * autoconf/config.{guess,sub}: Update to GNU version 2001-09-07.
199         * Version 1.1.3 released.
200
201 2001-11-04  Bruno Haible  <haible@clisp.cons.org>
202
203         Interoperability with gcc-3.0 -fuse-cxa-atexit.
204         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add test whether
205           global destructors actually exist.
206         * include/cln/modules.h (CL_PROVIDE, CL_PROVIDE_END, CL_PROVIDE_END):
207           Don't hack the global destructors if there is no global destructors
208           function.
209
210 2001-11-03  Richard Kreckel  <kreckel@ginac.de>
211
212         * src/float/transcendental/cl_F_sinx.cc (sinx_naive): For small
213           values of x, return square(x) instead of x.
214         * src/float/transcendental/cl_F_sinhx.cc (sinhx_naive): Likewise.
215
216 2001-07-25  Richard Kreckel  <kreckel@ginac.de>
217
218         * Version 1.1.2 released.
219
220 2001-07-24  Richard Kreckel  <kreckel@ginac.de>
221
222         * src/base/hash/cl_hash.h: declare _cl_hashtable_iterator<htentry> a
223           friend of cl_heap_hashtable<htentry>.
224
225 2001-07-22  Richard Kreckel  <kreckel@ginac.de>
226
227         * src/float/base/cl_ieee.cc: try to do magic to the FPU only if
228           _FPU_IEEE is really defined.
229         * include/cln/modules.h: change assembler labels from `label' to
230           `label:' on hppa, needed by Linux (see comment).
231         * autoconf/acinclude.m4: new file (for storing CLN-specific macros).
232         * Makefile.devel: adjusted.
233         * autoconf/aclocal.m4: regenerate.
234         * src/base/low/cl_low_mul.cc: moved POD variables that are declared
235           extern "C" elsewhere out of the namespace.
236         * src/base/low/cl_low_div.cc: Likewise.
237
238 2001-06-08  Bruno Haible  <haible@clisp.cons.org>
239
240         * autoconf/config.{guess,sub}: Update to GNU version 2001-05-11.
241         * autoconf/aclocal.m4: Upgrade to libtool-1.4.
242         * autoconf/ltmain.sh: Likewise.
243         * autoconf/ltconfig: Remove file.
244         * autoconf/install-sh: New file.
245         * configure.in: Add AC_CONFIG_AUX_DIR call.
246
247 2001-06-05  Richard Kreckel  <kreckel@ginac.de>
248
249         * tests/tests.cc: resolve namespace ambiguity about strcmp().
250
251 2001-05-31  Richard Kreckel  <kreckel@ginac.de>
252
253         * Version 1.1.1 released.
254
255 2001-05-28  Richard Kreckel  <kreckel@ginac.de>
256
257         * cln/cln.tex: documented problems with shared library on Sparc
258           using gcc older than 2.95.3.
259         * configure.in: Fixed typos in versioning docu.
260
261 2001-05-25  Bruno Haible  <haible@clisp.cons.org>
262
263         * src/base/digitseq/cl_asm_arm_.cc: Use #0x instead of #& to designate
264           hexadecimal constants.
265
266 2001-05-25  Richard Kreckel  <kreckel@ginac.de>
267
268         * autoconf/floatparam.c (double_wordorder_bigendian_p): new symbol.
269         * src/float/dfloat/cl_DF.h: Check for double_wordorder_bigendian_p.
270         * Removed LiDIA interface since that is now outdated (namespace cln)
271           and maintained elsewhere.
272         * Adjusted dates and final touches for 1.1.1.
273
274 2001-05-19  Richard Kreckel  <kreckel@ginac.de>
275
276         * INSTALL: Update toolchain info: no egcs, some more platforms.
277         * doc/cln.tex: Likewise.
278
279 2001-05-18  Richard Kreckel  <kreckel@ginac.de>
280
281         * src/base/cl_low.h: prepended variables declared inside macros
282           with underscore.  Fixes equal_hashcode() on various platforms.
283
284 2001-04-25  Richard Kreckel  <kreckel@ginac.de>
285
286         * src/base/cl_low.h: Added several checks if NO_ASM is defined, so
287           this definition becomes actually useful.  This is needed for 
288           compilation on Arm until somebody fixes the assembler files for Arm.
289         * src/base/digitseq/cl_asm.h: Likewise.
290         * src/base/digitseq/cl_asm_.cc: Likewise.
291         * */Makefile.in: Added `override' in front of `CPPFLAGS +=' so
292            one can say `make CPPFLAGS=-DFOOBAR'.
293
294 2001-03-26  Arvid Norberg <c99ang@cs.umu.se>
295
296         * src/base/random/cl_random_from.cc: ported to beos.
297
298 2001-03-05  Richard Kreckel  <kreckel@ginac.de>
299
300         * include/cln/modules.h (CL_JUMP_TO): Fix IA64 brokenness.
301
302 2001-01-28  Richard Kreckel  <kreckel@ginac.de>
303
304         * include/cln/number.h (cl_as_N): Remove bogus comment.
305
306 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
307
308         * configure.in: Make build in separate builddir possible (again).
309
310 2001-01-22  Richard Kreckel  <kreckel@ginac.de>
311
312         * include/cln/*.h: Change signatures of all classes' methods
313           cln::cl_foo::operator new(size_t, cl_foo*) to
314           cln::cl_foo::operator new(size_t, void*) so one can declare
315           std::vector<cln::cl_foo>, std::list<cln::cl_foo> etc. for
316           certain STL implementations (like libstdc++-v3).
317
318 2000-12-14  Richard Kreckel  <kreckel@ginac.de>
319
320         * Version 1.1 released.
321
322 2000-12-13  Richard Kreckel  <kreckel@ginac.de>
323
324         * */*: cl_istream -> std::istream, cl_ostream -> std::ostream.
325
326 2000-12-05  Richard Kreckel  <kreckel@ginac.de>
327
328         * Makefile.in, src/Makefile.in, doc/Makefile.in: Use mkdir -p.
329         * include/cln/version.h.in, src/base/verion.cc: New files.
330         * configure.in: Generate include/cln/version.h.
331         * cln.m4: Rewrote it. Check result of cln-config without compiling.
332           Do cross-check library version and header version information.
333
334 2000-12-02  Christian Bauer  <cbauer@ginac.de>
335
336         * Makefile.in, src/Makefile.in, doc/Makefile.in: Added $DESTDIR.
337         * cln.m4, cln.spec.in: some minor fixes with respect to RPM package
338           building.
339
340 2000-11-24  Richard Kreckel  <kreckel@ginac.de>
341
342         * */*: Removed problematic stdin, stdout and stderr definitions.  
343           Use std::cin, std::cout, std::cerr instead (obsoletes 2000-10-29).
344
345 2000-11-20  Bruno Haible
346
347         * cln-config.1: change title.
348
349 2000-11-18  Richard Kreckel  <kreckel@ginac.de>
350
351         * cln.m4: New file.
352         * doc/cln.tex: Document package tools cln-config and cln.m4.
353         * Makefile.in: Care about cln.m4.
354
355 2000-11-17  Richard Kreckel  <kreckel@ginac.de>
356
357         * cln-config.1: added manpage, as required by a couple of distros.
358         * Makefile.in, doc/Makefile.in: target install depends on installdirs.
359
360 2000-11-16  Richard Kreckel  <kreckel@ginac.de>
361
362         * autoconf/aclocal.m4 (CL_GMP_SET_UINTD): New macro...
363         * configure.in: ...used here.
364         * include/cln/config.h.in: Put in macros defined by CL_GMP_SET_UINTD...
365         * include/cln/types.h: ...used here.
366         * autoconf/acgeneral.m4, autoconf/aclocal.m4: Adhere to FHS.
367
368 2000-11-13  Richard Kreckel  <kreckel@ginac.de>
369
370         * src/base/digitseq/cl_asm.h: Test if (intDsize==32) for MIPS and HPPA,
371           in order to guard against an accidented configuration.
372         * src/integer/conv/cl_I_to_digits.cc (table): member b_hoch_k of 
373           struct power_table_entry initialized as ULL instead of as UL, if 
374           intDsize==64 (caused misprinting on MIPS w/ GMP).
375         * src/base/cl_macros.h (minus_bitm, bitc): implemented ULL, if 
376           HAVE_FAST_LONGLONG.
377         * src/integer/bitwise/cl_I_mkfx.cc (mkf_extract): Likewise.
378         * src/integer/conv/cl_I_from_L.cc (cl_I_from_L): Added trival 
379           generation of Bignum for intDsize==64 and a notreached-check at end.
380         * autoconf/config.guess, autoconf/config.sub: updated from FSF.
381         * include/cln/config.h.in: Prepared support for IA64.
382         * include/cln/types.h: Likewise.
383         * include/cln/object.h: Likewise.
384         * include/cln/modules.h: Likewise.
385         * src/base/cl_macros.h (nonreturning_function): Likewise (NUE's 
386           compiler claims __GNUC_MINOR__==9).
387
388 2000-11-03  Richard Kreckel  <kreckel@ginac.de>
389
390         * src/base/cl_macros.h (bit, minus_bit): changed criterion for ULL from
391           HAVE_DD to HAVE_FAST_LONGLONG.
392         * src/base/cl_macros.h (bitm): implemented ULL, if HAVE_FAST_LONGLONG.
393         * src/base/cl_low.h: actually no need to include "cln/types.h" here.
394         * src/base/cl_low.h (logcount_64): always ULL, independent of HAVE_DD.
395         * src/base/random/cl_UL_random.cc (random32): a is always ULL.
396
397 2000-11-01  Richard Kreckel  <kreckel@ginac.de>
398
399         * include/cln/object.h (cl_combine): define additional signatures, if
400           HAVE_LONGLONG is defined, in order to keep the compiler happy.
401         * src/base/cl_macros.h: include "cln/types.h", since we need HAVE_DD...
402         * src/base/cl_macros.h (bit): ...for this macro...
403         * src/base/cl_macros.h (minus_bit): ...and this one.
404         * src/base/cl_low.h: include "cln/types.h", since we need HAVE_DD...
405         * src/base/cl_low.h (logcount_64): ...for this macro.
406         * src/base/random/cl_UL_random.cc (random32): if HAVE_DD a is an ULL.
407         * src/integer/gcd/cl_I_gcd_aux2.cc (floorDD): fixed algorithmic bug.
408           that turned up when intDsize==32 and cl_word_size==64.
409         * src/float/dfloat/elem/cl_DF_div.cc (operator/): fixed a missing cast
410           to uint64 that turned up when intDsize==32 and cl_word_size==64.
411
412 2000-10-29  Richard Kreckel  <kreckel@ginac.de>
413
414         * src/real/input/cl_R_read.cc, src/complex/input/cl_N_read.cc:
415           #undef stderr, if it's defined so cln::stderr isn't confused.
416         * src/base/input/cl_read_globals.cc: stdin should not be extern.
417
418 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
419
420         * include/cln/number.h (As): Fix it in namespace by suffixing `_As'
421           to the appropiate method instead of prefixing `as_'.
422         * src/complex/misc/cl_N_as.cc (cl_N_As): Likewise.
423         * src/real/misc/cl_R_as.cc (cl_R_As): Likewise.
424         * src/rational/misc/cl_RA_as.cc (cl_RA_As): Likewise.
425         * src/integer/misc/cl_I_as.cc (cl_I_As): Likewise.
426         * src/float/misc/cl_F_as.cc (cl_F_As): Likewise.
427         * src/float/sfloat/misc/cl_SF_as.cc (cl_SF_As): Likewise.
428         * src/float/lfloat/misc/cl_LF_as.cc (cl_LF_As): Likewise.
429         * src/float/ffloat/misc/cl_FF_as.cc (cl_FF_As): Likewise.
430         * src/float/dfloat/misc/cl_DF_as.cc (cl_DF_As): Likewise.
431
432 2000-09-05  Richard Kreckel  <kreckel@ginac.de>
433
434         * src/complex/transcendental/cl_C_expt_C.cc (expt): fix logic for
435           the 0^y cases.
436
437 2000-08-30  Richard Kreckel  <kreckel@ginac.de>
438
439         * include/cln/number.h, cl_number::_as_cl_private_thing(): removed.
440           Rearranged for a clearer distinction between macros and remaining
441           identifiers, so Cint can parse it smoothly.
442
443 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
444
445         * include/cln/number.h, the(const cl_number& x): New template
446           function.
447
448 2000-08-29  Richard Kreckel  <kreckel@ginac.de>
449
450         * */*: Pushed CLN into a namespace `cln'.  While doing so, the
451           following identifiers got their poor-man's namespace (i.e. the 
452           prefix `cl_') stripped off:
453           cl_catalanconst()        ->  catalanconst()
454           cl_compare()             ->  compare()
455           cl_cos_sin()             ->  cos_sin()
456           cl_cos_sin_t             ->  cos_sin_t
457           cl_cosh_sinh()           ->  cosh_sinh()
458           cl_cosh_sinh_t           ->  cosh_sinh_t
459           cl_decoded_dfloat        ->  decoded_dfloat
460           cl_decoded_ffloat        ->  decoded_ffloat
461           cl_decoded_float         ->  decoded_float
462           cl_decoded_lfloat        ->  decoded_lfloat
463           cl_decoded_sfloat        ->  decoded_sfloat
464           cl_default_float_format  ->  default_float_format
465           cl_default_print_flags   ->  default_print_flags
466           cl_default_random_state  ->  default_random_state
467           cl_double_approx()       ->  double_approx()
468           cl_equal()               ->  equal()
469           cl_equal_hashcode()      ->  equal_hashcode()
470           cl_eulerconst()          ->  eulerconst()
471           cl_find_modint_ring()    ->  find_modint_ring()
472           cl_find_univpoly_ring()  ->  find_univ_poly_ring()
473           cl_float_approx()        ->  float_approx
474           cl_float_format()        ->  float_format()
475           cl_float_format_t        ->  float_format_t
476           cl_free_hook()           ->  free_hook()
477           cl_hermite()             ->  hermite()
478           cl_laguerre()            ->  laguerre()
479           cl_legendre()            ->  legandre()
480           cl_malloc_hook()         ->  malloc_hook()
481           cl_pi()                  ->  pi()
482           cl_tschebychev()         ->  tschebychev()
483           cl_zeta()                ->  zeta()
484           NB: For functions these changes includes all signatures.
485         * include/*: moved to include/cln/*, stripped `cl_' off filenames.
486         * cln-config.in: new file.
487
488 2000-08-26  Bruno Haible  <haible@clisp.cons.org>
489
490         * autoconf/acgeneral.m4 (AC_OUTPUT): Use braces in exec_prefix default
491           value, not parens.
492
493 2000-08-18  Bruno Haible  <haible@clisp.cons.org>
494
495         * include/cl_univpoly_modint.h: Fix typo.
496
497 2000-07-13  Bruno Haible  <haible@clisp.cons.org>
498
499         * src/float/input/cl_F_read_stream.cc (number_char_p): Accept '_',
500           used as precision marker for floats.
501           Reported by Keith Briggs (in 1998) and Thomas Roessler.
502         * src/integer/input/cl_I_read_stream.cc (number_char_p): Likewise.
503         * src/rational/input/cl_RA_read_stream.cc (number_char_p): Likewise.
504         * src/real/input/cl_R_read_stream.cc (number_char_p): Likewise.
505         * src/complex/input/cl_N_read_stream.cc (number_char_p): Likewise.
506
507 2000-06-22  Bruno Haible  <haible@clisp.cons.org>
508
509         * include/cl_object.h: Rename cl_word_size to cl_pointer_size.
510         * include/cl_types.h (HAVE_FAST_LONGLONG): Also define on Irix6
511           with N32 ABI.
512           (cl_word_size): New macro.
513         * src/float/sfloat/cl_SF.h: Use cl_pointer_size instead of
514           cl_word_size.
515
516 2000-05-31  Bruno Haible  <haible@clisp.cons.org>
517
518         * tests/exam_I_floor.cc (integer_floor_tests): Add one more entry.
519           From a sample that fails with gcc-2.95.2 on Sparc.
520         * tests/exam_I_gcd.cc (integer_gcd_tests): Likewise.
521
522 2000-05-30  Richard Kreckel  <kreckel@ginac.de>
523
524         * configure.in, autoconf/aclocal.m4 (CL_GMP_H_VERSION, CL_GMP_CHECK):
525           New macros.
526         * configure.in, include/cl_config.h.in (CL_VERSION, CL_VERSION_MINOR,
527           CL_VERSION_PATCHLEVEL): New definitions.
528         * autoconf/config.guess, autoconf/config.sub, autoconf/ltconfig,
529           autoconf/ltmain.sh: updated from FSF (libtool 1.3.5, etc).
530         * src/Makefile.in, configure.in: release-variables renamed from 
531           CLN_* to CL_*.
532         * configure.in: default to build both shared and static library
533           (i.e. default to the most common behaviour).
534
535 2000-05-29  Richard Kreckel  <kreckel@ginac.de>
536
537         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Added missing changequote
538           environment around the patch of 2000-05-23.
539
540 2000-05-29  Bruno Haible  <haible@clisp.cons.org>
541
542         * autoconf/aclocal.m4 (CL_PROG_INSTALL): Fix typo.
543           Reported by Thomas Klausner <wiz@danbala.ifoer.tuwien.ac.at>.
544
545 2000-05-27  Richard Kreckel  <kreckel@ginac.de>
546
547         * src/float/lfloat/algebraic/cl_LF_sqrt.cc,
548           src/base/digitseq/cl_DS_sqrt.cc: Readjusted break-even points.
549
550 2000-05-24  Richard Kreckel  <kreckel@ginac.de>
551
552         * autoconf/config.*: Updated to new version from FSF
553           (the new libtool wants this).
554         * src/Makefile.in: added $(LDFLAGS) to link step.
555         * src/base/digitseq/cl_2DS_div.cc, cl_2DS_recip.cc: Readjusted 
556           break-even points.
557
558 2000-05-23  Bruno Haible  <haible@clisp.cons.org>
559
560         * autoconf/aclocal.m4 (CL_CANONICAL_HOST): Determine host_cpu,
561           host_vendor, host_os correctly if $host has more than two hyphens.
562
563 2000-05-19  Richard Kreckel  <kreckel@ginac.de>
564
565         * src/base/digitseq/cl_DS_mul.cc: Rearranged break-even points to
566           better match present-day CPUs whenever GMP3 is used.
567         * src/base/digitseq/cl_DS_div.cc: dto. 
568         * src/TUNING: Added comment about order of tuning.
569         * configure, configure.in: Safer GMP3-detection.
570         * INSTALL.generic: Clarified behaviour of --with-gmp.
571         * autoconf/config.guess: updated from Clisp-2000-03-06 sources.
572
573 2000-05-04  Richard Kreckel  <kreckel@ginac.de>
574
575         * gmp/: removed completely.  From now on we are going to link
576           externally against libgmp3.0 or above!
577         * configure, configure.in, Makefile.in, */Makeflags: removed support
578           of internal gmp 2.0.2, like $GMP_INCLUDES, which should be done by
579           setting $CPPFLAGS instead.
580         * Makefile.in: Added libtool inter-library dependency for -lgmp and
581           conforming interface versioning (-version-info).
582         * autoconf/ltconfig, autoconf/ltmain.sh: Updated to newer versions
583           from libtool 1.3.4.
584
585 2000-02-22  Bruno Haible  <haible@clisp.cons.org>
586
587         * src/base/digitseq/cl_asm_mips_.cc: Starting at argument 5 the
588           parameter passing was changed for the MIPS n32 ABI.
589
590 2000-01-24  Richard Kreckel  <kreckel@ginac.de>
591
592         * gmp/*: Replaced the complete mpn sources with the ones from
593           Debian since they are maintained while the ones from FSF
594           aren't and there were problems on some architectures, PowerPC
595           in particular.  See the file gmp/README.CLN.  This way the
596           hard links in this directory have vanished, they were causing
597           trouble for people working in AFS.  This became necessary for
598           Debian, because there it woudn't compile on PPC.
599
600 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
601
602         * Version 1.0.3 released.
603
604 2000-01-13  Richard Kreckel  <kreckel@ginac.de>
605
606         * src/base/cl_macros.h (nonreturning_function): For egcs and newer
607           use __attribute__ ((__noreturn__)) instead of the __volatile__
608           storage class.
609           (nonreturning): Remove macro.
610         * include/*: Minor fixes to stop -ansi -pedantic from complaining.
611         * include/cl_integer.h: (doublefactorial): New declaration.
612         * src/integer/misc/combin/cl_I_doublefactorial.cc: New file.
613
614 1999-12-18  Bruno Haible  <haible@clisp.cons.org>
615
616         * autoconf/acgeneral.m4 (AC_ARG_PROGRAM): Create conftestsed using
617           "cat", not "echo".
618         * autoconf/ltconfig: Improve support for recent FreeBSD 3.
619         * include/cl_GV.h (cl_GV_vectorops): Change return type from 'T' to
620           'const T', to match definition in src/vector/cl_GV_number.cc.
621           Reported by Duncan Simpson <dps@io.stargate.co.uk>.
622         * gmp/mpn/Makefile.in (.S.lo): Use 'if', not '&&', because '&&' may
623           yield return code 1.
624
625 1999-09-07  Bruno Haible  <haible@clisp.cons.org>
626
627         * Version 1.0.2 released.
628
629 1999-09-06  Bruno Haible  <haible@clisp.cons.org>
630
631         * src/rational/cl_RA.h (integerp, ratiop): Instead of returning a
632           boolean expression, write alternatives ending with either
633           "return cl_true;" or "return cl_false;". This way, g++ does a
634           better job inlining it.
635         * src/float/cl_F.h (longfloatp): Likewise.
636         * src/real/cl_R.h (rationalp, integerp, floatp): Likewise.
637         * src/complex/cl_C.h (realp, complexp): Likewise.
638
639 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
640
641         * include/cl_integer.h (cl_equal_hashcode): New declaration.
642         * include/cl_rational.h (cl_equal_hashcode): New declaration.
643         * include/cl_sfloat.h (cl_equal_hashcode): New declaration.
644         * include/cl_ffloat.h (cl_equal_hashcode): New declaration.
645         * include/cl_dfloat.h (cl_equal_hashcode): New declaration.
646         * include/cl_lfloat.h (cl_equal_hashcode): New declaration.
647         * include/cl_float.h (cl_equal_hashcode): New declaration.
648         * include/cl_real.h (cl_equal_hashcode): New declaration.
649         * include/cl_complex.h (cl_equal_hashcode): New declaration.
650         * src/base/cl_N.h (equal_hashcode_low, equal_hashcode_one): New macros.
651         * src/integer/misc/cl_I_eqhashcode.cc: New file.
652         * src/rational/misc/cl_RA_eqhashcode.cc: New file.
653         * src/float/sfloat/misc/cl_SF_eqhashcode.cc: New file.
654         * src/float/ffloat/misc/cl_FF_eqhashcode.cc: New file.
655         * src/float/dfloat/misc/cl_DF_eqhashcode.cc: New file.
656         * src/float/lfloat/misc/cl_LF_eqhashcode.cc: New file.
657         * src/float/misc/cl_F_eqhashcode.cc: New file.
658         * src/real/misc/cl_R_eqhashcode.cc: New file.
659         * src/complex/misc/cl_C_eqhashcode.cc: New file.
660         * doc/cln.tex: Document `cl_equal_hashcode'.
661
662 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
663
664         * include/cl_ring.h (cl_number_ring_ops): Add `contains' member.
665           (cl_number_ring): New class.
666           (cl_specialized_number_ring<T>): Inherit from cl_number_ring.
667           (instanceof): New function.
668         * src/integer/ring/cl_I_ring.cc (cl_I_p): New function.
669         * src/integer/misc/cl_I_as.cc (cl_I_p): Add comment.
670         * src/rational/ring/cl_RA_ring.cc (cl_RA_p): New function.
671         * src/rational/misc/cl_RA_as.cc (cl_RA_p): Add comment.
672         * src/real/ring/cl_R_ring.cc (cl_R_p): New function.
673         * src/real/misc/cl_R_as.cc (cl_R_p): Add comment.
674         * src/complex/ring/cl_C_ring.cc (cl_N_p): New function.
675         * src/complex/misc/cl_N_as.cc (cl_N_p): Add comment.
676         * doc/cln.tex: Document `instanceof'.
677
678 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
679
680         * include/cl_rational.h (numerator, denominator): New declarations.
681         * src/rational/elem/cl_RA_numerator.cc: New file.
682         * src/rational/elem/cl_RA_denominator.cc: New file.
683         * include/cl_integer.h (numerator, denominator): New inline functions.
684         * doc/cln.tex: Document `numerator' and `denominator'.
685
686 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
687
688         * src/rational/algebraic/cl_RA_rootp.cc (rootp): Fix endless loop
689           in the integer case.
690         * src/rational/algebraic/cl_RA_rootp_I.cc (rootp): Likewise.
691
692 1999-09-05  Bruno Haible  <haible@clisp.cons.org>
693
694         * include/cl_config.h.in: Support for sparc64 CPU.
695         * include/cl_modules.h: Likewise.
696         * include/cl_types.h: Likewise.
697         * include/cl_object.h: Likewise.
698         * include/cl_GV.h: Likewise.
699         * src/Makefile.in: Likewise.
700         * src/base/cl_alloca.h: Likewise.
701         * src/base/cl_macros.h: Likewise.
702         * src/base/cl_sysdep.h: Likewise.
703         * src/base/cl_low.h: Likewise.
704         * src/base/digitseq/cl_asm.h: Likewise.
705         * src/base/digitseq/cl_asm_.cc: Likewise.
706         * src/base/digitseq/cl_asm_sparc64.h: New file.
707         * src/base/digitseq/cl_asm_sparc64_.cc: New file.
708         * src/modinteger/cl_MI_int.h: Support for sparc64 CPU.
709         * src/polynomial/elem/cl_UP_no_ring.cc: Likewise.
710         * src/polynomial/elem/cl_UP_GF2.h: Likewise.
711         * src/polynomial/elem/cl_asm_GF2.cc: Likewise.
712
713 1999-09-04  Bruno Haible  <haible@clisp.cons.org>
714
715         * src/base/digitseq/cl_asm_sparc_.cc (orc2_loop_up, orc2_loop_down):
716           Use the `orn' instruction.
717
718 1999-08-14  Bruno Haible  <haible@clisp.cons.org>
719
720         Assume all platforms have <stdlib.h> and clock_t.
721         * configure.in: Don't call CL_STDLIB_H and CL_CLOCK_T.
722         * src/base/cl_base_config.h.in (CLOCK_T): Remove definition.
723         * src/base/random/cl_random_from.cc: Use clock_t instead of CLOCK_T.
724         * src/timing/cl_t_config.h.in (CLOCK_T): Remove definition.
725         * src/timing/cl_t_current2.cc: Use clock_t instead of CLOCK_T.
726
727 1999-07-18  Bruno Haible  <haible@clisp.cons.org>
728
729         * gmp/config.guess: Link to autoconf/config.guess.
730           gmp/config.sub: Link to autoconf/config.sub.
731           Needed for Win32 platforms.
732
733 1999-07-17  Bruno Haible  <haible@clisp.cons.org>
734
735         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Distinguish "sparc" and
736           "sparc64" according to the C compiler, not the uname result.
737
738 1999-06-17  Bruno Haible  <haible@clisp.cons.org>
739
740         * src/base/digitseq/cl_asm_sparc_.cc (compare_loop_up): Fix
741           COUNTER_LOOPS version, fortunately not used yet.
742
743         * include/cl_modules.h: Prepare for gcc version 3.
744
745 1999-06-12  Bruno Haible  <haible@clisp.cons.org>
746
747         * src/rational/elem/cl_RA_plus.cc, src/rational/elem/cl_RA_minus.cc:
748           Change the last call from I_I_to_RT to I_I_to_RA.
749
750 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
751
752         * Version 1.0.1 released.
753
754 1999-06-09  Bruno Haible  <haible@clisp.cons.org>
755
756         * src/integer/cl_I.h (pFN_maxlength_digits_at): Define also when
757           intDsize==64.
758
759 1999-06-08  Bruno Haible  <haible@clisp.cons.org>
760
761         * autoconf/intparam.c (printf_underscored): Change argument type to
762           `const char*'.
763         * include/cl_modules.h (CL_OUTPUT_LABEL, CL_JUMP_TO): New macros.
764           (CL_PROVIDE, CL_PROVIDE_END): Use them.
765         * include/cl_string.h (cl_heap_string::operator new): Return 1, not 0.
766         * include/cl_GV.h (cl_GV_inner<T>::operator new): Likewise.
767         * src/base/ring/cl_no_ring.cc (dummy_canonhom, dummy_expt_pos): Don't
768           cast a cl_I to void here. Works around a bug in g++-2.95.
769         * src/complex/misc/cl_C_class.cc: Include "cl_C.h".
770         * src/polynomial/elem/cl_UP_no_ring.cc (dummy_canonhom,
771            dummy_expt_pos): Don't cast a cl_I to void here. Works around a bug
772           in g++-2.95.
773         * src/polynomial/elem/cl_asm_sparc_GF2.cc (DECLARE_FUNCTION): New
774           macro.
775         * src/rational/misc/cl_RA_class.cc: Include "cl_RA.h".
776         * src/vector/cl_GV_I.cc (cl_heap_GV_I_general::operator new,
777            DEFINE_cl_heap_GV_I_bits): Return 1, not 0.
778         * src/vector/cl_GV_number.cc (cl_heap_GV_number_general::operator new):
779           Likewise.
780
781 1999-06-01  Bruno Haible  <haible@clisp.cons.org>
782
783         * autoconf/aclocal.m4 (CL_CANONICAL_HOST_CPU): Canonicalize alpha
784           variants to alpha.
785
786 1999-05-29  Bruno Haible  <haible@clisp.cons.org>
787
788         * src/base/digitseq/cl_asm_i386_.cc (DECLARE_FUNCTION): Treat
789           OpenBSD like NetBSD.
790         * src/base/digitseq/cl_asm_sparc_.cc (DECLARE_FUNCTION): Likewise.
791         * src/base/digitseq/cl_asm_m68k_.cc (DECLARE_FUNCTION): Treat
792           OpenBSD like NetBSD, and Linux/ELF like SVR4.
793
794 1999-05-16  Bruno Haible  <haible@clisp.cons.org>
795
796         * src/base/cl_low.h (integerlength32) [__rs6000__]: Use old assembler
797           syntax on AIX systems and new assembler syntax on non-AIX systems.
798
799 1999-05-01  Bruno Haible  <haible@clisp.cons.org>
800
801         * autoconf/config.guess, autoconf/config.sub: Upgrade to newest
802           version from GNU CVS.
803
804 1999-04-24  Bruno Haible  <haible@clisp.cons.org>
805
806         * src/integer/bitwise/cl_I_logand.cc (logand): Optimize the case when
807           either operand is a positive fixnum, O(1) instead of O(N).
808         * src/integer/bitwise/cl_I_lognand.cc (lognand): Likewise.
809         * src/integer/bitwise/cl_I_logandc2.cc (logandc2): Likewise for the
810           first operand.
811
812 1999-04-14  Bruno Haible  <haible@clisp.cons.org>
813
814         * autoconf/aclocal.m4 (CL_GLOBAL_CONSTRUCTORS): Add check whether
815           ctor/dtor needs to be exported.
816         * include/cl_config.h.in (CL_NEED_GLOBALIZE_CTORDTOR): New macro.
817         * include/cl_modules.h (CL_GLOBALIZE_JUMP_LABEL): Renamed from
818           CL_GLOBALIZE_LABEL.
819           (CL_GLOBALIZE_LABEL): New macro.
820           (CL_GLOBALIZE_CTORDTOR_LABEL): Renamed from CL_GLOBALIZE_ASM_LABEL.
821           (CL_PROVIDE): Update.
822
823 1999-04-12  Bruno Haible  <haible@clisp.cons.org>
824
825         * src/Makefile.in ($(ASMFILES_S)): On HPPA, ignore preprocessing
826           errors ("unterminated string or character constant").
827           ($(ASMFILES_LO)): On HPPA, try with various settings of
828           COMPILER_PATH, in order to try /usr/ccs/bin/as and /bin/as.
829
830 1999-04-11  Bruno Haible  <haible@clisp.cons.org>
831
832         * INSTALL: Mention gmp problems on MIPS.
833         * doc/cln.tex: Likewise.
834
835 1999-03-24  Mumit Khan  <khan@xraylith.wisc.edu>
836
837         * src/Makefile.in (SUBDIRS): Filter out CVS and RCS directories from
838           the source tree.
839         * include/cl_modules.h (CL_GLOBALIZE_LABEL): Define for Win32.
840           (CL_GLOBALIZE_ASM_LABEL): New macro.
841           (CL_PROVIDE): Use it.
842         * src/base/random/cl_random_from.cc: Handle WIN32.
843         * src/timing/cl_t_current.cc: Likewise.
844
845 1999-03-15  Bruno Haible  <haible@clisp.cons.org>
846
847         * autoconf/intparam.c (main7): Use %lX instead of %X for a `long'.
848           (main8): Adapt for C++.
849
850 1999-03-09  Bruno Haible  <haible@clisp.cons.org>
851
852         * INSTALL: Mention egcs-1.1 problems on Sparc.
853         * doc/cln.tex: Likewise.
854
855 1999-03-08  Bruno Haible  <haible@clisp.cons.org>
856
857         * autoconf/aclocal.m4 (CL_FPU_CONTROL): Fix the "checking for"
858           messages.
859
860 1999-02-25  Bruno Haible  <haible@clisp.cons.org>
861
862         * autoconf/aclocal.m4: In test programs, declare `int main()', not
863           `main()'.
864
865         * lidia-interface/src/interfaces/integers/cln/bigint.c
866           (bigint_to_string): Fix for negative arguments.
867
868         * src/base/cl_low.h: Check for `__sparc__', not `SPARC'.
869         * src/base/cl_alloca.h: Likewise.
870
871         * src/base/cl_low.h: Eliminate CLISP style "# " comments.
872         * src/base/digitseq/cl_asm_arm_.cc,
873           src/base/digitseq/cl_asm_mips_.cc,
874           src/float/dfloat/elem/cl_DF_mul.cc: Likewise.
875
876         * src/modinteger/cl_MI_pow2.h,
877           src/modinteger/cl_MI_pow2m1.h,
878           src/modinteger/cl_MI_pow2p1.h: Workaround g++-2.7.2 inlining bug.
879
880 1999-01-18  Bruno Haible  <haible@clisp.cons.org>
881
882         * autoconf/acgeneral.m4,
883           autoconf/acspecific.m4: Upgrade to autoconf-2.13.
884         * autoconf/config.guess, autoconf/config.sub: Likewise.
885         * autoconf/aclocal.m4 (CL_ALLOCA): Test for _MSC_VER and alloca being
886           a macro. Use ${ac_objext}.
887         * src/base/cl_macros.h (alloca): Put _MSC_VER test before the others,
888           conforming with CL_ALLOCA.
889
890 1999-01-12  Bruno Haible  <haible@clisp.cons.org>
891
892         * Version 1.0 released.
893