]> Creatis software - FrontAlgorithms.git/blob - lib/CMakeLists.txt
Major refactoring
[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}_IMAGE_HEADERS "fpa/Image/*.h" "fpa/Image/*.hxx")
15
16 FILE(GLOB ${LIB_NAME}_SOURCES "fpa/*.cxx")
17 FILE(GLOB ${LIB_NAME}_BASE_SOURCES "fpa/Base/*.cxx")
18 FILE(GLOB ${LIB_NAME}_IMAGE_SOURCES "fpa/Image/*.cxx")
19
20 IF(USE_VTK)
21   FILE(GLOB ${LIB_NAME}_VTK_HEADERS "fpa/VTK/*.h" "fpa/VTK/*.hxx")
22   FILE(GLOB ${LIB_NAME}_VTK_SOURCES "fpa/VTK/*.cxx")
23 ENDIF(USE_VTK)
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}_IMAGE_SOURCES}
31   ${${LIB_NAME}_VTK_SOURCES}
32   )
33
34 ## =============
35 ## = Libraries =
36 ## =============
37
38 SET(
39   ${LIB_NAME}_LINK_LIBRARIES
40   ${ITK_LIBRARIES}
41   ${VTK_LIBRARIES}
42   )
43
44 ## =====================
45 ## = Compilation rules =
46 ## =====================
47
48 ADD_LIBRARY(
49   ${LIB_NAME}
50   ${LIB_TYPE}
51   ${${LIB_NAME}_ALL_SOURCES}
52   )
53 GENERATE_EXPORT_HEADER(
54   ${LIB_NAME}
55   BASE_NAME ${LIB_NAME}
56   EXPORT_MACRO_NAME ${LIB_NAME}_EXPORT
57   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/fpa/${LIB_NAME}_Export.h
58   STATIC_DEFINE ${LIB_NAME}_BUILT_AS_STATIC
59   )
60 IF(USE_VTK)
61   TARGET_LINK_LIBRARIES(
62     ${LIB_NAME}
63     ${${LIB_NAME}_LINK_LIBRARIES}
64     ${ITK_LIBRARIES}
65     vtkInteractionWidgets
66     )
67 ELSE(USE_VTK)
68   TARGET_LINK_LIBRARIES(
69     ${LIB_NAME}
70     ${${LIB_NAME}_LINK_LIBRARIES}
71     ${ITK_LIBRARIES}
72     )
73 ENDIF(USE_VTK)
74
75 ## eof - $RCSfile$