From: Tor Lillqvist Date: Thu, 3 Apr 2008 20:17:15 +0000 (+0000) Subject: Don't enforce shared library build only on Windows. It might well make X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=285b31e7a512791405ec378d397dac298aff41a0;p=dana%2Fcg-glib.git Don't enforce shared library build only on Windows. It might well make 2008-04-03 Tor Lillqvist * configure.in: Don't enforce shared library build only on Windows. It might well make sense to build static libraries in some use cases. * glib/gutils.c: Don't compile the DllMain if building libglib statically. Also in that case don't return NULL from _glib_get_installation_directory(), but return the installation directory of the program's .exe file. svn path=/trunk/; revision=6818 --- diff --git a/ChangeLog b/ChangeLog index b313317f..ebba7a42 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2008-04-03 Tor Lillqvist + + * configure.in: Don't enforce shared library build only on + Windows. It might well make sense to build static libraries in + some use cases. + + * glib/gutils.c: Don't compile the DllMain if building libglib + statically. Also in that case don't return NULL from + _glib_get_installation_directory(), but return the installation + directory of the program's .exe file. + 2008-04-03 Tor Lillqvist Bug 525972 - UCS-4 not in the new win_iconv implementation diff --git a/configure.in b/configure.in index 90ac430f..03df9565 100644 --- a/configure.in +++ b/configure.in @@ -235,17 +235,6 @@ else AC_MSG_RESULT([yes]) fi -if test "$glib_native_win32" = "yes"; then - if test x$enable_static = xyes -o x$enable_static = x; then - AC_MSG_WARN([Disabling static library build, must build as DLL on Windows.]) - enable_static=no - fi - if test x$enable_shared = xno; then - AC_MSG_WARN([Enabling shared library build, must build as DLL on Windows.]) - fi - enable_shared=yes -fi - dnl Checks for programs. AC_PROG_CC diff --git a/glib/gutils.c b/glib/gutils.c index d7eb1699..03a82276 100644 --- a/glib/gutils.c +++ b/glib/gutils.c @@ -134,6 +134,8 @@ const guint glib_binary_age = GLIB_BINARY_AGE; static HMODULE glib_dll = NULL; +#ifdef DLL_EXPORT + BOOL WINAPI DllMain (HINSTANCE hinstDLL, DWORD fdwReason, @@ -145,12 +147,18 @@ DllMain (HINSTANCE hinstDLL, return TRUE; } +#endif + gchar * _glib_get_installation_directory (void) { +#ifdef DLL_EXPORT if (glib_dll == NULL) return NULL; - +#endif + /* In a static build of GLib just use the application's .exe file's + * installation directory... + */ return g_win32_get_package_installation_directory_of_module (glib_dll); }