Browse Source

Fixed compiling Windows RT code on Visual Studio 2013

Sam Lantinga 11 years ago
parent
commit
641ba09975

+ 4 - 9
VisualC-WinRT/SDL/SDL-WinRT_VS2012.vcxproj

@@ -97,16 +97,10 @@
     <ClCompile Include="..\..\src\joystick\winrt\SDL_xinputjoystick.c" />
     <ClCompile Include="..\..\src\joystick\winrt\SDL_xinputjoystick.c" />
     <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
     <ClCompile Include="..\..\src\loadso\windows\SDL_sysloadso.c" />
     <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11.c" />
     <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11.c" />
-    <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11_winrthelpers.cpp">
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</CompileAsWinRT>
-      <CompileAsWinRT Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</CompileAsWinRT>
-    </ClCompile>
+    <ClCompile Include="..\..\src\render\direct3d11\SDL_render_winrt.cpp" />
     <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
     <ClCompile Include="..\..\src\render\opengles2\SDL_render_gles2.c" />
     <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
     <ClCompile Include="..\..\src\render\opengles2\SDL_shaders_gles2.c" />
+    <ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
     <ClCompile Include="..\..\src\render\SDL_render.c" />
     <ClCompile Include="..\..\src\render\SDL_render.c" />
     <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
     <ClCompile Include="..\..\src\render\SDL_yuv_mmx.c" />
     <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
     <ClCompile Include="..\..\src\render\SDL_yuv_sw.c" />
@@ -285,10 +279,11 @@
     <ClInclude Include="..\..\src\joystick\SDL_gamecontrollerdb.h" />
     <ClInclude Include="..\..\src\joystick\SDL_gamecontrollerdb.h" />
     <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
     <ClInclude Include="..\..\src\joystick\SDL_joystick_c.h" />
     <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
     <ClInclude Include="..\..\src\joystick\SDL_sysjoystick.h" />
-    <ClInclude Include="..\..\src\render\direct3d11\SDL_render_d3d11_winrthelpers_cpp.h" />
+    <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h" />
     <ClInclude Include="..\..\src\render\mmx.h" />
     <ClInclude Include="..\..\src\render\mmx.h" />
     <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h" />
     <ClInclude Include="..\..\src\render\opengles2\SDL_gles2funcs.h" />
     <ClInclude Include="..\..\src\render\opengles2\SDL_shaders_gles2.h" />
     <ClInclude Include="..\..\src\render\opengles2\SDL_shaders_gles2.h" />
+    <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
     <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
     <ClInclude Include="..\..\src\render\SDL_sysrender.h" />
     <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
     <ClInclude Include="..\..\src\render\SDL_yuv_sw_c.h" />
     <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />
     <ClInclude Include="..\..\src\render\software\SDL_blendfillrect.h" />

+ 4 - 6
VisualC-WinRT/SDL/SDL-WinRT_VS2012.vcxproj.filters

@@ -280,9 +280,8 @@
     <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11.c">
     <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11.c">
       <Filter>Source Files</Filter>
       <Filter>Source Files</Filter>
     </ClCompile>
     </ClCompile>
-    <ClCompile Include="..\..\src\render\direct3d11\SDL_render_d3d11_winrthelpers.cpp">
-      <Filter>Source Files</Filter>
-    </ClCompile>
+    <ClCompile Include="..\..\src\render\direct3d11\SDL_render_winrt.cpp" />
+    <ClCompile Include="..\..\src\render\SDL_d3dmath.c" />
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
     <ClInclude Include="..\..\include\begin_code.h">
     <ClInclude Include="..\..\include\begin_code.h">
@@ -639,9 +638,8 @@
     <ClInclude Include="..\..\src\SDL_internal.h">
     <ClInclude Include="..\..\src\SDL_internal.h">
       <Filter>Source Files</Filter>
       <Filter>Source Files</Filter>
     </ClInclude>
     </ClInclude>
-    <ClInclude Include="..\..\src\render\direct3d11\SDL_render_d3d11_winrthelpers_cpp.h">
-      <Filter>Source Files</Filter>
-    </ClInclude>
+    <ClInclude Include="..\..\src\render\direct3d11\SDL_render_winrt.h" />
+    <ClInclude Include="..\..\src\render\SDL_d3dmath.h" />
   </ItemGroup>
   </ItemGroup>
   <ItemGroup>
   <ItemGroup>
     <Filter Include="Header Files">
     <Filter Include="Header Files">

