mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-23 22:16:16 +01:00
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.
This commit is contained in:
parent
e767aa0a4f
commit
4ab50f038b
25
ChangeLog
25
ChangeLog
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
@ -1,3 +1,26 @@
|
||||
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.
|
||||
|
||||
Thu Nov 22 02:50:18 2001 Tim Janik <timj@gtk.org>
|
||||
|
||||
* NEWS: merged with gobject/NEWS.
|
||||
@ -292,7 +315,7 @@ Mon Oct 29 10:55:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* glib/libcharset/config.charset (os): Match also mingw*.
|
||||
|
||||
* tests/testglib.c (main): (Win32): Print the lib/locale
|
||||
* tests/testglib.c (main): (Wibn32): Print the lib/locale
|
||||
subdirectory, as that is what actually gets used.
|
||||
|
||||
Wed Oct 24 11:10:54 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
32
INSTALL
32
INSTALL
@ -1,8 +1,8 @@
|
||||
Simple install procedure
|
||||
========================
|
||||
|
||||
% gzip -cd glib-1.3.10.tar.gz | tar xvf - # unpack the sources
|
||||
% cd glib-1.3.10 # change to the toplevel directory
|
||||
% gzip -cd glib-1.3.11.tar.gz | tar xvf - # unpack the sources
|
||||
% cd glib-1.3.11 # change to the toplevel directory
|
||||
% ./configure # run the `configure' script
|
||||
% make # build GLIB
|
||||
|
||||
@ -46,6 +46,34 @@ A few of the more important ones:
|
||||
* --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
|
||||
[ Defaults to the value given to --prefix ]
|
||||
|
||||
* --enable-gc-friendly When enabled all memory freed by the application,
|
||||
but retained by GLib for performance reasons
|
||||
is set to zero, thus making deployed garbage
|
||||
collection or memory profiling tools detect
|
||||
unlinked memory correctly. This will make GLib
|
||||
slightly slower.
|
||||
[ Disabled by default ]
|
||||
|
||||
* --disable-threads Do not compile GLib to be multi thread safe. GLib
|
||||
will be slightly faster then. This is however not
|
||||
recommended, as many programs rely on GLib being
|
||||
multi thread safe.
|
||||
[ Enabled by default ]
|
||||
|
||||
* --with-threads=[none/posix/dce/solaris/win32] Specify a thread
|
||||
implementation to use.
|
||||
* 'posix' and 'dce' can be used interchangeable
|
||||
to mean the different versions of posix
|
||||
threads. configure tries to find out, which
|
||||
one is installed.
|
||||
* 'solaris' uses the native Solaris thread
|
||||
implementation.
|
||||
* 'none' means that GLib will be thread safe,
|
||||
but does not have a default thread
|
||||
implementation. This has to be supplied to
|
||||
g_thread_init() by the programmer.
|
||||
[ Determined by configure by default ]
|
||||
|
||||
Options can be given to the compiler and linker by setting
|
||||
environment variables before running configure. A few of the more
|
||||
important ones:
|
||||
|
@ -16,6 +16,8 @@ EXTRA_DIST = \
|
||||
NEWS.pre-1-3 \
|
||||
acglib.m4 \
|
||||
sanity_check \
|
||||
README.in \
|
||||
INSTALL.in \
|
||||
README.win32 \
|
||||
TODO.xml \
|
||||
makefile.msc \
|
||||
|
20
NEWS
20
NEWS
@ -1,3 +1,23 @@
|
||||
Overview of Changes in GLib 1.3.11:
|
||||
===================================
|
||||
|
||||
* Win32 fixes [Hans Breuer, Tor Lillqvist]
|
||||
* Documentation improvements [Matthias Clasen]
|
||||
* Portable directory handling API [Hans]
|
||||
* Threading fixes [Sebastian Wilhelmi, Havoc Pennington]
|
||||
* Fix excess relocations in Unicode tables [Andrew Taylor]
|
||||
* Fix gpattern for UTF-8 [Matthias Clasen]
|
||||
* Support overriding class closures [Tim Janik]
|
||||
* Support for derivation from G_TYPE_POINTER [Owen Taylor]
|
||||
* Hide pointers to type information inside GType to reduce locking
|
||||
[Alex Larsson, Tim]
|
||||
* Adds check for direct inclusion of gobject/*.h [Owen]
|
||||
* GObject API cleanups [Tim]
|
||||
|
||||
Other contributors: Darin Adler, Jacob Berkman, Daniel Egger, Eric Lemings,
|
||||
Michael Meeks, Mark McLoughlin, Arkadiusz Miskiewicz, Dan Winship
|
||||
|
||||
|
||||
Overview of Changes in GLib 1.3.10:
|
||||
===================================
|
||||
|
||||
|
2
README
2
README
@ -13,7 +13,7 @@ version is meant for developers of GLib only:
|
||||
General Information
|
||||
===================
|
||||
|
||||
This is GLib version 1.3.10. GLib is a library which includes support
|
||||
This is GLib version 1.3.11. GLib is a library which includes support
|
||||
routines for C such as lists, trees, hashes, memory allocation, and
|
||||
many other things.
|
||||
|
||||
|
@ -33,7 +33,7 @@ GLIB_AC_DIVERT_BEFORE_HELP([
|
||||
#
|
||||
GLIB_MAJOR_VERSION=1
|
||||
GLIB_MINOR_VERSION=3
|
||||
GLIB_MICRO_VERSION=10
|
||||
GLIB_MICRO_VERSION=11
|
||||
GLIB_INTERFACE_AGE=0
|
||||
GLIB_BINARY_AGE=0
|
||||
GLIB_VERSION=$GLIB_MAJOR_VERSION.$GLIB_MINOR_VERSION.$GLIB_MICRO_VERSION
|
||||
|
@ -6,6 +6,9 @@ INCLUDES = -I$(top_srcdir) -DG_LOG_DOMAIN=\"GLib\" \
|
||||
@GLIB_DEBUG_FLAGS@ -DG_DISABLE_DEPRECATED -DGLIB_COMPILATION
|
||||
|
||||
EXTRA_DIST = \
|
||||
makefile.mingw.in \
|
||||
makefile.msc.in \
|
||||
glib.rc.in \
|
||||
gen-unicode-tables.pl \
|
||||
glib.def
|
||||
|
||||
|
@ -48,7 +48,7 @@ struct _GPatternSpec
|
||||
/* --- functions --- */
|
||||
/**
|
||||
* g_utf8_reverse:
|
||||
* string: a UTF-8 string.
|
||||
* @string: a UTF-8 string.
|
||||
*
|
||||
* Reverses a UTF-8 string. The @string must be valid UTF-8 encoded text.
|
||||
* (Use g_utf8_validate() on all text before trying to use UTF-8
|
||||
|
@ -10,10 +10,6 @@ makefile.mingw
|
||||
_libs
|
||||
.libs
|
||||
so_locations
|
||||
libgmodule-1.3.la
|
||||
libgplugin_a.la
|
||||
libgplugin_b.la
|
||||
gmoduleconf.h
|
||||
stamp-h
|
||||
testgmodule
|
||||
gmodule.rc
|
||||
|
@ -1,3 +1,9 @@
|
||||
Mon Nov 19 16:12:12 2001 Owen Taylor <otaylor@redhat.com>
|
||||
|
||||
* Makefile.am makefile.msc.in makefile.mingw.in: Remove
|
||||
testgmodule and associated plugin files; we don't need _both_ this
|
||||
and ../tests/module-test.c
|
||||
|
||||
2001-11-16 Michael Meeks <michael@ximian.com>
|
||||
|
||||
* gmodule.c (parse_libtool_archive): fix leak.
|
||||
|
@ -34,7 +34,6 @@ libglib = $(top_builddir)/glib/libglib-1.3.la
|
||||
top_builddir_full=`cd \$(top_builddir); pwd`
|
||||
|
||||
lib_LTLIBRARIES = libgmodule-1.3.la
|
||||
noinst_LTLIBRARIES = libgplugin_a.la libgplugin_b.la
|
||||
|
||||
if MS_LIB_AVAILABLE
|
||||
noinst_DATA = gmodule-1.3.lib
|
||||
@ -55,7 +54,6 @@ endif
|
||||
|
||||
if OS_WIN32
|
||||
export_symbols = -export-symbols gmodule.def
|
||||
plugin_rpath = -rpath `pwd`
|
||||
|
||||
install-libtool-import-lib:
|
||||
$(INSTALL) .libs/libgmodule-1.3.dll.a $(DESTDIR)$(libdir)
|
||||
@ -76,19 +74,6 @@ libgmodule_1_3_la_LIBADD = @G_MODULE_WIN32_RESOURCE@ @G_MODULE_LIBS_EXTRA@ @G_MO
|
||||
|
||||
libgmodule_1_3_la_DEPENDENCIES = @G_MODULE_WIN32_RESOURCE@ @GMODULE_DEF@
|
||||
|
||||
libgplugin_a_la_SOURCES = libgplugin_a.c
|
||||
libgplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined) $(plugin_rpath)
|
||||
libgplugin_a_la_LIBADD = @G_MODULE_LIBS@ @G_MODULE_LIBS_EXTRA@ @G_MODULE_PLUGIN_LIBS@ libgmodule-1.3.la $(libglib)
|
||||
|
||||
libgplugin_b_la_SOURCES = libgplugin_b.c
|
||||
libgplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined) $(plugin_rpath)
|
||||
libgplugin_b_la_LIBADD = @G_MODULE_LIBS@ @G_MODULE_LIBS_EXTRA@ @G_MODULE_PLUGIN_LIBS@ libgmodule-1.3.la $(libglib)
|
||||
|
||||
noinst_PROGRAMS = testgmodule
|
||||
testgmodule_LDFLAGS += @G_MODULE_LDFLAGS@
|
||||
testgmodule_LDADD = @TESTGMODULE_EXP@ libgmodule-1.3.la $(libglib) @G_MODULE_LIBS@
|
||||
testgmodule_DEPENDENCIES = @TESTGMODULE_EXP@
|
||||
|
||||
if OS_WIN32
|
||||
@G_MODULE_WIN32_RESOURCE@ : gmodule.rc
|
||||
$(top_srcdir)/build/win32/lt-compile-resource gmodule.rc @G_MODULE_WIN32_RESOURCE@
|
||||
|
@ -1,73 +0,0 @@
|
||||
/* libgplugin_a.c - test plugin for testgmodule
|
||||
* Copyright (C) 1998 Tim Janik
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
||||
* file for a list of people on the GLib Team. See the ChangeLog
|
||||
* files for a list of changes. These files are distributed with
|
||||
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
||||
*/
|
||||
|
||||
#include <gmodule.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_a_func (void)
|
||||
{
|
||||
g_print ("GPluginA: Hello world\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_clash_func (void)
|
||||
{
|
||||
g_print ("GPluginA: Hello plugin clash\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
g_clash_func (void)
|
||||
{
|
||||
g_print ("GPluginA: Hello global clash\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_say_boo_func (void)
|
||||
{
|
||||
g_print ("GPluginA: BOOH!\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_a_module_func (GModule *module)
|
||||
{
|
||||
void (*f) (void) = NULL;
|
||||
gchar *string;
|
||||
gchar *basename = g_path_get_basename (g_module_name (module));
|
||||
|
||||
string = "gplugin_say_boo_func";
|
||||
g_print ("GPluginA: retrieve symbol `%s' from \"%s\"\n",
|
||||
string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module, string, (gpointer) &f))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
exit (1);
|
||||
}
|
||||
|
||||
g_print ("GPluginA: call that function(%p): ", f);
|
||||
f ();
|
||||
}
|
@ -1,65 +0,0 @@
|
||||
/* libgplugin_b.c - test plugin for testgmodule
|
||||
* Copyright (C) 1998 Tim Janik
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
||||
* file for a list of people on the GLib Team. See the ChangeLog
|
||||
* files for a list of changes. These files are distributed with
|
||||
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
||||
*/
|
||||
|
||||
#include <gmodule.h>
|
||||
|
||||
G_MODULE_EXPORT const gchar*
|
||||
g_module_check_init (GModule *module)
|
||||
{
|
||||
g_print ("GPluginB: check-init\n");
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
g_module_unload (GModule *module)
|
||||
{
|
||||
g_print ("GPluginB: unloaded\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_b_func (void)
|
||||
{
|
||||
g_print ("GPluginB: Hello world\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_clash_func (void)
|
||||
{
|
||||
g_print ("GPluginB: Hello plugin clash\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
g_clash_func (void)
|
||||
{
|
||||
g_print ("GPluginB: Hello global clash\n");
|
||||
}
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
gplugin_say_boo_func (void)
|
||||
{
|
||||
g_print ("GPluginB: BOOH!\n");
|
||||
}
|
@ -16,9 +16,7 @@ DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GModule\" -DG_ENABLE_DEBUG
|
||||
|
||||
all : \
|
||||
gmoduleconf.h \
|
||||
libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.a \
|
||||
testgmodule.exe \
|
||||
libgplugin_a.dll libgplugin_b.dll
|
||||
libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.a
|
||||
|
||||
gmodule_OBJECTS = \
|
||||
gmodule.o
|
||||
@ -34,20 +32,6 @@ libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.a : $(gmodule_OBJECTS) gmod
|
||||
gmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.rc : gmodule.rc
|
||||
cp $< $@
|
||||
|
||||
################ test prog
|
||||
|
||||
testgmodule.exe : libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.a testgmodule.o
|
||||
# We have to generate an .exp file separately with dlltool, and link
|
||||
# with that. Sigh.
|
||||
dlltool --output-exp testgmodule.exp testgmodule.o
|
||||
$(CC) $(CFLAGS) -o testgmodule.exe testgmodule.o testgmodule.exp -L ../glib -lglib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@ -L . -lgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@ $(LFLAGS)
|
||||
|
||||
libgplugin_a.dll : libgplugin_a.o
|
||||
$(BUILD_DLL) libgplugin_a - libgplugin_a.o -L ../glib -lglib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@ -L . -lgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
|
||||
|
||||
libgplugin_b.dll : libgplugin_b.o
|
||||
$(BUILD_DLL) libgplugin_b - libgplugin_b.o -L ../glib -lglib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@ -L . -lgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@
|
||||
|
||||
################ Other stuff
|
||||
|
||||
clean::
|
||||
|
@ -12,8 +12,7 @@ DEFINES = -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"GModule\"
|
||||
|
||||
all : \
|
||||
gmoduleconf.h \
|
||||
libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@-@LT_CURRENT_MINUS_AGE@.dll \
|
||||
testgmodule.exe
|
||||
libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@-@LT_CURRENT_MINUS_AGE@.dll
|
||||
|
||||
gmodule_OBJECTS = \
|
||||
gmodule.obj
|
||||
@ -25,19 +24,5 @@ libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@-@LT_CURRENT_MINUS_AGE@.dll
|
||||
$(CC) $(CFLAGS) -LD -Fe$@ $(gmodule_OBJECTS) \
|
||||
..\glib\glib-$(GLIB_VER).lib $(LDFLAGS) /implib:gmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib /def:gmodule.def
|
||||
|
||||
################ test prog
|
||||
|
||||
testgmodule.exe : libgmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@-@LT_CURRENT_MINUS_AGE@.dll testgmodule.obj libgplugin_a.dll libgplugin_b.dll
|
||||
$(CC) $(CFLAGS) testgmodule.obj gmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib \
|
||||
..\glib\glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib $(LDFLAGS) /subsystem:console
|
||||
|
||||
libgplugin_a.dll : libgplugin_a.obj
|
||||
$(CC) $(CFLAGS) -LD libgplugin_a.obj gmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib \
|
||||
..\glib\glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib $(LDFLAGS)
|
||||
|
||||
libgplugin_b.dll : libgplugin_b.obj
|
||||
$(CC) $(CFLAGS) -LD libgplugin_b.obj gmodule-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib \
|
||||
..\glib\glib-@GLIB_MAJOR_VERSION@.@GLIB_MINOR_VERSION@.lib $(LDFLAGS)
|
||||
|
||||
clean::
|
||||
del gmoduleconf.h
|
||||
|
@ -1,221 +0,0 @@
|
||||
/* testgmodule.c - test program for GMODULE
|
||||
* Copyright (C) 1998 Tim Janik
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Modified by the GLib Team and others 1997-2000. See the AUTHORS
|
||||
* file for a list of people on the GLib Team. See the ChangeLog
|
||||
* files for a list of changes. These files are distributed with
|
||||
* GLib at ftp://ftp.gtk.org/pub/gtk/.
|
||||
*/
|
||||
|
||||
#undef G_LOG_DOMAIN
|
||||
#include <gmodule.h>
|
||||
#include "gmoduleconf.h"
|
||||
|
||||
|
||||
G_MODULE_EXPORT void
|
||||
g_clash_func (void)
|
||||
{
|
||||
g_print ("GModule: Hello global clash\n");
|
||||
}
|
||||
|
||||
typedef void (*SimpleFunc) (void);
|
||||
typedef void (*GModuleFunc) (GModule *);
|
||||
|
||||
static SimpleFunc plugin_clash_func = NULL;
|
||||
|
||||
int
|
||||
main (int arg,
|
||||
char *argv[])
|
||||
{
|
||||
GModule *module_self, *module_a, *module_b;
|
||||
gchar *string;
|
||||
gchar *basename;
|
||||
gchar *plugin_a, *plugin_b;
|
||||
SimpleFunc f_a, f_b, f_self;
|
||||
GModuleFunc gmod_f;
|
||||
|
||||
string = g_get_current_dir ();
|
||||
g_print ("testgmodule (%s):\n", string);
|
||||
|
||||
plugin_a = g_strconcat (string, G_DIR_SEPARATOR_S "libgplugin_a", NULL);
|
||||
plugin_b = g_strconcat (string, G_DIR_SEPARATOR_S "libgplugin_b", NULL);
|
||||
|
||||
g_free (string);
|
||||
|
||||
/* module handles
|
||||
*/
|
||||
g_print ("get main module handle\n");
|
||||
module_self = g_module_open (NULL, G_MODULE_BIND_LAZY);
|
||||
if (!module_self)
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("check that not yet bound symbols in shared libraries of main module are retrievable:\n");
|
||||
string = "g_module_close";
|
||||
basename = g_path_get_basename (g_module_name (module_self));
|
||||
g_print ("retrieve symbol `%s' from \"%s\":\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_self, string, (gpointer) &f_self))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("retrieved symbol `%s' as %p\n", string, f_self);
|
||||
g_print ("load plugin from \"%s\"\n", plugin_a);
|
||||
module_a = g_module_open (plugin_a, G_MODULE_BIND_LAZY);
|
||||
if (!module_a)
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("load plugin from \"%s\"\n", plugin_b);
|
||||
module_b = g_module_open (plugin_b, G_MODULE_BIND_LAZY);
|
||||
if (!module_b)
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* get plugin specific symbols and call them
|
||||
*/
|
||||
string = "gplugin_a_func";
|
||||
basename = g_path_get_basename (g_module_name (module_a));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_a, string, (gpointer) &f_a))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
string = "gplugin_b_func";
|
||||
basename = g_path_get_basename (g_module_name (module_b));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_b, string, (gpointer) &f_b))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("call plugin function(%p) A: ", f_a);
|
||||
f_a ();
|
||||
g_print ("call plugin function(%p) B: ", f_b);
|
||||
f_b ();
|
||||
|
||||
/* get and call globally clashing functions
|
||||
*/
|
||||
string = "g_clash_func";
|
||||
basename = g_path_get_basename (g_module_name (module_self));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_self, string, (gpointer) &f_self))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
basename = g_path_get_basename (g_module_name (module_a));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_a, string, (gpointer) &f_a))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
basename = g_path_get_basename (g_module_name (module_b));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_b, string, (gpointer) &f_b))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("call plugin function(%p) self: ", f_self);
|
||||
f_self ();
|
||||
g_print ("call plugin function(%p) A: ", f_a);
|
||||
f_a ();
|
||||
g_print ("call plugin function(%p) B: ", f_b);
|
||||
f_b ();
|
||||
|
||||
/* get and call clashing plugin functions
|
||||
*/
|
||||
string = "gplugin_clash_func";
|
||||
basename = g_path_get_basename (g_module_name (module_self));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_self, string, (gpointer) &f_self))
|
||||
f_self = NULL;
|
||||
g_print ("retrieved function `%s' from self: %p\n", string, f_self);
|
||||
basename = g_path_get_basename (g_module_name (module_a));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_a, string, (gpointer) &f_a))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
basename = g_path_get_basename (g_module_name (module_b));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_b, string, (gpointer) &f_b))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("call plugin function(%p) A: ", f_a);
|
||||
plugin_clash_func = f_a;
|
||||
plugin_clash_func ();
|
||||
g_print ("call plugin function(%p) B: ", f_b);
|
||||
plugin_clash_func = f_b;
|
||||
plugin_clash_func ();
|
||||
|
||||
/* call gmodule function form A
|
||||
*/
|
||||
string = "gplugin_a_module_func";
|
||||
basename = g_path_get_basename (g_module_name (module_a));
|
||||
g_print ("retrieve symbol `%s' from \"%s\"\n", string, basename);
|
||||
g_free (basename);
|
||||
if (!g_module_symbol (module_a, string, (gpointer) &gmod_f))
|
||||
{
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
return 1;
|
||||
}
|
||||
g_print ("call plugin A's module function(%p):\n{\n", gmod_f);
|
||||
gmod_f (module_b);
|
||||
g_print ("}\n");
|
||||
|
||||
|
||||
/* unload plugins
|
||||
*/
|
||||
g_print ("unload plugin A:\n");
|
||||
if (!g_module_close (module_a))
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
g_print ("unload plugin B:\n");
|
||||
if (!g_module_close (module_b))
|
||||
g_print ("error: %s\n", g_module_error ());
|
||||
|
||||
#if 0
|
||||
g_log_set_fatal_mask ("GModule", G_LOG_FATAL_MASK|G_LOG_LEVEL_WARNING);
|
||||
g_module_symbol (0, 0, 0);
|
||||
g_warning("jahooo");
|
||||
g_on_error_query (".libs/testgmodule");
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
@ -136,11 +136,11 @@ install-libLTLIBRARIES:
|
||||
:
|
||||
|
||||
libmoduletestplugin_a_la_SOURCES = libmoduletestplugin_a.c
|
||||
libmoduletestplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined)
|
||||
libmoduletestplugin_a_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined) -rpath $(libdir)
|
||||
libmoduletestplugin_a_la_LIBADD = @G_MODULE_LIBS@ $(libadd_libgmodule) $(libadd_libglib)
|
||||
|
||||
libmoduletestplugin_b_la_SOURCES = libmoduletestplugin_b.c
|
||||
libmoduletestplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined)
|
||||
libmoduletestplugin_b_la_LDFLAGS = @G_MODULE_LDFLAGS@ -avoid-version -module $(no_undefined) -rpath $(libdir)
|
||||
libmoduletestplugin_b_la_LIBADD = @G_MODULE_LIBS@ $(libadd_libgmodule) $(libadd_libglib)
|
||||
|
||||
makefile.mingw: $(top_builddir)/config.status $(top_srcdir)/tests/makefile.mingw.in
|
||||
|
@ -16,6 +16,8 @@
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 02111-1307, USA.
|
||||
*/
|
||||
#include <string.h>
|
||||
|
||||
#include "glib.h"
|
||||
#include "glib/gpattern.h"
|
||||
|
||||
@ -195,7 +197,6 @@ main (int argc, char** argv)
|
||||
gint total = 0;
|
||||
gint passed = 0;
|
||||
gint failed = 0;
|
||||
gchar *string, *pattern;
|
||||
|
||||
TEST_COMPILATION("*A?B*", G_MATCH_ALL, "*A?B*", 3);
|
||||
TEST_COMPILATION("ABC*DEFGH", G_MATCH_ALL_TAIL, "HGFED*CBA", 8);
|
||||
|
Loading…
Reference in New Issue
Block a user