X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins_ITKInstances%2FCMakeLists.txt;h=1135fe51493e6dcead28312e57aad0ec0f6aa2b9;hb=e29096b7c37e89da4cda28bde9102cdb9ff159ea;hp=f246d90e3efffa91cece86de76a3ce3b2771971f;hpb=dc1614d6180dbb97486870a379ae73e2c70525a1;p=cpPlugins.git diff --git a/lib/cpPlugins_ITKInstances/CMakeLists.txt b/lib/cpPlugins_ITKInstances/CMakeLists.txt index f246d90..1135fe5 100644 --- a/lib/cpPlugins_ITKInstances/CMakeLists.txt +++ b/lib/cpPlugins_ITKInstances/CMakeLists.txt @@ -1,78 +1,89 @@ -## ============================= -## = Set names and directories = -## ============================= - -SET(lib_NAME cpPlugins_ITKInstances) SET(lib_DIR cpPlugins_ITKInstances) - -## =============== -## = 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") - -# =================================== -# = Integrate all source file names = -# =================================== - +SET(target_LIBRARIES ${ITK_LIBRARIES} ${VTK_LIBRARIES}) SET( - lib_HEADERS - ${lib_HEADERS_H} - ${lib_HEADERS_HPP} - ${lib_HEADERS_HXX} + libs_SOURCES + Base + Image + ImageIterators + ImageFilters ) - -SET( - lib_SOURCES - ${lib_SOURCES_C} - ${lib_SOURCES_CPP} - ${lib_SOURCES_CXX} +FOREACH(lib_SRC ${libs_SOURCES}) + SET(desc_NAME "${lib_SRC}_explicit_description.txt") + SET(header_NAME "${CMAKE_CURRENT_BINARY_DIR}/${lib_SRC}.h") + SET(source_NAME "${lib_SRC}.cxx") + SET(lib_NAME cpPlugins_ITKInstances_${lib_SRC}) + ADD_CUSTOM_COMMAND( + OUTPUT ${header_NAME} + DEPENDS cpPlugins_CreateInstances ${desc_NAME} + COMMAND cpPlugins_CreateInstances ${CMAKE_CURRENT_SOURCE_DIR}/${desc_NAME} ${lib_DIR} ${lib_SRC} ${header_NAME} + ) + ADD_LIBRARY(${lib_NAME} SHARED ${source_NAME} ${header_NAME}) + 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_SRC}_Export.h + STATIC_DEFINE ${lib_NAME}_BUILT_AS_STATIC + ) +ENDFOREACH(lib_SRC) +TARGET_LINK_LIBRARIES( + cpPlugins_ITKInstances_Base + ${target_LIBRARIES} ) - -SET( - target_LIBRARIES - ${ITK_LIBRARIES} - ${VTK_LIBRARIES} +TARGET_LINK_LIBRARIES( + cpPlugins_ITKInstances_Image + cpPlugins_ITKInstances_Base ) - -## ===================== -## = Compilation rules = -## ===================== - -ADD_LIBRARY(${lib_NAME} SHARED ${lib_SOURCES}) -SET_TARGET_PROPERTIES( - ${lib_NAME} PROPERTIES - VERSION "${prj_VER}" - SOVERSION "${prj_sVER}" +TARGET_LINK_LIBRARIES( + cpPlugins_ITKInstances_ImageIterators + cpPlugins_ITKInstances_Image ) -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( + cpPlugins_ITKInstances_ImageFilters + cpPlugins_ITKInstances_ImageIterators ) -TARGET_LINK_LIBRARIES(${lib_NAME} ${target_LIBRARIES}) -## ======================== -## == Installation rules == -## ======================== +# # =================================== +# # = Integrate all source file names = +# # =================================== -INSTALL( - TARGETS ${lib_NAME} - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib - ARCHIVE DESTINATION lib/static - ) -INSTALL( - FILES - ${lib_HEADERS} - DESTINATION include/${lib_DIR} - ) +# SET( +# lib_HEADERS +# ${lib_HEADERS_H} +# ${lib_HEADERS_HPP} +# ${lib_HEADERS_HXX} +# ) + +# SET( +# lib_SOURCES +# ${lib_SOURCES_C} +# ${lib_SOURCES_CPP} +# ${lib_SOURCES_CXX} +# ) + +# ## ===================== +# ## = Compilation rules = +# ## ===================== + +# ## ======================== +# ## == 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$ +# ## eof - $RCSfile$