## ============================= ## = 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 ) SET( lib_QT_Headers ParametersQtDialog.h ) SET( lib_QT_Sources 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 cpPlugins_tinyxml2 cpPlugins_ITKInstances_Base cpPlugins_ITKInstances_Image cpPlugins_ITKInstances_ImageIterators cpPlugins_ITKInstances_ImageFilters cpPlugins_ITKInstances_Paths cpPlugins_ITKInstances_Mesh ${VTK_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}" ) 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$