cmake_minimum_required(VERSION 3.15) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}) project(OpenGL_Triangle) set(ENGINE_ROOT_DIR ${CMAKE_SOURCE_DIR}/engine) set(PACKAGE_DIR ${CMAKE_SOURCE_DIR}/tests/OpenGL/package) add_executable(OpenGL_Triangle WIN32 main.cpp ${PACKAGE_DIR}/src/glad.c ) target_include_directories(OpenGL_Triangle PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${ENGINE_ROOT_DIR}/include ${PACKAGE_DIR}/include ) target_link_libraries(OpenGL_Triangle PRIVATE opengl32 XCEngine ) target_compile_definitions(OpenGL_Triangle PRIVATE UNICODE _UNICODE ) add_custom_command(TARGET OpenGL_Triangle POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/Res $/Res ) add_custom_command(TARGET OpenGL_Triangle POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/RHI/OpenGL/integration/run_integration_test.py $/ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_SOURCE_DIR}/tests/RHI/OpenGL/integration/compare_ppm.py $/ COMMAND ${CMAKE_COMMAND} -E copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/GT.ppm $/ ) add_test(NAME OpenGL_Triangle_Integration COMMAND ${Python3_EXECUTABLE} $/run_integration_test.py $ triangle.ppm ${CMAKE_CURRENT_SOURCE_DIR}/GT.ppm 5 WORKING_DIRECTORY $ )