VHFMill/CMakeLists.txt
2023-03-02 15:13:54 +01:00

53 lines
1.5 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(vhfmill VERSION 0.1 LANGUAGES CXX)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
find_package(QT NAMES Qt6 REQUIRED COMPONENTS Widgets)
find_package(Qt6 REQUIRED COMPONENTS Widgets SerialPort Network 3DCore 3DRender 3DInput 3DExtras)
find_program(XDG-ICON-RESOURCE_EXECUTABLE xdg-icon-resource)
find_program(XDG-DESKTOP-MENU_EXECUTABLE xdg-desktop-menu)
set(PROJECT_SOURCES
main.cpp
mainwindow.cpp
vhfmill.cpp
vhfmill.h
led.cpp
led.h
gcodetovhf.cpp
gcodetovhf.h
mainwindow.h
mainwindow.ui
backplotwidget.cpp
backplotwidget.h
orbitcameracontroller.cpp
orbitcameracontroller.h
vhfmillthread.cpp
vhfmillthread.h
mainobject.cpp
mainobject.h
)
qt_add_executable(vhfmill MANUAL_FINALIZATION ${PROJECT_SOURCES})
target_link_libraries(vhfmill PRIVATE Qt6::Widgets Qt6::SerialPort Qt6::Network Qt6::3DCore Qt6::3DRender Qt6::3DExtras)
target_include_directories(vhfmill PRIVATE .)
install(CODE "
message(\"Installing icon\")
execute_process(COMMAND ${XDG-ICON-RESOURCE_EXECUTABLE} install --size 128 ${CMAKE_CURRENT_SOURCE_DIR}/uvos-vhfmill.png)
message(\"Installing .desktop file\")
execute_process(COMMAND ${XDG-DESKTOP-MENU_EXECUTABLE} install --novendor ${CMAKE_CURRENT_SOURCE_DIR}/vhfmill.desktop)
")
install(TARGETS vhfmill BUNDLE DESTINATION . LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
qt_finalize_executable(vhfmill)