diff --git a/.gitignore b/.gitignore index cdad9be..248798c 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,7 @@ cmake-build-release/ *.stackdump *.coredump compile_commands.json -/build +/build* .clangd .cache diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt index c69d4ae..81c6a60 100644 --- a/external/CMakeLists.txt +++ b/external/CMakeLists.txt @@ -26,7 +26,11 @@ add_subdirectory("physfs") if(NOT MM_HEADLESS) if(NOT EMSCRIPTEN) - find_package(SDL2 REQUIRED) + if(VCPKG_TARGET_TRIPLET) + find_package(SDL2 CONFIG REQUIRED) + else() # HACK: fix sdl find module + find_package(SDL2 REQUIRED) + endif() endif() if(NOT MM_OPENGL_3_GLES) diff --git a/external/imgui/CMakeLists.txt b/external/imgui/CMakeLists.txt index 0148794..aa808fe 100644 --- a/external/imgui/CMakeLists.txt +++ b/external/imgui/CMakeLists.txt @@ -58,7 +58,9 @@ if(EMSCRIPTEN) set_target_properties(imgui PROPERTIES LINK_FLAGS "-s USE_SDL=2 -s USE_WEBGL2=1 -s FULL_ES2=1 -s FULL_ES3=1") elseif(ANDROID) target_link_libraries(imgui SDL) -else() # if not android or emscripten +elseif(VCPKG_TARGET_TRIPLET) + target_link_libraries(imgui SDL2::SDL2 SDL2::SDL2main SDL2::SDL2-static) +else() target_include_directories(imgui PUBLIC "${SDL2_INCLUDE_DIR}") target_link_libraries(imgui ${SDL2_LIBRARY}) endif() diff --git a/external/soloud/CMakeLists.txt b/external/soloud/CMakeLists.txt index 41e2840..749aefc 100644 --- a/external/soloud/CMakeLists.txt +++ b/external/soloud/CMakeLists.txt @@ -163,9 +163,12 @@ target_include_directories(soloud SYSTEM PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}/sol #target_include_directories(soloud PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/imgui") #if not android or emscripten -target_include_directories(soloud PUBLIC "${SDL2_INCLUDE_DIR}") -target_link_libraries(soloud ${SDL2_LIBRARY}) -#endif +if(VCPKG_TARGET_TRIPLET) + target_link_libraries(soloud SDL2::SDL2 SDL2::SDL2main SDL2::SDL2-static) +else() + target_include_directories(soloud PUBLIC "${SDL2_INCLUDE_DIR}") + target_link_libraries(soloud ${SDL2_LIBRARY}) +endif() #if android #target_link_libraries(soloud SDL) diff --git a/external/tracy/CMakeLists.txt b/external/tracy/CMakeLists.txt index 8d05be4..5723746 100644 --- a/external/tracy/CMakeLists.txt +++ b/external/tracy/CMakeLists.txt @@ -19,10 +19,11 @@ endif() target_include_directories(tracy_client PUBLIC "${CMAKE_CURRENT_LIST_DIR}") -#target_link_libraries(tracy_client -#) - if(UNIX) target_link_libraries(tracy_client dl) endif() +if(WIN32) + target_link_libraries(tracy_client ws2_32 dbghelp) +endif() + diff --git a/framework/filesystem/CMakeLists.txt b/framework/filesystem/CMakeLists.txt index fc145d2..4e26be7 100644 --- a/framework/filesystem/CMakeLists.txt +++ b/framework/filesystem/CMakeLists.txt @@ -31,6 +31,8 @@ if(NOT MM_HEADLESS) if(EMSCRIPTEN) set_target_properties(filesystem_service PROPERTIES COMPILE_FLAGS "-s USE_SDL=2") set_target_properties(filesystem_service PROPERTIES LINK_FLAGS "-s USE_SDL=2") + elseif(VCPKG_TARGET_TRIPLET) + target_link_libraries(filesystem_service SDL2::SDL2 SDL2::SDL2main SDL2::SDL2-static) else() #if not android or emscripten target_include_directories(filesystem_service PUBLIC "${SDL2_INCLUDE_DIR}") diff --git a/framework/sdl_service/CMakeLists.txt b/framework/sdl_service/CMakeLists.txt index 8b9b1e3..3e1584e 100644 --- a/framework/sdl_service/CMakeLists.txt +++ b/framework/sdl_service/CMakeLists.txt @@ -39,6 +39,10 @@ else() target_link_libraries(sdl_service glad) endif() +if(VCPKG_TARGET_TRIPLET) + target_link_libraries(sdl_service SDL2::SDL2 SDL2::SDL2main SDL2::SDL2-static) +endif() + if(BUILD_TESTING) add_subdirectory(test) endif() diff --git a/framework/sdl_service/src/mm/services/sdl_service.cpp b/framework/sdl_service/src/mm/services/sdl_service.cpp index 897b905..c74ad93 100644 --- a/framework/sdl_service/src/mm/services/sdl_service.cpp +++ b/framework/sdl_service/src/mm/services/sdl_service.cpp @@ -34,6 +34,9 @@ SDLService::SDLService(uint32_t _sdl_init_flags) { //#ifdef __EMSCRIPTEN__ //_sdl_init_flags &= ~SDL_INIT_HAPTIC; //#endif +#if 1 // hack for mingw + wine + _sdl_init_flags &= ~SDL_INIT_SENSOR; +#endif sdl_init_flags = _sdl_init_flags; }