2000-05-30 Tor Lillqvist <tml@iki.fi>
* gutils.c (g_locale_get_codeset): Implement on Win32.
* glib.def: Add g_get_codeset.
* tests/Makefile.am (EXTRA_DIST): makefile.cygwin* has been
renamed to makefile.mingw*.
Tue May 30 16:01:32 2000 Owen Taylor <otaylor@redhat.com>
* glib.h gutils.c: Move the g_locale_get_codeset() up in the
header file to correspond to to comments about memory
management. Rename to g_get_codeset() to avoid
polluting the g_locale_* namespace, which probably
would have g_locale_get_codeset (GLocale *locale).
Add a doc comment.
Mon May 29 14:10:35 2000 Owen Taylor <otaylor@redhat.com>
* gutils.c (g_locale_get_codeset): Add function to get the
codeset name for the current locale.
* configure.in acconfig.h: Add check for nl_langinfo(CODESET);
2000-05-13 Tor Lillqvist <tml@iki.fi>
* makefile.mingw.in
* tests/makefile.mingw.in
* build-dll: Rename makefile.cygwin(.in) to
makefile.mingw(.in), which better describes what it is. Move the
build of gmodule, gthread and gobject DLLs to makefiles in those
directories. Move resource file handling and build number bump to
build-dll, where it sits much cleaner.
* README.win32
* Makefile.am (EXTRA_DIST): Update accordingly.
* glib.h: Add G_PI, G_PI_2, G_PI_4, G_E, G_LN2, G_LN10 and
G_SQRT2. M_PI etc aren't necessarily in <math.h> in strict ISO C
implementations.
* glib.def: Add g_strcanon.
* gtree.c (g_tree_node_rotate_left): Remove unused variables.
* gwin32.c (g_win32_opendir): Remove unneeded statement.
gmodule:
* makefile.mingw.in: New file, with gmodule stuff
moved from ../makefile.mingw.in.
* Makefile.am: Add to EXTRA_DIST, and add rule to make makefile.mingw.
gobject:
* makefile.mingw.in
* gobject.def
* gobject.rc.in: New files, for Win32 (mingw) build.
* Makefile.am: Add to EXTRA_DIST. Add rules to produce the
corresponding non-*.in files.
* gtype.h: (Win32:) Mark _g_type_fundamental_last for
export/import from DLL.
gthread:
* makefile.mingw.in: New file, with gthread stuff moved from
../makefile.mingw.in.
* Makefile.am: Add to EXTRA_DIST, add rule to build makefile.mingw.
Fri Apr 28 23:54:35 2000 Tim Janik <timj@gtk.org>
* setup things for a new sub-library libgobject:
* Makefile.am (SUBDIRS): added gobject
* glib-config.in: feature -lgobject.
* configure.in (AC_OUTPUT): generate gobject/Makefile.
* glib.m4 (AM_PATH_GLIB): feature gobject module.
* glib.spec.in: added %{prefix}/lib/libgobject-1.3.so.*
Fri Apr 28 21:41:49 2000 Tim Janik <timj@gtk.org>
* glib.h: added G_STRLOC macro.
G_STRUCT_OFFSET(): signedness corrections.
(G_CSET_DIGITS): list 0-9.
* gscanner.c (g_scanner_config_template): use G_CSET_DIGITS.
* glib.h:
* gstrfuncs.c:
(g_strdown):
(g_strup):
(g_strreverse): return the modified string instead of void, so
calls to these functions can be nested.
(g_strcanon): new function, canonicalizes string according to
a given character set.
Fri Apr 28 19:45:16 2000 Tim Janik <timj@gtk.org>
* gasyncqueue.c (g_async_queue_unref): get rid of an unused variable.
2000-05-04 Tor Lillqvist <tml@iki.fi>
* makefile.cygwin.in
* tests/makefile.cygwin.in: Include the common makefile snippet
from ../build/win32.
Maybe CVSROOT/modules should be changed so that the 'build' module
is included within the glib module (and gtk+, and gimp, and maybe
others later), in the same way as the 'macros' module is included
in lots of GNOME CVS modules?
2000-05-02 Tor Lillqvist <tml@iki.fi>
* glib.def: Add new functions.
* makefile.{cygwin,msc}.in (glib_OBJECTS): Add new object files.
* tests/makefile.{cygwin,msc}.in: Add threadpool-test.
* gmodule-win32.c: No need to include <psapi.h>
2000-04-28 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gasyncqueue.c: New File implementing an asynchronous queue to be
used for asynchronous inter-thread communication.
* gthreadpool.c: New File implementing a thread pool to be used
for distributing work among several threads.
* glib.h: Added the type and function declarations for these two
types.
* tests/threadpool-test.c: New File implementing a test for the
thread pool. This also checks the asynchronous queue underlying
the thread pool.
* tests/Makefile.am: Changed accordingly.
2000-04-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Look for both pthread_create and pthread_join in
the thread library. Some systems define one of them, but not both
in libc. Arghh. Now we really start a thread and join it later and
check, whether the thread to actually ran.
2000-04-26 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h, gcache.c, gtree.c: Changed the 'value' parameter of
g_cache_remove from gpointer to gconstpointer. Dito for the 'key'
parameter of g_tree_lookup and g_tree_remove and the 'data'
parameter of g_tree_serach. This function now takes a function of
type GCompareFunc instead of GSearchFunc.
* glib.h: Removed declaration of GSearchFunc.
* gmem.c: s/GSearchFunc/GCompareFunc/.
2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h (G_TRYLOCK): Made the debugging G_TRYLOCK call also work
for compilers with funnt G_STMT_(START|END) macros.
* tests/thread-test.c: Implemented a check for that.
2000-04-19 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gutils.c (g_getenv): Changed the win32 part of this function to
be thread safe and to make the returned environment string
persistent to match the UN*X behavior. This is again a response to
Bug #8983.
* glib.h (G_LOCK_NAME): Removed parentheses around the lock name,
as that seems to cause problems for some compilers and really
isn't necessary.
Wed Apr 19 08:32:32 2000 Tim Janik <timj@gtk.org>
* gscanner.c (g_scanner_new): make sure that
scanner->config->cset_skip_characters is "" instead of NULL, so we
don't segfault further on.
2000-04-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h, glist.h, gslist.h: Changed the 'data' parameters from
gpointer to gconstpointer for the functions
g_(list|slist)_(remove|find|find_custom|index), as they do not
change this parameter. This fixes bug #4836.
2000-04-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h: Changed comment for g_getenv to reflect, that the
returned memory must not be freed. Fixes Bug #8983.
2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in, acconfig.h: Add configure test for garbage
collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY
will be defined.
* garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c,
gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all
memory released by the user, but cached by GLib. This lets a
garbage collector have a more correct view of the actually used
memory.
2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* garray.c, glib.h: Added g_(array|ptr_array|byte_array)_sized_new
functions, that reserve a certain amount of memeory for the array
at creation time to avoid reallocation. Fixes bug #6707 from
Charles Kerr <ckerr@osserver1.nssl.noaa.gov>.
2000-03-26 Tor Lillqvist <tml@iki.fi>
* README.win32: Tell about using the mingw-based gcc, which is
much easier than modifying the cygwin gcc to product mingw code
for the msvcrt runtime.
* makefile.cygwin.in (WIN32APIHEADERS): Kludge to make it work
with a "pure" mingw gcc, too.
2000-03-24 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* garray.c: Made GArray behave correct. Now zero_terminated really
means, that the element array->data[array->len] exists and is
zeroed, and clear means that any unassigned elements obtained
through g_array_set_size (the only way to get unassigned elements
AFAICT) are zeroed. Added some macors to mak the code more
obvoius. Also made GPtrArray zero elements after
g_ptr_array_set_size. This is done in a portbale way (assignment
of NULL instead of just memsetting it to zero), though that might
be more portability than we actually want.
2000-03-24 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* Makefile.am, gthread/Makefile.am, gmodule/Makefile.am,
tests/Makefile.am: Added various win32 related *.in files to
EXTRA_DIST to let 'make distcheck' procude all the corresponding
files, which it silently fails to do currently.
2000-03-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: After finding the right thread library (containing
e.g. pthread_create) we now search for the right realtime library
(containing e.g. sched_get_priority_max). Makes the output of the
thread related libraries correct.
* gtimer.c (g_usleep): The current implementation of g_usleep
(simply calling select) doesn't work reliable for multi-threaded
programs on some platforms (bad omen for the main loop....), so I
changed the implementation for thread-using programs to wait for a
GCond for the specified amount of time (NB: sleep and usleep are
not MT-safe in general, because they often use signals).
2000-03-22 Tor Lillqvist <tml@iki.fi>
* gutils.c: Move Win32-only includes after inclusion of glib.h, so
that G_OS_WIN32 is defined.
* glibconfig.h.win32.in: Add GSystemThread.
2000-03-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gutils.c (g_get_current_dir): Ok, Marcus Brinkmann
<Marcus.Brinkmann@ruhr-uni-bochum.de> convinced me, that 128 KB
path length might not be enough for the HURD. So I changed the
loop to at least avoid an integer overflow, which could happen at
beyond 2GB size ;-)
2000-03-22 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Test for sched_yield as the native yield function
first. Corrected typo g_thread_sleep -> g_usleep. Corrected
message for the pthread_create test. Negative Priorities are
allowed (and used on Solaris), so consider
sched_get_priority_min failed only if it returns -1, not <0. Check
for sched_get_priority_min also in -lrt, if not found in -lpthread
alone and add -lrt to G_THREAD_LIBS then. Remove special case
handling of priorities for older solaris versions and posix
threads. Thanks to Wan-Teh Chang <wtc@netscape.com> for suggesting
some of those changes.
* config.guess, config.sub, ltconfig, ltmain.sh:
Upgrade to libtool 1.3.4.
2000-03-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* glib.h, configure.in, gutils.h: always define G_GNUC_EXTENSION,
even when not needed by GLib. That's actually also the way, the
GLib reference manual describes that macro. Therefore I had to
remove the lonesome #include <glibconfig.h> in gutils.c, which
doesn't seem to be needed there however. This change should make
Ben Gertzfield <che@debian.org> happy.
* gutils.c: Furthermore two warnings in gutils.c were voided,
which crept in due to my last change.
2000-03-21 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gutils.c (g_get_current_dir): Allocate only up to 128KB for a
pathname. While this is an arbitrary value just like 2048, it
seems to be enough (after all, even 4GB is an arbitrary value).
2000-03-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gmain.c (g_main_poll): Warn in case of an error during the call
to poll(2). Closes Bug#7564 as reported by David Helder
<dhelder@umich.edu>.
2000-03-20 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gutils.c (g_get_current_dir): Make g_get_current_dir work on
systems with unlimited pathname length like the HURD (It worked
there before, but only for pathes shorter than 2048). Closes
Bug#4525 as reported by Marcus Brinkmann
<Marcus.Brinkmann@ruhr-uni-bochum.de>.
2000-03-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Added the missing POSIX_NO_YIELD and
POSIX_NO_PRIORITIES warning messages.
* configure.in: Use AC_TRY_RUN instead of AC_TRY_LINK, to test for
real thread support. On solaris pthread_create can be linked to
even in -lc, but it doesn't work then.
* configure.in: Don't use priorities for threads, when the
minimal/maximal priorities couldn't be determined at configure
time.
* configure.in, gthread.c: Always define GSystemThread in
glibconfig.h to represent a system thread.
* configure.in: Do not use native recursive threads, when
possibe. We use some features, that they do not expose (namely the
depth counter).
* glib.h, gthread.c: Redefined GStaticRecMutex. The functions are
now implemented in a different way, which should be way
faster. Alsothere are now functions g_static_rec_mutex_unlock_full
and g_static_rec_mutex_lock_full to leave/enter a recursive mutex
completly.
* gthread.c (g_thread_self): Do not test the system_thread to be
non-zero to speed things up.
* gthread.c (g_mutex_init): Therefore set the system_thread of the
main thread here.
* tests/thread-test.c: Rerun all tests once again, but this time
we fool the system into thinking, that the available thread system
is not native, but userprovided.
* gthread/gthread-posix.c: Don't use priorities for threads,
when the minimal/maximal priorities couldn't be determined at
configure time.
* gthread/gthread-posix.c: Don't check for errors, when
setting the scope of a tread to system, as some posix
implementations can't do that and we don't want the thing to
fail because of that.
2000-03-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gqueue.c (g_queue_push_tail_link, g_queue_push_head_link): We
want the next and prev pointer of the inserted link to be NULL.
2000-03-04 Tor Lillqvist <tml@iki.fi>
* gwin32.c (g_win32_error_message): New function that returns the
message string for a Win32 error code.
* glib.h: Declare it.
* glib.def: Export it, plus g_node_copy.
* gmodule-win32.c: Call g_win32_error_message() to get the error
message strings.
* libgplugin_a.c
* libgplugin_b.c
* gmodule.c: Remove LibMain functions that were needed by LCC,
which is not a supported compiler.
* testgmodule.c (main): Test for G_MODULE_IMPL ==
G_MODULE_IMPL_WIN32, not G_OS_WIN32.
* gmoduleconf.h.win32: Remove LCC stuff from here, too.
2000-03-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Make the search for pthread_attr_... prototypes
find names at the start of a line also, like it is on AIX. Thanks
to Valdis Kletnieks <Valdis.Kletnieks@vt.edu> for the info.
Wed Mar 1 10:39:39 2000 Tim Janik <timj@gtk.org>
* gslist.c (g_slist_reverse): minor optimization.
* testglib.c (g_node_test): added a couple of tests for
g_node_copy().
* glib.h:
* gnode.c (g_node_copy): new function to copy subtrees,
supplied by dbsears@ix.netcom.com.
changed iterator to walk the children list backwards, so
we get down from O(n^2) to O(n).
* gnode.c (g_node_first_sibling): applied patch from
dbsears@ix.netcom.com to optimize access if node->parent
is present.
* gutils.c (g_get_any_init): backed out HAVE_PW_GECOS check around
assignment of g_real_name, sicne HAVE_PW_GECOS is never defined and
thus breaks the original code.
* merged changes from 1.2.7.
Sat Feb 19 19:43:29 2000 Tim Janik <timj@gtk.org>
* testgmodule.c (main): added test to check that not yet bound symbols
in shared libraries of the main module are retrievable, from David Gero.
Fri Jan 28 11:37:41 2000 Owen Taylor <otaylor@redhat.com>
Bug #4156 - Changes vaguely modelled after Scott Gifford's patch
* gtimer.c (g_timer_elapsed): Never report negative times -
clip times to 0.
* gmain.c (g_timeout_prepare): Guard against unexpected
clock shifts by never setting a timeout of more than
data->interval msecs.
2000-02-23 Tor Lillqvist <tml@iki.fi>
* README.win32: Add a missing step to the setup instructions for
gcc-2.95.2. Thanks to Arnaud Charlet.
* glib.def: Add missing entry point.
2000-02-18 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Changed GCC version test to also accept major
versions > 2. Thanks to Ben Gertzfield <che@debian.org> for
pointing this out.
Thu Feb 17 12:53:44 2000 Tim Janik <timj@gtk.org>
* gstring.c: changed g_str_hash() to a 31 bit version based on
a submission by Karl Nelson and hand optimized ad absurdum by
various people ;)
* gstring.c: applied patch from havoc for new gstring functions,
added some more sanity checks, coding style fixups.
2000-02-13 Havoc Pennington <hp@pobox.com>
* tests/string-test.c (main): Add tests for the new GString
features
* testglib.c (main): Add tests for the new GString features
* gstring.c (g_string_insert_len): New function; insert
a given length of string at a given position.
(g_string_append): reimplement in terms of g_string_insert_len
(g_string_append_len): new function
(g_string_insert_c): accept -1 for "pos" arg to mean "append"
(g_string_append_c): reimplement in terms of g_string_insert_c
(g_string_prepend): reimplement in terms of g_string_insert_len
(g_string_prepend_len): new function
(g_string_prepend_c): reimplement in terms of g_string_insert_c
(g_string_insert): reimplement in terms of g_string_insert_len
* glib.h: Declare g_string_insert_len, g_string_append_len,
g_string_prepend_len
Sun Feb 13 08:16:47 2000 Tim Janik <timj@gtk.org>
* configure.in: wtf??? someone destroyed the configure.in, reverting to
an older version from Feb 4 which apears to still work.
2000-02-05 Tor Lillqvist <tml@iki.fi>
* glib.rc.in gmodule.rc.in gthread.rc.in: New files, for putting
version info in the DLLs on Win32.
* Makefile.am: Generate corresponding *.rc files and distribute
them.
* makefile.cygwin.in: Add rules to automatically bump a "build
number" in the version info in the rc files each time the DLL is
built. But do this only for the person who releases binaries. If
others build the DLLs, the build number is set to zero.
Fri Feb 4 19:36:05 2000 Tim Janik <timj@gtk.org>
* glib.h:
* gdataset.c: return stolen data from g_datalist_id_remove_no_notify()
and g_dataset_id_remove_no_notify() to avoid second lookup for common
use.
2000-02-01 Tor Lillqvist <tml@iki.fi>
* glib.h
* gstrfuncs.c (g_filename_to_utf8, g_filename_from_utf8): New
functions for conversion between UTF-8 and the encoding expected
by C runtime functions like open() and stat(), and returned by
readdir().
Implement them on Win32 where we use the system "ANSI" codepage,
which might be single-byte or double-byte. On Unix, just skip the
issue for now and provide dummy implementations that return a copy
of the argument.
* README.win32
* build-dll
* glib.def: Minor updates.
Wed Jan 26 05:24:38 2000 Tim Janik <timj@gtk.org>
* glib.h:
* gmain.c: s/current_time/dispatch_time/ for the dispatch() handlers.
refetch the current time after invocation of poll() to cover up for
the time spent in that function call.
Fri Jan 21 10:18:24 2000 Owen Taylor <otaylor@redhat.com>
* glib.h (G_N_ELEMENTS): Added G_N_ELEMENTS macro to determine
the number of elements in an array.
1999-11-16 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* acconfig.h, config.h.win32.in, configure.in: Renamed
GLIB_SIZEOF_PTHREAD_T to GLIB_SIZEOF_SYSTEM_THREAD to reflect
changed meaning.
* configure.in: Cope with systems, that have a pthread_t type,
that is not a pointer. Hint from Karl Nelson
<kenelson@ece.ucdavis.edu>. Define GLIB_SIZEOF_SYSTEM_THREAD to 4
for Solaris. Cope with systems, that have no default mutex
initialize, like obviously most DCE systems.
* glib.h, gthread.c: Changed the prototype of thread_create and
thread_self to return the system thread into provided memory
instead of a return value. This is necessary, as HPUX has a
pthread_t, that is bigger than the biggest integral type there.
* gthread.c: system_thread is no longer a pointer, but an memory
area of size GLIB_SIZEOF_SYSTEM_THREAD. Changed the
zeroinitialization and the tests for zeroness accordingly.
1999-11-08 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Make the test for getpwuid_r work on newer AIX
versions, too. Still works on Solaris and Linux. Patch from Craig
Rodrigues <rodrigc@mediaone.net>.
1999-11-08 Tor Lillqvist <tml@iki.fi>
* gwin32.c (g_win32_getlocale): Look at env vars LC_ALL, LC_CTYPE
and LANG first. Some refinements to the sublanguage logic.
1999-11-01 Tor Lillqvist <tml@iki.fi>
* glib.h
* glib.def: Rename Win32-only functions from gwin_* to g_win32_*
to match the GLib naming conventions.
* gutils.c
* gwin32.c
* testglib.c
* makefile.{cygwin,msc}: Move the Win32-only functions to the new
file gwin32.c
1999-10-31 Tor Lillqvist <tml@iki.fi>
* gcache.c (g_cache_remove): Don't crash if removing a nonexistent
value.
* gutils.c (gwin_getlocale): New Win32-specific function, returns
a Unixish current locale string (en, zh_TW etc).
* glib.h: Declare it.
* glib.def: Export it.
* testglib.c: Test it.
* gmessages.c (Win32: ensure_stdout_valid): Some improvements,
make sure we don't call AllocConsole several times, which I think
has happened.
Sun Oct 17 18:11:40 1999 Tim Janik <timj@gtk.org>
* gdataset.c (g_data_set_internal): remove g_dataset_global_lock around
destroy() notification here as well.
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly. Reported by Ola Andersson <rand@ling.umu.se>.
Tue Oct 12 14:17:12 1999 Tim Janik <timj@gtk.org>
* glib.h: removed useless g_string(x) macro that cluttered the namespace
and was just a poor wrapper around the cpp '#' symbol, use #x if you
need to work around this.
added new macro G_STRINGIFY(arg) that will convert arg to a string,
no matter whether it contains macros or not.
1999-10-12 Tor Lillqvist <tml@iki.fi>
* config.h.win32.in: Define the new GLIB_SIZEOF_* constants here,
too.
* glib.h: Small Win32 comments improvement.
Tue Oct 12 12:16:12 1999 Tim Janik <timj@gtk.org>
* gmessages.c (g_printf_string_upper_bound): completly new implementation
for printf string upper bounds calculation.
we handle all glibc 2.1 format specifiers now, except for positional
parameters (%nn$...) and wide char strings, plus some obscure upper
case variants of the standard conversions. this fixes a lot of
bugs in the old code, i.e.
- NULL format strings
- floats with exponents >+24
- %G
- precision specifications in general
- negative field widths
- %p for SIZEOF_VOID_P > 4 platforms
we now issue warnigns in places where the old code would have
caused buffer overruns anyways. warnings are suppressed when invoked
from glogv(), to avoid infinite recursions if someone passes a log
message that comes with really obscure format specifications.
Tue Oct 12 11:49:00 1999 Tim Janik <timj@gtk.org>
* gstrfuncs.c: nuked old g_printf_string_upper_bound() version.
Tue Oct 12 03:34:40 1999 Tim Janik <timj@gtk.org>
* glib.h: added GFloatIEEE754 and GDoubleIEEE754 unions to access sign,
mantissa and exponent of IEEE floats and doubles (required by the new
version of g_printf_string_upper_bound). the unions are endian specific,
we handle G_LITTLE_ENDIAN and G_BIG_ENDIAN as of currently. ieee floats
and doubles are supported (used for storage) by at least intel, ppc and
sparc, reference:
http://twister.ou.edu/workshop.docs/common-tools/numerical_comp_guide/ncg_math.doc.html
Mon Oct 11 18:01:49 1999 Tim Janik <timj@gtk.org>
* configure.in: added additional checks to figure sizes of size_t,
ptrdiff_t and intmax_t (required by g_printf_string_upper_bound).
* glib.h: (Win32) Drop the mapping of POSIX function names to the
underscored versions, it's unnecessary after all. With MSVC we get
them from oldnames.lib, with gcc-2.95 and mingw32 from
-lmoldname-msvc. Add comment about what headers to include for
prototypes.
1999-10-05 Tor Lillqvist <tml@iki.fi>
* glibconfig.h.win32.in: Don't define WIN32 and NATIVE_WIN32.
* gerror.c (g_on_error_query): (Win32) Slightly more verbosity.
* build-dll: Don't strip.
* gmodule.h: (Win32) Use __declspec(dllexport) in G_MODULE_EXPORT
only with gcc.
Wed Sep 22 01:53:18 1999 Tim Janik <timj@gtk.org>
* glib.h (NULL): define NULL as (0L) if __cplusplus is defined, to
avoid "ANSI C++ forbids implicit conversion from `void *' in argument
passing" errors upon NULL usage in C++ programs (gcc-2.95 is on crack
for erroring out on this, instead of just issueing a warning).
* glib.h (g_trash_stack_pop): use uncasted NULL again.
Fri Sep 17 10:24:45 1999 Tim Janik <timj@gtk.org>
* gmem.c (g_mem_chunk_compute_size) (g_mem_chunk_new): applied patch
from Soeren Sandmann <sandmann@daimi.au.dk>, to force mem chunk's area
sizes to be a multitiple of atom_size, and to eliminate the MAX_MEM_AREA
restriction of 65536 bytes. we also catch cases where users pass an area
size < atom size with a return_if_fail statement now (which is ok,
because previously this lead to memory corruption anyways).
Mon Sep 13 23:25:59 1999 Tim Janik <timj@gtk.org>
* gmessages.c (g_logv): in case we have to abort the program,
debugging is enabled and we are not called recursively, try
to abort with raise (SIGTRAP) first, so developers may ignore
certain failure conditions during debugging stage.
Thu Aug 26 15:09:36 1999 Tim Janik <timj@gtk.org>
* Makefile.am:
* gmodule/Makefile.am:
* gthread/Makefile.am: added --export-dynamic so we can load dynmic
modules, (required, according to the libtool 1.3.3 docu).
1999-07-23 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* grand.c (g_rand_new): Use /dev/urandom, as it doesn't block,
which /dev/random might do. Do not XOR the time, when getting the
seed form /dev/urandom, as this is good itself. Prevent the
initial seed from being zero, which causes the PRNG to produce
only zeros. Hints from Colin Plumb <colin@pgp.com>.
* glib.h (g_trash_stack_push): Add a cast.
* gslist.c
* glist.c: Make the inline functions static inline, and add
separate extern wrappers. Not all compilers produce callable entry
points for inline functions, even if gcc does.
Sun Aug 15 02:47:14 1999 Tim Janik <timj@gtk.org>
* glib.h (g_trash_stack_pop): eliminate memset() call, since string.h
has not neccessarily been included prior to glib.h.
Mon Aug 2 21:03:10 1999 Tim Janik <timj@gtk.org>
* configure.in: added --enable-msg-prefix option.
* gmessages.c (g_log_default_handler): feature "prg_name (pid:%u): "
if --enable-msg-prefix was selected (use "(process:%u): " if
g_get_prgname () returns NULL, along the lines of g_on_error_query).
* glib.h
* gstrfuncs.c
* tests/strfunc-test.c: Rename g_strccpy to g_strcompress and
g_strecpy to g_strescape per Tim Janik's suggestion. Dropped the
destination parameter, always g_malloc a new string. Fix bug in
g_strcompress, octal digits were gobbled up without limit, should
use max three.
Sources that use g_strescape must have ifdefs to be compilable
both with GLib 1.2 and 1.3.
* glib.h
* gstrfuncs.c: the #define for g_strescape interfered with the
compilation of the function, so just remove the function and
note that it's deprecated in the header
-Yosh
* gstrfuncs.c (g_strccpy, g_strecpy): New functions.
* glib.h: Declare and document them. Define the deprecated
g_strescape as a macro that calls g_strecpy.
* tests/strfunc-test.c (main): Test them.
* makefile.{cygwin,msc}.in
* tests/makefile.{cygwin,msc}.in: Remove gstack and its test
program.
* glib.def: Additions and removals.
* README.win32: Improve gcc build instructions.
* build-dll: Also build import library for MSVC.
Sat Jul 24 20:11:35 1999 Tim Janik <timj@gtk.org>
* merged GLib 1.3.0 with glib-1.2.3 from Fri Jul 16 22:18:36.
* incorporated proposed cleanups from gtk-devel-list.
* bumped version number to GLib-1.3.1
* glib.h:
* gqueue.c:
* gstring.c:
* glist.c:
removed string tokenisation (we got g_strsplit() and g_strjoin()
already) and readline functions.
s/g_list_delete/g_list_delete_link.
implemented g_slist_delete_link.
removed notion of g_ATEXIT() macro in glib.h, this is an *internal*
macro, g_atexit() is provided for public consumption.
added GTrashStack inline utility functions.
reimplement double eneded queues.
removed GStack implementation, people can use a queue or a (singly)
linked list for this task.
deprecated g_strescape(), we need the SunOS variants here.
* gdate.c: added DEBUG_MSG() macro to wrap old messages.
* *.*: CVS merges.
* upgrade to libtool 1.3.3.
* README.win32: Correct URL for mingw runtime sources.
* build-dll: Combine commands with &&.
* glib.h: Map also rmdir() and hypot() for MSVCRT library.
* makefile.cygwin.in
* tests/makefile.cygwin.in: New DLL naming style. GCC-compiled DLLs are
now called *.gcc.dll, to avoid binary incompatibilities with
MSVC-compiled versions.
* makefile.msc.in: Cosmetics.
1999-07-07 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in: Test for pthread_join rather than for
pthread_create to determine the right thread-lib. Makes it work on
mips-sgi-irix6.5. Hitn from to Jari Vuoksenranta
<javu@piano.ux.phys.jyu.fi>.
1999-07-01 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* configure.in, acconfig.h, gutils.c: Added a g_memmove
replacement for platforms without memmove, where bcopy can't
handle overlapping copies and the corresponding checks, which is
taken form the PERL Configure routine.
* glib.h: Updated the commentary about g_memmove to be right and
more GLib-like.
* configure.in: Removed test for rand_r, as it isn't used anymore.