Don't call LoadLibrary() on shell32.dll or kernel32.dll. kernel32.dll
is always loaded. Shell32.dll is also already loaded as glib links to
functions in it. So just call GetModuleHandle() on them.
For mlang.dll in win_iconv.c and winhttp.dll in gwinhttpvfs.c, always
try loading them from a complete path, from the Windows system
directory.
Use the "tool help" API to enumerate modules in gmodule-win32.c. It is
present in all Windows versions since Windows 2000, which is all we
support anyway. Thus no need to look that API up dynamically. Just
link to it normally. We can bin the fallback code that attempts to use
the psapi API.
This is a minimal patch-out of the galias functionality. We will do a
release like this so that we can easily back it out if there are
reported problems.
A more substantial cleanup (mostly removing #includes from every file)
will follow if there are no issues.
Update various README files to refer to git instead of svn.
Add a README.commits that is pretty much a copy of the same file
in GTK+. Also discontinue ChangeLog files.
2008-09-26 Tor Lillqvist <tml@novell.com>
* gmodule-win32.c: Improve error reporting: When g_module_open()
fails, include the name of the module passed to LoadLibrary() in
what g_module_error() returns.
svn path=/trunk/; revision=7543
2008-09-08 Tor Lillqvist <tml@novell.com>
Bug 551408 - gmodule.def generated to builddir, but required in srcdir
* Makefile.am: Use gmodule.def from builddir, not srcdir.
svn path=/trunk/; revision=7446
2008-07-27 Tor Lillqvist <tml@novell.com>
* gmodule.symbols: New file.
* gmodule.c: Bypass the Windows ABI compatibility symbols on
64-bit Windows. Thus no need to keep the file name in system
codepage around on 64-bit Windows either.
* Makefile.am: Produce gmodule.def from gmodule.symbols. Dist
gmodule.symbols instead of gmodule.def.
* gmodule.def: Drop from SVN.
svn path=/trunk/; revision=7259
2008-07-27 Tor Lillqvist <tml@novell.com>
* configure.in: Set LIB_EXE_MACHINE_FLAG to either X86 or X64 on
Windows. AC_SUBST it.
* */Makefile.am: Correspondingly, pass appropriate -machine
flag to lib.exe when producing the import library for the MS
toolchain.
svn path=/trunk/; revision=7255
2008-05-28 Michael Natterer <mitch@imendio.com>
* Makefile.am: don't define G_DISABLE_SINGLE_INCLUDES, it's in
the global CPPFLAGS now.
svn path=/trunk/; revision=6953
2008-05-05 Michael Natterer <mitch@imendio.com>
* Makefile.am. build with G_DISABLE_SINGLE_INCLUDES to prevent
code from being checked in that breaks the build of applications
which use G_DISABLE_SINGLE_INCLUDES.
* gmodule.c: #include "glib.h" instead of "glibconfig.h"
svn path=/trunk/; revision=6877
2008-04-21 Tor Lillqvist <tml@novell.com>
* configure.in
* */Makefile.am: More work on enabling static building on
Windows. When building statically: Also define
GOBJECT_STATIC_COMPILATION in glibconfig.h so that also the
variables in gparamspecs.h get declared without any
dllimport/dllexport decorations. Don't install .def files which
obviously have no meaning for static libraries. Don't create MS
import libraries. Don't do any resource object files.
svn path=/trunk/; revision=6866
2008-03-16 Tor Lillqvist <tml@novell.com>
* configure.in: Don't bother defining Autoconf variables for
glib.def, gmodule.def, gobject.def and gthread.def when this can
be handled easily in */Makefile.am which are the only files that
use them. Remove also TESTGMODULE_EXP which isn't used at all.
* */Makefile.am: Corrsponding changes.
svn path=/trunk/; revision=6722
2007-11-21 21:06:47 Tim Janik <timj@imendio.com>
* Makefile.decl: initialize automake variables EXTRA_DIST and
TEST_PROGS for unconditional appending via += in other makefiles.
define recursive test targets: test, test-report, perf-report,
full-report, as described here:
http://mail.gnome.org/archives/gtk-devel-list/2007-November/msg00000.html
* Makefile.am:
* build/win32/vs8/Makefile.am, build/win32/dirent/Makefile.am:
* build/win32/Makefile.am, build/Makefile.am:
* docs/Makefile.am, docs/reference/Makefile.am:
* docs/reference/glib/Makefile.am, docs/reference/gobject/Makefile.am:
* gmodule/Makefile.am, tests/Makefile.am:
* tests/refcount/Makefile.am, tests/gobject/Makefile.am:
* glib/update-pcre/Makefile.am, glib/libcharset/Makefile.am:
* glib/tests/Makefile.am, glib/pcre/Makefile.am:
* glib/gnulib/Makefile.am, gobject/Makefile.am, m4macros/Makefile.am:
* gthread/Makefile.am, glib/Makefile.am:
include $(top_srcdir)/Makefile.decl, adapted EXTRA_DIST assignments.
* glib/tests/Makefile.am: removed example testing rules.
* glib/tests/testing.c: conditionalized performance and slow tests.
* glib/gtestutils.h:
* glib/gtestutils.c: work around g_test_config_vars not changing its
exported value after value assignments, aparently due to symbol aliases.
* glib/gtester.c: fixed off-by-one error which produced junk in logs.
* configure.in: check for python >= 2.4 and provide $PYTHON for scripts.
svn path=/trunk/; revision=5914
2007-11-07 Matthias Clasen <mclasen@redhat.com>
* *.c: Make header include order consistent (#71704,
Diego Escalante Urrelo)
svn path=/trunk/; revision=5817
2007-07-09 Matthias Clasen <mclasen@redhat.com>
* gmodule.c (g_module_open): Include the module file
name to the error message given when module initialization
fails. (#448484, Gustavo Carneiro)
svn path=/trunk/; revision=5611
Mon Sep 11 14:58:56 2006 Tim Janik <timj@imendio.com>
* gmodule.c: applied patch from Christian Persch to support
G_DEBUG flags resident-modules and bind-now-modules, bug #345099.
2006-08-29 Tor Lillqvist <tml@novell.com>
Remove support for Windows 9x/ME, as will be done also in Pango
and GTK+. GTK+ hasn't worked on Win9x since 2.6 or 2.8 anyway, so
it's pretty pointless to keep the Win9x code in here either. If
somebody is interested, the code can always be found in older GLib
versions, and in CVS.
* glib/gdir.c
* glib/gfileutils.c
* glib/gspawn-win32-helper.c
* glib/gspawn-win32.c
* glib/gstdio.c
* glib/gutils.c
* glib/gwin32.c
* glib/gwin32.h: Remove the G_WIN32_IS_NT_BASED() and
G_WIN32_HAVE_WIDECHAR_API() tests and their false (Win9x)
branches, and any variables or static functions used only by the
Win9x branches.
* glib/gwin32.c (g_win32_windows_version_init): Call g_error() if
run on Win9x.
2006-03-29 Matthias Clasen <mclasen@redhat.com>
* gmodule.c (g_module_symbol): Make sure to
not return TRUE if symbol is NULL. (#334440,
ITOH Yasufumi)
2005-07-09 Tor Lillqvist <tml@novell.com>
* configure.in: Don't use autoconf variables for the resource
object files on Win32 any longer. Instead handle that in the
Makefile.am files. Check for windres.
* glibconfig.h.win32.in: Minor tuning to match the
configure-produced glibconfig.h closely.
* */Makefile.am: Don't use the scripts in build/win32 to
compile the .rc file into a resource object file. (This means
we loose the build number increment magic, but I doubt it was
that useful anyway.) Instead use windres directly. To pass the
normal .o file produced by windres through libtool, which
wants .lo files, pass it directly to the linker using a -Wl
option.
* */*.rc.in: Thus replace BUILDNUMBER with 0.
2005-06-26 Tor Lillqvist <tml@novell.com>
* Makefile.am: libtool installs/uninstalls the import library, no
need to do it ourselves. Do still install/uninstall the .def file,
though.
2005-06-24 Tor Lillqvist <tml@novell.com>
* glib/Makefile.am
* gmodule/Makefile.am
* gobject/Makefile.am: Current GNU tools do understand the
PRIVATE keyword.
* glib/gfileutils.c (g_mkdir_with_parents): Return error with
EINVAL also for empty pathnames.
(g_build_pathname_va): Fix typo.
2005-01-11 Owen Taylor <otaylor@redhat.com>
* configure.in: Add gmodule-export-2.0.pc to AC_CONFIG_FILES.
* glib/Makefile.am gobject/Makefile.am gthread/Makefile.am:
Use grep | head -n 1 instead of grep -m 1 which doesn't work
with slightly older versions of GNU grep in
install-libtool-import-lib rule.
2004-12-31 Tor Lillqvist <tml@iki.fi>
* gmodule.c (g_module_open): It's wrong to call g_file_test() with
more than one test (both G_FILE_TEST_EXISTS and _IS_REGULAR). (It
would succeed even if the pathname existed as a nonregular file.)
Just G_FILE_TEST_IS_REGULAR works fine. (#162594)
2004-11-04 Tor Lillqvist <tml@iki.fi>
* gmodule-win32.c (_g_module_open): Argument is in UTF-8. Use wide
character Win32 API if present.
* gmodule.c (parse_libtool_archive, g_module_open): Convert file
name to UTF-8 before storing in the error message string.
* gmodule.c (parse_libtool_archive): Use g_open().
2004-10-29 Hans Breuer <hans@breuer.org>
* glibconfig.h */makefile.msc.in : updated [and finally fixed my
script to produce ready to go de-in(ed) files, w/o autotools]
* */*.rc.in : updated copyrights to 2004
* glib/gutils.c : some CSIDL_* defines lacking from older SDK;
use the same fallback mecahnism as on *NIX where ever applicable
2004-03-31 Tor Lillqvist <tml@iki.fi>
* gmodule-win32.c (_g_module_build_path): On Cygwin, use the "cyg"
prefix, and accept also the normal "lib". (#138403, Roger Leigh)
2004-03-06 Tor Lillqvist <tml@iki.fi>
* README.win32: Update.
* configure.in
* Makefile.am
* */Makefile.am: Drop the hand-written makefile.mingw(.in)
files. They haven't been maintained in a long time. As several
people have managed to build GLib for Win32 using the
autoconfiscation mechanism, there is no real reason to even try to
maintain the hand-written mingw makefiles.
Sun Feb 22 02:28:43 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: Set the gmodule suffix to 'a' for aix and
use the aix gmodule implementation. (#85930, Laurent Vivier)
Bug #85930, Laurent Vivier:
* gmodule-ar.c: Implementation of native module management for AIX.
* gmoduleconf.h.in:
* gmodule.c: Support gmodule-ar.c
Fri Feb 20 02:39:03 2004 Tim Janik <timj@gtk.org>
* applied patch from David Schleef <ds@schleef.org> which implements
a G_MODULE_BIND_LOCAL flag to g_module_open() to disable global
symbol registration.
2003-08-13 Tor Lillqvist <tml@iki.fi>
* glib/Makefile.am
* gmodule/Makefile.am
* gobject/Makefile.am
* gthread/Makefile.am: Use srcdir also in references to the .def
files. (#118885, Jeff Bonggren)
2003-03-01 James Henstridge <james@daa.com.au>
* autogen.sh: require automake 1.7. Add calls to libtoolize and
gtkdocize. Clean up some of the error messages.
* configure.in: move version declaration to the top of the file
(before AC_INIT), using M4 macros.
GLIB_AC_DIVERT_BEFORE_HELP() calls no longer necessary, due to use
of M4 macro expansion in help messages instead.
Convert AC_ARG_WITH/AC_ARG_ENABLE calls to use AC_HELP_STRING to
format help strings. Use quadrigraphs to get square brackets to
show correctly.
Replace gtk-doc checks with a call to GTK_DOC_CHECK() macro.
Use AC_CONFIG_COMMANDS([glibconfig.h], ...) to output
glibconfig.h, so that "./config.status glibconfig.h" works.
Add an extra AC_CONFIG_FILES call listing other files we want
generated by config.status protected by an "if false" block. This
way automake generates the rules needed to rebuild the files for
us.
Add quotes in various places.
* docs/reference/*/Makefile.am: convert to use the common
gtk-doc.make file. This localises the complexity to a single
makefile fragment maintained with gtk-doc itself.
* */Makefile.am: remove unneeded rules to build win32 files with
config.status. Automake now does this for us.
Replace instances of @FOO@ with $(FOO) where appropriate -- this
allows automake to do a better job checking the makefile.
Add some files to DISTCLEANFILES where appropriate
* Makefile.am: use the DISTCHECK_CONFIGURE_FLAGS variable to
ensure that --enable-gtk-doc is passed to configure during a
distcheck. Remove the custom distcheck, since the standard one
will now do.
* gobject/Makefile.am: switch to BUILT_SOURCES, since that now
works.
2003-01-04 Tor Lillqvist <tml@iki.fi>
* {glib,gmodule,gobject,gthread}/Makefile.am:
[Win32] Install also the .def files, to help users generate
import libraries for other compilers. Uninstall, too.
* glib-zip.in: Include .def files from above.
Tue Dec 3 20:56:19 2002 Owen Taylor <otaylor@redhat.com>
* gmodule.c (g_module_open): Properly refcount the
main module if it is already open. (#98648)
2002-11-21 Tor Lillqvist <tml@iki.fi>
* {glib,gmodule,gobject,gthread}/makefile.{mingw,msc}.in:
Hardcode 2.0 in the names, as that is what Makefile.am does.
2002-11-21 Tor Lillqvist <tml@iki.fi>
* gmodule/gmodule.rc.in
* gobject/gobject.rc.in
* gthread/gthread.rc.in: Hardcode 2.0 in the names, as that is
what the Makefile.am does.
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.
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)
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-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