So, the linker error that was occurring was that find_package is invoked without SDL_BUILDING_LIBRARY being set. As a result SDL2_LIBRARY contained both SDL2.lib and SDL2main.lib. That means that anything linking to SDL2_LIBRARY gets linked with SDL2's version of main.

Normally, that is not a problem - most SDL2 apps are taking advantage of the SDL2 entry point. The exception is the launcher - it is a Qt app, and needs to link versus the Qt entry point, not SDL2. As a result, that causes a linker error.