From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1OAlIf-0004Mo-5W for qemu-devel@nongnu.org; Sat, 08 May 2010 10:46:41 -0400 Received: from [140.186.70.92] (port=52979 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OAlId-0004LP-SN for qemu-devel@nongnu.org; Sat, 08 May 2010 10:46:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OAlIc-0005j8-4P for qemu-devel@nongnu.org; Sat, 08 May 2010 10:46:39 -0400 Received: from moutng.kundenserver.de ([212.227.126.171]:53357) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OAlIb-0005is-PF for qemu-devel@nongnu.org; Sat, 08 May 2010 10:46:38 -0400 Message-ID: <4BE5793F.9020603@mail.berlios.de> Date: Sat, 08 May 2010 16:46:23 +0200 From: Stefan Weil MIME-Version: 1.0 Subject: [Qemu-devel] Re: [PATCH] win32: Avoid compiler warning (WIN32_LEAN_AND_MEAN redefined) References: <1270131607-13114-1-git-send-email-weil@mail.berlios.de> <4BCF5C82.1030106@mail.berlios.de> In-Reply-To: <4BCF5C82.1030106@mail.berlios.de> Content-Type: text/plain; charset=ISO-8859-15; format=flowed Content-Transfer-Encoding: 7bit List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Anthony Liguori Cc: Paolo Bonzini , QEMU Developers , Richard Henderson Am 21.04.2010 22:13, schrieb Stefan Weil: > Stefan Weil schrieb: >> configure adds the macro WIN32_LEAN_AND_MEAN to >> QEMU_CFLAGS, and SDL_syswm.h defines it, too. >> >> This results in a compiler warning (redefinition of >> WIN32_LEAN_AND_MEAN in SDL_syswm.h. That warning prevents >> compilations for win32 with warning = error). >> >> Fix this by removing the definition of WIN32_LEAN_AND_MEAN >> before including SDL_syswm.h. >> >> Signed-off-by: Stefan Weil >> --- >> sdl.c | 4 ++++ >> 1 files changed, 4 insertions(+), 0 deletions(-) >> >> diff --git a/sdl.c b/sdl.c >> index 16a48e9..0334b4b 100644 >> --- a/sdl.c >> +++ b/sdl.c >> @@ -21,6 +21,10 @@ >> * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER >> DEALINGS IN >> * THE SOFTWARE. >> */ >> + >> +/* Avoid compiler warning because macro is redefined in SDL_syswm.h. */ >> +#undef WIN32_LEAN_AND_MEAN >> + >> #include >> #include >> > > No comments, no questions? The original patch still applies. > > It would be nice to have this patch in QEMU master. > > Regards, > Stefan Hello Anthony, is this patch still in your work queue? It is still valid for qemu master. There were two feedbacks: Paolo had a question which was answered by Richard. The compiler warning for Windows still exists, and I see 3 ways to fix it: 1. Use my patch. 2. Don't define WIN32_LEAN_AND_MEAN in configure/make. 3. Change the definition of WIN32_LEAN_AND_MEAN in configure/make. I personally prefer solution 2, but we had this once and some developers decided to change that, so I don't think it's a realistic solution now. Solution 3 is a very simple change. It works for the moment, but would raise warnings when a library header file with a different definition of WIN32_LEAN_AND_MEAN is used. When I scanned the system headers of my mingw32 installation, I saw these two variants: #define WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN 1 So I still think my patch is the best solution. Regards, Stefan