1# Finish the setup. This should be run after all modules. 2 3if(BUILD_SINGLE_SHARED_LIBRARY) 4 # Collect the object files of all libraries in all modules. 5 # The variable ${DCMTK_ALL_LIBRARIES} is set by DCMTK_ADD_LIBRARY(). 6 set(LIBS) 7 foreach(LIB ${DCMTK_ALL_LIBRARIES}) 8 set(LIBS ${LIBS} $<TARGET_OBJECTS:${LIB}>) 9 endforeach() 10 11 # Build a single "everything-library". 12 # The library dependencies are collected by DCMTK_TARGET_LINK_LIBRARIES(). 13 add_library(dcmtk SHARED ${LIBS}) 14 target_link_libraries(dcmtk ${DCMTK_LIBRARY_DEPENDENCIES}) 15 set_target_properties(dcmtk PROPERTIES ${DCMTK_LIBRARY_PROPERTIES}) 16 17 # Export target for build tree 18 set_property(GLOBAL APPEND PROPERTY DCMTK_LIBRARY_TARGETS dcmtk) 19 20 # Declare installation files. Also export libs and executables to DCMTKTargets.cmake. 21 install(TARGETS dcmtk 22 EXPORT DCMTKTargets 23 COMPONENT lib 24 RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" 25 LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" 26 ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}") 27endif() 28