cmake_minimum_required(VERSION 3.15) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) project(rhi_integration_minimal) set(ENGINE_ROOT_DIR ${CMAKE_SOURCE_DIR}/engine) set(PACKAGE_DIR ${CMAKE_SOURCE_DIR}/tests/opengl/package) get_filename_component(PROJECT_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../../.. ABSOLUTE) add_executable(rhi_integration_minimal main.cpp ${CMAKE_CURRENT_SOURCE_DIR}/../fixtures/RHIIntegrationFixture.cpp ${PACKAGE_DIR}/src/glad.c ) target_include_directories(rhi_integration_minimal PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/../fixtures ${ENGINE_ROOT_DIR}/include ${PACKAGE_DIR}/include ${PROJECT_ROOT_DIR}/engine/src ) target_link_libraries(rhi_integration_minimal PRIVATE d3d12 dxgi d3dcompiler winmm opengl32 XCEngine GTest::gtest ) target_compile_definitions(rhi_integration_minimal PRIVATE UNICODE _UNICODE XCENGINE_SUPPORT_OPENGL ) add_custom_command(TARGET rhi_integration_minimal POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/RHI/integration/compare_ppm.py $/ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/RHI/D3D12/integration/minimal/GT.ppm $/GT_D3D12.ppm COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/RHI/OpenGL/integration/minimal/GT.ppm $/GT_OpenGL.ppm COMMAND ${CMAKE_COMMAND} -E copy_if_different ${ENGINE_ROOT_DIR}/third_party/renderdoc/renderdoc.dll $/ ) include(GoogleTest) gtest_discover_tests(rhi_integration_minimal)