cmake_minimum_required(VERSION 3.5) project(transmit_disinfection_upper VERSION 0.1 LANGUAGES CXX) set(CMAKE_INCLUDE_CURRENT_DIR ON) set(CMAKE_AUTOUIC ON) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_CXX_STANDARD 11) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets REQUIRED) find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets SerialPort Charts Concurrent REQUIRED) include_directories(libxsync/include) include_directories(src) include_directories(./) include_directories(libzqt) add_compile_options(-Wall ) set(PROJECT_SOURCES libzqt/logger.cpp libzqt/zqthread.cpp libzqt/QFunction.cpp libzqt/zworkqueue.cpp src/main.cpp src/mainwindow.cpp src/mainwindow.h src/mainwindow.ui libzqt/qt_serial_datachannel.cpp iflytop_canbus/iflytop_canbus_master.cpp iflytop_canbus/waveshare_can.cpp libzqt/zui/z_function_list_box.cpp libzqt/zui/zq_vtab_page.cpp libzqt/zui/z_reg_table_list_box.cpp libzqt/zui/zqui.cpp ) add_executable(transmit_disinfection_upper WIN32 ${PROJECT_SOURCES} ) target_link_options(transmit_disinfection_upper PRIVATE -static -static-libgcc -static-libstdc++) target_link_libraries(transmit_disinfection_upper PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::SerialPort Qt${QT_VERSION_MAJOR}::Charts Qt${QT_VERSION_MAJOR}::Concurrent wsock32) set_target_properties(transmit_disinfection_upper PROPERTIES MACOSX_BUNDLE_GUI_IDENTIFIER my.example.com MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION} MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR} ) if(QT_VERSION_MAJOR EQUAL 6) qt_finalize_executable(transmit_disinfection_upper) endif()