]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Interface/CMakeLists.txt
Parameters are now part of the pipeline update process
[cpPlugins.git] / lib / cpPlugins / Interface / CMakeLists.txt
1 SET(LIBRARY_NAME cpPlugins_Interface)
2
3 CONFIGURE_FILE(
4   Config.h.in
5   ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/Config.h
6   @ONLY
7   )
8
9 ## ===============
10 ## = Source code =
11 ## ===============
12
13 FILE(GLOB LIB_HEADERS_H   "*.h")
14 FILE(GLOB LIB_HEADERS_HPP "*.hpp")
15 FILE(GLOB LIB_HEADERS_HXX "*.hxx")
16 FILE(GLOB LIB_SOURCES_C   "*.c")
17 FILE(GLOB LIB_SOURCES_CPP "*.cpp")
18 FILE(GLOB LIB_SOURCES_CXX "*.cxx")
19
20 IF(USE_QT4)
21   SET(
22     LIB_QT_UI
23     ParametersListWidget.ui
24     )
25   SET(
26     LIB_QT_Headers
27     ParametersListWidget.h
28     BaseMPRWindow.h
29     )
30   SET(
31     LIB_QT_Sources
32     ParametersListWidget.cxx
33     BaseMPRWindow.cxx
34     )
35   SET(
36     LIB_QT_Resources
37     )
38
39   QT4_WRAP_UI(LIB_QT_Wrapped_Headers ${LIB_QT_UI})
40   QT4_WRAP_CPP(LIB_QT_Wrapped_MOC_Sources ${LIB_QT_Headers})
41   QT4_ADD_RESOURCES(LIB_QT_Wrapped_Resources_Sources ${LIB_QT_Resources})
42
43   SET(
44     LIB_HEADERS_H
45     ${LIB_HEADERS_H}
46     ${LIB_QT_Wrapped_Headers}
47     )
48
49   SET(
50     LIB_SOURCES_CXX
51     ${LIB_SOURCES_CXX}
52     ${LIB_QT_Sources}
53     ${LIB_QT_Wrapped_Headers}
54     ${LIB_QT_Wrapped_MOC_Sources}
55     ${LIB_QT_Wrapped_Resources_Sources}
56     )
57
58 ENDIF(USE_QT4)
59
60 ## =====================
61 ## = Compilation rules =
62 ## =====================
63
64 ADD_LIBRARY(
65   ${LIBRARY_NAME}
66   SHARED
67   ${LIB_SOURCES_C}
68   ${LIB_SOURCES_CPP}
69   ${LIB_SOURCES_CXX}
70   )
71 GENERATE_EXPORT_HEADER(
72   ${LIBRARY_NAME}
73   BASE_NAME ${LIBRARY_NAME}
74   EXPORT_MACRO_NAME ${LIBRARY_NAME}_EXPORT
75   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/${LIBRARY_NAME}_Export.h
76   STATIC_DEFINE ${LIBRARY_NAME}_BUILT_AS_STATIC
77   )
78 TARGET_LINK_LIBRARIES(
79   ${LIBRARY_NAME}
80   cpPlugins_Pluma
81   ${QT_LIBRARIES}
82   ${ITK_LIBRARIES}
83   ${VTK_LIBRARIES}
84   cpExtensions
85   )
86
87 ## ========================
88 ## -- Installation rules --
89 ## ========================
90
91 INSTALL(
92   TARGETS ${LIBRARY_NAME}
93   RUNTIME DESTINATION bin
94   LIBRARY DESTINATION lib
95   ARCHIVE DESTINATION lib/static
96   )
97 INSTALL(
98   DIRECTORY .
99   DESTINATION include/cpPlugins/Interface
100   FILES_MATCHING PATTERN "*.h"
101   )
102 INSTALL(
103   DIRECTORY .
104   DESTINATION include/cpPlugins/Interface
105   FILES_MATCHING PATTERN "*.hxx"
106   )
107 INSTALL(
108   DIRECTORY .
109   DESTINATION include/cpPlugins/Interface
110   FILES_MATCHING PATTERN "*.hpp"
111   )
112 INSTALL(
113   FILES
114   ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/${LIBRARY_NAME}_Export.h
115   DESTINATION include/cpPlugins/Interface
116   )
117
118 ## eof - $RCSfile$