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