]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Interface/CMakeLists.txt
b498063912a9fe88bf9615af949a6ec208654dc0
[cpPlugins.git] / lib / cpPlugins / Interface / CMakeLists.txt
1 SET(LIBRARY_NAME cpPlugins_Interface)
2
3 ## ===============
4 ## = Source code =
5 ## ===============
6
7 FILE(GLOB LIB_HEADERS_H   "*.h")
8 FILE(GLOB LIB_HEADERS_HPP "*.hpp")
9 FILE(GLOB LIB_HEADERS_HXX "*.hxx")
10 FILE(GLOB LIB_SOURCES_C   "*.c")
11 FILE(GLOB LIB_SOURCES_CPP "*.cpp")
12 FILE(GLOB LIB_SOURCES_CXX "*.cxx")
13
14 ## =====================
15 ## = Compilation rules =
16 ## =====================
17
18 ADD_LIBRARY(
19   ${LIBRARY_NAME}
20   SHARED
21   ${LIB_SOURCES_C}
22   ${LIB_SOURCES_CPP}
23   ${LIB_SOURCES_CXX}
24   )
25 GENERATE_EXPORT_HEADER(
26   ${LIBRARY_NAME}
27   BASE_NAME ${LIBRARY_NAME}
28   EXPORT_MACRO_NAME ${LIBRARY_NAME}_EXPORT
29   EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/${LIBRARY_NAME}_Export.h
30   STATIC_DEFINE ${LIBRARY_NAME}_BUILT_AS_STATIC
31   )
32 TARGET_LINK_LIBRARIES(
33   ${LIBRARY_NAME}
34   cpPlugins_Pluma
35   cpPlugins_Extensions
36   )
37
38 ## ========================
39 ## -- Installation rules --
40 ## ========================
41
42 INSTALL(
43   TARGETS ${LIBRARY_NAME}
44   RUNTIME DESTINATION bin
45   LIBRARY DESTINATION lib
46   ARCHIVE DESTINATION lib/static
47   )
48 SET(
49   local_install_dirs
50   .
51   )
52 FOREACH(dir ${local_install_dirs})
53   INSTALL(
54     DIRECTORY ${dir}
55     DESTINATION include/cpPlugins/Interface
56     FILES_MATCHING PATTERN "*.h"
57     )
58   INSTALL(
59     DIRECTORY ${dir}
60     DESTINATION include/cpPlugins/Interface
61     FILES_MATCHING PATTERN "*.hxx"
62     )
63   INSTALL(
64     DIRECTORY ${dir}
65     DESTINATION include/cpPlugins/Interface
66     FILES_MATCHING PATTERN "*.hpp"
67     )
68 ENDFOREACH(dir)
69
70 INSTALL(
71   FILES
72   ${PROJECT_BINARY_DIR}/lib/cpPlugins/Interface/${LIBRARY_NAME}_Export.h
73   DESTINATION include/cpPlugins/Interface
74   )
75
76 ## eof - $RCSfile$