You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

48 lines
1.2 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. cmake_minimum_required(VERSION 3.5)
  2. project(xsync VERSION 0.1 LANGUAGES CXX)
  3. set(CMAKE_INCLUDE_CURRENT_DIR ON)
  4. set(CMAKE_AUTOUIC ON)
  5. set(CMAKE_AUTOMOC ON)
  6. set(CMAKE_AUTORCC ON)
  7. set(CMAKE_CXX_STANDARD 11)
  8. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  9. set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
  10. find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets console REQUIRED)
  11. find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets Charts Concurrent REQUIRED)
  12. include_directories(libxsync/include)
  13. set(PROJECT_SOURCES
  14. src/logger.cpp
  15. src/main.cpp
  16. src/zqthread.cpp
  17. src/QFunction.cpp
  18. mainwindow.cpp
  19. mainwindow.h
  20. mainwindow.ui
  21. libxsync/xsync.cpp
  22. src/xsync_udp_factory_impl.cpp
  23. libxsync/src/xsync_v2_sig_type.cpp
  24. )
  25. add_executable(xsync
  26. ${PROJECT_SOURCES}
  27. )
  28. target_link_libraries(xsync PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Charts Qt${QT_VERSION_MAJOR}::Concurrent wsock32)
  29. set_target_properties(xsync PROPERTIES
  30. MACOSX_BUNDLE_GUI_IDENTIFIER my.example.com
  31. MACOSX_BUNDLE_BUNDLE_VERSION ${PROJECT_VERSION}
  32. MACOSX_BUNDLE_SHORT_VERSION_STRING ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}
  33. )
  34. if(QT_VERSION_MAJOR EQUAL 6)
  35. qt_finalize_executable(xsync)
  36. endif()