[cogl] Bug 682071-cogl/cogl-sdl.h: MSVC: Link to SDL when apps are built



commit 2921d2a4d9c79f1ca7530171e0dfa8c945607bc7
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Fri Aug 17 11:30:17 2012 +0800

    Bug 682071-cogl/cogl-sdl.h: MSVC: Link to SDL when apps are built
    
    Link to SDL.lib and SDLmain.lib if Cogl was built with the SDL winsys.
    
    Recent changes to the SDL winsys introduced a direct dependency to
    SDLmain.lib (and hence SDL.lib) when programs are built, causing linker
    errors to appear when any programs using cogl (with the SDL winsys built
    in) are built.
    
    Since we cannot determine whether a Cogl build is built with the SDL winsys
    at build time easily, we could use #pragma comment (lib, ...) whenever
    cogl-sdl.h is included by cogl.h so that SDLmain.lib and SDL.lib is linked
    into the resulting binary, so that the program can link and run correctly.
    
    This does not add any external dependencies as the Cogl DLL already depends
    on SDL.dll when it is built with the SDL winsys.

 cogl/cogl-sdl.h |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/cogl/cogl-sdl.h b/cogl/cogl-sdl.h
index cf7f9c7..05da036 100644
--- a/cogl/cogl-sdl.h
+++ b/cogl/cogl-sdl.h
@@ -31,6 +31,15 @@
 #include <cogl/cogl-context.h>
 #include <SDL.h>
 
+#ifdef _MSC_VER
+/* We need to link to SDL.lib/SDLmain.lib
+ * if we are using Cogl
+ * that uses the SDL winsys
+ */
+#pragma comment (lib, "SDL.lib")
+#pragma comment (lib, "SDLmain.lib")
+#endif
+
 G_BEGIN_DECLS
 
 /**



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]