41 lines
828 B
CMake
41 lines
828 B
CMake
cmake_minimum_required(VERSION 3.25)
|
|
project(cg1)
|
|
|
|
set(CMAKE_CXX_STANDARD 20)
|
|
|
|
find_package(Qt5 REQUIRED COMPONENTS Core Widgets Gui)
|
|
set(CMAKE_AUTOMOC ON)
|
|
|
|
enable_language(ASM_NASM)
|
|
|
|
option(__AVX2__ "Tells compiler to use AVX2 extension if possible" OFF)
|
|
|
|
if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC")
|
|
if (__AVX2__)
|
|
add_compile_options($<$<COMPILE_LANGUAGE:CXX>:/arch:AVX2>)
|
|
endif ()
|
|
endif ()
|
|
|
|
add_executable(
|
|
cg1
|
|
|
|
WIN32
|
|
src/main.cpp
|
|
|
|
src/frame.hpp
|
|
src/drawing_assets.hpp
|
|
src/drawing_assets.cpp
|
|
src/painter.cpp
|
|
src/painter.hpp
|
|
src/old_main.cpp
|
|
|
|
src/ui.hpp
|
|
src/ui.cpp
|
|
)
|
|
|
|
qt5_use_modules(cg1 Widgets)
|
|
|
|
add_subdirectory(renderer-api)
|
|
add_subdirectory(utilities)
|
|
add_subdirectory(qt-utilities)
|
|
add_subdirectory(programs/lab1) |