add_executable(openroller-desktop src/AudioManager.cpp src/CabinetBackend.cpp src/LevelLoader.cpp src/ServiceMenu.cpp src/SongSelect.cpp src/main.cpp ) set_target_properties(openroller-desktop PROPERTIES OUTPUT_NAME OpenRoller) target_include_directories(openroller-desktop PRIVATE include) target_link_libraries(openroller-desktop PRIVATE Vectorail::Core Vectorail::GC Vectorail::GCEffects ) if(MINGW AND CMAKE_CXX_COMPILER_ID STREQUAL "GNU") target_link_options(openroller-desktop PRIVATE -static -static-libgcc -static-libstdc++) endif() if(MSVC) target_compile_options(openroller-desktop PRIVATE /W4) else() target_compile_options(openroller-desktop PRIVATE -Wall -Wextra -Wpedantic) endif() configure_file(openroller.cfg openroller.cfg COPYONLY) file(COPY shaders DESTINATION "${CMAKE_CURRENT_BINARY_DIR}") add_custom_command(TARGET openroller-desktop POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/shaders" "$/shaders" COMMAND ${CMAKE_COMMAND} -E copy_if_different "${CMAKE_CURRENT_SOURCE_DIR}/openroller.cfg" "$/openroller.cfg" VERBATIM ) if(WIN32 AND TARGET SDL3::SDL3-shared) add_custom_command(TARGET openroller-desktop POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different "$" "$" VERBATIM ) install(FILES "$" DESTINATION .) endif() install(TARGETS openroller-desktop RUNTIME DESTINATION .) install(DIRECTORY shaders DESTINATION .) install(FILES openroller.cfg DESTINATION .)