1a23718015a14f0662e2cfb8f79b68c0c1c24e18
[platform/upstream/glib.git] / gmodule / ChangeLog
1 Tue May 11 23:23:21 2004  Matthias Clasen  <maclas@gmx.de>
2
3         * gmodule-ar.c (_g_module_open): Make it compile on AIX.  
4         (#141159, Michael Wilson)
5
6 2004-03-31  Tor Lillqvist  <tml@iki.fi>
7
8         * gmodule-win32.c (_g_module_build_path): On Cygwin, use the "cyg"
9         prefix, and accept also the normal "lib". (#138403, Roger Leigh)
10
11 Tue Feb 24 14:09:21 2004  Owen Taylor  <otaylor@redhat.com>
12
13         * === Released 2.3.3 ===
14
15 Sun Feb 22 02:28:43 2004  Matthias Clasen  <maclas@gmx.de>
16
17         Bug #85930, Laurent Vivier:
18         
19         * gmodule-ar.c: Implementation of native module management for AIX.
20         * gmoduleconf.h.in: 
21         * gmodule.c: Support gmodule-ar.c 
22
23 2003-01-01  Tor Lillqvist  <tml@iki.fi>
24
25         * gmodule-win32.c (_g_module_build_path): Use g_ascii_strcasecmp().
26
27 Tue Dec  3 20:56:19 2002  Owen Taylor  <otaylor@redhat.com>
28
29         * gmodule.c (g_module_open): Properly refcount the
30         main module if it is already open. (#98648)
31
32 Sat Mar  2 14:46:17 2002  Owen Taylor  <otaylor@redhat.com>
33
34         * gmodule-beos.c (_g_module_build_path) * gmodule-dyld.c (_g_module_build_path) 
35           gmodule-dl.c (_g_module_build_path): Use G_MODULE_SUFFIX rather than
36         a hardcoded ".so". (#72803)
37
38 Sun Feb 17 18:15:22 2002  Owen Taylor  <otaylor@redhat.com>
39
40         * gmodule.c (g_module_open): Fix typo when checking
41         if file + module_suffix exists. (Miroslaw Dobrzanski-Neumann,
42         #71801)
43
44 2001-11-24  Tor Lillqvist  <tml@iki.fi>
45
46         * Makefile.am: Remove rule for testgmodule.exp, too.
47
48 2001-11-22  Tor Lillqvist  <tml@iki.fi>
49
50         * gmodule-win32.c: Current w32api headers do include tlhelp32.h,
51         so no need to have an extract from it here.
52
53 Mon Nov 19 16:12:12 2001  Owen Taylor  <otaylor@redhat.com>
54
55         * Makefile.am makefile.msc.in makefile.mingw.in: Remove
56         testgmodule and associated plugin files; we don't need _both_ this
57         and ../tests/module-test.c
58
59 2001-11-16  Michael Meeks  <michael@ximian.com>
60
61         * gmodule.c (parse_libtool_archive): fix leak.
62
63 2001-10-30  Dan Winship  <danw@ximian.com>
64
65         * Makefile.am (EXTRA_DIST): Add gmodule-dyld.c
66
67 2001-10-23  Tor Lillqvist  <tml@iki.fi>
68
69         * Makefile.am: (Win32): If we have built the MSVC import library,
70         install it. Install the gcc import library. Also support
71         uninstall.
72
73 2001-10-09  Tor Lillqvist  <tml@iki.fi>
74
75         * gmodule-win32.c (_g_module_build_path): More Unix compatibility:
76         Add "lib" prefix in case the module name doesn't already have it,
77         except if it ends with ".dll" (in which case it probably already
78         is the name of an existing DLL). This is needed for instance for
79         the gdk-pixbuf loaders, which are called "lib*.dll", but
80         gdk-pixbuf-io calls g_module_build_path without the "lib" prefix.
81
82 2001-10-03  jacob berkman  <jacob@ximian.com>
83
84         * libgplugin_a.c: (gplugin_a_module_func): 
85         * gmodule.h: s/retrive/retrieve/
86
87 2001-09-25  Tor Lillqvist  <tml@iki.fi>
88
89         * makefile.mingw.in: Fix missing end @ in @LT_CURRENT@.
90
91         * makefile.msc.in: Use same DLL and import library names as
92         libtool.
93         
94 2001-09-19  Tor Lillqvist  <tml@iki.fi>
95
96         * gmodule.rc.in: Correct InternalName and OriginalFilename to
97         match what we actually produce.
98
99 2001-09-18  Tor Lillqvist  <tml@iki.fi>
100
101         * Makefile.am: On Win32, pass a dummy -rpath flag to libtool when
102         building libgplugin_[ab].la, otherwise libtool doesn't create a
103         DLL, but a static archive.
104
105 2001-07-20  Hans Breuer  <hans@breuer.org>
106
107         * makefile.msc.in : reflect glib move
108
109 2001-05-21  Mark Murnane  <Mark.Murnane@ireland.sun.com>
110
111         * gmodule.c (g_str_check_suffix):  Modified type of string_len
112         and suffix_len to be gsize.  Properly accommodates return from
113         strlen().
114
115 2001-05-29  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
116
117         * gmodule.c (g_module_set_error_unduped): Do not g_strdup, as
118         promised in the function name.
119
120 Tue May 29 12:57:51 2001  Tim Janik  <timj@gtk.org>
121
122         * gmodule.c (g_module_symbol): erk, strconcat needs NULL as last arg.
123         make sure we pass module name with suffix into backend open.
124
125 Mon May 28 20:19:25 2001  Tim Janik  <timj@gtk.org>
126
127         * gmodule.c (g_module_open): as a last resort, if we can't access()
128         the module, leave it up to the platform backends to find it.
129         (fixes implicit search patch loading i broke with my last
130         commit, spotted by Padraig O'Briain).
131
132 Thu May 24 03:43:12 2001  Tim Janik  <timj@gtk.org>
133
134         * gmodule.c (g_module_open): reordered code so we have a single
135         module loading point (for reliable error messages). do access()
136         tests to figure plausible file names.
137         make error messages more verbose so users canfigure what's going on.
138
139 2001-04-20  Dan Winship  <danw@ximian.com>
140
141         * gmodule-dyld.c: gmodule implementation for Darwin/Mac OS X
142
143         * gmodule.c: 
144         * gmoduleconf.h.in: Add gmodule-dyld support
145
146         * testgmodule.c (main): Fix spelling
147
148 2001-03-13  Tor Lillqvist  <tml@iki.fi>
149
150         From Edward M. Lee  <tailbert@yahoo.com>:
151
152         * gmodule-win32.c (_g_module_build_path): use (cygwin friendly) dir
153         separator.
154
155 2001-03-12  Tor Lillqvist  <tml@iki.fi>
156
157         * Makefile.am (libgplugin_a_la_LIBADD, libgplugin_b_la_LIBADD):
158         Link with the libgmodule la only on Win32.
159
160 2001-03-10  Tor Lillqvist  <tml@iki.fi>
161
162         * Makefile.am: Use the _LIBADD dependency on libglib only on the
163         Win32 platform (including Cygwin).
164
165 2001-03-07  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
166
167         * Makefile.am, makefile.mingw.in, makefile.msc.in: Set
168         G_LOG_DOMAIN to \"GModule\" instead of g_log_domain_gmodule.
169
170         * gmodule.def, gmodule.h, gmodule.c: Removed g_log_domain_gmodule.
171
172 2001-02-21  Tor Lillqvist  <tml@iki.fi>
173
174         * gmodule.h: Use G_BEGIN_DECLS and G_END_DECLS. Define
175         G_MODULE_EXPORT correctly on Cygwin, too.
176
177         * gmodule-win32.c (_g_module_open): Convert path to Windows format
178         on Cygwin.
179
180         * Makefile.am (libglib): Use libglib-1.3.la from
181         top_builddir. Invoke libtool with -no-undefined for Win32 and
182         Cygwin.
183
184 2001-02-17  Havoc Pennington  <hp@pobox.com>
185
186         Applied patch from Soeren Sandmann:
187         
188         * gmodule.c (g_module_error): G_CONST_RETURN
189         (g_module_name): G_CONST_RETURN
190
191 Sat Feb 17 07:27:15 2001  Tim Janik  <timj@gtk.org>
192
193         * gmodule.c: work around platforms that have broken RTLD_GLOBAL.
194
195 2001-01-27  Tor Lillqvist  <tml@iki.fi>
196
197         * gmodule.c: (Win32) Need <io.h> for open() and close().
198
199 2000-12-22  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
200
201         * gmodule.c: Make g_module_open more tolerant wrt to the module
202         name. First it tries to open the module as named, if that fails,
203         it checks, whether it is a libtool archive and parses it, if that
204         fails it appends the systems shared library suffix
205         (i.e. ".so") (if not already found) and tries again and if that
206         fails it tries to append the ".la" libtool suffix (if not already
207         found) and parses it.
208
209         * gmodule.c: Lock recursive mutex during most module functions for
210         safety.
211
212         * gmodule-dl.c: Return an error from _g_module_symbol only, if
213         dlerror says so. All other functions return an error as well, if
214         dlerror returns NULL.
215
216         * testgmodule.c: Thanks to the above change the #ifdefs have
217         vanished.
218
219 2000-10-15  Raja R Harinath  <harinath@cs.umn.edu>
220
221         * Makefile.am (BUILT_EXTRA_DIST): New variable.
222         (dist-hook): Handle $(BUILT_EXTRA_DIST).
223
224 2000-09-28  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
225
226         * gmodule.h: Moved declaration of g_log_domain_gmodule up before
227         the inclusion of glib.h to make it compile on non-gcc compilers.
228
229 2000-07-22  Tor Lillqvist  <tml@iki.fi>
230
231         * makefile.mingw.in: Remove leftover gmodule-win32res.o stuff. The
232         build-dll script automagically handles resources.
233
234 2000-07-20  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
235
236         * libgplugin_a.c, testgmodule.c: Use g_path_get_basename instead
237         of the deprecated g_basename.
238
239 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
240
241         * gmodule.h: include glib.h before doing extern "C". Makes some C++
242         compiler happy. Reported by Denis Vakatov
243         <vakatov@peony.nlm.nih.gov>.
244
245 2000-07-19  Tor Lillqvist  <tml@iki.fi>
246
247         * gmodule-win32.c: Don't #include <tlhelp32.h> when compiling with
248         gcc, as it isn't provided. Declaration of a needed struct (from
249         www.microsoft.com) inserted instead.
250
251 2000-05-13  Tor Lillqvist  <tml@iki.fi>
252
253         * makefile.mingw.in: New file, with gmodule stuff
254         moved from ../makefile.mingw.in.
255
256         * Makefile.am: Add to EXTRA_DIST, and add rule to make makefile.mingw.
257
258 2000-05-02  Tor Lillqvist  <tml@iki.fi>
259
260         * gmodule-win32.c: No need to include <psapi.h>
261
262 2000-03-23  Tor Lillqvist  <tml@iki.fi>
263
264         * gmodule-win32.c (_g_module_symbol): When looking for symbols in
265         the "main" module we must search both the main program and all
266         currently loaded DLLs. Not only the main program, or even just the
267         DLLs loaded as gmodules.  Libglade requires this.
268
269         Thus we need to get a list of all modules in the current
270         process. There are two alternative APIs to do this: PSAPI and
271         Toolhelp. The former is only available on NT (including Win2k),
272         the latter on Win9x and Win2k. Check which one works, and use
273         that.
274
275         First check for the symbol in the main program, and if not found
276         there, in all the modules.
277
278         Code for using PSAPI and Toolhelp was borrowed from the Dr. Mingw
279         tool written by José Fonseca <em96115@fe.up.pt>. Thanks.
280
281 2000-03-04  Tor Lillqvist  <tml@iki.fi>
282
283         * gmodule-win32.c: Call g_win32_error_message() to get the error
284         message strings.
285
286         * libgplugin_a.c
287         * libgplugin_b.c
288         * gmodule.c: Remove LibMain functions that were needed by LCC,
289         which is not a supported compiler.
290
291         * testgmodule.c (main): Test for G_MODULE_IMPL ==
292         G_MODULE_IMPL_WIN32, not G_OS_WIN32.
293
294         * gmoduleconf.h.win32: Remove LCC stuff from here, too. 
295
296 Wed Mar  1 05:34:47 2000  Tim Janik  <timj@gtk.org>
297
298         * gmodule-beos.c (_g_module_symbol): do not return NULL symbols.
299
300         * gmodule-os2.c: removed NetBSD specific defines.
301         (_g_module_self): set an error message for unsupported behaviour.
302
303         * gmodule-beos.c: many coding style fixups.
304         (_g_module_open):
305         (_g_module_self):
306         (_g_module_close):
307         (_g_module_symbol): bunch of memory leaks plugged.
308
309         * gmodule-dl.c: make sure the error message returned from dlerror()
310         is always != NULL, by using a wrapper function fetch_dlerror(). based
311         on a patch to fix _g_module_symbol() for NetBSD from Scott Presnell
312         <srp@zgi.com>.
313
314         * gmodule-dld.c: minor indentation.
315
316         * gmodule-win32.c: minor cleanups.
317
318         * merges from glib-1-2.
319
320 Sat Feb 19 19:43:29 2000  Tim Janik  <timj@gtk.org>
321
322         * testgmodule.c (main): added test to check that not yet bound symbols
323         in shared libraries of the main module are retrievable, from David Gero.
324
325 2000-01-13  Martin Baulig  <martin@home-of-linux.org>
326
327         * gmodule.c (g_module_open): Check whether `check_init' is not NULL
328         before we attempt to call it.
329
330 Sun Oct  3 19:30:52 PDT 1999 Manish Singh <yosh@gimp.org>
331
332         * gmodule.h
333         * testgmodule.c: use G_OS stuff
334
335 Sat Jul 24 20:47:18 1999  Tim Janik  <timj@gtk.org>
336
337         * merged changes from GLib-1-2 branch.
338
339 1999-05-06  Tor Lillqvist  <tml@iki.fi>
340
341         * gmodule.c: Remove LibMain.
342
343 Sat May  1 10:58:57 PDT 1999 Manish Singh <yosh@gimp.org>
344
345         * Makefile.am: use -avoid-version and -module for test plugins
346
347 Mon Apr 19 08:43:59 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
348
349         * Makefile.am (EXTRA_DIST): Add gmodule-os2.c
350
351 Wed Apr  7 20:12:58 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
352
353         * gmodule-os2.c: OS/2 specific file for gmodule.
354         * gmodule.c (_g_module_open): Add gmodule-os2.c if G_MODULE_IMPL_OS2.
355         * gmoduleconf.h.in: Add G_MODULE_IMPL_OS2.
356
357 Fri Apr 23 09:03:48 1999  Tim Janik  <timj@gtk.org>
358
359         * gmodule.c (g_module_symbol): removed inline variable assignment.
360         s/CHECK_ERROR/SUPPORT_OR_RETURN/ to make the code more self descriptive.
361
362 Wed Feb 10 12:06:30 1999  Tim Janik  <timj@gtk.org>
363
364         * gmodule.c (CHECK_ERROR): be more descriptive on unsupported systems.
365
366 Wed Feb 10 07:56:33 1999  Tim Janik  <timj@gtk.org>
367
368         * gmodule.c (g_module_error): fixed errernerous code wrt to thread
369         specific error string allocation handling.
370
371 Thu Jan 21 12:40:11 EST 1999  Jeff Garzik  <jgarzik@pobox.com>
372
373         * gmodule-dl.c (_g_module_build_path):
374         Add braces to eliminate an ambiguous else warning.
375
376 1999-01-16  Tor Lillqvist  <tml@iki.fi>
377
378         * gmodule-dl.c gmodule-dld.c: In
379         _g_module_build_path, don't add the "lib" prefix and
380         ".so" or ".sl" suffix if already there.
381
382         * gmodule-win32.c: Likewise for the ".dll" suffix.
383
384 1998-12-10  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
385
386         * gmodule.c: Made it MT safe, the g_module_error() is now thread
387         specific.
388
389 Fri Nov 20 14:43:44 1998  Tim Janik  <timj@gtk.org>
390
391         * gmodule.c (_g_module_build_path): added empty default imlementation
392         so gmodule.so compiles on systems that are not yet supported, fix from
393         Erik Bagfors <bagfors@hpc2n.umu.se>.
394
395 1998-11-13  Nuno Ferreira  <nmrf@rnl.ist.utl.pt>
396
397         * Makefile.am (INCLUDES): The previous commit message is wrong
398         about the -I$(top_srcdir) being redundant. I put it back.
399
400 Wed Nov 11 23:23:22 EST 1998 Jeff Garzik <jgarzik@pobox.com>
401
402         * Makefile.am : INCLUDES is the right way to add to CFLAGS, not 
403         DEFS.  Also there are bugs with '+=' in makefiles.
404         Got rid of DEFS line by moving G_LOG_DOMAIN setting into INCLUDES.
405         Removed redundant -I from INCLUDES.
406
407 Tue Oct 27 04:00:11 1998  Tim Janik  <timj@gtk.org>
408
409         * testgmodule.c (main): changed the #ifdef WIN32 test to NATIVE_WIN32,
410         this needs to be more constistent throughout the code, do we go for
411         NATIVE_WIN32 or WIN32?
412
413         * gmodule.c (LibMain): special cased the #ifdef __LCC__ case for
414         NATIVE_WIN32, since lcc maybe used on other platforms as well.
415         * libgplugin_a.c (LibMain): 
416         * libgplugin_b.c (LibMain): 
417         likewise. not sure i like this special requirement for lcc in here.
418
419         * gmodule-dl.c (_g_module_build_path): 
420         feature empty "" directories and prepend the module name with "lib".
421
422         * gmodule-dld.c (_g_module_build_path): 
423         * gmodule-win32.c (_g_module_build_path): 
424         feature empty "" directories.
425
426         * we need some more magic in the _g_module_build_path variants
427         so we don't append/prepend lib and .so, .sl or .dll for those names
428         that already contain it.
429
430         * applied patch from Tor Lillqvist for g_module_build_path() and
431         windows support.
432
433 1998-10-20: Tor Lillqvist <tml@iki.fi>
434
435         * gmodule/gmodule-win32.c:
436         New file.
437
438         * gmodule/gmodule.c gmodule/gmodule.h:
439         Added the funcion g_module_build_path that builds the path to
440         a module file, decorating the name according to the system's
441         conventions.  Added the Windows implementation.
442
443         * gmodule/libgplugin_a.c gmodule/libgplugin_b.c:
444         Added LibMain for LCC-Win32.
445
446         * gmodule/testgmodule.c:
447         Handle Windows dll names.
448
449 1998-10-25  Raja R Harinath  <harinath@cs.umn.edu>
450
451         * gmodule.h: Remove `#pragma }'.
452         * gmoduleconf.h.in: Likewise.
453
454 Wed Oct 21 19:58:27 1998  Tim Janik  <timj@gtk.org>
455
456         * gmodule.c (g_module_symbol): fixed a string pointer bug that could
457         cause garbage error messages from g_module_symbol() for systems that
458         NEED_USCORE.
459
460 Mon Sep 21 01:54:48 1998  Tim Janik  <timj@gtk.org>
461
462         * gmodule.h: 
463         * gmodule.c: renamed old _de_init functionality to _unload.
464         modules are now expected to export:
465         G_MODULE_EXPORT const gchar* g_module_check_init (GModule *module);
466         and
467         G_MODULE_EXPORT void g_module_unload (GModule *module);
468         returning a string other than NULL from g_module_check_init() will
469         prevent the module from being loaded. a call to g_module_make_resident()
470         from g_module_unload() will prevent the module from being unloaded and
471         still make it resident.
472
473 Thu Sep 17 06:34:22 1998  Tim Janik  <timj@gtk.org>
474
475         * gmodule.h: 
476         * gmodule.c: implemented g_module_make_resident() which can be
477         used to make modules resident.
478         fixed a buglet about the optional "g_module_de_init" function in
479         modules, which could get invoked twice on very obscure occasions.
480
481 Tue Sep 15 14:57:30 1998  Owen Taylor  <otaylor@redhat.com>
482
483         * Makefile.am: Update to libtool-1.2b,
484         change library versioning scheme to drop LT_RELEASE
485         from the -l line, while keeping it in the soname.
486
487 Thu Aug 20 07:08:16 1998  Tim Janik  <timj@gtk.org>
488
489         * gmodule.c: provide no operation implementation for the underlying
490         _g_module_* functions, so we at least compile on systems that have
491         neither of G_MODULE_IMPL_DL or G_MODULE_IMPL_DLD.
492
493 Mon Aug 17 03:41:52 1998  Tim Janik  <timj@gtk.org>
494
495         * gmodule.h:
496         * gmodule.c (g_module_open): changed the return type for the
497         GModuleCheckInit function to be a string, describing the error
498         condition.
499         (g_module_symbol): show the failing symbol on error messages.
500
501 Fri Aug 14 02:24:39 1998  Tim Janik  <timj@gtk.org>
502
503         * Makefile.am: feature the G_LOG_DOMAIN macro to set the log domain
504         to "GModule" upon compilation. we currently have to add this definition
505         to the DEFS variable.
506         * testgmodule.c: we need an ugly #undef G_LOG_DOMAIN at the start
507         of this file currently, since automake doesn't support per target
508         _CFLAGS yet.
509
510 Mon Aug 10 03:35:57 1998  Tim Janik  <timj@gtk.org>
511
512         * gmodule.c: minor changes to internal interface.
513         * gmodule-dl.c: 
514         * gmodule-dld.c: put some comments into the files, and provided
515         better error checking for shl_findsym(). whish i had a system to
516         test this stuff on.
517
518 Mon Aug 10 02:18:31 1998  Tim Janik  <timj@gtk.org>
519
520         * Makefile.am (lib_LTLIBRARIES): for now, skip the dependency on
521         -lglib for libgmodule-1.1.la, libgplugin_a.la and libgplugin_b.la
522         since this clashes with inter-library-dependencies for not installed
523         libraries. glib-config takes care of this for the usuall case, but
524         there needs to be a better way...
525
526 Sun Aug  9 15:57:38 1998  Tim Janik  <timj@gtk.org>
527
528         * testgmodule.c: test program for GModule.
529         * libgplugin_a.c: 
530         * libgplugin_b.c: test plugins for testgmodule.c.
531
532         * gmodule.h: 
533         * gmodule.c: GModule library implementation, which is basically
534         a wrapper about system specifc dynamic loading facilities.
535
536 Sun Aug  9 10:31:05 1998  Tim Janik  <timj@gtk.org>
537
538         * ChangeLog start for gmodule.