diff options
author | Siddarth-Suresh <65844402+Siddarth-Suresh@users.noreply.github.com> | 2025-03-23 20:27:31 -0400 |
---|---|---|
committer | Siddarth-Suresh <65844402+Siddarth-Suresh@users.noreply.github.com> | 2025-03-23 20:27:31 -0400 |
commit | b400e932ce310e856a5fcbc49ecce522c9cad1b3 (patch) | |
tree | 91eea37c01bda87b115b33c63c02dc41c192243f /CMakeLists.txt | |
parent | fab7d9dcf249762eeac89a11487856e7569c66d5 (diff) |
Initial GUI Commit
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 6a48922..64cd30d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,6 +20,12 @@ include_directories( # gather source files file(GLOB_RECURSE SRCS "src/*.cc") list(REMOVE_ITEM SRCS "${CMAKE_CURRENT_SOURCE_DIR}/src/main.cc") +#exclude gui files from cli executable +foreach(file ${SRCS}) + if(file MATCHES "${CMAKE_CURRENT_SOURCE_DIR}/src/gui/.*") + list(REMOVE_ITEM SRCS ${file}) + endif() +endforeach() # find python3 components find_package(Python3 COMPONENTS Development REQUIRED) @@ -41,3 +47,27 @@ target_link_libraries(tests PRIVATE Catch2::Catch2WithMain PRIVATE Python3::Pyth include(CTest) include(Catch) catch_discover_tests(tests) + +# ================================ +# Qt6 GUI Integration +# ================================ +cmake_minimum_required(VERSION 3.16) + +set(CMAKE_AUTOUIC ON) +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) + +# Find Qt6 Components +find_package(Qt6 REQUIRED COMPONENTS Widgets) + + +# Gather GUI Source Files +file(GLOB_RECURSE GUI_SRCS "src/gui/*.cc") + +# Gather GUI Resources +qt_add_resources(GUI_RESOURCES "src/gui/resources.qrc") + +# GUI executable +qt_add_executable("${PROJECT_NAME}_gui" ${GUI_SRCS} ${SRCS} ${GUI_RESOURCES}) +target_link_libraries("${PROJECT_NAME}_gui" PRIVATE Qt6::Widgets) + |