-SUBDIRS(
- Interface
- Plugins
+## =============================
+## = Set names and directories =
+## =============================
+
+SET(lib_NAME cpPlugins)
+SET(lib_DIR cpPlugins)
+
+## =========================
+## = Configure local files =
+## =========================
+
+CONFIGURE_FILE(
+ Config.h.in
+ ${PROJECT_BINARY_DIR}/lib/${lib_DIR}/Config.h
+ @ONLY
+ )
+
+## ===============
+## = Source code =
+## ===============
+
+FILE(GLOB lib_HEADERS_H "*.h")
+FILE(GLOB lib_HEADERS_HPP "*.hpp")
+FILE(GLOB lib_HEADERS_HXX "*.hxx")
+FILE(GLOB lib_SOURCES_C "*.c")
+FILE(GLOB lib_SOURCES_CPP "*.cpp")
+FILE(GLOB lib_SOURCES_CXX "*.cxx")
+
+IF(USE_QT4)
+ SET(
+ lib_QT_UI
+ ActorAxesProperties.ui
+ ActorImageProperties.ui
+ ActorPolyDataProperties.ui
+ )
+ SET(
+ lib_QT_Headers
+ ActorProperties.h
+ ActorAxesProperties.h
+ ActorImageProperties.h
+ ActorPolyDataProperties.h
+ ActorPropertiesQtDialog.h
+ ParametersQtDialog.h
+ )
+ SET(
+ lib_QT_Sources
+ ActorProperties.cxx
+ ActorAxesProperties.cxx
+ ActorImageProperties.cxx
+ ActorPolyDataProperties.cxx
+ ActorPropertiesQtDialog.cxx
+ ParametersQtDialog.cxx
+ )
+ SET(
+ lib_QT_Resources
+ )
+
+ QT4_WRAP_UI(lib_QT_Wrapped_Headers ${lib_QT_UI})
+ QT4_WRAP_CPP(lib_QT_Wrapped_MOC_Sources ${lib_QT_Headers})
+ QT4_ADD_RESOURCES(lib_QT_Wrapped_Resources_Sources ${lib_QT_Resources})
+
+ SET(
+ lib_HEADERS_H
+ ${lib_HEADERS_H}
+ ${lib_QT_Wrapped_Headers}
+ )
+
+ SET(
+ lib_SOURCES_CXX
+ ${lib_SOURCES_CXX}
+ ${lib_QT_Sources}
+ ${lib_QT_Wrapped_Headers}
+ ${lib_QT_Wrapped_MOC_Sources}
+ ${lib_QT_Wrapped_Resources_Sources}
+ )
+
+ENDIF(USE_QT4)
+
+# ===================================
+# = Integrate all source file names =
+# ===================================
+
+SET(
+ lib_HEADERS
+ ${lib_HEADERS_H}
+ ${lib_HEADERS_HPP}
+ ${lib_HEADERS_HXX}
+ )
+
+SET(
+ lib_SOURCES
+ ${lib_SOURCES_C}
+ ${lib_SOURCES_CPP}
+ ${lib_SOURCES_CXX}
+ )
+
+SET(
+ target_LIBRARIES
+ ${ITK_LIBRARIES}
+ ${VTK_LIBRARIES}
+ cpExtensions
+ cpPlugins_tinyxml2
+ ${cpPlugins_LIBRARIES}
+ )
+IF(NOT WIN32)
+ SET(
+ target_LIBRARIES
+ ${target_LIBRARIES}
+ dl
+ )
+ENDIF(NOT WIN32)
+
+## =====================
+## = Compilation rules =
+## =====================
+
+ADD_LIBRARY(${lib_NAME} SHARED ${lib_SOURCES})
+SET_TARGET_PROPERTIES(
+ ${lib_NAME} PROPERTIES
+ VERSION "${prj_VER}"
+ SOVERSION "${prj_sVER}"
+ )
+ADD_DEPENDENCIES(${lib_NAME} ${cpPlugins_LIBRARIES})
+GENERATE_EXPORT_HEADER(
+ ${lib_NAME}
+ BASE_NAME ${lib_NAME}
+ EXPORT_MACRO_NAME ${lib_NAME}_EXPORT
+ EXPORT_FILE_NAME ${PROJECT_BINARY_DIR}/lib/${lib_DIR}/${lib_NAME}_Export.h
+ STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC
+ )
+TARGET_LINK_LIBRARIES(${lib_NAME} ${target_LIBRARIES})
+
+## ========================
+## == Installation rules ==
+## ========================
+
+INSTALL(
+ TARGETS ${lib_NAME}
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib/static
+ )
+INSTALL(
+ FILES
+ ${lib_HEADERS}
+ DESTINATION include/${lib_DIR}
)
## eof - $RCSfile$