Я еще один дурак, который пытается заработать приличную FindSDL2.cmake
, пытаясь делать вещи "правильным образом".Тем не менее, я бьюсь головой об стену, когда возникает следующая проблема:
# SDL2main imported target.
add_library(SDL2::SDL2main UNKNOWN IMPORTED)
set_target_properties(SDL2::SDL2main PROPERTIES
IMPORTED_LOCATION "${SDL2_MAIN_LIBRARY}")
Проблема в том, что при компиляции с MinGW SDL2main требуется -lmingw32
, чтобы найти WinMain
.И это должно предшествовать SDL2main
во флагах компоновщика.
Кажется, что счастливый путь хочет, чтобы я сделал это:
if(MINGW)
set_target_properties(SDL2::SDL2main PROPERTIES
INTERFACE_LINK_LIBRARIES mingw32)
endif()
Но это не такне работает, потому что mingw32
идет после SDL2main
по команде компоновщика.Это должно быть до .Я также предпочел бы не обременять цели, вставляя их самостоятельно.