]> Creatis software - FrontAlgorithms.git/blob - plugins/fpa/CMakeLists.txt
0186f7f0fc70cba8ec7ad39aeecab0b8820791d6
[FrontAlgorithms.git] / plugins / fpa / CMakeLists.txt
1 SET(lib_NAME fpaPlugins)
2 SET(lib_DIR  fpa)
3
4 ## ===============
5 ## = Source code =
6 ## ===============
7
8 SET(
9   base_HEADERS_H
10   ${CMAKE_CURRENT_SOURCE_DIR}/BaseImageFilter.h
11   ${CMAKE_CURRENT_SOURCE_DIR}/MinimumSpanningTree.h
12   )
13
14 SET(
15   filters_HEADERS_H
16   ${CMAKE_CURRENT_SOURCE_DIR}/MinimumSpanningTreeReader.h
17   ${CMAKE_CURRENT_SOURCE_DIR}/MinimumSpanningTreeWriter.h
18   ${CMAKE_CURRENT_SOURCE_DIR}/ImageRegionGrow.h
19   ${CMAKE_CURRENT_SOURCE_DIR}/ImageDijkstra.h
20   ${CMAKE_CURRENT_SOURCE_DIR}/ExtractPathFromMinimumSpanningTree.h
21   ${CMAKE_CURRENT_SOURCE_DIR}/ExtractEndPointsAndBifurcationsFromMinimumSpanningTree.h
22   ${CMAKE_CURRENT_SOURCE_DIR}/RegionGrowThresholdFunction.h
23   ${CMAKE_CURRENT_SOURCE_DIR}/InvertCostFunction.h
24   ${CMAKE_CURRENT_SOURCE_DIR}/GradientBaseImageFunctionSource.h
25   )
26
27 SET(
28   base_HEADERS_HXX
29   ${CMAKE_CURRENT_SOURCE_DIR}/BaseImageFilter.hxx
30   )
31
32 SET(
33   base_SOURCES_CXX
34   ${CMAKE_CURRENT_SOURCE_DIR}/BaseImageFilter.cxx
35   ${CMAKE_CURRENT_SOURCE_DIR}/MinimumSpanningTree.cxx
36   )
37
38 SET(
39   filters_SOURCES_CXX
40   ${CMAKE_CURRENT_SOURCE_DIR}/MinimumSpanningTreeReader.cxx
41   ${CMAKE_CURRENT_SOURCE_DIR}/MinimumSpanningTreeWriter.cxx
42   ${CMAKE_CURRENT_SOURCE_DIR}/ImageRegionGrow.cxx
43   ${CMAKE_CURRENT_SOURCE_DIR}/ImageDijkstra.cxx
44   ${CMAKE_CURRENT_SOURCE_DIR}/ExtractPathFromMinimumSpanningTree.cxx
45   ${CMAKE_CURRENT_SOURCE_DIR}/ExtractEndPointsAndBifurcationsFromMinimumSpanningTree.cxx
46   ${CMAKE_CURRENT_SOURCE_DIR}/RegionGrowThresholdFunction.cxx
47   ${CMAKE_CURRENT_SOURCE_DIR}/InvertCostFunction.cxx
48   ${CMAKE_CURRENT_SOURCE_DIR}/GradientBaseImageFunctionSource.cxx
49   )
50
51 SET(
52   target_LIBRARIES
53   ${cpExtensions_LIBRARY}
54   ${cpPlugins_LIBRARY}
55   cpPlugins_ITKInstances_Base
56   cpPlugins_ITKInstances_Image
57   cpPlugins_ITKInstances_ImageIterators
58   cpPlugins_ITKInstances_ImageFilters
59   cpPlugins_ITKInstances_Mesh
60   cpPlugins_ITKInstances_Paths
61   ${ITK_LIBRARIES}
62   )
63
64 ## =====================
65 ## = Compilation rules =
66 ## =====================
67
68 ADD_CUSTOM_COMMAND(
69   OUTPUT ${lib_NAME}_Host.cxx
70   DEPENDS ${cpPlugins_HostCreator_APP} ${filters_HEADERS_H}
71   COMMAND ${cpPlugins_HostCreator_APP} ${lib_NAME}_Host.cxx ${filters_HEADERS_H}
72   )
73 ADD_LIBRARY(
74   ${lib_NAME}
75   SHARED
76   ${lib_NAME}_Host.cxx
77   ${base_SOURCES_CXX}
78   ${filters_SOURCES_CXX}
79   )
80 SET_TARGET_PROPERTIES(
81   ${lib_NAME} PROPERTIES
82   VERSION "${prj_VER}"
83   SOVERSION "${prj_sVER}"
84   )
85 GENERATE_EXPORT_HEADER(
86   ${lib_NAME}
87   BASE_NAME ${lib_NAME}
88   EXPORT_MACRO_NAME ${lib_NAME}_EXPORT
89   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/plugins/${lib_DIR}/${lib_NAME}_Export.h
90   STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC
91   )
92 TARGET_LINK_LIBRARIES(${lib_NAME} ${target_LIBRARIES})
93
94 ## ========================
95 ## -- Installation rules --
96 ## ========================
97
98 INSTALL(
99   TARGETS ${lib_NAME}
100   RUNTIME DESTINATION bin
101   LIBRARY DESTINATION lib
102   ARCHIVE DESTINATION lib/static
103   )
104
105 ## eof - $RCSfile$