]> Creatis software - cpPlugins.git/blob - plugins/cpPluginsImageFilters/CMakeLists.txt
99fca1514fcbbbca333efe33bd13da8dff2053b7
[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 # ===================================
16 # = Integrate all source file names =
17 # ===================================
18
19 SET(
20   lib_HEADERS
21   ${lib_HEADERS_H}
22   ${lib_HEADERS_HPP}
23   ${lib_HEADERS_HXX}
24   )
25
26 SET(
27   lib_SOURCES
28   ${lib_SOURCES_C}
29   ${lib_SOURCES_CPP}
30   ${lib_SOURCES_CXX}
31   )
32
33 SET(
34   target_LIBRARIES
35   cpPlugins
36   )
37
38 ## =====================
39 ## = Compilation rules =
40 ## =====================
41
42 ADD_CUSTOM_COMMAND(
43   OUTPUT ${lib_NAME}_Host.cxx
44   DEPENDS cpPlugins_HostCreator ${lib_HEADERS_H}
45   COMMAND cpPlugins_HostCreator ${lib_NAME}_Host.cxx ${lib_HEADERS_H}
46   )
47 ADD_LIBRARY(${lib_NAME} SHARED ${lib_NAME}_Host.cxx ${lib_SOURCES})
48 SET_TARGET_PROPERTIES(
49   ${lib_NAME} PROPERTIES
50   VERSION "${prj_VER}"
51   SOVERSION "${prj_sVER}"
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}/plugins/${lib_DIR}/${lib_NAME}_Export.h
58   STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC
59   )
60 TARGET_LINK_LIBRARIES(${lib_NAME} ${target_LIBRARIES})
61
62 ## ========================
63 ## -- Installation rules --
64 ## ========================
65
66 INSTALL(
67   TARGETS ${lib_NAME}
68   RUNTIME DESTINATION bin
69   LIBRARY DESTINATION lib
70   ARCHIVE DESTINATION lib/static
71   )
72
73 ## eof - $RCSfile$