]> Creatis software - cpPlugins.git/blob - lib/cpExtensions/CMakeLists.txt
async test
[cpPlugins.git] / lib / cpExtensions / CMakeLists.txt
1 SET(LIBRARY_NAME cpExtensions)
2
3 ## ===============
4 ## = Source code =
5 ## ===============
6
7 SET(LIB_HEADERS_H   "")
8 SET(LIB_HEADERS_HPP "")
9 SET(LIB_HEADERS_HXX "")
10 SET(LIB_SOURCES_C   "")
11 SET(LIB_SOURCES_CPP "")
12 SET(LIB_SOURCES_CXX "")
13
14 SET(
15   lib_DIRECTORIES
16   .
17   DataStructures
18   Algorithms
19   IO
20   Visualization
21   )
22 FOREACH(dir ${lib_DIRECTORIES})
23   FILE(GLOB dir_LIB_HEADERS_H   "${dir}/*.h")
24   FILE(GLOB dir_LIB_HEADERS_HPP "${dir}/*.hpp")
25   FILE(GLOB dir_LIB_HEADERS_HXX "${dir}/*.hxx")
26   FILE(GLOB dir_LIB_SOURCES_C   "${dir}/*.c")
27   FILE(GLOB dir_LIB_SOURCES_CPP "${dir}/*.cpp")
28   FILE(GLOB dir_LIB_SOURCES_CXX "${dir}/*.cxx")
29
30   SET(LIB_HEADERS_H   "${LIB_HEADERS_H};${dir_LIB_HEADERS_H}")
31   SET(LIB_HEADERS_HPP "${LIB_HEADERS_HPP};${dir_LIB_HEADERS_HPP}")
32   SET(LIB_HEADERS_HXX "${LIB_HEADERS_HXX};${dir_LIB_HEADERS_HXX}")
33   SET(LIB_SOURCES_C   "${LIB_SOURCES_C};${dir_LIB_SOURCES_C}")
34   SET(LIB_SOURCES_CPP "${LIB_SOURCES_CPP};${dir_LIB_SOURCES_CPP}")
35   SET(LIB_SOURCES_CXX "${LIB_SOURCES_CXX};${dir_LIB_SOURCES_CXX}")
36
37   INSTALL(
38     DIRECTORY ${dir}
39     DESTINATION include/cpExtensions
40     FILES_MATCHING PATTERN "*.h"
41     )
42   INSTALL(
43     DIRECTORY ${dir}
44     DESTINATION include/cpExtensions
45     FILES_MATCHING PATTERN "*.hpp"
46     )
47   INSTALL(
48     DIRECTORY ${dir}
49     DESTINATION include/cpExtensions
50     FILES_MATCHING PATTERN "*.hxx"
51     )
52 ENDFOREACH(dir)
53
54 ## =====================
55 ## = Compilation rules =
56 ## =====================
57
58 ADD_LIBRARY(
59   ${LIBRARY_NAME}
60   ${LIBRARY_TYPE}
61   ${LIB_SOURCES_C}
62   ${LIB_SOURCES_CPP}
63   ${LIB_SOURCES_CXX}
64   )
65 GENERATE_EXPORT_HEADER(
66   ${LIBRARY_NAME}
67   BASE_NAME ${LIBRARY_NAME}
68   EXPORT_MACRO_NAME ${LIBRARY_NAME}_EXPORT
69   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/cpExtensions/${LIBRARY_NAME}_Export.h
70   STATIC_DEFINE ${LIBRARY_NAME}_BUILT_AS_STATIC
71   )
72 TARGET_LINK_LIBRARIES(
73   ${LIBRARY_NAME}
74   ${ITK_LIBRARIES}
75   ${VTK_LIBRARIES}
76   )
77
78 ## ========================
79 ## -- Installation rules --
80 ## ========================
81
82 INSTALL(
83   TARGETS ${LIBRARY_NAME}
84   RUNTIME DESTINATION bin
85   LIBRARY DESTINATION lib
86   ARCHIVE DESTINATION lib/static
87   )
88 INSTALL(
89   FILES
90   ${PROJECT_BINARY_DIR}/lib/cpExtensions/${LIBRARY_NAME}_Export.h
91   DESTINATION include/cpExtensions
92   )
93
94 ## eof - $RCSfile$