]> Creatis software - cpPlugins.git/blob - plugins/cpPluginsImageFilters/CMakeLists.txt
...
[cpPlugins.git] / plugins / cpPluginsImageFilters / CMakeLists.txt
1 SET(lib_NAME cpPluginsImageFilters)
2 SET(lib_DIR  cpPluginsImageFilters)
3
4 ## ===============
5 ## = Source code =
6 ## ===============
7
8 #FILE(GLOB lib_HEADERS_H   "*.h")
9 FILE(GLOB lib_HEADERS_HPP "*.hpp")
10 FILE(GLOB lib_HEADERS_HXX "*.hxx")
11 FILE(GLOB lib_SOURCES_C   "*.c")
12 FILE(GLOB lib_SOURCES_CPP "*.cpp")
13 #FILE(GLOB lib_SOURCES_CXX "*.cxx")
14
15 SET(
16   lib_HEADERS_H
17   ${CMAKE_CURRENT_SOURCE_DIR}/SignedMaurerDistanceMapImageFilter.h
18   ${CMAKE_CURRENT_SOURCE_DIR}/BinaryThresholdImageFilter.h
19   ${CMAKE_CURRENT_SOURCE_DIR}/BinaryContourImageFilter.h
20   ${CMAKE_CURRENT_SOURCE_DIR}/ResampleImageFilter.h
21   )
22 SET(
23   lib_SOURCES_CXX
24   ${CMAKE_CURRENT_SOURCE_DIR}/SignedMaurerDistanceMapImageFilter.cxx
25   ${CMAKE_CURRENT_SOURCE_DIR}/BinaryThresholdImageFilter.cxx
26   ${CMAKE_CURRENT_SOURCE_DIR}/BinaryContourImageFilter.cxx
27   ${CMAKE_CURRENT_SOURCE_DIR}/ResampleImageFilter.cxx
28   )
29
30 # ===================================
31 # = Integrate all source file names =
32 # ===================================
33
34 SET(
35   lib_HEADERS
36   ${lib_HEADERS_H}
37   ${lib_HEADERS_HPP}
38   ${lib_HEADERS_HXX}
39   )
40
41 SET(
42   lib_SOURCES
43   ${lib_SOURCES_C}
44   ${lib_SOURCES_CPP}
45   ${lib_SOURCES_CXX}
46   )
47
48 SET(
49   target_LIBRARIES
50   cpPlugins
51   )
52
53 ## =====================
54 ## = Compilation rules =
55 ## =====================
56
57 ADD_CUSTOM_COMMAND(
58   OUTPUT ${lib_NAME}_Host.cxx
59   DEPENDS cpPlugins_HostCreator ${lib_HEADERS_H}
60   COMMAND cpPlugins_HostCreator ${lib_NAME}_Host.cxx ${lib_HEADERS_H}
61   )
62 ADD_LIBRARY(${lib_NAME} SHARED ${lib_NAME}_Host.cxx ${lib_SOURCES})
63 SET_TARGET_PROPERTIES(
64   ${lib_NAME} PROPERTIES
65   VERSION "${prj_VER}"
66   SOVERSION "${prj_sVER}"
67   )
68 GENERATE_EXPORT_HEADER(
69   ${lib_NAME}
70   BASE_NAME ${lib_NAME}
71   EXPORT_MACRO_NAME ${lib_NAME}_EXPORT
72   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/plugins/${lib_DIR}/${lib_NAME}_Export.h
73   STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC
74   )
75 TARGET_LINK_LIBRARIES(${lib_NAME} ${target_LIBRARIES})
76
77 ## ========================
78 ## -- Installation rules --
79 ## ========================
80
81 INSTALL(
82   TARGETS ${lib_NAME}
83   RUNTIME DESTINATION bin
84   LIBRARY DESTINATION lib
85   ARCHIVE DESTINATION lib/static
86   )
87
88 ## eof - $RCSfile$