CMakeLists.txt 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. cmake_minimum_required(VERSION 3.5)
  2. project(openPilotLog 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 17)
  8. set(CMAKE_CXX_STANDARD_REQUIRED ON)
  9. # QtCreator supports the following variables for Android, which are identical to qmake Android variables.
  10. # Check https://doc.qt.io/qt/deployment-android.html for more information.
  11. # They need to be set before the find_package( ...) calls below.
  12. #if(ANDROID)
  13. # set(ANDROID_PACKAGE_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/android")
  14. # if (ANDROID_ABI STREQUAL "armeabi-v7a")
  15. # set(ANDROID_EXTRA_LIBS
  16. # ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libcrypto.so
  17. # ${CMAKE_CURRENT_SOURCE_DIR}/path/to/libssl.so)
  18. # endif()
  19. #endif()
  20. find_package(QT NAMES Qt6 Qt5 COMPONENTS Widgets REQUIRED)
  21. find_package(Qt${QT_VERSION_MAJOR} COMPONENTS Widgets Sql Network REQUIRED)
  22. set(PROJECT_SOURCES
  23. main.cpp
  24. mainwindow.cpp
  25. src/classes/astyle.cpp
  26. src/classes/astandardpaths.cpp
  27. src/classes/aaircraftentry.cpp
  28. src/classes/adownload.cpp
  29. src/classes/aentry.cpp
  30. src/classes/aflightentry.cpp
  31. src/classes/apilotentry.cpp
  32. src/classes/arunguard.cpp
  33. src/classes/asettings.cpp
  34. src/classes/atailentry.cpp
  35. src/database/adatabase.cpp
  36. src/database/adatabasesetup.cpp
  37. src/functions/acalc.cpp
  38. src/functions/areadcsv.cpp
  39. src/functions/astat.cpp
  40. src/gui/dialogues/firstrundialog.cpp
  41. src/gui/dialogues/newflightdialog.cpp
  42. src/gui/dialogues/newpilotdialog.cpp
  43. src/gui/dialogues/newtaildialog.cpp
  44. src/gui/widgets/aircraftwidget.cpp
  45. src/gui/widgets/debugwidget.cpp
  46. src/gui/widgets/homewidget.cpp
  47. src/gui/widgets/logbookwidget.cpp
  48. src/gui/widgets/pilotswidget.cpp
  49. src/gui/widgets/settingswidget.cpp
  50. src/gui/widgets/totalswidget.cpp
  51. src/testing/abenchmark.cpp
  52. src/testing/atimer.cpp
  53. mainwindow.h
  54. src/classes/astyle.h
  55. src/classes/astandardpaths.h
  56. src/classes/aaircraftentry.h
  57. src/classes/adownload.h
  58. src/classes/aentry.h
  59. src/classes/aflightentry.h
  60. src/classes/apilotentry.h
  61. src/classes/arunguard.h
  62. src/classes/asettings.h
  63. src/classes/atailentry.h
  64. src/database/adatabase.h
  65. src/database/adatabasesetup.h
  66. src/database/declarations.h
  67. src/functions/acalc.h
  68. src/functions/adatetime.h
  69. src/functions/areadcsv.h
  70. src/functions/astat.h
  71. src/functions/atime.h
  72. src/gui/dialogues/firstrundialog.h
  73. src/gui/dialogues/newflightdialog.h
  74. src/gui/dialogues/newpilotdialog.h
  75. src/gui/dialogues/newtaildialog.h
  76. src/gui/widgets/aircraftwidget.h
  77. src/gui/widgets/debugwidget.h
  78. src/gui/widgets/homewidget.h
  79. src/gui/widgets/logbookwidget.h
  80. src/gui/widgets/pilotswidget.h
  81. src/gui/widgets/settingswidget.h
  82. src/gui/widgets/totalswidget.h
  83. src/oplconstants.h
  84. src/testing/abenchmark.h
  85. src/testing/adebug.h
  86. src/testing/atimer.h
  87. mainwindow.ui
  88. src/gui/dialogues/firstrundialog.ui
  89. src/gui/dialogues/newflight.ui
  90. src/gui/dialogues/newpilot.ui
  91. src/gui/dialogues/newtail.ui
  92. src/gui/widgets/aircraftwidget.ui
  93. src/gui/widgets/debugwidget.ui
  94. src/gui/widgets/homewidget.ui
  95. src/gui/widgets/logbookwidget.ui
  96. src/gui/widgets/pilotswidget.ui
  97. src/gui/widgets/settingswidget.ui
  98. src/gui/widgets/totalswidget.ui
  99. assets/icons.qrc
  100. assets/themes/breeze.qrc
  101. )
  102. if(${QT_VERSION_MAJOR} GREATER_EQUAL 6)
  103. qt_add_executable(openPilotLog
  104. ${PROJECT_SOURCES}
  105. )
  106. else()
  107. if(ANDROID)
  108. add_library(openPilotLog SHARED
  109. ${PROJECT_SOURCES}
  110. )
  111. else()
  112. add_executable(openPilotLog
  113. ${PROJECT_SOURCES}
  114. )
  115. endif()
  116. endif()
  117. target_link_libraries(openPilotLog PRIVATE Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Sql Qt${QT_VERSION_MAJOR}::Network)
  118. install(TARGETS openPilotLog DESTINATION bin)