]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Interface/CMakeLists.txt
Widget integration (step 3/6). WARNING: IT DOES NOT COMPILE YET
[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     )
29   SET(
30     LIB_QT_Sources
31     ParametersListWidget.cxx
32     )
33   SET(
34     LIB_QT_Resources
35     )
36
37   QT4_WRAP_UI(LIB_QT_Wrapped_Headers ${LIB_QT_UI})
38   QT4_WRAP_CPP(LIB_QT_Wrapped_MOC_Sources ${LIB_QT_Headers})
39   QT4_ADD_RESOURCES(LIB_QT_Wrapped_Resources_Sources ${LIB_QT_Resources})
40
41   SET(
42     LIB_HEADERS_H
43     ${LIB_HEADERS_H}
44     ${LIB_QT_Wrapped_Headers}
45     )
46
47   SET(
48     LIB_SOURCES_CXX
49     ${LIB_SOURCES_CXX}
50     ${LIB_QT_Sources}
51     ${LIB_QT_Wrapped_Headers}
52     ${LIB_QT_Wrapped_MOC_Sources}
53     ${LIB_QT_Wrapped_Resources_Sources}
54     )
55
56 ENDIF(USE_QT4)
57
58 ## =====================
59 ## = Compilation rules =
60 ## =====================
61
62 ADD_LIBRARY(
63   ${LIBRARY_NAME}
64   SHARED
65   ${LIB_SOURCES_C}
66   ${LIB_SOURCES_CPP}
67   ${LIB_SOURCES_CXX}
68   )
69 GENERATE_EXPORT_HEADER(
70   ${LIBRARY_NAME}
71   BASE_NAME ${LIBRARY_NAME}
72   EXPORT_MACRO_NAME ${LIBRARY_NAME}_EXPORT
73   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/${LIBRARY_NAME}_Export.h
74   STATIC_DEFINE ${LIBRARY_NAME}_BUILT_AS_STATIC
75   )
76 TARGET_LINK_LIBRARIES(
77   ${LIBRARY_NAME}
78   cpPlugins_Pluma
79   ${QT_LIBRARIES}
80   ${ITK_LIBRARIES}
81   ${VTK_LIBRARIES}
82   )
83
84 ## ========================
85 ## -- Installation rules --
86 ## ========================
87
88 INSTALL(
89   TARGETS ${LIBRARY_NAME}
90   RUNTIME DESTINATION bin
91   LIBRARY DESTINATION lib
92   ARCHIVE DESTINATION lib/static
93   )
94 INSTALL(
95   DIRECTORY .
96   DESTINATION include/cpPlugins/Interface
97   FILES_MATCHING PATTERN "*.h"
98   )
99 INSTALL(
100   DIRECTORY .
101   DESTINATION include/cpPlugins/Interface
102   FILES_MATCHING PATTERN "*.hxx"
103   )
104 INSTALL(
105   DIRECTORY .
106   DESTINATION include/cpPlugins/Interface
107   FILES_MATCHING PATTERN "*.hpp"
108   )
109 INSTALL(
110   FILES
111   ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/${LIBRARY_NAME}_Export.h
112   DESTINATION include/cpPlugins/Interface
113   )
114
115 ## eof - $RCSfile$