Tell about using the mingw-based gcc, which is much easier than modifying
[platform/upstream/glib.git] / ChangeLog
1 2000-03-26  Tor Lillqvist  <tml@iki.fi>
2
3         * README.win32: Tell about using the mingw-based gcc, which is
4         much easier than modifying the cygwin gcc to product mingw code
5         for the msvcrt runtime.
6
7         * makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
8         with a "pure" mingw gcc, too.
9
10 2000-03-24  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11
12         * garray.c: Made GArray behave correctly. Now zero_terminated
13         really means, that the element array->data[array->len] exists and
14         is zeroed, and clear means that any unassigned elements obtained
15         through g_array_set_size (the only way to get unassigned elements
16         AFAICT) are zeroed. Added some macros to make the code more
17         obvoius. Also made GPtrArray zero elements after
18         g_ptr_array_set_size. This is done in a portbale way (assignment
19         of NULL instead of just memsetting it to zero), though that might
20         be more portability than we actually want.
21
22         * Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
23         tests/Makefile.am: Added various win32 related *.in files to
24         EXTRA_DIST to let 'make distcheck' procude all the corresponding
25         files, which it silently fails to do currently.
26
27 2000-03-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
28
29         * configure.in: After finding the right thread library (containing
30         e.g. pthread_create) we now search for the right realtime library
31         (containing e.g. sched_get_priority_max). Makes the output of the
32         thread related libraries correct. 
33
34         * gtimer.c (g_usleep): The current implementation of g_usleep
35         (simply calling select) doesn't work reliable for multi-threaded
36         programs on some platforms (bad omen for the main loop....), so I
37         changed the implementation for thread-using programs to wait for a
38         GCond for the specified amount of time (NB: sleep and usleep are
39         not MT-safe in general, because they often use signals).
40
41 Wed Mar 22 16:49:57 2000  Owen Taylor  <otaylor@redhat.com>
42
43         * gmem.c (g_mem_chunk_area_compare): Fix indentation.
44
45 2000-03-22 Elliot Lee <sopwith@redhat.com>
46
47         * gmem.c (g_mem_chunk_area_compare): Fix 64-bitness bug in
48         comparing two pointers more than 4G apart.
49
50 2000-03-22  Tor Lillqvist  <tml@iki.fi>
51
52         * gutils.c: Move Win32-only includes after inclusion of glib.h, so
53         that G_OS_WIN32 is defined.
54
55         * glibconfig.h.win32.in: Add GSystemThread.
56
57 2000-03-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
58
59         * gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
60         <Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
61         path length might not be enough for the HURD. So I changed the
62         loop to at least avoid an integer overflow, which could happen at
63         beyond 2GB size ;-)
64
65         * configure.in: Test for sched_yield as the native yield function
66         first. Corrected typo g_thread_sleep -> g_usleep. Corrected
67         message for the pthread_create test. Negative Priorities are
68         allowed (and used on Solaris), so consider
69         sched_get_priority_min failed only if it returns -1, not <0. Check
70         for sched_get_priority_min also in -lrt, if not found in -lpthread
71         alone and add -lrt to G_THREAD_LIBS then. Remove special case
72         handling of priorities for older solaris versions and posix
73         threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
74         some of those changes.
75         
76         * config.guess, config.sub, ltconfig, ltmain.sh:
77         Upgrade to libtool 1.3.4.
78
79 2000-03-21  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
80
81         * glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
82         even when not needed by GLib. That's actually also the way, the
83         GLib reference manual describes that macro. Therefore I had to
84         remove the lonesome #include <glibconfig.h> in gutils.c, which
85         doesn't seem to be needed there however. This change should make
86         Ben Gertzfield <che@debian.org> happy.
87
88         * gutils.c: Furthermore two warnings in gutils.c were voided,
89         which crept in due to my last change.
90
91         * gutils.c (g_get_current_dir): Allocate only up to 128KB for a
92         pathname. While this is an arbitrary value just like 2048, it
93         seems to be enough (after all, even 4GB is an arbitrary value).
94
95 2000-03-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
96
97         * gmain.c (g_main_poll): Warn in case of an error during the call
98         to poll(2). Closes Bug#7564 as reported by David Helder
99         <dhelder@umich.edu>.
100
101         * gutils.c (g_get_current_dir): Make g_get_current_dir work on
102         systems with unlimited pathname length like the HURD (It worked
103         there before, but only for pathes shorter than 2048). Closes
104         Bug#4525 as reported by Marcus Brinkmann
105         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
106
107 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
108
109         * giounix.c (g_io_unix_write, g_io_unix_read): Interpret EINTR as
110         G_IO_ERROR_AGAIN.
111
112 2000-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
113
114         * configure.in: Added the missing POSIX_NO_YIELD and
115         POSIX_NO_PRIORITIES warning messages.
116
117         * configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
118         real thread support. On solaris pthread_create can be linked to
119         even in -lc, but it doesn't work then.
120
121         * configure.in: Don't use priorities for threads, when the
122         minimal/maximal priorities couldn't be determined at configure
123         time.
124         
125         * configure.in, gthread.c: Always define GSystemThread in
126         glibconfig.h to represent a system thread.
127
128         * configure.in: Do not use native recursive threads, when
129         possibe. We use some features, that they do not expose (namely the
130         depth counter).
131
132         * glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
133         now implemented in a different way, which should be way
134         faster. Alsothere are now functions g_static_rec_mutex_unlock_full
135         and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
136         completly.
137
138         * gthread.c (g_thread_self): Do not test the system_thread to be
139         non-zero to speed things up.
140         
141         * gthread.c (g_mutex_init): Therefore set the system_thread of the
142         main thread here.
143
144         * tests/thread-test.c: Rerun all tests once again, but this time
145         we fool the system into thinking, that the available thread system
146         is not native, but userprovided.
147         
148 2000-03-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
149
150         * gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
151         want the next and prev pointer of the inserted link to be NULL.
152
153 2000-03-06  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
154
155         * configure.in: Another small change to the pthread_.. search
156         pattern. Should work *now* for AIX.
157
158 2000-03-04  Tor Lillqvist  <tml@iki.fi>
159
160         * gwin32.c (g_win32_error_message): New function that returns the
161         message string for a Win32 error code.
162
163         * glib.h: Declare it.
164
165         * glib.def: Export it, plus g_node_copy.
166
167 2000-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
168
169         * configure.in: Make the search for pthread_attr_... prototypes
170         find names at the start of a line also, like it is on AIX. Thanks
171         to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
172
173 Wed Mar  1 10:39:39 2000  Tim Janik  <timj@gtk.org>
174
175         * gslist.c (g_slist_reverse): minor optimization.
176
177         * testglib.c (g_node_test): added a couple of tests for
178         g_node_copy().
179
180         * glib.h:
181         * gnode.c (g_node_copy): new function to copy subtrees,
182         supplied by dbsears@ix.netcom.com.
183         changed iterator to walk the children list backwards, so
184         we get down from O(n^2) to O(n).
185
186         * gnode.c (g_node_first_sibling): applied patch from
187         dbsears@ix.netcom.com to optimize access if node->parent
188         is present.
189
190         * gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
191         assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
192         thus breaks the original code.
193
194         * merged changes from 1.2.7.
195
196 Fri Jan 28 11:37:41 2000  Owen Taylor  <otaylor@redhat.com>
197
198         Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
199
200         * gtimer.c (g_timer_elapsed): Never report negative times -
201         clip times to 0.
202
203         * gmain.c (g_timeout_prepare): Guard against unexpected
204         clock shifts by never setting a timeout of more than
205         data->interval msecs.
206
207 2000-02-27  Tor Lillqvist  <tml@iki.fi>
208
209         * glib.def: Add new functions.
210
211 2000-02-23  Tor Lillqvist  <tml@iki.fi>
212
213         * README.win32: Add a missing step to the setup instructions for
214         gcc-2.95.2. Thanks to Arnaud Charlet.
215
216         * glib.def: Add missing entry point.
217
218 2000-02-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
219
220         * configure.in: Changed GCC version test to also accept major
221         versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
222         pointing this out.
223
224 Thu Feb 17 12:53:44 2000  Tim Janik  <timj@gtk.org>
225
226         * gstring.c: changed g_str_hash() to a 31 bit version based on
227         a submission by Karl Nelson and hand optimized ad absurdum by
228         various people ;)
229
230         * gstring.c: applied patch from havoc for new gstring functions,
231         added some more sanity checks, coding style fixups.
232
233 2000-02-13  Havoc Pennington  <hp@pobox.com>
234
235         * tests/string-test.c (main): Add tests for the new GString 
236         features
237
238         * testglib.c (main): Add tests for the new GString features
239
240         * gstring.c (g_string_insert_len): New function; insert 
241         a given length of string at a given position. 
242         (g_string_append): reimplement in terms of g_string_insert_len
243         (g_string_append_len): new function
244         (g_string_insert_c): accept -1 for "pos" arg to mean "append"
245         (g_string_append_c): reimplement in terms of g_string_insert_c
246         (g_string_prepend): reimplement in terms of g_string_insert_len
247         (g_string_prepend_len): new function
248         (g_string_prepend_c): reimplement in terms of g_string_insert_c
249         (g_string_insert): reimplement in terms of g_string_insert_len
250
251         * glib.h: Declare g_string_insert_len, g_string_append_len,
252         g_string_prepend_len
253         
254 Sun Feb 13 08:16:47 2000  Tim Janik  <timj@gtk.org>
255
256         * configure.in: wtf??? someone destroyed the configure.in, reverting to
257         an older version from Feb 4 which apears to still work.
258
259 2000-02-07  Tor Lillqvist  <tml@iki.fi>
260
261         * gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.
262
263         * Makefile.am
264         * gmodule/Makefile.am
265         * gthread/Makefile.am: Change accordingly.
266         
267         * makefile.cygwin: Corresponding changes, some cleanup.
268
269 2000-02-05  Tor Lillqvist  <tml@iki.fi>
270
271         * glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
272         version info in the DLLs on Win32.
273
274         * Makefile.am: Generate corresponding *.rc files and distribute
275         them.
276
277         * makefile.cygwin.in: Add rules to automatically bump a "build
278         number" in the version info in the rc files each time the DLL is
279         built. But do this only for the person who releases binaries. If
280         others build the DLLs, the build number is set to zero.
281
282 Fri Feb  4 19:36:05 2000  Tim Janik  <timj@gtk.org>
283
284         * glib.h: 
285         * gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
286         and g_dataset_id_remove_no_notify() to avoid second lookup for common
287         use.
288
289 2000-02-01  Tor Lillqvist  <tml@iki.fi>
290
291         * glib.h
292         * gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
293         functions for conversion between UTF-8 and the encoding expected
294         by C runtime functions like open() and stat(), and returned by
295         readdir().
296
297         Implement them on Win32 where we use the system "ANSI" codepage,
298         which might be single-byte or double-byte. On Unix, just skip the
299         issue for now and provide dummy implementations that return a copy
300         of the argument.
301
302         * README.win32
303         * build-dll
304         * glib.def: Minor updates.
305
306 Wed Jan 26 05:24:38 2000  Tim Janik  <timj@gtk.org>
307
308         * glib.h:
309         * gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
310         refetch the current time after invocation of poll() to cover up for
311         the time spent in that function call.
312
313 Fri Jan 21 10:18:24 2000  Owen Taylor  <otaylor@redhat.com>
314
315         * glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
316         the number of elements in an array.
317
318 Sun Jan  9 13:28:36 2000  Tim Janik  <timj@gtk.org>
319
320         * gstrfuncs.c (g_strtod): correctly fetch the current locale,
321         fix from owen.
322
323 1999-12-16  Tor Lillqvist  <tml@iki.fi>
324
325         * gmodule/gmodule-win32.c: Use FormatMessage to translate system
326         error codes into textual messages.
327
328 1999-11-25  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
329
330         * glib.h (G_TRYLOCK): This of course should return TRUE in a
331         program with a thread-disabled GLib.
332
333 1999-11-18  Tor Lillqvist  <tml@iki.fi>
334
335         * glib.def: g_strjoin was missing.
336
337 1999-11-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
338
339         * acconfig.h, config.h.win32.in, configure.in: Renamed
340         GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
341         changed meaning.
342
343         * configure.in: Cope with systems, that have a pthread_t type,
344         that is not a pointer. Hint from Karl Nelson
345         <kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
346         for Solaris. Cope with systems, that have no default mutex
347         initialize, like obviously most DCE systems.
348
349         * glib.h, gthread.c: Changed the prototype of thread_create and
350         thread_self to return the system thread into provided memory
351         instead of a return value. This is necessary, as HPUX has a
352         pthread_t, that is bigger than the biggest integral type there.
353
354         * gthread.c: system_thread is no longer a pointer, but an memory
355         area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
356         zeroinitialization and the tests for zeroness accordingly.
357
358 1999-11-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
359
360         * configure.in: Create docs/glib-config.1 from
361         docs/glib-config.1.in. Makes 'make distcheck' happy (and me too).
362
363         * glib-config.1: Removed from CVS, as it is a generated file.
364
365 1999-11-08  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
366
367         * configure.in: Make the test for getpwuid_r work on newer AIX
368         versions, too. Still works on Solaris and Linux. Patch from Craig
369         Rodrigues <rodrigc@mediaone.net>.
370
371 1999-11-08  Tor Lillqvist  <tml@iki.fi>
372
373         * gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
374         and LANG first. Some refinements to the sublanguage logic.
375
376 1999-11-04  Tor Lillqvist  <tml@iki.fi>
377
378         * makefile.{cygwin,msc}.in: Add gwin32 object. Add rule to make .i
379         (preprocessed source) files.
380
381 1999-11-01  Tor Lillqvist  <tml@iki.fi>
382
383         * glib.h
384         * glib.def: Rename Win32-only functions from gwin_* to g_win32_*
385         to match the GLib naming conventions.
386
387         * gutils.c
388         * gwin32.c
389         * testglib.c
390         * Makefile.am: Move the Win32-only functions to the new
391         file gwin32.c
392
393 1999-10-31  Tor Lillqvist  <tml@iki.fi>
394
395         * gutils.c (gwin_getlocale): New Win32-specific function, returns
396         a Unixish current locale string (en, zh_TW etc).
397
398         * glib.h: Declare it.
399
400         * glib.def: Export it.
401
402         * testglib.c: Test it.
403
404         * gmessages.c (Win32: ensure_stdout_valid): Some improvements,
405         make sure we don't call AllocConsole several times, which I think
406         has happened.
407
408 Sun Oct 31 18:55:01 1999  ape@spacetec.no  (Asbjorn Pettersen)
409
410         * gcache.c (g_cache_remove): Test if node is NULL.
411         If not tested, GIMP's script-fu will crash. 
412
413 Sun Oct 17 18:11:40 1999  Tim Janik  <timj@gtk.org>
414
415         * gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
416         destroy() notification here as well.
417
418 1999-10-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
419
420         * gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
421         is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
422
423 Tue Oct 12 14:17:12 1999  Tim Janik  <timj@gtk.org>
424
425         * glib.h: removed useless g_string(x) macro that cluttered the namespace
426         and was just a poor wrapper around the cpp '#' symbol, use #x if you
427         need to work around this.
428         added new macro G_STRINGIFY(arg) that will convert arg to a string,
429         no matter whether it contains macros or not.
430
431 1999-10-12  Tor Lillqvist  <tml@iki.fi>
432
433         * config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
434         too.
435
436         * glib.h: Small Win32 comments improvement.
437
438 Tue Oct 12 12:16:12 1999  Tim Janik  <timj@gtk.org>
439
440         * gmessages.c (g_printf_string_upper_bound): completly new implementation
441         for printf string upper bounds calculation.
442         we handle all glibc 2.1 format specifiers now, except for positional
443         parameters (%nn$...) and wide char strings, plus some obscure upper
444         case variants of the standard conversions. this fixes a lot of
445         bugs in the old code, i.e.
446         - NULL format strings
447         - floats with exponents >+24
448         - %G
449         - precision specifications in general
450         - negative field widths
451         - %p for SIZEOF_VOID_P > 4 platforms
452         we now issue warnigns in places where the old code would have
453         caused buffer overruns anyways. warnings are suppressed when invoked
454         from glogv(), to avoid infinite recursions if someone passes a log
455         message that comes with really obscure format specifications.
456
457 Tue Oct 12 11:49:00 1999  Tim Janik  <timj@gtk.org>
458
459         * gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
460
461 Tue Oct 12 03:34:40 1999  Tim Janik  <timj@gtk.org>
462
463         * glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
464         mantissa and exponent of IEEE floats and doubles (required by the new
465         version of g_printf_string_upper_bound). the unions are endian specific,
466         we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
467         and doubles are supported (used for storage) by at least intel, ppc and
468         sparc, reference:
469         http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
470         
471 Mon Oct 11 18:01:49 1999  Tim Janik  <timj@gtk.org>
472
473         * configure.in: added additional checks to figure sizes of size_t,
474         ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
475
476 Wed Oct  6 12:44:23 PDT 1999 Manish Singh <yosh@gimp.org>
477
478         * configure.in: blah. use G_WITH_CYGWIN instead of G_HAVE_CYGWIN
479
480 1999-10-05  Tor Lillqvist  <tml@iki.fi>
481
482         * glib.h: (Win32) Drop the mapping of POSIX function names to the
483         underscored versions, it's unnecessary after all. With MSVC we get
484         them from oldnames.lib, with gcc-2.95 and mingw32 from
485         -lmoldname-msvc. Add comment about what headers to include for
486         prototypes.
487
488         * glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
489
490         * gerror.c (g_on_error_query): (Win32) Slightly increased verbosity.
491
492         * build-dll: Don't strip.
493
494         * tests/string-test.c tests/dirname-test.c: Use G_OS_WIN32.
495
496         * glib.def: Add g_thread_use_default_impl.
497
498 Sun Oct  3 19:46:55 PDT 1999 Manish Singh <yosh@gimp.org>
499
500         * configure.in: use G_HAVE_CYGWIN instead of G_OS_FEATURE_CYGWIN
501
502 Sun Oct  3 19:25:42 PDT 1999 Manish Singh <yosh@gimp.org>
503
504         * acconfig.h
505         * configure.in
506         * glibconfig.h.win32: G_OS_FOO #defines. I *think* I got the cygwin
507         and beos stuff right, but I haven't tested it. The respective
508         porters should fix any screwups
509
510         * glib.h
511         * gerror.c
512         * gmain.c
513         * gmessages.c
514         * gscanner.c
515         * gthread.c
516         * gtimer.c
517         * gutils.c
518         * testglib.c: use G_OS stuff
519
520 Wed Sep 22 01:53:18 1999  Tim Janik  <timj@gtk.org>
521
522         * glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
523         avoid "ANSI C++ forbids implicit conversion from `void *' in argument
524         passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
525         for erroring out on this, instead of just issueing a warning).
526
527         * glib.h (g_trash_stack_pop): use uncasted NULL again.
528         
529 Fri Sep 17 10:24:45 1999  Tim Janik  <timj@gtk.org>
530
531         * gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied patch
532         from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem chunk's area
533         sizes to be a multitiple of atom_size, and to eliminate the MAX_MEM_AREA
534         restriction of 65536 bytes. we also catch cases where users pass an area
535         size < atom size with a return_if_fail statement now (which is ok,
536         because previously this lead to memory corruption anyways).
537
538 Thu Sep 16 13:19:54 1999  Tim Janik  <timj@gtk.org>
539
540         * glib.h (g_trash_stack_pop): add explicit (GTrashStack*) cast for NULL
541         pointer to cure ANSI C++ error.
542
543 Mon Sep 13 23:25:59 1999  Tim Janik  <timj@gtk.org>
544
545         * gmessages.c (g_logv): in case we have to abort the program,
546         debugging is enabled and we are not called recursively, try
547         to abort with raise (SIGTRAP) first, so developers may ignore
548         certain failure conditions during debugging stage.
549
550 Thu Aug 26 15:09:36 1999  Tim Janik  <timj@gtk.org>
551
552         * Makefile.am:
553         * gmodule/Makefile.am:
554         * gthread/Makefile.am: added --export-dynamic so we can load dynmic
555         modules, (required, according to the libtool 1.3.3 docu).
556
557 1999-07-23  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
558
559         * grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
560         which /dev/random might do. Do not XOR the time, when getting the
561         seed form /dev/urandom, as this is good itself. Prevent the
562         initial seed from being zero, which causes the PRNG to produce
563         only zeros. Hints from Colin Plumb <colin@pgp.com>.
564
565 1999-08-17  Tor Lillqvist  <tml@iki.fi>
566
567         * glib.h (g_trash_stack_push): Add a cast.
568
569         * gslist.c
570         * glist.c: Make the inline functions static inline, and add
571         separate extern wrappers. Not all compilers produce callable entry
572         points for inline functions, even if gcc does.
573
574 Sun Aug 15 02:47:14 1999  Tim Janik  <timj@gtk.org>
575
576         * glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
577         has not neccessarily been included prior to glib.h.
578
579 Mon Aug  2 21:03:10 1999  Tim Janik  <timj@gtk.org>
580
581         * configure.in: added --enable-msg-prefix option.
582
583         * gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
584         if --enable-msg-prefix was selected (use "(process:%u): " if
585         g_get_prgname () returns NULL, along the lines of g_on_error_query).
586
587 1999-08-03  Tor Lillqvist  <tml@iki.fi>
588
589         * glib.h
590         * gstrfuncs.c
591         * tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
592         g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
593         destination parameter, always g_malloc a new string.  Fix bug in
594         g_strcompress, octal digits were gobbled up without limit, should
595         use max three.
596
597         Sources that use g_strescape must have ifdefs to be compilable
598         both with GLib 1.2 and 1.3.
599
600 Sat Jul 31 17:52:03 PDT 1999 Manish Singh <yosh@gimp.org>
601
602         * glib.h
603         * gstrfuncs.c: the #define for g_strescape interfered with the
604         compilation of the function, so just remove the function and
605         note that it's deprecated in the header
606
607 1999-08-01  Tor Lillqvist  <tml@iki.fi>
608
609         * gstrfuncs.c (g_strccpy, g_strecpy): New functions.
610
611         * glib.h: Declare and document them. Define the deprecated
612         g_strescape as a macro that calls g_strecpy.
613
614         * tests/strfunc-test.c (main): Test them.
615
616         * makefile.{cygwin,msc}.in
617         * tests/makefile.{cygwin,msc}.in: Remove gstack and its test
618         program.
619
620         * glib.def: Additions and removals.
621
622         * README.win32: Improve gcc build instructions.
623
624         * build-dll: Also build import library for MSVC.
625
626 Sat Jul 24 20:11:35 1999  Tim Janik  <timj@gtk.org>
627
628         * merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
629         * incorporated proposed cleanups from gtk-devel-list.
630
631         * bumped version number to GLib-1.3.1
632
633         * glib.h:
634         * gqueue.c:
635         * gstring.c:
636         * glist.c:
637         removed string tokenisation (we got g_strsplit() and g_strjoin()
638         already) and readline functions.
639         s/g_list_delete/g_list_delete_link.
640         implemented g_slist_delete_link.
641         removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
642         macro, g_atexit() is provided for public consumption.
643         added GTrashStack inline utility functions.
644         reimplement double eneded queues.
645         removed GStack implementation, people can use a queue or a (singly)
646         linked list for this task.
647         deprecated g_strescape(), we need the SunOS variants here.
648
649         * gdate.c: added DEBUG_MSG() macro to wrap old messages.
650         
651         * *.*: CVS merges.
652
653         * upgrade to libtool 1.3.3.
654
655 1999-07-21  Tor Lillqvist  <tml@iki.fi>
656
657         Win32: With the latest gcc (2.95, pre-release), we can have binary
658         compatibility with MSVC by using the switch -fnative-struct. No
659         longer build DLLs with .gcc in the name when using gcc.
660
661         * README.win32: Renew gcc build instructions.
662
663         * build-dll: Comments change, handle also .a files.
664
665         * makefile.cygwin.in
666         * tests/makefile.cygwin.in: Remove .gcc from DLL name.
667         
668 1999-07-13  Tor Lillqvist  <tml@iki.fi>
669
670         * README.win32: Correct URL for mingw runtime sources.
671
672         * build-dll: Combine commands with &&.
673
674         * glib.h: Map also rmdir() and hypot() for MSVCRT library.
675
676         * makefile.cygwin.in
677         * tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
678         now called *.gcc.dll, to avoid binary incompatibilities with
679         MSVC-compiled versions.
680
681         * makefile.msc.in: Cosmetics.
682
683 1999-07-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
684
685         * configure.in: Test for pthread_join rather than for
686         pthread_create to determine the right thread-lib. Makes it work on
687         mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
688         <javu@piano.ux.phys.jyu.fi>.
689
690 1999-07-02  Tor Lillqvist  <tml@iki.fi>
691
692         * README.win32: Note about need to fix another bug in the mingw32
693         headers.
694
695         * makefile.msc.in: Debugging turned on via an nmake variable,
696         no need to edit the makefile.
697
698 1999-07-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
699
700         * configure.in, acconfig.h, gutils.c: Added a g_memmove
701         replacement for platforms without memmove, where bcopy can't
702         handle overlapping copies and the corresponding checks, which is
703         taken form the PERL Configure routine.
704
705         * glib.h: Updated the commentary about g_memmove to be right and
706         more GLib-like.
707         
708         * configure.in: Removed test for rand_r, as it isn't used anymore.
709
710 1999-06-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
711
712         * glib.h, grand.c: Finally removed the g_random_normal and
713         g_rand_normal functions.
714
715 1999-06-28  Tor Lillqvist  <tml@iki.fi>
716
717         * glib.def: Add missing export of g_strncasecmp.
718
719 1999-06-21  Jose Mercado  <jmercado@mit.edu>
720
721         * glib.spec.in: Changed version number (1.1->1.3) in files section
722         to allow rpm to build packages again.
723
724 1999-06-21  Tor Lillqvist  <tml@iki.fi>
725
726         * README.win32: Update the pthreads snapshot version we want.
727         Advice how to hand-expand the makefile.*.in files.
728
729         * config.h.win32.in: Define values needed by Sebastian Wilhelmi's
730         new thread stuff.
731
732         * glib.def: Add new functions.
733
734         * glibconfig.h.win32.in: Update the pthreads snapshot version.
735         Fix typo.
736
737         * gthread.c: Include config.h, guard inclusion of unistd.h.  When
738         using gcc on Win32, g_thread_functions_for_glib_use must be marked
739         for export here, too.
740
741         * gtimer.c: Implement g_usleep on native Win32 using Sleep (which
742         only has millisecond granularity, though).
743         
744         * makefile.cygwin.in
745         * makefile.msc.in: Update pthreads snapshot version. File
746         name changes. Remove testgthread.
747
748         * tests/makefile.cygwin.in
749         * tests/makefile.msc.in: Add thread-test. Link with gthread lib.
750
751 1999-06-18  Jeff Garzik  <jgarzik@pobox.com>
752
753         * tests/Makefile.am:  Re-order tests in alpha order.
754
755 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
756
757         * configure.in: Changed test for pthread_attr_setstacksize from
758         AC_TRY_COMPILE to AC_TRY_LINK.
759
760 1999-06-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
761
762         * configure.in, acglib.m4, acconfig.h, glib.h, gthread.c:
763         Completed the thread support in GLib. Thread creation,
764         prioritizing threads, yielding, joining threads as well as
765         reader/writer locks and recursive mutexes are now in place. Please
766         test heavily on your platform. It is so far tested on
767         Linux/i386/pthreads, Solaris/Sparc/pthreads and
768         Solaris/Sparc/solaristhreads.
769
770         * gtimer.c, glib.h: Implement g_usleep (gulong microseconds) for
771         thread safe sleeping. (sleep() is not MT-safe at all!)
772
773         * gutils.c: Avoid compiler warning.
774
775         * tests/Makefile.am, tests/thread-test.c: New program to test some
776         aspects of the thread implementation.
777
778         * gthread.c, Makefile.am: Renamed from gmutex.c to reflect the
779         change of content.
780
781         * configure.in: Purged all appearances of nspr. 
782
783 Wed Jun  2 11:42:46 PDT 1999 Manish Singh <yosh@gimp.org>
784
785         * acinclude.m4
786         * config.guess
787         * config.status
788         * ltconfig
789         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
790
791 1999-05-29  Tor Lillqvist  <tml@iki.fi>
792
793         * gstrfuncs.c (g_strescape): Backslashify also '"' characters.
794
795         * glib.h: Document g_strescape.
796
797 1999-05-12  Tor Lillqvist  <tml@iki.fi>
798
799         * glib.h (Win32): Map fileno to _fileno for mingw32. Map fstat to
800         _fstat.
801
802         * README.win32: Advice also to remove -lmoldname in the
803         patch to the egcs-1.1.2 spec file.
804
805 Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
806
807         * gmodule/Makefile.am: Another small fix.
808
809 1999-05-08  Tor Lillqvist  <tml@iki.fi>
810
811         * Makefile.am tests/Makefile.am: Correct rules for making the
812         win32-related files that are made from corresponding .in files.
813         Is there a cleaner way than explicitly writing rules that invoke
814         config.status?
815
816 Fri Jul 16 22:18:36 PDT 1999 Manish Singh <yosh@gimp.org>
817
818         * ltconfig
819         * ltmain.sh: upgrade to libtool 1.3.3
820
821 1999-06-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
822
823         * gdate.c, gstrfuncs.c, gstring.c: Fixed the use of the
824         is..... and to..... macros, which take unsigned chars, not chars!
825         Thanks to Morten Welinder <terra@diku.dk> for pointing this out.
826
827 Thu Jun  3 16:30:31 PDT 1999 Manish Singh <yosh@gimp.org>
828
829         * gerror.c (g_on_error_query): check isatty() before querying so
830         we don't loop endlessly
831
832 Sat May 29 11:16:29 PDT 1999 Manish Singh <yosh@gimp.org>
833
834         * acinclude.m4
835         * config.guess
836         * config.status
837         * ltconfig
838         * ltmain.sh: upgrade to libtool 1.3.2
839
840 1999-05-26  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
841
842         * gmain.c: provide a poll prototype for SunOS, as they do not do
843         it self. Hint from Christian Parg <cparg@fs-design.de>.
844
845 Tue May 25 12:23:07 1999  Owen Taylor  <otaylor@redhat.com>
846
847         * gstrfuncs.c (g_strchug): Use g_memmove() not memmove().
848         (Reported by Charles Levert <charles@comm.polymtl.ca>)
849
850 Mon May 10 22:03:52 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
851
852         * Released GLib 1.2.3
853
854 1999-05-08  Tor Lillqvist  <tml@iki.fi>
855
856         * Makefile.am tests/Makefile.am: Correct rules for making the
857         win32-related files that are made from corresponding .in files.
858         Is there a cleaner way than explicitly writing rules that invoke
859         config.status?
860         
861 Sat May  1 10:18:01 PDT 1999 Manish Singh <yosh@gimp.org>
862
863         * acinclude.m4
864         * config.guess
865         * config.status
866         * ltconfig
867         * ltmain.sh: upgrade to libtool 1.3
868
869 1999-04-30  Tor Lillqvist  <tml@iki.fi>
870
871         * Makefile.am: Don't distribute glibconfig.h.win32.in, but
872         glibconfig.h.win32. Generate it when making a dist. Also generate
873         makefile.msc and config.h.win32 from corresponding .in files when
874         making dist.
875
876         * configure.in: Also substitute @GLIB_INTERFACE_AGE@ and
877         @GLIB_BINARY_AGE@ (needed in config.h.win32).
878         
879         * glibconfig.h.win32.in: Use static mutex structure and initial
880         value corresponding to the 1999-04-07 snapshot of pthreads-win32.
881
882         * tests/Makefile.am: Distribute makefile.msc. Generate it when
883         making dist.
884
885         * tests/makefile.msc.in: New file.
886
887         * tests/node-test.c: Include <stdlib.h> for exit().
888
889 Thu Apr 29 02:16:36 1999  Tim Janik  <timj@gtk.org>
890
891         * gstrfuncs.c: minor code cleanups.
892
893 Tue Apr 27 13:11:29 1999  Owen Taylor  <otaylor@redhat.com>
894
895         * gmain.c (g_main_poll): Mask out ERR HUP and NVAL from
896         the events field so we don't give IRIX fits.
897
898 Tue Apr 20 08:42:22 1999  Tim Janik  <timj@gtk.org>
899
900         * gscanner.c (g_scanner_unexp_token): behave conservative with
901         G_TOKEN_IDENTIFIER_NULL and always assume scanner->value.v_string
902         to be "null" in that case.
903
904 1999-04-20  Havoc Pennington  <hp@pobox.com>
905
906         * gutils.c (g_vsnprintf):  When using the vsnprintf()
907         implementation, '\0'-terminate the resulting string
908         and return its length rather than -1.
909
910 Mon Apr 19 13:42:21 1999  Owen Taylor  <otaylor@redhat.com>
911
912         * gmain.c (g_main_iterate): Added missing
913         #ifdef G_THREADS_ENABLED. (I never liked G_THREADS_ENABLED in
914         the first place!)
915
916 1999-04-18  Havoc Pennington  <hp@pobox.com>
917
918         * gutils.c (g_snprintf): When using the vsnprintf()
919         implementation, '\0'-terminate the resulting string
920         and return its length rather than -1.
921
922 Fri Apr 16 06:52:07 1999  Tim Janik  <timj@gtk.org>
923
924         * gscanner.c (g_scanner_unexp_token): feature G_TOKEN_EOF as a valid
925         expected token as well, so we get "- expected end of file" instead of
926         "- expected (unknown) token <0>".
927
928 Tue Apr 13 16:16:14 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
929
930         * Released GLib 1.2.2
931
932 1999-04-12  Elliot Lee  <sopwith@mh69.mh.cuc.edu>
933
934         * g_strchug(): s/strcpy/memmove/
935
936 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
937
938         * configure.in: Adjusted the test for an unimplemented
939         getpwuid_r. Info from Michael Pruett <mikep@ugcs.caltech.edu>.
940
941 Sun Apr 11 15:07:34 1999  Tim Janik  <timj@gtk.org>
942
943         * configure.in: bumped versin number to GLib 1.2.2, interface 2,
944         binary 2.
945         
946         * NEWS: updates.
947
948 Sun Apr 11 14:37:06 1999  Tim Janik  <timj@gtk.org>
949
950         * gstrfuncs.c (g_strcasecmp): always check for s1, s2 != NULL.
951
952 Sat Apr 10 19:30:50 1999  Tim Janik  <timj@gtk.org>
953
954         * glib.h: removed braces around inline strings for the G_GNUC_FUNCTION
955         and G_GNUC_PRETTY_FUNCTION macros, so the macros can be used for compile
956         time string concatenation.
957
958 Thu Apr  8 19:53:19 1999  Owen Taylor  <otaylor@redhat.com>
959
960         * gmain.c (g_main_iterate): Check for two threads
961         calling g_main_iterate at once.
962
963         * gmain.c: If the set of poll file descriptors changes
964         during a call to poll(), abort that call, and start
965         a new poll. My test program still segfaults
966         obscurely on glibc 2.0 (in read()!!!), but now it works on
967         glibc 2.1, so I'll blame something else for the other segfault.
968
969 1999-03-31  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
970
971         * configure.in: Fixed slight bug, that made configure hang on some
972         systems. Please do not merge this into 1.3 branch. It's taken care
973         of differently there. Info from J. Rhett Aultman
974         <cuplan@alley.gator.net>
975         
976 Wed Mar 24 21:23:47 CST 1999 Shawn T. Amundson <amundson@gtk.org>
977
978         * Released GLib 1.2.1
979
980         * README:
981           INSTALL: 
982           NEWS: 
983           sanity_check: updated
984
985         * glibconfig.h.win32.in:
986           Makefile.am:
987           docs/glib-config.1.in:
988           docs/Makefile.am: Added files used to generate new files.
989
990         * glibconfig.h.win32:
991           docs/glib-config.1: Removed, now generated.
992
993         * configure.in: Added to output now-generated files.
994         
995 Tue Mar 23 13:43:39 PST 1999 Manish Singh <yosh@gimp.org>
996
997         * giounix.c: add user_data param to check and prepare functions
998
999 Mon Mar 22 03:54:43 1999  Tim Janik  <timj@gtk.org>
1000
1001         * glib.h:
1002         * gmain.c: add user_data to the GSource ->check and ->prepare functions,
1003         so it can be used to e.g. pass a GPollFd.
1004         (g_main_poll): only add poll records with an events mask != 0 to the
1005         fd_array. don't even bother calling poll_func() if fds=timeout=0.
1006         added debugging printouts around poll_func() invokation that can be
1007         enabled with #define G_MAIN_POLL_DEBUG.
1008
1009 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
1010
1011         * acinclude.m4
1012         * config.guess
1013         * config.sub
1014         * ltconfig
1015         * ltmain.sh: upgrade to libtool 1.2f
1016
1017         * autogen.sh: libtool is not required to autogen glib
1018
1019         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
1020         needed)
1021
1022 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1023
1024         * gmem.c: Fixed another stupid fault of mine: Did
1025         s/g_static_/g_private_/g
1026
1027 Wed Mar 17 03:17:42 1999  Tim Janik  <timj@gtk.org>
1028         
1029         * configure.in bumped versin number to GLib 1.2.1, interface 1,
1030         binary 1.
1031         
1032         * NEWS: updates.
1033
1034         * glib.h: added GLIB_CHECK_VERSION() macro similar to
1035         GTK_CHECK_VERSION().
1036
1037 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
1038
1039         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
1040         to g_return_if_fail().
1041         (g_mem_profile): 
1042         (g_mem_chunk_print): 
1043         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
1044         messages.
1045
1046         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
1047         to g_return_if_fail().
1048         * grel.c (g_*): changed a bunch of g_assert() statements to
1049         g_return_if_fail() and added some extra ones to check relation != NULL.
1050
1051 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1052
1053         * configure.in: Also accept _Pctime_r instead of ctime_r, while
1054         seraching for the right `_REENTRANT' flag. This is for Digital
1055         UNIX 4.0d. Thanks to Sascha Brawer <sb@adasys.ch>.
1056
1057 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
1058
1059         * configure.in: check for working realloc (NULL,).
1060         * gmem.c (g_realloc): use malloc() for initial allocation on systems
1061         where realloc(NULL,) will not work (this is the case on SunOS, reported
1062         by Tom Geiger).
1063
1064 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
1065
1066         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
1067         flag around the call to g_hook_free() to avoid spurious
1068         warnings (happens during destruction phase).
1069
1070 1999-03-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1071
1072         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
1073         from config.h.win32 to glibconfig.h.win32
1074
1075         * acconfig.h, configure.in, config.h.win32: Added test for DCE
1076         versions of mutex_trylock and cond_timedwait. The win32 versions
1077         are posix, aren't they?
1078
1079 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1080
1081         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
1082         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
1083
1084 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1085
1086         * gutils.c (g_get_any_init): Fixed yet another bloody
1087         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
1088         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
1089         test better than that, but have no idea, how to do that easily.
1090
1091 Sun Feb 21 22:11:51 CST 1999  Shawn T. Amundson <amundson@gtk.org>
1092
1093         * Released GLib 1.2.0
1094
1095         * AUTHORS: updated
1096
1097 Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>
1098
1099         * *.[ch]: inserted additional note to look for ChangeLog and
1100           AUTHORS file for a log of modifications.
1101
1102 Sun Feb 21 14:01:00 1999  Dr Mike <drmike@redhat.com>
1103
1104         * Made specfile generated, tweaked slightly
1105         
1106 Sat May  8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1107
1108         * configure.in
1109           gmodule/Makefile.am
1110           gthread/Makefile.am: Better testing reveals better
1111           methods.  Fixes for BeOS.
1112
1113 Sat May  8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1114
1115         * configure.in
1116           gerror.c
1117           gmain.c
1118           gstrfuncs.c
1119           gutils.c
1120           ltconfig
1121           ltmain.sh
1122           gmodule/Makefile.am
1123           gmodule/gmodule.c
1124           gmodule/gmoduleconf.h.in
1125           gmodule/gmodule-beos.c
1126           gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
1127
1128 1999-05-06  Tor Lillqvist  <tml@iki.fi>
1129
1130         * makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
1131         config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
1132         New files, used to generate corresponding non-.in files when
1133         making a dist. This is just so the version numbers will be kept in
1134         synch automatically.
1135
1136         * configure.in: Also substitute @GLIB_MAJOR_VERSION@,
1137         @GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.
1138         
1139         * Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.
1140         
1141         * gerror.c (g_on_error_query): On Win32, put up a MessageBox and
1142         then exit.
1143
1144         * glib.def: Add a couple of functions.
1145         
1146 Sat May  1 10:26:20 PDT 1999 Manish Singh <yosh@gimp.org>
1147
1148         * acinclude.m4
1149         * config.guess
1150         * config.status
1151         * ltconfig
1152         * ltmain.sh: upgrade to libtool 1.3
1153
1154 1999-04-25  Tor Lillqvist  <tml@iki.fi>
1155
1156         * README.win32: More editing.
1157         * build-dll: Use gcc, not ld to link.
1158         * glib.h: On native Win32 use _unlink().
1159         * gscanner.c: Use corrent NATIVE_WIN32 feature test macro,
1160         not _MSC_VER.
1161         * gstring.c: Include <io.h> on Win32 for _read prototype.
1162         * gutils.c: Remove old IO channel code (was in #if 0).
1163         * makefile.cygwin: Don't need to link with kernel32 and msvcrt
1164         explicitly, they are included anyway.
1165
1166 1999-04-24  Tor Lillqvist  <tml@iki.fi>
1167
1168         Support added for building using a GNU toolchain on Win32,
1169         i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).
1170
1171         * README.win32: Updated.
1172         * build-dll makefile.cygwin tests/makefile.cygwin: New files.
1173         * glib.h glib.def glibconfig.h.win32: Slight updates. 
1174         * gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
1175         * gmain.c gutils.c testglib.c tests/string-test.c: Test for
1176         NATIVE_WIN32, not _MSC_VER.
1177         * gmutex.c: Must declare g_thread_functions_for_glib_use as
1178         exported (using the GUTILS_C_VAR macro).
1179         * gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
1180         * gmodule/gmoduleconf.h.win32: Need underscore with gcc.
1181         * gthread/gthread.c: With gcc on Win32, must use memcpy to assign
1182         value of g_thread_functions_for_glib_use (?).
1183         * makefile.msc tests/makefile.msc: Cosmetics.
1184
1185 Fri Apr 23 14:29:25 BST 1999  Tony Gale <gale@gtk.org>
1186
1187         * glib.h: Fix typo in g_string_ncasecmp macro (by me).
1188           Add b_string_strncasecmp macro.
1189
1190 1999-04-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1191
1192         * gutils.c (g_get_any_init): use sysconf (_SC_GETPW_R_SIZE_MAX) as
1193         the new initinal bufsize for getpwuid_r on systems, that support
1194         this. Hint from Holger Duerer <H.Duerer@zait.uni-bremen.de>.
1195
1196 Sat Apr 17 20:55:13 BST 1999  Tony Gale <gale@gtk.org>
1197
1198         * glib.h, gstring.c: Add new g_string functions for reading
1199           from file/socket descriptors, and tokenising strings.
1200
1201           Added various g_string macros.
1202
1203 Tue Apr 13 23:28:32 1999  Tor Lillqvist  <tml@iki.fi>
1204
1205         * README.win32: Mention the tests directory.
1206
1207         * glib.def: Add the functions from grand.c.
1208
1209         * glibconfig.h.win32: Add unsigned max values, and the format
1210         strings.
1211
1212         * makefile.msc: Add grand.
1213
1214         * tests/{date-test,node-test}.c: Include <stdlib.h> for exit().
1215
1216         * tests/makefile.msc: New file.
1217
1218 1999-04-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1219
1220         * glib.h: Moved struct declaration up. Style fixes.
1221
1222         * grand.c: Style fixes. Only try to open /dev/random once.
1223
1224         * tests/rand-test.c (main): New tests; Slight bug fix. 
1225
1226 1999-04-09  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1227
1228         * grand.c, tests/rand-test.c: New files to implement the Mersenne
1229         Twister Pseudo Random Number Generator.
1230
1231         * glib.h, AUTHORS, Makefile.am, tests/Makefile.am: Changed
1232         accordingly.
1233
1234 Thu Apr  8 21:12:30 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
1235
1236         * Released GLib 1.3.0
1237
1238 1999-03-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1239
1240         * configure.in: Added a check for the right format to printf and
1241         scanf long longs. It is %qi instead of %lli on FreeBSD for
1242         whatever reason.
1243
1244 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
1245
1246         * Makefile.am (glibconfig.h): Make sure `glibconfig.h' exists
1247         after the rule is fired.
1248         (install-exec-local): Install glibconfig.h only if the contents
1249         are different from the currently installed glibconfig.h.
1250
1251 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
1252
1253         * Makefile.am (configexecincludedir): Rename from 
1254         configincludedir so that glibconfig.h will be installed 
1255         as part of `make install-exec'. 
1256
1257 Thu Mar 25 22:45:47 1999  Tor Lillqvist  <tml@iki.fi>
1258
1259         * config.h.win32: Update version numbers.
1260
1261         * glibconfig.h.win32: Update version numbers and pthreads-win32-
1262         related magic values.
1263
1264         * README.win32: Some improvements.
1265
1266         * makefile.msc: Add gqueue and gstack. Correct version number.
1267
1268 Fri Mar 19 16:29:50 PST 1999 Manish Singh <yosh@gimp.org>
1269
1270         * acinclude.m4
1271         * config.guess
1272         * config.sub
1273         * ltconfig
1274         * ltmain.sh: upgrade to libtool 1.2f
1275
1276         * autogen.sh: libtool is not required to autogen glib
1277
1278         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
1279         needed)
1280
1281 1999-03-18  Jeff Garzik  <jgarzik@pobox.com>
1282
1283         * glib.def: Add new g_list, g_stack, g_queue functions.
1284
1285 1999-03-18  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1286
1287         * configure.in: added new AC_SUBST(GTHREAD_COMPILE_IMPL_DEFINES)
1288         to hold various defines to get the right thread implementation on
1289         different platforms. Also look in -ldce for pthread_create. Should
1290         make it work on HP-UX 10.x. Information from "D. Emilio Grimaldo
1291         Tunon" <emilio_tunon@nl.compuware.com>.
1292
1293 1999-03-17  Jeff Garzik  <jgarzik@pobox.com>
1294
1295         * gstack.c, gqueue.c:
1296         Add copyright, clean up code a bit.
1297
1298 1999-03-17  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1299
1300         * configure.in: Added missing values for G_MAXU(SHORT|INT|LONG) on
1301         platforms with only /usr/include/values.h.
1302
1303         * acconfig.h: Removed unnecessary macros.
1304
1305         * glibconfig.h.win32, config.h.win32: Moved G_THREADS_IMPL_POSIX
1306         from config.h.win32 to glibconfig.h.win32. Taken from glib 1.2
1307         branch.
1308
1309         * configure.in: Also accept _Pctime_r instead of ctime_r, while
1310         seraching for the right `_REENTRANT' flag. This is for Digital
1311         UNIX 4.0d. Taken from glib 1.2 branch.
1312
1313 Wed Mar 17 03:14:56 1999  Tim Janik  <timj@gtk.org>
1314
1315         * glib.h: added GLIB_CHECK_VERSION() macro similar to
1316         GTK_CHECK_VERSION().
1317
1318 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
1319
1320         * merges from glib-1-2:
1321         
1322 Sun Mar 14 17:50:35 1999  Tim Janik  <timj@gtk.org>
1323
1324         * gmem.c (g_mem_chunk_*): changed a bunch of g_assert() statements
1325         to g_return_if_fail().
1326         (g_mem_profile):
1327         (g_mem_chunk_print):
1328         (g_mem_chunk_info): removed some extraneous "\n"s at the end of the log
1329         messages.
1330
1331         * gtimer.c (g_timer_*): changed a bunch of g_assert() statements
1332         to g_return_if_fail().
1333         * grel.c (g_*): changed a bunch of g_assert() statements to
1334         g_return_if_fail() and added some extra ones to check relation != NULL.
1335
1336 Tue Mar  9 23:25:50 1999  Tim Janik  <timj@gtk.org>
1337
1338         * configure.in: check for working realloc (NULL,).
1339         * gmem.c (g_realloc): use malloc() for initial allocation on systems
1340         where realloc(NULL,) will not work (this is the case on SunOS, reported
1341         by Tom Geiger).
1342
1343 Mon Mar  8 07:42:08 1999  Tim Janik  <timj@gtk.org>
1344
1345         * ghook.c (g_hook_unref): when !hook_list->is_setup, wrap the
1346         flag around the call to g_hook_free() to avoid spurious
1347         warnings (happens during destruction phase).
1348
1349 1999-03-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1350
1351         * gmem.c: Fixed a stupid cut'n'paste error of mine. Thanks to
1352         Friedrich Dominicus <Friedrich.Dominicus@inka.de>
1353
1354 1999-03-16  Timur Bakeyev  <mc@bat.ru>
1355
1356         * configure.in: Fix problem with pthread_create in libc, as running
1357         "gcc test.c -l " is not legal.
1358
1359 1999-03-16  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1360
1361         * tests/type-test.c: Added a test for the
1362         G_(U)?INT(16|32|64)_FORMAT and G_(MIN|MAX|MAXU)(SHORT|INT|LONG)
1363         macros.
1364
1365         * configure.in: Removed G_(U)?INT8_FORMAT again, as it can't be
1366         used for scanf.
1367
1368         * configure.in: Added the macros G_MAXU(SHORT|INT|LONG). I do not
1369         know how to handle these on platforms with /usr/include/values.h,
1370         but without /usr/include/limits.h. Please someone add this.
1371
1372
1373 1999-03-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1374
1375         * configure.in: Added the macros G_(U)?INT(8|16|32|64)_FORMAT to
1376         use for printf and (much more important) scanf format strings for
1377         the corresponding GLib types. 
1378
1379         * glib.h Added G_(U)?(SHORT|INT|LONG)_FORMAT for consistency. It
1380         however makes no sense to also provide G_(FLOAT|DOUBLE)_FORMAT, as
1381         they are different for printf (f for both) and scanf (f for float,
1382         lf for double). Defining G_INT_FORMAT makes sense however, as we
1383         might want to define gint to something different than int someday
1384         in the future. Idea from Sascha Brawer <sb@adasys.ch>.
1385         
1386 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
1387
1388         * gdate.c:
1389         Commented out debugging output.
1390
1391         * tests/Makefile.am, tests/date-test.c:
1392         Added test of the GDate module, based closely on testgdate.c.
1393
1394         * tests/Makefile.am:
1395         Bugfix - compile tests with @GLIB_DEBUG_FLAGS@.
1396
1397 1999-03-14  Raja R Harinath  <harinath@cs.umn.edu>
1398
1399         * configure.in (glibconfig.h): Remove widechar tests and defines.
1400         (fd_set): Change the grep for `fd_mask' to search for `fd_set'.
1401         * gerror.c (fd_mask): Remove conditional typedef.  It is not used
1402         elsewhere in the file.
1403         * gmain.c (fd_mask): Likewise.
1404
1405 1999-03-12  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1406
1407         * configure.in: Test for posix threads first, then for dce threads.
1408
1409 1999-03-11  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1410
1411         * configure.in: Revamped the thread configure stuff. Now dce
1412         threads (old posix draft) are recogniced. This is necessary,
1413         because dce threads are in fact working quite differently from
1414         posix threads. Also changed the conditions for checking for MT
1415         safe functions a bit, because G_THREADS_IMPL_NONE still have to
1416         compile thread safe. NOTE: Please do not commit my change to
1417         glib-1-2/{acconfig.h,configure.in,config.h.win32} from 1999-03-03,
1418         as the current change will take care of that too.
1419
1420 Tue Mar  9 14:37:32 1999  Jeff Garzik  <jgarzik@pobox.com>
1421
1422         * Makefile.am, glib.h, gstack.c, gqueue.c,
1423           tests/Makefile.am, tests/queue-test.c, tests/stack-test.c:
1424         Added stack, queue ADTs and related tests.
1425
1426         * glib.h, glist.c:
1427         New g_list_delete() function.
1428
1429 Sat Mar  6 11:03:08 1999  Asbjorn Pettersen  <ape@lrdpf.spacetec.no>
1430
1431         * gutils.c (g_get_any_init): add OS/2 changes.
1432         change '\\' in HOME to '/'.
1433
1434 1999-03-03  Josh MacDonald  <jmacd@spin.dsl.pacbell.net>
1435
1436         * glib.def: g_spaced_primes_closest was omitted here, so I
1437         couldn't build Xdelta on Windows.
1438
1439 1999-03-01  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
1440
1441         * gutils.c (g_get_any_init): Fixed yet another bloody
1442         implementation of getpwuid_r on AIX. Thanks to Olaf Dietsche
1443         <olaf.dietsche+list.gtk@netcologne.de>. I would like a configure
1444         test better than that, but have no idea, how to do that easily.
1445
1446 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
1447
1448         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
1449         new one.
1450
1451         * configure.in: set glib version to 1.3.0.