CMakeLists.txt 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. project(CTKPluginFramework)
  2. #
  3. # See CTK/CMake/ctkMacroBuildLib.cmake for details
  4. #
  5. set(KIT_export_directive "CTK_PLUGINFW_EXPORT")
  6. # Source files
  7. set(KIT_SRCS
  8. ctkDictionary.h
  9. ctkLDAPExpr.cpp
  10. ctkLDAPExpr_p.h
  11. ctkLDAPSearchFilter.cpp
  12. ctkPlugin.cpp
  13. ctkPluginAbstractTracked_p.h
  14. ctkPluginAbstractTracked.tpp
  15. ctkPluginActivator.h
  16. ctkPluginArchive.cpp
  17. ctkPluginArchive_p.h
  18. ctkPluginArchiveSQL_p.h
  19. ctkPluginArchiveSQL.cpp
  20. ctkPluginConstants.cpp
  21. ctkPluginContext.cpp
  22. ctkPluginContext_p.h
  23. ctkPluginDatabaseException.cpp
  24. ctkPluginEvent.cpp
  25. ctkPluginException.cpp
  26. ctkPluginFramework.cpp
  27. ctkPluginFramework_global.h
  28. ctkPluginFrameworkFactory.cpp
  29. ctkPluginFrameworkContext.cpp
  30. ctkPluginFrameworkContext_p.h
  31. ctkPluginFrameworkDebug.cpp
  32. ctkPluginFrameworkDebug_p.h
  33. ctkPluginFrameworkEvent.cpp
  34. ctkPluginFrameworkLauncher.cpp
  35. ctkPluginFrameworkListeners.cpp
  36. ctkPluginFrameworkListeners_p.h
  37. ctkPluginFramework_p.cpp
  38. ctkPluginFramework_p.h
  39. ctkPluginFrameworkUtil.cpp
  40. ctkPluginFrameworkUtil_p.h
  41. ctkPluginLocalization.cpp
  42. ctkPluginManifest.cpp
  43. ctkPluginManifest_p.h
  44. ctkPlugin_p.cpp
  45. ctkPlugin_p.h
  46. ctkPlugins.cpp
  47. ctkPlugins_p.h
  48. ctkPluginStorage_p.h
  49. ctkPluginStorageSQL.cpp
  50. ctkPluginStorageSQL_p.h
  51. ctkPluginTracker.h
  52. ctkPluginTracker.tpp
  53. ctkPluginTracker_p.h
  54. ctkPluginTracker_p.tpp
  55. ctkRequirePlugin.cpp
  56. ctkRequirePlugin_p.h
  57. ctkServiceEvent.cpp
  58. ctkServiceException.cpp
  59. ctkServiceFactory.h
  60. ctkServiceProperties_p.h
  61. ctkServiceProperties.cpp
  62. ctkServiceReference.cpp
  63. ctkServiceReference_p.cpp
  64. ctkServiceRegistration.cpp
  65. ctkServiceRegistration_p.cpp
  66. ctkServices.cpp
  67. ctkServices_p.h
  68. ctkServiceSlotEntry.cpp
  69. ctkServiceSlotEntry_p.h
  70. ctkServiceTracker.h
  71. ctkServiceTracker.tpp
  72. ctkServiceTrackerCustomizer.h
  73. ctkServiceTracker_p.h
  74. ctkServiceTracker_p.tpp
  75. ctkTrackedPlugin_p.h
  76. ctkTrackedPlugin.tpp
  77. ctkTrackedPluginListener_p.h
  78. ctkTrackedService_p.h
  79. ctkTrackedService.tpp
  80. ctkTrackedServiceListener_p.h
  81. ctkVersion.cpp
  82. ctkVersionRange.cpp
  83. ctkVersionRange_p.h
  84. # Services
  85. service/cm/ctkConfiguration.cpp
  86. service/cm/ctkConfigurationAdmin.cpp
  87. service/cm/ctkConfigurationEvent.cpp
  88. service/cm/ctkConfigurationException.cpp
  89. service/cm/ctkConfigurationListener.h
  90. service/cm/ctkConfigurationPlugin.cpp
  91. service/cm/ctkManagedService.h
  92. service/cm/ctkManagedServiceFactory.h
  93. service/event/ctkEvent.cpp
  94. service/event/ctkEventAdmin.h
  95. service/event/ctkEventConstants.cpp
  96. service/event/ctkEventHandler.h
  97. service/log/ctkLogEntry.h
  98. service/log/ctkLogListener.h
  99. service/log/ctkLogReaderService.h
  100. service/log/ctkLogService.cpp
  101. service/log/ctkLogStream.cpp
  102. service/metatype/ctkAttributeDefinition.cpp
  103. service/metatype/ctkMetaTypeInformation.h
  104. service/metatype/ctkMetaTypeProvider.cpp
  105. service/metatype/ctkMetaTypeService.cpp
  106. service/metatype/ctkObjectClassDefinition.h
  107. )
  108. # Headers that should run through moc
  109. set(KIT_MOC_SRCS
  110. ctkPluginFrameworkListeners_p.h
  111. ctkTrackedPluginListener_p.h
  112. ctkTrackedServiceListener_p.h
  113. )
  114. # UI files
  115. set(KIT_UI_FORMS
  116. )
  117. # Resources
  118. set(KIT_resources
  119. )
  120. # Target libraries - See CMake/ctkFunctionGetTargetLibraries.cmake
  121. # The following macro will read the target libraries from the file 'target_libraries.cmake'
  122. ctkFunctionGetTargetLibraries(KIT_target_libraries)
  123. if(CTK_QT_VERSION VERSION_GREATER "4")
  124. list(APPEND KIT_target_libraries Qt5::Sql Qt5::Concurrent)
  125. endif()
  126. # Create a MANIFEST.MF resource for the PluginFramework library,
  127. # pretending that is is a plugin (the system plugin)
  128. ctkFunctionGeneratePluginManifest(KIT_SRCS
  129. SYMBOLIC_NAME "system.plugin"
  130. VERSION "0.9.9"
  131. )
  132. ctkMacroBuildLib(
  133. NAME ${PROJECT_NAME}
  134. EXPORT_DIRECTIVE ${KIT_export_directive}
  135. INCLUDE_DIRECTORIES ${CTK_SUPERBUILD_BINARY_DIR}
  136. SRCS ${KIT_SRCS}
  137. MOC_SRCS ${KIT_MOC_SRCS}
  138. UI_FORMS ${KIT_UI_FORMS}
  139. TARGET_LIBRARIES ${KIT_target_libraries}
  140. RESOURCES ${KIT_resources}
  141. LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  142. )
  143. if(CTK_WRAP_PYTHONQT_LIGHT)
  144. ctkMacroBuildLibWrapper(
  145. TARGET ${PROJECT_NAME}
  146. SRCS ${KIT_SRCS}
  147. WRAPPER_LIBRARY_TYPE ${CTK_LIBRARY_MODE}
  148. )
  149. endif()
  150. # Testing
  151. if(BUILD_TESTING)
  152. add_subdirectory(Testing)
  153. # Compile source code snippets
  154. add_subdirectory(Documentation/Snippets)
  155. endif()