From 6a6ef034c9e669d801e18abc7b66bee94d139c60 Mon Sep 17 00:00:00 2001 From: Rafal Somla Date: Fri, 3 Jun 2011 13:44:33 +0200 Subject: [PATCH] Bug#12612143 - LIBMYSQL 5.5.13 BREAKS USER APPLICATION BUILD Since the Windows authentication support has been added to libmysql, this library depends on the system Secur32 library. Consequently, clients which are linked against libmysql should be also linked with Secur32 (in addition to ws2_32). In MS VC++ it is possible to embed information about required libraries into object file using #pragma directive. This patch adds such directive when the Windows authentiaction support is compiled. This is similar to analogous #pragma for ws2_32 library in my_init.c --- libmysql/authentication_win/plugin_client.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libmysql/authentication_win/plugin_client.cc b/libmysql/authentication_win/plugin_client.cc index 72769ada8f6..30dc5b1493d 100644 --- a/libmysql/authentication_win/plugin_client.cc +++ b/libmysql/authentication_win/plugin_client.cc @@ -20,6 +20,16 @@ #include "common.h" +/* + The following MS C++ specific pragma embeds a comment in the resulting + object file. A "lib" comment tells the linker to use the specified + library, thus the dependency is handled automagically. +*/ + +#ifdef _MSC_VER +#pragma comment(lib, "Secur32") +#endif + static int win_auth_client_plugin_init(char*, size_t, int, va_list) { return 0;