]> Creatis software - cpPlugins.git/blob - lib/cpInstances/CMakeLists.txt
4b0e9adcce1baa3aa741684be2637868c38ea126
[cpPlugins.git] / lib / cpInstances / CMakeLists.txt
1
2 SET(
3   _definitions
4   BaseObjects
5   Transforms
6   BoundingBox
7   Mesh
8   ScalarImages
9   ComplexImages
10   ColorImages
11   VectorImages
12   MatrixImages
13   Image
14   ImageIterators
15   ImageInterpolators
16   NeighborhoodImageIterators
17   BaseImageFilters
18   ComplexImageFilters
19   ImagesIO
20   UnaryFunctorFilters
21   BinaryFunctorFilters
22   DistanceMapFilters
23   ImageSliceFilters
24   ImageSeparableFilters
25   ExtractImageFilters
26   ITKDifferenceImageFilters
27   ITKAnisotropicSmoothing
28   ITKLevelSetFilters
29   ITKImageFeatureFilters
30   PolyLineParametricPath
31   Simple3DCurve
32   Skeleton
33   )
34
35 ## =======================
36 ## == Compile instances ==
37 ## =======================
38
39 SET(_all_libs)
40 FOREACH(_d ${_definitions})
41   FILE(GLOB _files ${CMAKE_CURRENT_SOURCE_DIR}/${_d}.*)
42   CreateLib(cpInstances${_d} SHARED ${_files})
43   TARGET_LINK_LIBRARIES(
44     cpInstances${_d}
45     ${ITK_LIBRARIES} ${VTK_LIBRARIES}
46     )
47   LIST(APPEND _all_libs cpInstances${_d})
48 ENDFOREACH(_d)
49
50 ## =====================
51 ## == Further linking ==
52 ## =====================
53
54 SET(_pfx cpInstances)
55 TARGET_LINK_LIBRARIES(${_pfx}BoundingBox ${_pfx}BaseObjects cpPlugins)
56 TARGET_LINK_LIBRARIES(${_pfx}Transforms ${_pfx}BaseObjects)
57 TARGET_LINK_LIBRARIES(${_pfx}Mesh ${_pfx}BoundingBox)
58 TARGET_LINK_LIBRARIES(${_pfx}ScalarImages ${_pfx}BaseObjects)
59 TARGET_LINK_LIBRARIES(${_pfx}ComplexImages ${_pfx}ScalarImages)
60 TARGET_LINK_LIBRARIES(${_pfx}ColorImages ${_pfx}ScalarImages)
61 TARGET_LINK_LIBRARIES(${_pfx}VectorImages ${_pfx}ScalarImages)
62 TARGET_LINK_LIBRARIES(${_pfx}MatrixImages ${_pfx}ScalarImages)
63 TARGET_LINK_LIBRARIES(
64   ${_pfx}Image
65   ${_pfx}ScalarImages
66   ${_pfx}ComplexImages
67   ${_pfx}ColorImages
68   ${_pfx}VectorImages
69   ${_pfx}MatrixImages
70   cpPlugins
71   )
72 TARGET_LINK_LIBRARIES(${_pfx}ImageIterators ${_pfx}Image)
73 TARGET_LINK_LIBRARIES(${_pfx}ImageInterpolators ${_pfx}Image)
74 TARGET_LINK_LIBRARIES(${_pfx}NeighborhoodImageIterators ${_pfx}Image)
75 TARGET_LINK_LIBRARIES(${_pfx}BaseImageFilters ${_pfx}ImageIterators)
76 TARGET_LINK_LIBRARIES(
77   ${_pfx}ComplexImageFilters
78   ${_pfx}ImageIterators
79   ${_pfx}NeighborhoodImageIterators
80   )
81 TARGET_LINK_LIBRARIES(
82   ${_pfx}ImagesIO
83   ${_pfx}ScalarImages
84   ${_pfx}ColorImages
85   ${_pfx}VectorImages
86   ${_pfx}Image
87   ${_pfx}ImageIterators
88   ${_pfx}BaseImageFilters
89   )
90 TARGET_LINK_LIBRARIES(
91   ${_pfx}UnaryFunctorFilters
92   ${_pfx}Image
93   ${_pfx}ImageIterators
94   ${_pfx}BaseImageFilters
95   )
96 TARGET_LINK_LIBRARIES(
97   ${_pfx}BinaryFunctorFilters
98   ${_pfx}Image
99   ${_pfx}ImageIterators
100   ${_pfx}BaseImageFilters
101   )
102 TARGET_LINK_LIBRARIES(
103   ${_pfx}DistanceMapFilters
104   ${_pfx}UnaryFunctorFilters
105   ${_pfx}Image
106   ${_pfx}ImageIterators
107   ${_pfx}NeighborhoodImageIterators
108   ${_pfx}BaseImageFilters
109   )
110 TARGET_LINK_LIBRARIES(
111   ${_pfx}PolyLineParametricPath
112   ${_pfx}BaseObjects
113   cpPlugins
114   )
115 TARGET_LINK_LIBRARIES(
116   ${_pfx}Simple3DCurve
117   cpExtensions
118   cpPlugins
119   )
120 TARGET_LINK_LIBRARIES(
121   ${_pfx}Skeleton
122   ${_pfx}PolyLineParametricPath
123   )
124 TARGET_LINK_LIBRARIES(
125   ${_pfx}ImageSliceFilters
126   ${_pfx}Image
127   ${_pfx}ImageIterators
128   ${_pfx}NeighborhoodImageIterators
129   ${_pfx}ImageInterpolators
130   ${_pfx}BaseImageFilters
131   ${_pfx}ComplexImageFilters
132   ${_pfx}ExtractImageFilters
133   ${_pfx}Transforms
134   ${_pfx}Simple3DCurve
135   )
136 TARGET_LINK_LIBRARIES(
137   ${_pfx}ImageSeparableFilters
138   ${_pfx}Image
139   ${_pfx}BaseImageFilters
140   ${_pfx}UnaryFunctorFilters
141   )
142 TARGET_LINK_LIBRARIES(
143   ${_pfx}ExtractImageFilters
144   ${_pfx}Image
145   ${_pfx}BaseImageFilters
146   ${_pfx}ComplexImageFilters
147   )
148 TARGET_LINK_LIBRARIES(
149   ${_pfx}ITKImageFeatureFilters
150   ${_pfx}Image
151   ${_pfx}BaseImageFilters
152   ${_pfx}ComplexImageFilters
153   ${_pfx}NeighborhoodImageIterators
154   )
155 TARGET_LINK_LIBRARIES(
156   ${_pfx}ITKDifferenceImageFilters
157   ${_pfx}Image
158   ${_pfx}BaseImageFilters
159   ${_pfx}ComplexImageFilters
160   )
161 TARGET_LINK_LIBRARIES(
162   ${_pfx}ITKAnisotropicSmoothing
163   ${_pfx}ITKDifferenceImageFilters
164   )
165 TARGET_LINK_LIBRARIES(
166   ${_pfx}ITKLevelSetFilters
167   ${_pfx}ITKAnisotropicSmoothing
168   ${_pfx}Image
169   ${_pfx}ImageIterators
170   ${_pfx}NeighborhoodImageIterators
171   ${_pfx}BaseImageFilters
172   ${_pfx}ImageInterpolators
173   ${_pfx}ExtractImageFilters
174   ${_pfx}ITKImageFeatureFilters
175   )
176
177 ## ===================================================
178 ## == Keep track of all created instances libraries ==
179 ## ===================================================
180
181 SET(
182   cpPlugins_AllInstances ${_all_libs}
183   CACHE INTERNAL "All valid instances." FORCE
184   )
185
186 ## eof - $RCSfile$