Make WinRT's SDL_main header-only
As the implementation requires C++, the user will have to include SDL_main.h in a C++ source file (that needs to be compiled with /ZW). It's ok to keep the standard main() implementation in plain C and use an otherwise empty C++ source file for the SDL_main implementation part, if both source files #include <SDL3/SDL_main.h> Including SDL_main.h in a C source file will print a message at compilation (when building for WinRT or possibly other not yet implemented platforms that require C++ for main), to remind the user of also including it in a .cpp source file. This message/warning can be disabled with #define SDL_MAIN_NOIMPL before including SDL_main.h in the C file. When including it in a .cpp file, there will be a compiler error with helpful message if it's not compiled with /ZW For this I renamend _SDL_MAIN_NOIMPL to SDL_MAIN_NOIMPL, because now it's not for internal use only anymore, but also useful for users (that want their main() function in a different file than the SDL_main implementation) Add a project for the testdraw2.c test to the WinRT solution to at least get some minimal testing on WinRT. I won't add all tests because it's a lot of manual clicking per test, but this should be better than nothing :)
This commit is contained in:
parent
8e0693c982
commit
28b93451dc
20 changed files with 634 additions and 78 deletions
|
@ -31,7 +31,7 @@
|
|||
#endif
|
||||
|
||||
#include <SDL3/SDL.h>
|
||||
#define _SDL_MAIN_NOIMPL /* don't drag in header-only implementation of SDL_main */
|
||||
#define SDL_MAIN_NOIMPL /* don't drag in header-only implementation of SDL_main */
|
||||
#include <SDL3/SDL_main.h>
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue