Mercurial > sdl-ios-xcode
view docs/html/sdlsyswmevent.html @ 5129:32f0f603a0c8 SDL-1.2
Fixed bug #1111
kwm@rainbow-runner.nl 2011-01-30 06:28:27 PST
When building sdl 1.2.14 with the Clang compiler http://clang.llvm.org .
The build fails in src/video/mmx.h with the following error:
--------------------------------------------------
./src/video/SDL_RLEaccel.c:831:5: error: invalid operand for instruction
CHOOSE_BLIT(RLECLIPBLIT, alpha, fmt);
^
./src/video/SDL_RLEaccel.c:831:17: note: instantiated from:
CHOOSE_BLIT(RLECLIPBLIT, alpha, fmt);
^
./src/video/SDL_RLEaccel.c:831:5: note: instantiated from:
CHOOSE_BLIT(RLECLIPBLIT, alpha, fmt);
^
./src/video/SDL_RLEaccel.c:647:23: note: instantiated from:
blitter(2, Uint8, ALPHA_BLIT16_565MMX); \
^
./src/video/SDL_RLEaccel.c:282:4: note: instantiated from:
movq_r2m(mm3, *dstp); \
^
In file included from ./src/video/SDL_RLEaccel.c:99:
./src/video/mmx.h:379:28: note: instantiated from:
#define movq_r2m(reg, var) mmx_r2m(movq, reg, var)
^
<scratch space>:192:1: note: instantiated from:
"movq"
^
<inline asm>:1:2: note: instantiated into assembly here
movq %mm3, %dx
^
--------------------------------------------------
According to the clang developers this is a invalid inline assembly.
Using the attached patch from the last commit in the below bug report fixes the
compile.
More details from: http://llvm.org/bugs/show_bug.cgi?id=6730
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Sun, 30 Jan 2011 13:38:57 -0800 |
parents | 355632dca928 |
children |
line wrap: on
line source
<HTML ><HEAD ><TITLE >SDL_SysWMEvent</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ "><LINK REL="HOME" TITLE="SDL Library Documentation" HREF="index.html"><LINK REL="UP" TITLE="SDL Event Structures." HREF="eventstructures.html"><LINK REL="PREVIOUS" TITLE="SDL_ExposeEvent" HREF="sdlexposeevent.html"><LINK REL="NEXT" TITLE="SDL_UserEvent" HREF="sdluserevent.html"></HEAD ><BODY CLASS="REFENTRY" BGCOLOR="#FFF8DC" TEXT="#000000" LINK="#0000ee" VLINK="#551a8b" ALINK="#ff0000" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >SDL Library Documentation</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="sdlexposeevent.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="sdluserevent.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="SDLSYSWMEVENT" ></A >SDL_SysWMEvent</H1 ><DIV CLASS="REFNAMEDIV" ><A NAME="AEN4538" ></A ><H2 >Name</H2 >SDL_SysWMEvent -- Platform-dependent window manager event.</DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN4541" ></A ><H2 >Description</H2 ><P >The system window manager event contains a pointer to system-specific information about unknown window manager events. If you enable this event using <A HREF="sdleventstate.html" ><TT CLASS="FUNCTION" >SDL_EventState()</TT ></A >, it will be generated whenever unhandled events are received from the window manager. This can be used, for example, to implement cut-and-paste in your application. <PRE CLASS="PROGRAMLISTING" >typedef struct { Uint8 type; /* Always SDL_SYSWMEVENT */ SDL_SysWMmsg *msg; } SDL_SysWMEvent;</PRE > If you want to obtain system-specific information about the window manager, you can fill the version member of a <SPAN CLASS="STRUCTNAME" >SDL_SysWMinfo</SPAN > structure (details can be found in <TT CLASS="FILENAME" >SDL_syswm.h</TT >, which must be included) using the <TT CLASS="FUNCTION" >SDL_VERSION()</TT > macro found in <TT CLASS="FILENAME" >SDL_version.h</TT >, and pass it to the function: <DIV CLASS="FUNCSYNOPSIS" ><A NAME="AEN4551" ></A ><P ></P ><P ><CODE ><CODE CLASS="FUNCDEF" >int <B CLASS="FSFUNC" >SDL_GetWMInfo</B ></CODE >(SDL_SysWMinfo *info);</CODE ></P ><P ></P ></DIV ></P ></DIV ><DIV CLASS="REFSECT1" ><A NAME="AEN4556" ></A ><H2 >See Also</H2 ><P ><A HREF="sdleventstate.html" ><TT CLASS="FUNCTION" >SDL_EventState</TT ></A ></P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="sdlexposeevent.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="sdluserevent.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >SDL_ExposeEvent</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="eventstructures.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >SDL_UserEvent</TD ></TR ></TABLE ></DIV ></BODY ></HTML >