cmake_minimum_required(VERSION 3.15) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) project(d3d12_triangle_test) set(ENGINE_ROOT_DIR ${CMAKE_SOURCE_DIR}/engine) add_executable(d3d12_triangle_test WIN32 main.cpp ) target_include_directories(d3d12_triangle_test PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${ENGINE_ROOT_DIR}/include ) target_compile_definitions(d3d12_triangle_test PRIVATE UNICODE _UNICODE ) target_link_libraries(d3d12_triangle_test PRIVATE d3d12 dxgi d3dcompiler winmm XCEngine ) add_custom_command(TARGET d3d12_triangle_test POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/Res $/Res ) add_custom_command(TARGET d3d12_triangle_test POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/rhi/d3d12/integration/compare_ppm.py $/ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/rhi/d3d12/integration/run_integration_test.py $/ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/GT.ppm $/ ) add_test(NAME d3d12_triangle_test COMMAND ${Python3_EXECUTABLE} $/run_integration_test.py $ triangle.ppm ${CMAKE_CURRENT_SOURCE_DIR}/GT.ppm 0 WORKING_DIRECTORY $ )