main_lib.c 756 B

1234567891011121314151617181920212223242526272829303132333435
  1. #include <SDL3/SDL.h>
  2. #define SDL_MAIN_HANDLED /* don't drag in header-only SDL_main implementation */
  3. #include <SDL3/SDL_main.h>
  4. #include <stdio.h>
  5. #include EXPORT_HEADER
  6. #if defined(_WIN32)
  7. #include <windows.h>
  8. BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID lpvReserved) {
  9. return TRUE;
  10. }
  11. #endif
  12. int MYLIBRARY_EXPORT mylibrary_init(void);
  13. void MYLIBRARY_EXPORT mylibrary_quit(void);
  14. int MYLIBRARY_EXPORT mylibrary_work(void);
  15. int mylibrary_init(void) {
  16. SDL_SetMainReady();
  17. if (SDL_Init(0) < 0) {
  18. fprintf(stderr, "Could not initialize SDL: %s\n", SDL_GetError());
  19. return 1;
  20. }
  21. return 0;
  22. }
  23. void mylibrary_quit(void) {
  24. SDL_Quit();
  25. }
  26. int mylibrary_work(void) {
  27. SDL_Delay(100);
  28. return 0;
  29. }