+ 1 - 0
src/core/winrt/SDL_winrtapp_xaml.cpp

@@ -42,6 +42,7 @@
 SDL_bool WINRT_XAMLWasEnabled = SDL_FALSE;
 SDL_bool WINRT_XAMLWasEnabled = SDL_FALSE;
 
 
 #if WINAPI_FAMILY == WINAPI_FAMILY_APP
 #if WINAPI_FAMILY == WINAPI_FAMILY_APP
+extern "C"
 ISwapChainBackgroundPanelNative * WINRT_GlobalSwapChainBackgroundPanelNative = NULL;
 ISwapChainBackgroundPanelNative * WINRT_GlobalSwapChainBackgroundPanelNative = NULL;
 static Windows::Foundation::EventRegistrationToken	WINRT_XAMLAppEventToken;
 static Windows::Foundation::EventRegistrationToken	WINRT_XAMLAppEventToken;
 #endif
 #endif

+ 1 - 1
src/joystick/winrt/SDL_xinputjoystick.c

@@ -18,7 +18,7 @@
      misrepresented as being the original software.
      misrepresented as being the original software.
   3. This notice may not be removed or altered from any source distribution.
   3. This notice may not be removed or altered from any source distribution.
 */
 */
-#include "SDL_config.h"
+#include "../../SDL_internal.h"
 
 
 #if SDL_JOYSTICK_XINPUT
 #if SDL_JOYSTICK_XINPUT
 
 

+ 1 - 1
src/render/direct3d11/SDL_render_d3d11.c

@@ -35,7 +35,7 @@
 
 
 #ifdef __WINRT__
 #ifdef __WINRT__
 
 
-#include "SDL_render_d3d11_winrthelpers_cpp.h"
+#include "SDL_render_winrt.h"
 
 
 #if WINAPI_FAMILY == WINAPI_FAMILY_APP
 #if WINAPI_FAMILY == WINAPI_FAMILY_APP
 #include <windows.ui.xaml.media.dxinterop.h>
 #include <windows.ui.xaml.media.dxinterop.h>

+ 25 - 22
src/render/direct3d11/SDL_render_d3d11_winrthelpers.cpp → src/render/direct3d11/SDL_render_winrt.cpp

@@ -28,12 +28,15 @@ extern "C" {
 }
 }
 
 
 #include <windows.ui.core.h>
 #include <windows.ui.core.h>
-#include <windows.foundation.h>
+#include <windows.graphics.display.h>
 
 
 #if WINAPI_FAMILY == WINAPI_FAMILY_APP
 #if WINAPI_FAMILY == WINAPI_FAMILY_APP
 #include <windows.ui.xaml.media.dxinterop.h>
 #include <windows.ui.xaml.media.dxinterop.h>
 #endif
 #endif
 
 
+#include "SDL_render_winrt.h"
+
+using namespace ABI;
 using namespace Windows::UI::Core;
 using namespace Windows::UI::Core;
 using namespace Windows::Graphics::Display;
 using namespace Windows::Graphics::Display;
 
 
