Commit Graph

274 Commits

Author SHA1 Message Date
Owen Taylor
fc8fd6f8cb Default to --disable-gtk-doc, to avoid Jade setup hassles.
Sun Mar  3 21:09:24 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Default to --disable-gtk-doc, to avoid
        Jade setup hassles.

        * autogen.sh: Add --enable-gtk-doc.

        * configure.in: Default to --disable-static to go
        along with Pango, GTK+ where we need to do that for
        bin-compat reasons.

        * Makefile.am: Add a slightly modified distcheck rule
        that passes --enable-gtk-doc to the configure inside.
        (So that 'make dist' succeeds inside.)

        * configure.in *.pc.in **/Makefile.am m4macros/glib-2.0.m4
        tests/makefile.mingw.in: Switch everything over to
        glib-2.0.
2002-03-05 05:18:23 +00:00
Owen Taylor
c2d49b8f7e Use G_MODULE_SUFFIX rather than a hardcoded ".so". (#72803)
Sat Mar  2 14:46:17 2002  Owen Taylor  <otaylor@redhat.com>

        * gmodule-beos.c (_g_module_build_path) * gmodule-dyld.c (_g_module_build_path)
          gmodule-dl.c (_g_module_build_path): Use G_MODULE_SUFFIX rather than
        a hardcoded ".so". (#72803)
2002-03-02 20:30:33 +00:00
Owen Taylor
92e45a4009 Fix typo when checking if file + module_suffix exists. (Miroslaw
Sun Feb 17 18:15:22 2002  Owen Taylor  <otaylor@redhat.com>

        * gmodule.c (g_module_open): Fix typo when checking
        if file + module_suffix exists. (Miroslaw Dobrzanski-Neumann,
        #71801)
2002-02-17 23:17:52 +00:00
Hans Breuer
abc754faca moved warning to error pragmas to their own file to not force 'good
2002-01-05  Hans Breuer  <hans@breuer.org>

	* glibconfig.h.win32.in
	  msvc_recommended_pragmas.h (new file) : moved warning to
	error pragmas to their own file to not force 'good practice'
	programming in downstream libs and apps. Instead the new header
	will be used by -FImsvc_recommended_pragmas.h in gnome/cvs
	makefile.msc
	* */makefile.msc.in : use -FImsvc_recommended_pragmas.h
2002-01-05 18:54:59 +00:00
Tor Lillqvist
d4a5eab30b */.cvsignore: Add various Win32 related file types.
2001-11-24  Tor Lillqvist  <tml@iki.fi>

	*/.cvsignore: Add various Win32 related file types.

gmodule:

2001-11-24  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am: Remove rule for testgmodule.exp, too.

2001-11-22  Tor Lillqvist  <tml@iki.fi>

	* gmodule-win32.c: Current w32api headers do include tlhelp32.h,
	so no need to have an extract from it here.
2001-11-24 18:53:03 +00:00
Owen Taylor
4ab50f038b Version 11, interface, binary age 0.
Thu Nov 22 13:14:18 2001  Owen Taylor  <otaylor@redhat.com>

        * configure.in (GLIB_MICRO_VERSION): Version 11,
        interface, binary age 0.

        * NEWS: Updated.

        * tests/Makefile.am (libmoduletestplugin_[ab]_la_LDFLAGS):
        Add dummy -rpath argument. On some (but not all) platforms,
        libtool will only build a convenience library without this.
        (#63486, Dan Winship)

        * Makefile.am (EXTRA_DIST): Add README.in, INSTALL.in -
        autoconf-2.5x checks for 'make dist' in the tarball
        when you make distcheck.

        * glib/Makefile.am (EXTRA_DIST): Distribute
        makefile.msc/mingw.in, glib.rc.in.

        * tests/patterntest.c: Include string.h.

        * glib/gpattern.c (g_utf8_reverse): doc parsing fix.
2001-11-22 18:56:12 +00:00
Michael Meeks
e3750c7c90 fix leak.
2001-11-16  Michael Meeks  <michael@ximian.com>

	* gmodule.c (parse_libtool_archive): fix leak.
2001-11-18 22:26:39 +00:00
Dan Winship
11153df029 Add gmodule-dyld.c
* Makefile.am (EXTRA_DIST): Add gmodule-dyld.c
2001-10-31 16:53:25 +00:00
Tor Lillqvist
3729dc28ad Update.
2001-10-26  Tor Lillqvist  <tml@iki.fi>

	* glib/glib.def: Update.

	* tests/makefile.{mingw,msc}.in: Add ../* to PATH before running
	tests to find DLLs. Separate the interactive tests, don't run them
	in the check target.

	* */makefile.msc.in: Include make.msc from GLib's build directory.
2001-10-25 23:40:38 +00:00
Tor Lillqvist
20af1ed309 If we have built the MSVC import library, install it. Install the gcc
2001-10-23  Tor Lillqvist  <tml@iki.fi>

	* {glib,gmodule,gobject,gthread}/Makefile.am: (Win32): If we
	have built the MSVC import library, install it. Install the
	gcc import library. Also support uninstall.
2001-10-22 22:14:26 +00:00
Tor Lillqvist
ceea1612c4 More Unix compatibility: Add "lib" prefix in case the module name doesn't
2001-10-09  Tor Lillqvist  <tml@iki.fi>

	* gmodule-win32.c (_g_module_build_path): More Unix compatibility:
	Add "lib" prefix in case the module name doesn't already have it,
	except if it ends with ".dll" (in which case it probably already
	is the name of an existing DLL). This is needed for instance for
	the gdk-pixbuf loaders, which are called "lib*.dll", but
	gdk-pixbuf-io calls g_module_build_path without the "lib" prefix.
2001-10-09 20:40:19 +00:00
jacob berkman
484614634c s/retrive/retrieve/
2001-10-03  jacob berkman  <jacob@ximian.com>

	* libgplugin_a.c: (gplugin_a_module_func):
	* gmodule.h: s/retrive/retrieve/
2001-10-03 19:45:04 +00:00
Tor Lillqvist
1c8de25a5e More Win32 automake macros. For .def files: GLIB_DEF, GMODULE_DEF,
2001-09-25  Tor Lillqvist  <tml@iki.fi>

	* configure.in: More Win32 automake macros. For .def files:
	GLIB_DEF, GMODULE_DEF, GOBJECT_DEF and GTHREAD_DEF. For .exp
	files: TESTGMODULE_EXP (for programs that need to export symbols,
	just testgmodule here). A new conditional, MS_LIB_AVAILABLE to
	test whether the Microsoft librarian ("ar") is available to build
	MS import libraries.

	* glib/Makefile.am
	* gmodule/Makefile.am: Use above. New rule to build MS import
	library.

	* glib/makefile.msc.in
	* tests/makefile.msc.in
	* tests/makefile.mingw.in: Use same DLL and import library names as
	libtool.

gmodule:
2001-09-25  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw.in: Fix missing end @ in @LT_CURRENT@.

	* makefile.msc.in: Use same DLL and import library names as
	libtool.

gobject:
2001-09-25  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am: Use new macros for .def file, and check for
	MS_LIB_AVAILABLE, new rule to build MS import library.

	* makefile.msc.in: Use same DLL and import library names as
	libtool.

gthread:
2001-09-25  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am: Use new macros for .def file, and check for
	MS_LIB_AVAILABLE, new rule to build MS import library.

	* makefile.msc.in: Use same DLL and import library names as
	libtool.
2001-09-25 06:03:23 +00:00
Tor Lillqvist
0782eece32 Correct InternalName and OriginalFilename to match what we actually
2001-09-19  Tor Lillqvist  <tml@iki.fi>

	* {gmodule,gobject,gthread.rc.in}: Correct InternalName and
	OriginalFilename to match what we actually produce.
2001-09-19 01:00:17 +00:00
Tor Lillqvist
812b4b00af glib/gmain.c Mark the _funcs tables for export.
2001-09-18  Tor Lillqvist  <tml@iki.fi>

	* glib/gmain.c
	* glib/giowin32.c: Mark the _funcs tables for export.

	* glib/glib.def: Add here, too.

	* glib/gwin32.c (get_package_directory_from_module): No reason to
	check for the module being in a bin or lib directory only when
	module_name is non-NULL.

	* glib/gwin32.c (g_win32_get_package_installation_directory):
	Check first in HKEY_CURRENT_USER, then in HKEY_LOCAL_MACHINE.

	* gmodule/Makefile.am: On Win32, pass a dummy -rpath flag to
	libtool when building libgplugin_[ab].la, otherwise libtool
	doesn't create a DLL, but a static archive.
2001-09-17 22:39:57 +00:00
Tor Lillqvist
020b44f5ac Add variable for LT_CURRENT minus LT_AGE (the suffix used by libtool on
2001-09-17  Tor Lillqvist  <tml@iki.fi>

	* configure.in: Add variable for LT_CURRENT minus LT_AGE (the
	suffix used by libtool on Win32 for DLLs). Set variables for the
	compiled resource files on Windows. Handle the native Win32
	gthread stuff.

	* glib/Makefile.am
	* gmodule/Makefile.am
	* gobject/Makefile.am: (Win32) Add minor hacks to link in the object
	file produced from the resource file. Use the lt-compile-resource
	script from the build module. The non-hack way would be to teach
	libtool, autoconf and automake about .rc files (which are a kind
	of source code, after all, that gets compiled to object
	files). But then there would be problems for those who wouldn't have
	bleeding edge auto* and libtool.

	* glib/glib.def
	* gobject/gobject.def: Updates.

	* glib/glib.rc.in
	* gmodule/gmodule.rc.in
	* gobject/gobject.rc.in
	* gthread/gthread.rc.in: Update InternalName and OriginalFilename to
	match libtool's naming convention for DLLs.

	* glib/gutils.c: Ditto when constructing the DLL name in the
	definition for GLIB_LOCALE_DIR.

	* glib/makefile.mingw.in
	* gmodule/makefile.mingw.in
	* gobject/makefile.mingw.in
	* gthread/makefile.mingw.in: Update import library names.
2001-09-17 00:41:39 +00:00
Tor Lillqvist
07741c07d8 Update. Don't mention pthreads.
2001-09-04  Tor Lillqvist  <tml@iki.fi>

	* README.win32: Update. Don't mention pthreads.

	* build-dll: Remove, moved to the build module.

	* glibconfig.h.win32.in: Don't mention pthreds here, either.

	* glib/gstrfuncs.c: Mark the correct variable for export from DLL.

	* glib/giowin32.c (g_io_win32_msg_create_watch): Owen forgot to
	rename the win32_watch_funcs variable here, too.

	* */makefile.mingw.in: Don't use version number in import library
	name. Use whole version number in DLL name. Use build-dll from the
	build module.
2001-09-04 05:09:35 +00:00
Tor Lillqvist
74b4d8c22e After being away for about five months, I'm back working on this... For
2001-08-30  Tor Lillqvist  <tml@iki.fi>

	After being away for about five months, I'm back working on
	this...  For now, still using same build setup for Win32. Probably
	will change to not including version numbers in the import library
	names, though. (But the DLL names would still include them,
	possibly even also the micro version number.) That would be more
	Unix-like. Also, will have to check out newest mingw tool versions
	to see if the build-dll script now can be retired.

	* makefile.mingw
	* makefile.msc: New files, no need to generate from .in as
	they don't contain references to automake variables.

	* makefile.mingw.in
	* makefile.msc.in: Removed.

	* glib.rc.in: Remove
	* glib/glib.rc.in: Moved here.

	* Makefile.am
	* glib/Makefile.am: Corresponding changes.

	* glib/glib.def: Fix typo, add new entries.

	* glib/gspawn-win32-helper.c: More debugging. Doesn't work
	currently (or then it never has on Win2k, which I now use?)

	* glib/gstrfuncs.c
	* glib/gstrfuncs.h: Mark g_ascii_table for export/import on Win32.

	* */makefile.mingw.in: Reflect new location of glib library.
2001-08-30 05:09:11 +00:00
Sebastian Wilhelmi
a3ad2d5774 build the library name ourselfs ... so we can load the library specified
2001-07-30  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gmodule/gmodule.c (parse_libtool_archive): build the library
	name ourselfs ... so we can load the library specified and not
	mangle any name not beggining in 'lib'. Patch from Michael Meeks
	<michael@ximian.com>.
2001-07-30 08:52:20 +00:00
Hans Breuer
606033cffa reflect glib move
2001-07-20  Hans Breuer  <hans@breuer.org>

	* makefile.msc.in : reflect glib move
2001-07-20 17:01:30 +00:00
Darin Adler
624a3c9689 Add some generated files.
* .cvsignore: Add some generated files.

        * glib/gmain.c: (g_main_context_iterate): Comment out cruft
        after #endif to avoid gcc warning.
        * gmodule/gmodule.c: (g_module_set_error_unduped): Remove
        const from type to avoid gcc warning.
        * gobject/gsignal.c: (g_signal_emitv): ifdef variable used
        only if G_ENABLE_DEBUG to avoid gcc warning.
        * gobject/gtype.c: (type_iface_vtable_init_Wm),
        (type_iface_vtable_finalize_Wm): ifdef call needed only
        if !G_DISABLE_ASSERT to avoid gcc warning.
        * tests/testglib.c: (main): ifdef call needed only if
        !G_DISABLE_ASSERT to avoid gcc warning. Maybe later we
        should make the test to #undef G_DISABLE_ASSERT.
        * tests/unicode-collate.c: Add include of <string.h> to
        avoid gcc warning.
2001-07-11 20:08:50 +00:00
Owen Taylor
2fd6b001fb Move glib library into a subdirectory, make all GLib include files include
Tue Jun 26 11:43:46 2001  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.am *.[ch] glib/*.[ch] glib/Makefile.am:
	Move glib library into a subdirectory, make all GLib include
	files include as <glib/glist.h>

	* tests/testglib.c tests/testgdate.c tests/testgdateparser.c
	  tests/timeloop.c tests/timeloop-basic.c: Move all tests into
	the tests/ subdirectory.
2001-06-26 16:01:21 +00:00
Owen Taylor
f5c28ce4ab Changes for 64-bit cleanliness, loosely based on patch from Mark Murnane.
Wed Jun 20 12:00:54 2001  Owen Taylor  <otaylor@redhat.com>

        Changes for 64-bit cleanliness, loosely based on patch
	from Mark Murnane.

	* gconvert.c (g_convert/g_convert_with_fallback): Remove
	workarounds for since-fixed GNU libc bugs. Minor
	doc fix.

	* gconvert.[ch]: Change gint to gsize/gssize as
	appropriate.

	* gconvert.c (g_locale/filename_to/from_utf8): Fix incorrect
	computation of bytes_read / bytes_written.

	* gfileutils.[ch] (g_file_get_contents): Make length
	out parameter 'gsize *len'.

	* ghook.c (g_hook_compare_ids): Don't compare a
	and b as 'a - b'.

	* gmacros.h (GSIZE_TO_POINTER): Add GPOINTER_TO_SIZE,
	GSIZE_TO_POINTER.

	* gmain.c (g_timeout_prepare): Rewrite to avoid
	overflows. (Fixes bug when system clock skews
	backwards more than 24 days.)

	* gmarkup.[ch]: Make lengths passed to callbacks
	gsize, length for g_markup_parse-context_parse(),
	g_markup_escape_text() gssize.

	* gmessages.[ch] (g_printf_string_upper_bound): Change
	return value to gsize.

	* gmessages.c (printf_string_upper_bound): Remove
	a ridiculous use of 'inline' on a 300 line function.

	* gstring.[ch]: Represent size of string as a gsize,
	not gint. Make parameters to functions take gsize,
	or gssize where -1 is allowed.

	* gstring.c (g_string_erase): Make
	g_string_erase (string, pos, -1) a synonym for
	g_string_truncate for consistency with other G*
	APIs.

	* gstrfuncs.[ch]: Make all functions taking a string
	length, take a gsize, or gssize if -1 is allowed.
	(g_strstr_len, g_strrstr_len). Also fix some boundary
	conditions in g_str[r]str[_len].

	* gutf8.c tests/unicode-encoding.c: Make parameters that
	are byte lengths gsize, gssize as appropriate. Make
	character offsets, other counts, glong.

	* gasyncqueue.c gcompletion.c
          timeloop.c timeloop-basic.c gutils.c gspawn.c.
	Small 64 bit cleanliness fixups.

	* glist.c (g_list_sort2, g_list_sort_real): Fix functions
	that should have been static.

	* gdate.c (g_date_fill_parse_tokens): Fix extra
	declaration that was shadowing another.

	* tests/module-test.c: Include string.h

Mon Jun 18 15:43:29 2001  Owen Taylor  <otaylor@redhat.com>

	* gutf8.c (g_get_charset): Make argument
	G_CONST_RETURN char **.
2001-06-23 13:55:09 +00:00
Sebastian Wilhelmi
2fd34ae182 Do not g_strdup, as promised in the function name.
2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gmodule.c (g_module_set_error_unduped): Do not g_strdup, as
	promised in the function name.
2001-05-29 13:48:18 +00:00
Tim Janik
ba1c852a68 erk, strconcat needs NULL as last arg. make sure we pass module name with
Tue May 29 12:57:51 2001  Tim Janik  <timj@gtk.org>

        * gmodule.c (g_module_symbol): erk, strconcat needs NULL as last arg.
        make sure we pass module name with suffix into backend open.
2001-05-29 11:05:53 +00:00
Tim Janik
2d0ea4af6c as a last resort, if we can't access() the module, leave it up to the
Mon May 28 20:19:25 2001  Tim Janik  <timj@gtk.org>

        * gmodule.c (g_module_open): as a last resort, if we can't access()
        the module, leave it up to the platform backends to find it.
        (fixes implicit search patch loading i broke with my last
        commit, spotted by Padraig O'Briain).
2001-05-28 18:23:31 +00:00
Tim Janik
e28e398eb0 unlock context when bailing out with a warning. (g_main_context_check):
Sun May 27 05:09:18 2001  Tim Janik  <timj@gtk.org>

        * gmain.c (g_main_context_prepare): unlock context when bailing
        out with a warning.
        (g_main_context_check): same here.

        * gmain.c (g_main_context_check): before returning due to
        changed pollfds, unlock context.

Sun May 27 04:52:28 2001  Tim Janik  <timj@gtk.org>

        * gsignal.[hc] (g_signal_stop_emission_by_name): added variant
        to stop signal emissions through a detailed_signal string.

        * gsignal.c (signal_emit_R) (g_signal_emit_valist): account for
        the fact that g_value_* functions may cause signal emissons by
        unlocking the global signal system lock around g_value_* functions.
        (signal_emit_unlocked_R): renamed this from signal_emit_R() to reflect
        that this functions acquires the lock on its own now.
2001-05-27 18:28:58 +00:00
Owen Taylor
33888fc0c8 Add inter-library dependencies.
Sun May 13 10:31:17 2001  Owen Taylor  <otaylor@redhat.com>

	* glib/Makefile.am gobject/Makefile.am gmodule/Makefile.am:
	Add inter-library dependencies.

	* acinclude.m4: Remove libtool macros.

	* autogen.sh: Require libtool-1.4, automake-1.4p1.
2001-05-16 18:35:39 +00:00
Dan Winship
d7daf59800 gmodule implementation for Darwin/Mac OS X
* gmodule-dyld.c: gmodule implementation for Darwin/Mac OS X

        * gmodule.c:
        * gmoduleconf.h.in: Add gmodule-dyld support

        * testgmodule.c (main): Fix spelling
2001-04-20 17:05:38 +00:00
Tor Lillqvist
f6e325b217 From Edward M. Lee <tailbert@yahoo.com>:
2001-03-13  Tor Lillqvist  <tml@iki.fi>

	From Edward M. Lee  <tailbert@yahoo.com>:

	* gdate.c (g_date_set_parse): add support for dates that in the
	form "Wed Mar 14 2001". Running testgdate on cygwin requires this.

2001-03-13  Tor Lillqvist  <tml@iki.fi>

	From Edward M. Lee  <tailbert@yahoo.com>:

	* gmodule-win32.c (_g_module_build_path): use (cygwin friendly) dir
	separator.
2001-03-14 20:18:03 +00:00
Tor Lillqvist
096ba91bdc Link with the libgmodule la only on Win32.
2001-03-12  Tor Lillqvist  <tml@iki.fi>

	* tests/Makefile.am (libmoduletestplugin_b_la_LIBADD,
	libmoduletestplugin_b_la_LIBADD): Link with the libgmodule la only
	on Win32.

2001-03-12  Tor Lillqvist  <tml@iki.fi>

	* Makefile.am (libgplugin_a_la_LIBADD, libgplugin_b_la_LIBADD):
	Link with the libgmodule la only on Win32.
2001-03-12 06:09:05 +00:00
Tor Lillqvist
8f69a82ccb Use the _LIBADD dependencies on libglib only on Win32.
2001-03-10  Tor Lillqvist  <tml@iki.fi>

	* */Makefile.am: Use the _LIBADD dependencies on libglib only on
	Win32.

	* gobject/gobject.def: Add a couple of missing entries.
2001-03-10 20:03:53 +00:00
Tor Lillqvist
8dd8609870 Use G_BEGIN_DECLS and G_END_DECLS. Define G_MODULE_EXPORT correctly on
2001-02-21  Tor Lillqvist  <tml@iki.fi>

	* gmodule.h: Use G_BEGIN_DECLS and G_END_DECLS. Define
	G_MODULE_EXPORT correctly on Cygwin, too.

	* gmodule-win32.c (_g_module_open): Convert path to Windows format
	on Cygwin.

	* Makefile.am (libglib): Use libglib-1.3.la from
	top_builddir. Invoke libtool with -no-undefined for Win32 and
	Cygwin.
2001-03-09 21:33:23 +00:00
Sebastian Wilhelmi
66107ac7e1 Set G_LOG_DOMAIN to \"GModule\" instead of g_log_domain_gmodule.
2001-03-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* Makefile.am, makefile.mingw.in, makefile.msc.in: Set
	G_LOG_DOMAIN to \"GModule\" instead of g_log_domain_gmodule.

	* gmodule.def, gmodule.h, gmodule.c: Removed g_log_domain_gmodule.

	* docs/reference/glib/glib-sections.txt,
	docs/reference/glib/tmpl/messages.sgml: Removed	g_log_domain_gmodule.
2001-03-07 14:22:25 +00:00
Tor Lillqvist
cd89e4cca6 Match also UNC paths on Win32.
2001-02-21  Tor Lillqvist  <tml@iki.fi>

	* gutils.c (g_path_is_absolute): Match also UNC paths on Win32.

	* gthread.h: Include gtypes.h to be sure to get GLIB_VAR
	definition, remove definition from here.

	* gunicode.h: Remove duplicate GLIB_VAR definition from here, too.

	* gutils.c: (Win32) Use USERPROFILE as home dir if present. On
	Win2k, HOMEDRIVE and HOMEPATH aren't reliable.

	* Makefile.am (INCLUDES): Add -DGLIB_COMPILATION.

	* makefile.mingw.in: Remove install target, Windows isn't Unix.

	* testgdate.c
	* testgdateparser.c
	* testglib.c: Undefine GLIB_COMPILATION.

	* glib.def: Updates.

	* .cvsignore
	* */.cvsignore: Ignore also .obj, .dll, .lib and .exe files.
2001-02-21 12:41:28 +00:00
Havoc Pennington
1c391cc698 include string.h
2001-02-17  Havoc Pennington  <hp@pobox.com>

	* gthread.c: include string.h

        Applied patch from Soeren Sandmann:

	* testglib.c: const fixes

	* gwin32.h: format cleanups

	* gutils.c (g_atexit): constify a variable
	(g_find_program_in_path): constification
	(g_basename): G_CONST_RETURN
	(g_path_skip_root): G_CONST_RETURN
	(g_getenv): G_CONST_RETURN
	(g_get_user_name): G_CONST_RETURN
	(g_get_real_name): G_CONST_RETURN
	(g_get_home_dir): G_CONST_RETURN
	(g_get_tmp_dir): G_CONST_RETURN
	(g_get_prgname): G_CONST_RETURN
	(_glib_gettext): G_CONST_RETURN

	* gunicode.h: formatting cleanups

	* gstrfuncs.c (g_strerror): G_CONST_RETURN
	(g_strsignal): G_CONST_RETURN

	* gspawn.c (g_execute): const on variables

	* gmessages.c (printf_string_upper_bound): fix const on a variable

	* gmem.c (g_mem_chunk_new): make the "name" arg const
	(struct _GRealMemChunk): make the "name" field const

	* gfileutils.c (g_file_open_tmp): store const return in a const
	gchar* variable

	* gdataset.c (g_quark_to_string): G_CONST_RETURN

2001-02-17  Havoc Pennington  <hp@pobox.com>

        Applied patch from Soeren Sandmann:

	* gvaluetypes.c (g_value_get_string): G_CONST_RETURN

	* gtype.c (g_type_name): G_CONST_RETURN

	* gsignal.c (g_signal_name): G_CONST_RETURN

	* gobject-query.c (main): const fix

2001-02-17  Havoc Pennington  <hp@pobox.com>

        Applied patch from Soeren Sandmann:

	* gmodule.c (g_module_error): G_CONST_RETURN
	(g_module_name): G_CONST_RETURN
2001-02-17 23:30:48 +00:00
Tim Janik
80d0c742e5 add check for broken RTLD_GLOBAL (on OSF1 V5.0).
Sat Feb 17 07:26:33 2001  Tim Janik  <timj@gtk.org>

        * configure.in (G_MODULE_HAVE_DLERROR): add check for broken RTLD_GLOBAL
        (on OSF1 V5.0).

Sat Feb 17 07:27:15 2001  Tim Janik  <timj@gtk.org>

        * gmodule.c: work around platforms that have broken RTLD_GLOBAL.
2001-02-17 06:28:07 +00:00
Tor Lillqvist
cd888afb5a Need <io.h> for open() and close().
2001-01-27  Tor Lillqvist  <tml@iki.fi>

	* gmodule.c: (Win32) Need <io.h> for open() and close().

2001-01-27  Tor Lillqvist  <tml@iki.fi>

	* makefile.msc.in: Don't try to compile gmarshal.c on its own.
2001-01-27 15:07:03 +00:00
Tor Lillqvist
388454cc3b makefile.mingw.in Protect the rule to rebuild makefile.mingw if
2001-01-25  Tor Lillqvist  <tml@iki.fi>

	* makefile.mingw.in
	* */makefile.mingw.in: Protect the rule to rebuild makefile.mingw
	if makefile.mingw.in has changed with a check if said .in file
	exists. (This rule is mainly a convenience for yours truly.)
2001-01-25 22:08:11 +00:00
Tor Lillqvist
cf1c65aed8 Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.
2000-12-29  Tor Lillqvist  <tml@iki.fi>

	* glibconfig.h.win32.in: Add GLIB_SIZEOF_VOID_P and GLIB_SIZEOF_LONG.

	* glib.def: Update.

	* {.,*}/makefile.{mingw,msc}.in: Add -DG_ENABLE_DEBUG.
2000-12-29 19:25:40 +00:00
Sebastian Wilhelmi
57a7a2b010 Determine the suffix of the shared librarries for this system. This is
2000-12-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in: Determine the suffix of the shared librarries for
	this system. This is done analogous to
	ltconfig.sh. G_MODULE_SUFFIX in glibconfig.h is set to either
	"sl", "dll", or (most often) "so".

	* tests/Makefile.am, tests/module-test.c,
	tests/libmoduletestplugin_a.c, tests/libmoduletestplugin_b.c:
	Added new testcase for gmodule. This is mostly copied from
	gmodule/testgmodule.c, but unlike that is is quiet. (Why BTW are
	some tests that verbose, not to say loquacious...)

	* gmodule.c: Make g_module_open more tolerant wrt to the module
	name. First it tries to open the module as named, if that fails,
	it checks, whether it is a libtool archive and parses it, if that
	fails it appends the systems shared library suffix
	(i.e. ".so") (if not already found) and tries again and if that
	fails it tries to append the ".la" libtool suffix (if not already
	found) and parses it.

	* gmodule.c: Lock recursive mutex during most module functions for
	safety.

	* gmodule-dl.c: Return an error from _g_module_symbol only, if
	dlerror says so. All other functions return an error as well, if
	dlerror returns NULL.

	* testgmodule.c: Thanks to the above change the #ifdefs have
	vanished.

	* glib/glib-sections.txt: Added G_MODULE_SUFFIX.

	* glib/tmpl/modules.sgml: Updated.
2000-12-22 13:44:25 +00:00
Tor Lillqvist
74987b2cf0 Include make.msc from GLib's build subdir.
2000-12-01  Tor Lillqvist  <tml@iki.fi>

	* {.,*}/makefile.msc.in: Include make.msc from GLib's build subdir.

	* makefile.{mingw,msc}.in (glib_OBJECTS): Add gunibreak.

	* glib.def: Update correspondingly.
2000-12-01 15:11:54 +00:00
Raja R Harinath
a626a650e5 gmodule: New variable. (dist-hook): Handle $(BUILT_EXTRA_DIST).
gmodule:
* Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).

gobject:
* Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).
(*): Remove traces of @STRIP_{BEGIN,END}@.

gthread:
* Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).

docs/reference:
'make distcheck' fixes.
* glib/Makefile.am (EXTRA_DIST): Add $(DOC_MODULE)-decl.txt.
(html): Run 'gtkdoc-fixxref' in $(srcdir).
(dist-check-gtkdoc): Add missing quote.
(dist-hook): Copy in dependency order, so that none of the
makerules are fired in a tarball build.

* gobject/Makefile.am: Likewise.

toplevel:
Remove need for acconfig.h, and misc. cleanups.
* acglib.m4 (GLIB_SIZEOF): Add 'autoheader' comment to
AC_DEFINE_UNQUOTED.
(GLIB_BYTE_CONTENTS): Likewise.

* configure.in: Add 'autoheader' comments to all AC_DEFINE(...)
and AC_DEFINE_UNQUOTED(...) lines.
Replace AC_MSG_CHECKING/AC_CACHE_VAL with AC_CACHE_CHECK.
(AM_PROG_LIBTOOL): Move after AC_PROG_CC.

* acconfig.h: Empty out.

* Makefile.am (BUILT_EXTRA_DIST): New variable.  List 'dist'able
files that are created in the builddir.
(dist-hook): Handle those files.
(libglib_1_3_la_SOURCES): Remove @ALLOCA@.  @ALLOCA@ should only
be used in an _LDADD or _LIBADD, since it expands (if necessary)
to 'alloca.o'.

* tests/Makefile.am (BUILT_EXTRA_DIST): New variable.
(dist-hook): Handle $(BUILT_EXTRA_DIST).
2000-10-16 01:02:19 +00:00
Sebastian Wilhelmi
d77b7fb0b7 .cvsignore updates
.cvsignore updates
2000-10-12 14:28:39 +00:00
Tor Lillqvist
8e847255e8 Revamp to be like makefile.mingw.in, make the MSVC build actually work
2000-10-06  Tor Lillqvist  <tml@iki.fi>

	* makefile.msc.in: Revamp to be like makefile.mingw.in, make
	the MSVC build actually work again.

	* gmodule/makefile.msc.in
	* gobject/makefile.msc.in
	* gthread/makefile.msc.in: New files, like their mingw counterparts.

	* gmodule/Makefile.am
	* gobject/Makefile.am
	* gthread/Makefile.am: Make and distribute them.

	* */makefile.mingw.in: Allow override of GLib version number from
	the build/win32/module.defs file.

	* glib.def: Add new entry point.

	Fixes from Hans Breuer:

	* glib.h (struct DIR): Keep the last readdir result cached inside
	the DIR struct, to enable several DIRs being open simultaneously.

	* gwin32.c (g_win32_readdir): Use the above instead of static.

	* giowin32.c (g_io_channel_win32_make_pollfd): Insert cast to keep
	MSVC happy.
2000-10-06 21:32:59 +00:00
Sebastian Wilhelmi
b4f692999f .cvsignore updates
.cvsignore updates
2000-09-28 14:06:26 +00:00
Sebastian Wilhelmi
ccee915720 Moved declaration of g_log_domain_gmodule up before the inclusion of
2000-09-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gmodule.h: Moved declaration of g_log_domain_gmodule up before
	the inclusion of glib.h to make it compile on non-gcc compilers.
2000-09-28 07:32:07 +00:00
Sebastian Wilhelmi
702f1d12d0 .cvsignore updates
.cvsignore updates
2000-09-01 13:58:25 +00:00
Elliot Lee
a435aaff03 Mark the following functions G_GNUC_CONST (to allow betteroptimization)
2000-08-25 Elliot Lee <sopwith@redhat.com>
	* glib.h, gunicode.h, gmodule/gmodule.h:
	Mark the following functions G_GNUC_CONST (to allow
	betteroptimization) because their results are a function of only their parameters:
	g_int_hash, g_int_equal, g_direct_hash, g_direct_equal, g_quark_to_string,
	g_date_is_leap_year, g_date_days_in_month, g_date_monday_weeks_in_year,
	g_date_sunday_weeks_in_year, g_spaced_primes_closest, g_unichar_is*,
	g_unichar_to*, g_unichar_*digit_value, g_unichar_type
2000-08-25 22:45:48 +00:00
Tim Janik
c9bd7542e1 applied patch from Andreas Persenius <ndap@swipnet.se> that updates the
Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>

        * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
        updates the license headers to the GNU Lesser General Public License,
        as well as updating the copyright year to 2000.
2000-07-26 11:02:02 +00:00
Tor Lillqvist
f07b4a876e Fix resource handling, the resource file got left out from the DLL after
2000-07-22  Tor Lillqvist  <tml@iki.fi>

	* build-dll: Fix resource handling, the resource file got left out
	from the DLL after all... Remove the WIN32APIHEADERS, not needed
	with current windres.

	* glib.def: Add new functions.
2000-07-22 08:38:06 +00:00
Sebastian Wilhelmi
fec9828ac6 Mark the functions g_basename and g_dirname deprecated. They will issue an
2000-07-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gutils.c, glib.h: Mark the functions g_basename and g_dirname
	deprecated. They will issue an warning once, when compiled with
	G_ENABLE_DEBUG, but continue to work as before. Instead the
	functions g_path_get_basename and g_path_get_dirname should be
	used, which BOTH return newly allocated memory, that has to freed
	by g_free. The new g_path_get_basename now strips trailing slashes
	from the path. This fixes #5097. For discussion see
	http://mail.gnome.org/pipermail/gtk-devel-list/2000-April/003139.html

	* gwin32.c, testglib.c, tests/dirname-test.c: Use the new
	functions instead of the old ones.

	* gmodule/libgplugin_a.c, gmodule/testgmodule.c: Use
	g_path_get_basename instead of the deprecated g_basename.
2000-07-20 16:58:54 +00:00
Sebastian Wilhelmi
cb931f4980 glibconfig.h and glib.h now include files outside of the extern "C" block.
2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* configure.in, glib.h: glibconfig.h and glib.h now include files
	outside of the extern "C" block. Makes some C++ compiler
	happy. Reported by Denis Vakatov <vakatov@peony.nlm.nih.gov>.

	* gmodule/gmodule.h: include glib.h before doing extern "C".
        Makes some C++ compiler happy. Reported by Denis Vakatov
	<vakatov@peony.nlm.nih.gov>.
2000-07-19 14:01:22 +00:00
Tor Lillqvist
93b1001c10 Don't #include <tlhelp32.h> when compiling with gcc, as it isn't provided.
2000-07-19  Tor Lillqvist  <tml@iki.fi>

* gmodule-win32.c: Don't #include <tlhelp32.h> when compiling with gcc, as it
isn't provided. Declaration of a needed struct (from
www.microsoft.com) inserted instead.
2000-07-18 20:24:29 +00:00
Tor Lillqvist
45adcf12c1 Include the "build" module in GLib, too, to make it more self-contained.
2000-07-15  Tor Lillqvist  <tml@iki.fi>

* Makefile.am (SUBDIRS): Include the "build" module in GLib, too,
to make it more self-contained. If your CVS client doesn't
automatically get it, do a cvs get build in glib.

* */makefile.mingw.in: Include make.mingw from build in the glib
source directory.
2000-07-14 22:46:35 +00:00
Owen Taylor
eb023508ad Move glib-config to glib-config-2.0 move glib.m4 to glib-2.0.m4
Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>

	* configure.in Makefile.am glib-config.m4 glib.m4: Move
	glib-config to glib-config-2.0 move glib.m4 to
	glib-2.0.m4

	* Makefile.am gobject/Makefile.am gmodule/Makefile.am
	gthread/Makefile.am tests/Makefile.am: Change
	library names to libglib-1.3.la, etc, so that we
	can distinguish glib-1.2 and glib-2.0 on the linkline.

	* Makefile.am gobject/Makefile.am gmodule/Makefile.am:
	Move include files into /usr/include/glib-2.0.

Thu Jul  6 18:54:49 2000  Owen Taylor  <otaylor@redhat.com>

	* docs/Makefile.am (EXTRA_DIST): Remove info files
	from the build.
2000-07-14 19:22:54 +00:00
Tor Lillqvist
77866eaf9b makefile.mingw.in tests/makefile.mingw.in Rename makefile.cygwin(.in) to
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.
2000-05-13 19:30:58 +00:00
Tor Lillqvist
c4f0c6fd9b Add new functions. Add new object files. Add threadpool-test. No need to
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-05-01 21:13:02 +00:00
Sebastian Wilhelmi
d3cdac0cdb .cvsignore adaptation
.cvsignore adaptation
2000-03-24 15:09:02 +00:00
Sebastian Wilhelmi
7cd50026f1 Added various win32 related *.in files to EXTRA_DIST to let 'make
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-24 12:56:56 +00:00
Tor Lillqvist
dd781b91ec In the "null" module case _g_module_symbol should still first search the main
program before searching all the loaded DLLs.
2000-03-22 22:51:54 +00:00
Tor Lillqvist
28bd47860b When looking for symbols in the "main" module we must search both the main
2000-03-23  Tor Lillqvist  <tml@iki.fi>

* gmodule-win32.c (_g_module_symbol): When looking for symbols in
the "main" module we must search both the main program and all
currently loaded DLLs. Not only the main program, or even just the
DLLs loaded as gmodules.  Libglade requires this.

Thus we need to get a list of all modules in the current
process. There are two alternative APIs to do this: PSAPI and
Toolhelp. The former is only available on NT (including Win2k),
the latter on Win9x and Win2k. Check which one works, and use
that.

Code for using PSAPI and Toolhelp was borrowed from the Dr. Mingw
tool written by Jos Fonseca <em96115@fe.up.pt>. Thanks.
2000-03-22 22:34:48 +00:00
Tor Lillqvist
c35ab34774 New function that returns the message string for a Win32 error code.
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-01 09:44:10 +00:00
Tim Janik
db8baf6978 minor optimization.
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-03-01 09:44:10 +00:00
Tim Janik
d568a76ae4 do not return NULL symbols.
Wed Mar  1 05:34:47 2000  Tim Janik  <timj@gtk.org>

        * gmodule-beos.c (_g_module_symbol): do not return NULL symbols.

        * gmodule-os2.c: removed NetBSD specific defines.
        (_g_module_self): set an error message for unsupported behaviour.

        * gmodule-beos.c: many coding style fixups.
        (_g_module_open):
        (_g_module_self):
        (_g_module_close):
        (_g_module_symbol): bunch of memory leaks plugged.

        * gmodule-dl.c: make sure the error message returned from dlerror()
        is always != NULL, by using a wrapper function fetch_dlerror(). based
        on a patch to fix _g_module_symbol() for NetBSD from Scott Presnell
        <srp@zgi.com>.

        * gmodule-dld.c: minor indentation.

        * gmodule-win32.c: minor cleanups.

        * merges from glib-1-2.
2000-03-01 04:57:07 +00:00
Tor Lillqvist
549faafc02 New function that returns the message string for a Win32 error code.
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-01 04:57:07 +00:00
Tim Janik
5991248acf do not return NULL symbols.
Wed Mar  1 05:34:47 2000  Tim Janik  <timj@gtk.org>

        * gmodule-beos.c (_g_module_symbol): do not return NULL symbols.

        * gmodule-os2.c: removed NetBSD specific defines.
        (_g_module_self): set an error message for unsupported behaviour.

        * gmodule-beos.c: many coding style fixups.
        (_g_module_open):
        (_g_module_self):
        (_g_module_close):
        (_g_module_symbol): bunch of memory leaks plugged.

        * gmodule-dl.c: make sure the error message returned from dlerror()
        is always != NULL, by using a wrapper function fetch_dlerror(). based
        on a patch to fix _g_module_symbol() for NetBSD from Scott Presnell
        <srp@zgi.com>.

        * gmodule-dld.c: minor indentation.

        * gmodule-win32.c: minor cleanups.

        * merges from glib-1-2.
2000-03-01 04:57:07 +00:00
Tor Lillqvist
726b3de454 Move to corresponding subdirectories.
2000-02-07  Tor Lillqvist  <tml@iki.fi>

* gmodule.rc.in gthread.rc.in: Move to corresponding subdirectories.

* Makefile.am
* gmodule/Makefile.am
* gthread/Makefile.am: Change accordingly.

* makefile.cygwin: Corresponding changes, some cleanup.
2000-02-07 21:22:30 +00:00
Martin Baulig
9bee3ef88d [FIXME: On NetBSD, dlsym() doesn't set errno != 0 when the system cannot be
found; this leads to an incorrect return value of g_module_symbol.]

2000-01-13  Martin Baulig  <martin@home-of-linux.org>

	* gmodule.c (g_module_open): Check whether `check_init' is not NULL
	before we attempt to call it.
2000-01-13 22:11:39 +00:00
Tor Lillqvist
bc5baaa76d Use FormatMessage to translate system error codes into textual messages.
1999-12-16  Tor Lillqvist  <tml@iki.fi>

* gmodule/gmodule-win32.c: Use FormatMessage to translate system
error codes into textual messages.
1999-12-16 20:29:12 +00:00
Tor Lillqvist
30cc3ed1fe Don't crash if removing a nonexistent value.
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.
1999-10-31 12:15:34 +00:00
Tor Lillqvist
7359af948d Don't define WIN32 and NATIVE_WIN32.
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.
1999-10-04 23:04:34 +00:00
Manish Singh
7ea73a0199 G_OS_FOO #defines. I *think* I got the cygwin and beos stuff right, but
I haven't tested it. The respective porters should fix any screwups

-Yosh
1999-10-04 02:32:50 +00:00
Tim Janik
ebeb32f252 added --export-dynamic so we can load dynmic modules, (required, according
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-08-26 13:09:50 +00:00
Tim Janik
87c7aeb93b 18:36. incorporated proposed cleanups from gtk-devel-list.
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.
1999-07-24 18:50:58 +00:00
CDT 1999 Shawn T. Amundson
2fd4a22a9d Another small fix.
Wed May 12 00:23:55 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * gmodule/Makefile.am: Another small fix.
1999-05-12 05:27:34 +00:00
CDT 1999 Shawn T. Amundson
0e7f2f16f7 Better testing reveals better methods. Fixes for BeOS.
Sat May  8 06:00:17 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * configure.in
          gmodule/Makefile.am
          gthread/Makefile.am: Better testing reveals better
          methods.  Fixes for BeOS.
1999-05-08 11:04:26 +00:00
CDT 1999 Shawn T. Amundson
499c9786d1 Port to BeOS by myself and Richard Offer.
Sat May  8 01:52:29 CDT 1999 Shawn T. Amundson <amundson@gtk.org>

        * configure.in
          gerror.c
          gmain.c
          gstrfuncs.c
          gutils.c
          ltconfig
          ltmain.sh
          gmodule/Makefile.am
          gmodule/gmodule.c
          gmodule/gmoduleconf.h.in
          gmodule/gmodule-beos.c
          gthread/Makefile.am: Port to BeOS by myself and Richard Offer.
1999-05-08 07:40:44 +00:00
Tor Lillqvist
2b688f549c New files, used to generate corresponding non-.in files when making a
* makefile.msc.in makefile.cygwin.in glibconfig.h.win32.in
 	config.h.win32.in tests/makefile.msc.in tests/makefile.cygwin.in:
 	New files, used to generate corresponding non-.in files when
 	making a dist. This is just so the version numbers will be kept in
 	synch automatically.

	* configure.in: Also substitute @GLIB_MAJOR_VERSION@,
 	@GLIB_MINOR_VERSION@, and @GLIB_INTERFACE_AGE@.

	* Makefile.am tests/Makefile.am: Also distribute makefile.cygwin.

	* gerror.c (g_on_error_query): On Win32, put up a MessageBox and
 	then exit.

	* glib.def: Add a couple of functions.
1999-05-06 17:33:15 +00:00
Manish Singh
380709d62f libtool 1.3 upgrade
use -avoid-version and -module for test plugins

-Yosh
1999-05-01 18:00:00 +00:00
Tor Lillqvist
2aa1277d60 Support added for building using a GNU toolchain on Win32,
i.e. gcc -mno-cygwin on cygwin (a.k.a. mingw32, using egcs-1.1.2).

	* README.win32: Updated.
	* build-dll makefile.cygwin tests/makefile.cygwin: New files.
	* glib.h glib.def glibconfig.h.win32 makefile.msc: Slight updates.
	* gmain.c: No need to include <fcntl.h> and <io.h> on Win32.
	* gmain.c gutils.c testglib.c tests/string-test.c: Test for
	NATIVE_WIN32, not _MSC_VER.
	* gmutex.c: Must declare g_thread_functions_for_glib_use as
	exported (using the GUTILS_C_VAR macro).
	* gutils.c gmodule/libgplugin_[ab].c: LibMain not needed.
	* gmodule/gmoduleconf.h.win32: Need underscore with gcc.
	* gthread/gthread.c: With gcc on Win32, must use memcpy to assign
	value of g_thread_functions_for_glib_use (?).
	* makefile.msc tests/makefile.msc: Cosmetics.
1999-04-24 13:52:51 +00:00
Asbjørn Pettersen
68b24cb4a8 add gmodule-os2.c 1999-04-19 06:44:56 +00:00
Asbjørn Pettersen
76a78f059a Add G_MODULE_IMPL_OS2 1999-04-07 18:17:38 +00:00
CST 1999 Shawn T. Amundson
b9ef2b41db inserted additional note to look for ChangeLog and AUTHORS file for a log
Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org>

        * *.[ch]: inserted additional note to look for ChangeLog and
	  AUTHORS file for a log of modifications.
1999-02-24 06:14:27 +00:00
Tim Janik
0df89d51a4 be more descriptive on unsupported systems.
Wed Feb 10 12:06:30 1999  Tim Janik  <timj@gtk.org>

        * gmodule.c (CHECK_ERROR): be more descriptive on unsupported systems.

Wed Feb 10 12:01:42 1999  Tim Janik  <timj@gtk.org>

        * configure.in: don't reset G_MODULE_IMPL, so it can be overridden
        from the command line.
1999-02-10 11:15:13 +00:00
Sebastian Wilhelmi
b37e032581 s/G_LOCK_DECLARE/G_LOCK_DEFINE/ throuhout glib. Added G_LOCK_EXTERN macro
1999-02-10  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* glib.h: s/G_LOCK_DECLARE/G_LOCK_DEFINE/ throuhout glib. Added
	G_LOCK_EXTERN macro to declare a lock externally.
1999-02-10 09:40:46 +00:00
Tim Janik
a8ff1b4fce fixed errernerous code wrt to thread specific error string allocation
Wed Feb 10 07:56:33 1999  Tim Janik  <timj@gtk.org>

        * gmodule.c (g_module_error): fixed errernerous code wrt to thread
        specific error string allocation handling.

Wed Feb 10 06:20:30 1999  Tim Janik  <timj@gtk.org>

        * gmutex.c (g_static_private_set): invoke destroy notifier when
        overwriting values, initialize new array fields with NULL.
        (g_static_private_free_data): do not skip destroy notification for
        data == NULL.

        * gutils.c (g_direct_equal): compare pointer values directly instead
        of just their guint values which is a loosing conversion for
        sizeof(gpointer)==8 systems.
        (g_get_any_init): restructured code so we don't use endless loops like
        while (1), which boil down to an ugly alias for goto.
        strip ,.* from the real name.
1999-02-10 08:06:26 +00:00
Manish Singh
9d71cc7f50 Xsed isn't valid here, don't use it
* acinclude.m4: Xsed isn't valid here, don't use it

* ltmain.sh
* ltconfig: better file magic regexp for Linux libs

* gmodule/Makefile.am: arg, noinst_LTLIBRARIES doesn't make shared
libs, revert my previous change to this file

* docs/texinfo.tex: add it so automake doesn't whine

-Yosh
1999-01-28 04:43:35 +00:00
Jeff Garzik
de56462be9 move gmodule changelog entry to gmodule changelog 1999-01-22 03:43:18 +00:00
EST 1999 Jeff Garzik
dc22ea7760 Add braces to eliminate an ambiguous else warning.
Thu Jan 21 12:40:11 EST 1999  Jeff Garzik  <jgarzik@pobox.com>

        * gmodule/gmodule-dl.c (_g_module_build_path):
        Add braces to eliminate an ambiguous else warning.

        * tests/{Makefile.am, string-test.c, strfunc-test.c}:
        Separate string and strfunc tests, working towards goal of
        having separate test for each of the GLib modules.
        Add a couple GString length tests.
1999-01-21 18:07:20 +00:00
Manish Singh
c01596714f new file
* HACKING: new file

* Makefile.am: since we require automake 1.4 now, ditch the build
top-level first and just use SUBDIRS

* gmodule/Makefile.am: use noinst_LTLIBRARIES instead of overriding
the install rule

-Yosh
1999-01-20 23:06:30 +00:00
Tor Lillqvist
f477518c3a Merge in current Win32 version. Almost no Unix code touched.
* README.win32: More text.

	* config.h.win32 glibconfig.h.win32: Update to match the
	corresponding generated files on Unix.

	* makefile.msc: Update with new source files, and gthread
 	library. Use the compiler flag -MD instead of using -D_DLL and
	"/nodefaultlib:libc msvcrt.lib" in the link phase.

	* glib.def: Include new functions, drop removed ones.

	* glib.h: Add comments about main loop and polling on Win32. (In
	general, it's only for the GIMP's use.) Add Win32 IO Channel
	functions. Remove the obsoleted old IO Channel stuff (which was
	in #if 0 already).

	* giowin32.c: New file.

	* gmain.c: Include config.h, conditionalize <sys/time.h>
 	inclusion.  Add g_poll implementation for Win32 (only for the
 	GIMP's needs for now, it's hard or even impossible to be as clean
 	and generic as on Unix). Implement g_get_current_time on Win32. If
 	threads aren't supported, don't try to wake up main thread's
 	loop. On Win32, use a semaphore and not a pipe to wake up the main
 	loop.

	* gmessages.c: On Win32, allocate a console window if the standard
	output handle is invalid before writing to stdout, and reopen stdout
	to that console window.

	* giochannel.c: Conditionalize unistd.h inclusion. Some indentation
	cleanup.

	* gstrfuncs.c: Include <signal.h>.

	* gutils.c: On Win32, also check the HOMEDRIVE and HOMEPATH
	environment variables.

	* gmodule-dl.c gmodule-dld.c: In
 	_g_module_build_path, don't add the "lib" prefix and
 	".so" or ".sl" suffix if already there.

	* gmodule-win32.c: Likewise for the ".dll" suffix.

	* gthread-posix.c: Conditionalize <sys/time.h> inclusion.
1999-01-16 23:46:42 +00:00
Manish Singh
6476df5865 Shut up cvs
-Yosh
1999-01-05 20:28:45 +00:00
Tim Janik
b2e318ff3e version bump to 1.1.8, binary age 0, interface age 0.
Wed Dec 16 03:16:58 1998  Tim Janik  <timj@gtk.org>

        * configure.in: version bump to 1.1.8, binary age 0, interface age 0.

        * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and
        g_trylock() to G_TRYLOCK(), since these are macros that expand to
        nothing with --disable-threads.
        changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced
        G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE().
        changed semantics of g_thread_supported to g_thread_supported() so it
        can be used as a function like g_module_supported(). the actuall
        definition is still a macro that expands into a variable for
        performance reasons though.
        various indentation and coding style cleanups.

        * configure.in: added --enable-threads that defaults to yes.

        * gmutex.c: changed tests g_thread_supported to g_thread_supported (),
        changed variable settings of g_thread_supported
        to g_threads_got_initialized.

        garray.c:
        gcache.c:
        gdataset.c:
        gdate.c:
        ghash.c:
        glist.c:
        gmain.c:
        gnode.c:
        gslist.c:
        gstring.c:
        gtree.c:
        gutils.c:
        changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/,
        s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/.
1998-12-16 05:38:35 +00:00
Owen Taylor
931ea95265 This commit merges the glib-threads branch into the main
branch. See the ChangeLog for details of the changes.

In brief overview:

 - The set of threading functions can be set
 - A default implementation is provided in -lgthread
 - All static data structures are locked using these
   functions if g_thread_init() is called.
1998-12-15 05:28:02 +00:00
Jeff Garzik
e54410edc2 Put -DFOO stuff into Makefile.am INCLUDES. 1998-11-29 22:47:07 +00:00
PST 1998 Manish Singh
61bdacfb59 applied glib-tml-981120-0, change log appended below.
Tue Nov 24 18:57:59 PST 1998 Manish Singh <yosh@gimp.org>

        * applied glib-tml-981120-0, change log appended below.

        * glibconfig.h.win32: passthrough 64-bit constants unchanged, VC++
        infers them

Fri Nov 20 22:26:43 1998  Tor Lillqvist  <tml@iki.fi>

        * glib.h: Moved MSC pragmas from glib.h to glibconfig.h.win32.
        peer_offset field in WIN32 part of GIOChannel removed, need_wakeups
        added. Added "extern" to __declspec(dllimport).

        * gutils.c: Initialise need_wakeups.

        * glibconfig.h.win32: Pragmas moved here. Define G_GINT64_CONSTANT.

        * gmodule/gmodule.def: Added g_module_build_path.

        * gscanner.c: (g_scanner_cur_value) Move initailisation of v
        to before its use.

        * glib.def: Added g_(s)list_sort.

        * makefile.msc: A few more comments.

-Yosh
1998-11-25 03:02:56 +00:00
Tim Janik
6515316f82 added empty default imlementation so gmodule.so compiles on systems that
Fri Nov 20 14:43:44 1998  Tim Janik  <timj@gtk.org>

        * gmodule.c (_g_module_build_path): added empty default imlementation
        so gmodule.so compiles on systems that are not yet supported, fix from
        Erik Bagfors <bagfors@hpc2n.umu.se>.
1998-11-20 13:49:35 +00:00
Nuno Ferreira
318392b51c Put -I$(top_srcdir) back into INCLUDES.
* Put -I$(top_srcdir) back into INCLUDES.
1998-11-13 21:57:55 +00:00
Jeff Garzik
242cb51bfe INCLUDES is the right way to add to CFLAGS, not DEFS. Also there are bugs
INCLUDES is the right way to add to CFLAGS, not DEFS.
	Also there are bugs with '+=' in makefiles.

	Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES.
	Removed redundant -I from INCLUDES.

	This fixes an annoying bug where autoconf's DEFS, which includes
	the important -DHAVE_CONFIG_H, was lost.  (due to += weirdness)
1998-11-12 04:28:52 +00:00
Tor Lillqvist
a6149403de removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>

        * glib.h: removed dummy structure definitions for struct _GCache,
        _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.

        * gutils.c: implement glib's inline functions _after_ all include
        statements have been processed.
        removed Tor's MAXPATHLEN check since there already was one supplied
        further down in this file.
        (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
        since lcc maybe used on other platforms as well. why in hell is this
        stuff required?
        (g_get_any_init): for windows, if the user name is supplied, use it as
        realname also.
        in general, if there is no homedir specified, use the tmpdir that
        we already figured.

        * gtimer.c (g_timer_elapsed): changed a g_assert() statement to
        g_return_if_fail().

        * applied glib-tml-981020-0.patch for WIN32 portability, added some
        comments and g_return_if_fail() statements, minor indentation fixes.
        ChangeLog entry from Tor Lillqvist is appended.

        * glib.h (struct dirent): use lower case structure members.

        * glib.h:
        * makefile.lcc:
        * makefile.msc:
        s/COMPILING_GLIB/GLIB_COMPILATION/

1998-10-20: Tor Lillqvist <tml@iki.fi>

        * README.win32 glib.def gmodule.def
        * glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
        New files for the Windows port. The .def files list exported
        symbols for the Microsoft linker and compatibles.

        * configure.in:
        Added checks for some platform-dependent headers: pwd.h sys/param.h
        sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.

        * gerror.c:
        Conditionalized inclusion of system-dependent headers. Changes
        for Windows: no gdb to do a stack trace. Just call abort().

        * glib.h:
        Changes for Windows:

        Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
        platform-dependent file name syntax elements. Added macros
        G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
        platform-dependent search path syntax conventions.

        Added pragmas for Microsoft C to make it more pedantic.

        Marked GLib's global variables for export from DLL.

        Added the function g_strescape that escapes backslashes.

        Added functions g_path_is_absolute and g_path_skip_root to
        handle platform-dependent file name syntax.

        Added the function g_getenv that expands environment variables
        that contain references to other environment variables, as is
        typical on Windows NT.

        Added the GIOChannel structure which is used to encapsulate the
        IPC mechanism used by the GIMP's plug-ins, and possibly other
        things later. On Unix a GIOChannel encapsulates just a file
        descriptor. On Windows it contains a file handle from _pipe() and a
        few other things related to the implementation of gdk_input_add
        and GIMP plug-in communication. Subject to change.

        Removed duplicate declarations of the version variables.

        For the Microsoft compiler, declare own implementation of
        ftruncate and the <dirent.h> functions.

        * gmem.c:
        Define a symbolic name  for the profiling table size.

        * gmessages.c:
        Conditionalized inclusion of unistd.h. On Windows, output using
        stdio to stdout.

        * gscanner.c:
        Conditionalized inclusion of unistd.h. Added changes for
        Microsoft C. Added CR to the skipped character set. Added small
        workaround for MSC compiler bug in g_scanner_cur_value.

        * gstrfuncs.c:
        Added the function g_strescape, which escapes the backslash
        character. Needed especially when printing Windows filenames.

        * gtimer.c:
        Conditionalized inclusion of unistd.h and sys/time.h. Added
        implementations for Windows.

        * gutils.c:
        Conditionalized inclusion of platform-dependent headers. Use
        the platform-independent file name syntax macros.
        Conditionalize code on platform-dependent features. Added the
        functions g_path_is_absolute g_path_skip_root and g_getenv.
        Added the GIOChannel-related functions. Added
        compiler-dependent Unix compatibility functions for Windows.

        * makefile.lcc makefile.msc:
        New files. Compiler-specific makefiles for LCC-Win32 and
        Microsoft C. Only Microsoft C is actually supported currently.

        * testglib.c:
        Added pathname check cases for Windows. Added workaround for
        bug in the Microsoft runtime library. Improved some tests a bit.

Tue Oct 27 04:00:11 1998  Tim Janik  <timj@gtk.org>

        * testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
        this needs to be more constistent throughout the code, do we go for
        NATIVE_WIN32 or WIN32?

        * gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
        NATIVE_WIN32, since lcc maybe used on other platforms as well.
        * libgplugin_a.c (LibMain):
        * libgplugin_b.c (LibMain):
        likewise. not sure i like this special requirement for lcc in here.

        * gmodule-dl.c (_g_module_build_path):
        feature empty "" directories and prepend the module name with "lib".

        * gmodule-dld.c (_g_module_build_path):
        * gmodule-win32.c (_g_module_build_path):
        feature empty "" directories.

        * we need some more magic in the _g_module_build_path variants
        so we don't append/prepend lib and .so, .sl or .dll for those names
        that already contain it.

        * applied patch from Tor Lillqvist for g_module_build_path() and
        windows support.

1998-10-20: Tor Lillqvist <tml@iki.fi>

        * gmodule/gmodule-win32.c:
        New file.

        * gmodule/gmodule.c gmodule/gmodule.h:
        Added the funcion g_module_build_path that builds the path to
        a module file, decorating the name according to the system's
        conventions.  Added the Windows implementation.

        * gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
        Added LibMain for LCC-Win32.

        * gmodule/testgmodule.c:
        Handle Windows dll names.
1998-10-27 04:11:34 +00:00
Tor Lillqvist
57d59041f8 New function that returns the message string for a Win32 error code.
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.
1998-10-27 04:11:32 +00:00
Tor Lillqvist
57b7674d98 removed dummy structure definitions for struct _GCache, _GTree, _GTimer,
Tue Oct 27 03:00:50 1998  Tim Janik  <timj@gtk.org>

        * glib.h: removed dummy structure definitions for struct _GCache,
        _GTree, _GTimer, _GMemChunk, _GListAllocator and _GStringChunk.

        * gutils.c: implement glib's inline functions _after_ all include
        statements have been processed.
        removed Tor's MAXPATHLEN check since there already was one supplied
        further down in this file.
        (LibMain): special cased the #ifdef __LCC__ case for NATIVE_WIN32,
        since lcc maybe used on other platforms as well. why in hell is this
        stuff required?
        (g_get_any_init): for windows, if the user name is supplied, use it as
        realname also.
        in general, if there is no homedir specified, use the tmpdir that
        we already figured.

        * gtimer.c (g_timer_elapsed): changed a g_assert() statement to
        g_return_if_fail().

        * applied glib-tml-981020-0.patch for WIN32 portability, added some
        comments and g_return_if_fail() statements, minor indentation fixes.
        ChangeLog entry from Tor Lillqvist is appended.

        * glib.h (struct dirent): use lower case structure members.

        * glib.h:
        * makefile.lcc:
        * makefile.msc:
        s/COMPILING_GLIB/GLIB_COMPILATION/

1998-10-20: Tor Lillqvist <tml@iki.fi>

        * README.win32 glib.def gmodule.def
        * glibconfig.h.win32 gmodule/gmoduleconf.h.win32:
        New files for the Windows port. The .def files list exported
        symbols for the Microsoft linker and compatibles.

        * configure.in:
        Added checks for some platform-dependent headers: pwd.h sys/param.h
        sys/select.h sys/time.h sys/times.h unistd.h, and the function lstat.

        * gerror.c:
        Conditionalized inclusion of system-dependent headers. Changes
        for Windows: no gdb to do a stack trace. Just call abort().

        * glib.h:
        Changes for Windows:

        Added macros G_DIR_SEPARATOR, G_DIR_SEPARATOR_S for
        platform-dependent file name syntax elements. Added macros
        G_SEARCHPATH_SEPARATOR, G_SEARCHPATH_SEPARATOR_S for
        platform-dependent search path syntax conventions.

        Added pragmas for Microsoft C to make it more pedantic.

        Marked GLib's global variables for export from DLL.

        Added the function g_strescape that escapes backslashes.

        Added functions g_path_is_absolute and g_path_skip_root to
        handle platform-dependent file name syntax.

        Added the function g_getenv that expands environment variables
        that contain references to other environment variables, as is
        typical on Windows NT.

        Added the GIOChannel structure which is used to encapsulate the
        IPC mechanism used by the GIMP's plug-ins, and possibly other
        things later. On Unix a GIOChannel encapsulates just a file
        descriptor. On Windows it contains a file handle from _pipe() and a
        few other things related to the implementation of gdk_input_add
        and GIMP plug-in communication. Subject to change.

        Removed duplicate declarations of the version variables.

        For the Microsoft compiler, declare own implementation of
        ftruncate and the <dirent.h> functions.

        * gmem.c:
        Define a symbolic name  for the profiling table size.

        * gmessages.c:
        Conditionalized inclusion of unistd.h. On Windows, output using
        stdio to stdout.

        * gscanner.c:
        Conditionalized inclusion of unistd.h. Added changes for
        Microsoft C. Added CR to the skipped character set. Added small
        workaround for MSC compiler bug in g_scanner_cur_value.

        * gstrfuncs.c:
        Added the function g_strescape, which escapes the backslash
        character. Needed especially when printing Windows filenames.

        * gtimer.c:
        Conditionalized inclusion of unistd.h and sys/time.h. Added
        implementations for Windows.

        * gutils.c:
        Conditionalized inclusion of platform-dependent headers. Use
        the platform-independent file name syntax macros.
        Conditionalize code on platform-dependent features. Added the
        functions g_path_is_absolute g_path_skip_root and g_getenv.
        Added the GIOChannel-related functions. Added
        compiler-dependent Unix compatibility functions for Windows.

        * makefile.lcc makefile.msc:
        New files. Compiler-specific makefiles for LCC-Win32 and
        Microsoft C. Only Microsoft C is actually supported currently.

        * testglib.c:
        Added pathname check cases for Windows. Added workaround for
        bug in the Microsoft runtime library. Improved some tests a bit.

Tue Oct 27 04:00:11 1998  Tim Janik  <timj@gtk.org>

        * testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
        this needs to be more constistent throughout the code, do we go for
        NATIVE_WIN32 or WIN32?

        * gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
        NATIVE_WIN32, since lcc maybe used on other platforms as well.
        * libgplugin_a.c (LibMain):
        * libgplugin_b.c (LibMain):
        likewise. not sure i like this special requirement for lcc in here.

        * gmodule-dl.c (_g_module_build_path):
        feature empty "" directories and prepend the module name with "lib".

        * gmodule-dld.c (_g_module_build_path):
        * gmodule-win32.c (_g_module_build_path):
        feature empty "" directories.

        * we need some more magic in the _g_module_build_path variants
        so we don't append/prepend lib and .so, .sl or .dll for those names
        that already contain it.

        * applied patch from Tor Lillqvist for g_module_build_path() and
        windows support.

1998-10-20: Tor Lillqvist <tml@iki.fi>

        * gmodule/gmodule-win32.c:
        New file.

        * gmodule/gmodule.c gmodule/gmodule.h:
        Added the funcion g_module_build_path that builds the path to
        a module file, decorating the name according to the system's
        conventions.  Added the Windows implementation.

        * gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
        Added LibMain for LCC-Win32.

        * gmodule/testgmodule.c:
        Handle Windows dll names.
1998-10-27 04:11:32 +00:00
Raja R Harinath
74ce2c3362 Remove `#pragma }'. Likewise.
* gmodule.h: Remove `#pragma }'.
* gmoduleconf.h.in: Likewise.
1998-10-25 22:39:20 +00:00
Tim Janik
634e4a58c6 reverted part of the changes from Sebastian Wilhelmi (1998-10-20). don't
Wed Oct 21 19:22:58 1998  Tim Janik  <timj@gtk.org>

        * configure.in (G_MODULE_HAVE_DLERROR): reverted part of the changes
        from Sebastian Wilhelmi (1998-10-20). don't specify a specific loading
        behaviour (i.e. RTLD_NOW) when we are not sure whether it is supplied.
        changed the return value from (!f2 && f1) to (!f2 || f1) so we default
        to not needing an underscore. reverted the extra plugin.c building,
        because .lo files are not ELF libraries, this can't work. This needs
        further investigation on Solaris...

Wed Oct 21 19:58:27 1998  Tim Janik  <timj@gtk.org>

        * gmodule.c (g_module_symbol): fixed a string pointer bug that could
        cause garbage error messages from g_module_symbol() for systems that
        NEED_USCORE.
1998-10-21 18:04:47 +00:00
Tim Janik
2d68cbbb7d NEWS file update for upcoming release of GLib + GModule version 1.1.3,
Mon Sep 21 02:22:12 1998  Tim Janik  <timj@gtk.org>

        * NEWS file update for upcoming release of GLib + GModule
        version 1.1.3, binary age 0, interface age 0. (GModule uses
        the same version numbers as GLib.)

        * glib.h: swap the inclusion of of float.h and limits.h to work
        around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by
        Per Abrahamsen  <abraham@dina.kvl.dk>).

        * glib.h:
        * gscanner.c: renamed the GValue union to GTokenValue, this should
        not affect source compatibility in most cases.

        * ghash.c: added some g_return_if_fail() statements. make
        g_hash_table_lookup_node() an inline function so we save an extra
        function invokation on lookups.

Mon Sep 21 01:54:48 1998  Tim Janik  <timj@gtk.org>

        * gmodule.h:
        * gmodule.c: renamed old _de_init functionality to _unload.
        modules are now expected to export:
        G_MODULE_EXPORT const gchar* g_module_check_init (GModule *module);
        and
        G_MODULE_EXPORT void g_module_unload (GModule *module);
        returning a string other than NULL from g_module_check_init() will
        prevent the module from being loaded. a call to g_module_make_resident()
        from g_module_unload() will prevent the module from being unloaded and
        still make it resident.
1998-09-21 02:32:30 +00:00
Manish Singh
90b28c92bc .cvsignore updates to shutup CVS
-Yosh
1998-09-17 22:57:16 +00:00
Tim Janik
ea4b8e4c02 implemented g_datalist_* along the lines of g_dataset, but operates on an
Thu Sep 17 06:36:25 1998  Tim Janik  <timj@gtk.org>

        * glib.h:
        * gdataset.c: implemented g_datalist_* along the lines of g_dataset,
        but operates on an opaque gpointer *datalist; pointer, e.g. for the
        implementation of GtkObject named data.
        we cache a certain portion of the already freed data entries now, to
        gain a slight performance improve with data reallocation.

Thu Sep 17 06:34:22 1998  Tim Janik  <timj@gtk.org>

        * gmodule.h:
        * gmodule.c: implemented g_module_make_resident() which can be
        used to make modules resident.
        fixed a buglet about the optional "g_module_de_init" function in
        modules, which could get invoked twice on very obscure occasions.
1998-09-17 04:59:41 +00:00
Owen Taylor
7cc610b064 Update to libtool-1.2b, change library versioning scheme to drop
Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>

	* Makefile.am glib-config.in l*: Update to libtool-1.2b,
	change library versioning scheme to drop LT_RELEASE
	from the -l line, while keeping it in the soname.
1998-09-15 19:08:11 +00:00
Tim Janik
b420fa8418 removed this function which was not publically exported in glib.h. to
Mon Aug 24 02:08:56 1998  Tim Janik  <timj@gtk.org>

        * glib.h:
        * gstring.c:
        * gstrfuncs.c:
        (g_vsprintf): removed this function which was not publically
        exported in glib.h. to export it, it should have been named
        differently in the first place, since its semantics differ from
        vsprintf(). apart from that, it was a possible cause for
        problems since it worked on a previously allocated memory area and
        was used in a lot places of glib. exporting it would have been a
        guararant for problems with threaded programs.
        (g_printf_string_upper_bound): exported this function to return
        a string size, guarranteed to be big enough to hold the fully
        expanded format+args string. added 'q', 'L' and 'll' flag handling.
        in fact, the newly allocated area is in most cases much bigger than
        required.
        (g_strdup_vprintf()): new function returning a newly allocated string
        containing the contents of *format and associated args (size is
        calculated with g_printf_string_upper_bound()).
        (g_strdup_printf): new function which wraps g_strdup_vprintf().

        * configure.in: check for va_copy() or __va_copy() alternatively.
        check whether va_lists can be copyied by value.

        * glib.h: provide a definition for G_VA_COPY.

        * glib.h:
        * gmessages.c:
        (g_logv):
        (g_vsnprintf):
        pass va_lists by value, not by reference, since this causes problems
        on platforms that implement va_list as as arrays. internaly, use
        G_VA_COPY (new_arg, org_arg); va_end (new_arg); to produce a second
        va_list variable, if multiple passes are required. changed all
        callers.

        * glib.h:
        * gerror.h:
        renamed g_debug() to g_on_error_query(), cleaned up a bit.
        renamed g_stack_trace() to g_on_error_stack_trace() since both
        functions cluttered different namespaces.
        there is an appropriate comment in glib.h now that explains the
        unix and gdb specific dependencies of both functions.
        removed g_attach_process().
        g_on_error_stack_trace() should probably be handled with caution,
        i've seem several different linux versions (2.0.x) become unstable
        after invokation of this function.
1998-08-24 05:26:53 +00:00
Tim Janik
0b870ec357 provide no operation implementation for the underlying _g_module_*
Thu Aug 20 07:08:16 1998  Tim Janik  <timj@gtk.org>

        * gmodule.c: provide no operation implementation for the underlying
        _g_module_* functions, so we at least compile on systems that have
        neither of G_MODULE_IMPL_DL or G_MODULE_IMPL_DLD.
1998-08-20 05:10:27 +00:00
Tim Janik
18466ba2ef indentation fix. 1998-08-17 06:29:22 +00:00
CDT 1998 Shawn T. Amundson
b03e280bd1 Released GLib 1.1.3
Sun Aug 16 23:23:46 CDT 1998 Shawn T. Amundson <amundson@gtk.org>

        * Released GLib 1.1.3

        * gmodule/Makefile.am: added gmodule-dl.c and gmodule-dld.c to
          EXTRA_DIST
        * glib.spec: version = 1.1.3
1998-08-17 04:27:37 +00:00
Tim Janik
e746ca4f15 changed the return type for the GModuleCheckInit function to be a string,
Mon Aug 17 03:41:52 1998  Tim Janik  <timj@gtk.org>

        * gmodule.h:
        * gmodule.c (g_module_open): changed the return type for the
        GModuleCheckInit function to be a string, describing the error
        condition.
        (g_module_symbol): show the failing symbol on error messages.
1998-08-17 02:40:30 +00:00
Tim Janik
d5803865b4 version bump to 1.1.3, binary age 0, interface age 0.
Sun Aug 16 20:28:27 1998  Tim Janik  <timj@gtk.org>

        * version bump to 1.1.3, binary age 0, interface age 0.

        * glib.h: be nice to platforms that don't have gint64 and don't
        issue #warning on every compilation. since glib doesn't require
        gint64 itself, packages that need gint64 should test for this
        themselves.

        * glib.h:
        * gutils.c: added a new function g_vsnprintf().

Fri Aug 14 16:41:53 1998  Tim Janik  <timj@gtk.org>

        * glib.h: added static inline functions for bit mask tests:
        g_bit_nth_lsf, g_bit_nth_msf and g_bit_storage.

Fri Aug 13 14:23:37 1998  Tim Janik  <timj@gtk.org>

        * glib.h:
        * gmessages.c:
        revised the message handling system, which is now based on a new
        mechanism g_log*. most of the assertment macros got adapted to
        feature the new g_log() call with an additional specification of
        the log level in a preprocessor macro G_LOG_DOMAIN. if G_LOG_DOMAIN
        is undefined upon the includion of glib.h, it'll be defined with a
        value of (NULL) and thus preserves the original bahaviour for
        warning and error messages. the message handler setting functions
        for g_warning, g_error and g_message are only provided for backwards
        compatibility and might get removed somewhen.

        * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain
        to "GLib" upon compilation. we currently have to add this definition
        to the DEFS variable.
        * testglib.c: we need an ugly #undef G_LOG_DOMAIN at the start
        of this file currently, since automake doesn't support per target
        _CFLAGS yet.

        * glib.h: changed some gints to gbooleans, made a few const corrections,
        removed some superfluous G_STMT_START{}G_STMT_END wrappers, added some
        in other required places.

        * gnode.c:
        (g_node_prepend):
        (g_node_insert_before):
        (g_node_insert):
        (g_node_append_data):
        (g_node_prepend_data):
        (g_node_insert_data_before):
        (g_node_insert_data):
        (g_node_append):
        return (node), so these macros/functions can be usefully chained with
        g_node_new().

[GModule]
Fri Aug 14 02:24:39 1998  Tim Janik  <timj@gtk.org>

        * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain
        to "GModule" upon compilation. we currently have to add this definition
        to the DEFS variable.
        * testgmodule.c: we need an ugly #undef G_LOG_DOMAIN at the start
        of this file currently, since automake doesn't support per target
        _CFLAGS yet.
1998-08-16 21:14:11 +00:00
Tim Janik
fac803a223 minor changes to internal interface.
Mon Aug 10 03:35:57 1998  Tim Janik  <timj@gtk.org>

        * gmodule.c: minor changes to internal interface.
        * gmodule-dl.c:
        * gmodule-dld.c: put some comments into the files, and provided
        better error checking for shl_findsym(). whish i had a system to
        test this stuff on.
1998-08-10 01:36:18 +00:00
Tim Janik
52f1266e0a minor hack to cause SUBDIRS (gmodule) to be build last. we do this by
Mon Aug 10 02:17:19 1998  Tim Janik  <timj@gtk.org>

        * Makefile.am: minor hack to cause SUBDIRS (gmodule) to be build
        last. we do this by making all-recursive-am depend on all-am.

Mon Aug 10 02:18:31 1998  Tim Janik  <timj@gtk.org>

        * Makefile.am (lib_LTLIBRARIES): for now, skip the dependency on
        -lglib for libgmodule-1.1.la, libgplugin_a.la and libgplugin_b.la
        since this clashes with inter-library-dependencies for not installed
        libraries. glib-config takes care of this for the usuall case, but
        there needs to be a better way...
1998-08-10 00:26:44 +00:00
Tim Janik
d94e25520b changelog updates 1998-08-09 14:00:01 +00:00
Tim Janik
af0977e8e7 hm, fixup call sequences for check_init() and de_init().
we need to have internal structures in a sane state before
we call external functions.
1998-08-09 13:13:12 +00:00
Tim Janik
c36aa81e1b erm, fix copyright notice. 1998-08-09 11:42:02 +00:00
Tim Janik
1718cd8c8d fix cmopiler warnings. check (de)initialization code. 1998-08-09 11:39:50 +00:00
Tim Janik
6050cbef0a updates 1998-08-09 08:37:51 +00:00
Tim Janik
33cd4b82fc do we want the .h file also? .... yes! ;) 1998-08-09 08:33:42 +00:00
Tim Janik
db5918bf8e initial import of gmodule. 1998-08-09 08:32:18 +00:00