From: Tor Lillqvist Date: Thu, 3 Apr 2008 22:03:32 +0000 (+0000) Subject: Make sure we don't build both shared and static at the same time on X-Git-Tag: GLIB_2_17_0~97 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=47d61b50f829b127e9beb7cbc0b43983aa5b0e52;p=platform%2Fupstream%2Fglib.git Make sure we don't build both shared and static at the same time on 2008-04-04 Tor Lillqvist * configure.in: Make sure we don't build both shared and static at the same time on Windows. Put a #define for GLIB_STATIC_COMPILATION into glibconfig.h in the static case, so that the use of variables from libglib gets the dllimport stuff in the GLIB_VAR macro as defined in gtypes.h automatically correct. This means that a shared and static build of GLib can't be installed in the same prefix on Windows, which sucks a bit. But with variables in the GLib API, there isn't much we can do otherwise. The alternative would be to force the developer who compiles against a statically built GLib to use -DGLIB_STATIC_COMPILATION. svn path=/trunk/; revision=6820 --- diff --git a/ChangeLog b/ChangeLog index ebba7a4..49d480a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,17 @@ +2008-04-04 Tor Lillqvist + + * configure.in: Make sure we don't build both shared and static at + the same time on Windows. Put a #define for + GLIB_STATIC_COMPILATION into glibconfig.h in the static case, so + that the use of variables from libglib gets the dllimport stuff in + the GLIB_VAR macro as defined in gtypes.h automatically + correct. This means that a shared and static build of GLib can't + be installed in the same prefix on Windows, which sucks a bit. But + with variables in the GLib API, there isn't much we can do + otherwise. The alternative would be to force the developer who + compiles against a statically built GLib to use + -DGLIB_STATIC_COMPILATION. + 2008-04-03 Tor Lillqvist * configure.in: Don't enforce shared library build only on diff --git a/configure.in b/configure.in index 03df956..1a0c1a1 100644 --- a/configure.in +++ b/configure.in @@ -485,6 +485,15 @@ if test "x$GCC" = "xyes"; then esac fi +if test "$glib_native_win32" = "yes"; then + if test x$enable_static = xyes -a x$enable_shared = xyes; then + AC_MSG_ERROR([Can not build both shared and static at the same time on Windows.]) + fi + if test x$enable_static = xyes; then + glib_win32_static_compilation=yes + fi +fi + dnl dnl DU4 native cc currently needs -std1 for ANSI mode (instead of K&R) dnl @@ -2711,6 +2720,7 @@ $glib_atexit $glib_memmove $glib_defines $glib_os +$glib_static_compilation $glib_vacopy @@ -3189,6 +3199,10 @@ case $host in glib_os="#define G_OS_UNIX" ;; esac +glib_static_compilation="" +if test x$glib_win32_static_compilation = xyes; then + glib_static_compilation="#define GLIB_STATIC_COMPILATION 1" +fi ]) AC_CONFIG_FILES([