RyanHub – file viewer
filename: CMakeLists.txt
branch: main
back to repo
cmake_minimum_required(VERSION 3.15)
project(GameDemo)

set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

file(GLOB_RECURSE SOURCES
    "${PROJECT_SOURCE_DIR}/src/*.cpp"
    "${PROJECT_SOURCE_DIR}/src/*.c"
)

add_executable(GameDemo ${SOURCES})

target_include_directories(GameDemo PRIVATE include external/Libraries/include)

target_link_directories(GameDemo PRIVATE external/Libraries/lib)
target_link_libraries(GameDemo PRIVATE glfw3 OpenGL32)

#copy to debug/release directories
add_custom_command(TARGET GameDemo POST_BUILD
    COMMAND ${CMAKE_COMMAND} -E copy_directory
        "${PROJECT_SOURCE_DIR}/shaders"
        "$<TARGET_FILE_DIR:GameDemo>/shaders"
    COMMAND ${CMAKE_COMMAND} -E copy_directory
        "${PROJECT_SOURCE_DIR}/textures"
        "$<TARGET_FILE_DIR:GameDemo>/textures"
)