]> Creatis software - FrontAlgorithms.git/blob - lib/CMakeLists.txt
Plugins updated
[FrontAlgorithms.git] / lib / CMakeLists.txt
1 SET(LIB_NAME FrontAlgorithms)
2
3 ## ================
4 ## = Source files =
5 ## ================
6
7 CONFIGURE_FILE(
8   fpa/Common.cxx.in
9   ${PROJECT_BINARY_DIR}/lib/fpa/Common.cxx
10   )
11
12 FILE(GLOB ${LIB_NAME}_HEADERS "fpa/*.h" "fpa/*.hxx")
13 FILE(GLOB ${LIB_NAME}_BASE_HEADERS "fpa/Base/*.h" "fpa/Base/*.hxx")
14 FILE(GLOB ${LIB_NAME}_IO_HEADERS "fpa/IO/*.h" "fpa/IO/*.hxx")
15 FILE(GLOB ${LIB_NAME}_IMAGE_HEADERS "fpa/Image/*.h" "fpa/Image/*.hxx")
16
17 FILE(GLOB ${LIB_NAME}_SOURCES "fpa/*.cxx")
18 FILE(GLOB ${LIB_NAME}_BASE_SOURCES "fpa/Base/*.cxx")
19 FILE(GLOB ${LIB_NAME}_IO_SOURCES "fpa/IO/*.cxx")
20 FILE(GLOB ${LIB_NAME}_IMAGE_SOURCES "fpa/Image/*.cxx")
21
22 FILE(GLOB ${LIB_NAME}_VTK_HEADERS "fpa/VTK/*.h" "fpa/VTK/*.hxx")
23 FILE(GLOB ${LIB_NAME}_VTK_SOURCES "fpa/VTK/*.cxx")
24
25 SET(
26   ${LIB_NAME}_ALL_SOURCES
27   ${PROJECT_BINARY_DIR}/lib/fpa/Common.cxx
28   ${${LIB_NAME}_SOURCES}
29   ${${LIB_NAME}_BASE_SOURCES}
30   ${${LIB_NAME}_IO_SOURCES}
31   ${${LIB_NAME}_IMAGE_SOURCES}
32   ${${LIB_NAME}_VTK_SOURCES}
33   )
34
35 ## =============
36 ## = Libraries =
37 ## =============
38
39 SET(
40   ${LIB_NAME}_LINK_LIBRARIES
41   ${ITK_LIBRARIES}
42   ${VTK_LIBRARIES}
43   )
44
45 ## =====================
46 ## = Compilation rules =
47 ## =====================
48
49 ADD_LIBRARY(
50   ${LIB_NAME}
51   ${LIB_TYPE}
52   ${${LIB_NAME}_ALL_SOURCES}
53   )
54 GENERATE_EXPORT_HEADER(
55   ${LIB_NAME}
56   BASE_NAME ${LIB_NAME}
57   EXPORT_MACRO_NAME ${LIB_NAME}_EXPORT
58   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/fpa/${LIB_NAME}_Export.h
59   STATIC_DEFINE ${LIB_NAME}_BUILT_AS_STATIC
60   )
61 TARGET_LINK_LIBRARIES(
62   ${LIB_NAME}
63   ${${LIB_NAME}_LINK_LIBRARIES}
64   )
65
66 ## ========================
67 ## -- Installation rules --
68 ## ========================
69
70 INSTALL(
71   TARGETS ${LIB_NAME}
72   RUNTIME DESTINATION bin
73   LIBRARY DESTINATION lib
74   ARCHIVE DESTINATION lib/static
75   )
76 SET(
77   local_install_dirs
78   fpa
79   )
80 FOREACH(dir ${local_install_dirs})
81   INSTALL(
82     DIRECTORY ${dir}
83     DESTINATION include
84     FILES_MATCHING PATTERN "*.h"
85     )
86   INSTALL(
87     DIRECTORY ${dir}
88     DESTINATION include
89     FILES_MATCHING PATTERN "*.hxx"
90     )
91   INSTALL(
92     DIRECTORY ${dir}
93     DESTINATION include
94     FILES_MATCHING PATTERN "*.hpp"
95     )
96 ENDFOREACH(dir)
97
98 INSTALL(
99   FILES
100   ${PROJECT_BINARY_DIR}/lib/fpa/${LIB_NAME}_Export.h
101   DESTINATION include/fpa
102   )
103
104 IF(BUILD_PLUGINS)
105   SUBDIRS(
106     fpaPlugins
107     )
108 ENDIF(BUILD_PLUGINS)
109
110 ## eof - $RCSfile$