add_library(redbound_game STATIC src/Actions.cpp src/Trigger.cpp src/Physics.cpp src/Rail.cpp)
target_include_directories(redbound_game PUBLIC include)
set_target_properties(redbound_game PROPERTIES CXX_STANDARD 17 CXX_EXTENSIONS OFF)
target_compile_options(redbound_game PRIVATE -Wall -Wextra)

if(REDBOUND_TOOLS)
add_executable(test_triggers tests/test_triggers.cpp)
set_target_properties(test_triggers PROPERTIES CXX_STANDARD 17)
target_link_libraries(test_triggers redbound_game)
add_test(NAME triggers COMMAND test_triggers)

add_executable(test_physics tests/test_physics.cpp)
set_target_properties(test_physics PROPERTIES CXX_STANDARD 17)
target_link_libraries(test_physics redbound_game)
add_test(NAME physics COMMAND test_physics)
add_executable(test_rail tests/test_rail.cpp)
set_target_properties(test_rail PROPERTIES CXX_STANDARD 17)
target_link_libraries(test_rail redbound_game)
add_test(NAME rail COMMAND test_rail)
endif()