@@ -75,32 +78,32 @@ D3D11_GetCoreWindowFromSDLRenderer(SDL_Renderer * renderer)
 extern "C" DXGI_MODE_ROTATION
 extern "C" DXGI_MODE_ROTATION
 D3D11_GetCurrentRotation()
 D3D11_GetCurrentRotation()
 {
 {
+#if 0 /* FIXME: This doesn't compile on Visual Studio 2013 */
     switch (DisplayProperties::CurrentOrientation) {
     switch (DisplayProperties::CurrentOrientation) {
 #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
 #if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
-        /* Windows Phone rotations */
-        case DisplayOrientations::Landscape:
-            return DXGI_MODE_ROTATION_ROTATE90;
-        case DisplayOrientations::Portrait:
-            return DXGI_MODE_ROTATION_IDENTITY;
-        case DisplayOrientations::LandscapeFlipped:
-            return DXGI_MODE_ROTATION_ROTATE270;
-        case DisplayOrientations::PortraitFlipped:
-            return DXGI_MODE_ROTATION_ROTATE180;
+    /* Windows Phone rotations */
+    case DisplayOrientations::Landscape:
+        return DXGI_MODE_ROTATION_ROTATE90;
+    case DisplayOrientations::Portrait:
+        return DXGI_MODE_ROTATION_IDENTITY;
+    case DisplayOrientations::LandscapeFlipped:
+        return DXGI_MODE_ROTATION_ROTATE270;
+    case DisplayOrientations::PortraitFlipped:
+        return DXGI_MODE_ROTATION_ROTATE180;
 #else
 #else
-        /* Non-Windows-Phone rotations (ex: Windows 8, Windows RT) */
-        case DisplayOrientations::Landscape:
-            return DXGI_MODE_ROTATION_IDENTITY;
-        case DisplayOrientations::Portrait:
-            return DXGI_MODE_ROTATION_ROTATE270;
-        case DisplayOrientations::LandscapeFlipped:
-            return DXGI_MODE_ROTATION_ROTATE180;
-        case DisplayOrientations::PortraitFlipped:
-            return DXGI_MODE_ROTATION_ROTATE90;
+    /* Non-Windows-Phone rotations (ex: Windows 8, Windows RT) */
+    case DisplayOrientations::Landscape:
+        return DXGI_MODE_ROTATION_IDENTITY;
+    case DisplayOrientations::Portrait:
+        return DXGI_MODE_ROTATION_ROTATE270;
+    case DisplayOrientations::LandscapeFlipped:
+        return DXGI_MODE_ROTATION_ROTATE180;
+    case DisplayOrientations::PortraitFlipped:
+        return DXGI_MODE_ROTATION_ROTATE90;
 #endif /* WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP */
 #endif /* WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP */
-
-    default:
-        return DXGI_MODE_ROTATION_UNSPECIFIED;
     }
     }
+#endif
+    return DXGI_MODE_ROTATION_IDENTITY;
 }
 }
 
 
 
 

+ 0 - 0
src/render/direct3d11/SDL_render_d3d11_winrthelpers_cpp.h → src/render/direct3d11/SDL_render_winrt.h


+ 1 - 1
src/video/winrt/SDL_winrtevents.cpp

@@ -18,7 +18,7 @@
      misrepresented as being the original software.
      misrepresented as being the original software.
   3. This notice may not be removed or altered from any source distribution.
   3. This notice may not be removed or altered from any source distribution.
 */
 */
-#include "SDL_config.h"
+#include "../../SDL_internal.h"
 
 
 #if SDL_VIDEO_DRIVER_WINRT
 #if SDL_VIDEO_DRIVER_WINRT
 
 

+ 0 - 1
src/video/winrt/SDL_winrtmouse.cpp

@@ -18,7 +18,6 @@
      misrepresented as being the original software.
      misrepresented as being the original software.
   3. This notice may not be removed or altered from any source distribution.
   3. This notice may not be removed or altered from any source distribution.
 */
 */
-
 #include "../../SDL_internal.h"
 #include "../../SDL_internal.h"
 
 
 #if SDL_VIDEO_DRIVER_WINRT
 #if SDL_VIDEO_DRIVER_WINRT

+ 1 - 1
src/video/winrt/SDL_winrtopengles.cpp

@@ -18,7 +18,7 @@
      misrepresented as being the original software.
      misrepresented as being the original software.
   3. This notice may not be removed or altered from any source distribution.
   3. This notice may not be removed or altered from any source distribution.
 */
 */
-#include "SDL_config.h"
+#include "../../SDL_internal.h"
 
 
 // TODO: WinRT, make this file compile via C code
 // TODO: WinRT, make this file compile via C code
 
 

+ 1 - 1
src/video/winrt/SDL_winrtpointerinput.cpp

@@ -18,7 +18,7 @@
      misrepresented as being the original software.
      misrepresented as being the original software.
   3. This notice may not be removed or altered from any source distribution.
   3. This notice may not be removed or altered from any source distribution.
 */
 */
-#include "SDL_config.h"
+#include "../../SDL_internal.h"
 
 
 #if SDL_VIDEO_DRIVER_WINRT
 #if SDL_VIDEO_DRIVER_WINRT