Skip to content

Commit 968bce1

Browse files
authored
Merge pull request #6517 from blowekamp/target_link_libraries_dcmtk
COMP: Minimize linking with DCMTK libraries
2 parents 218672f + 56a60f0 commit 968bce1

2 files changed

Lines changed: 21 additions & 0 deletions

File tree

Modules/IO/DCMTK/src/CMakeLists.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ set(
66
itkDCMTKSeriesFileNames.cxx
77
)
88

9+
# Remove ITKDCMTK from private depends so itk_module_add_library does not link
10+
# all DCMTK libraries transitively; only the required subset is linked below.
11+
list(REMOVE_ITEM ITK_MODULE_ITKIODCMTK_PRIVATE_DEPENDS ITKDCMTK)
12+
913
itk_module_add_library(
1014
ITKIODCMTK
1115
${ITKIODCMTK_SRC}
@@ -14,6 +18,17 @@ itk_module_add_library(
1418
# itkDCMTKFileReader.h is an internal header in this directory (not installed).
1519
target_include_directories(ITKIODCMTK PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})
1620

21+
target_link_libraries(
22+
ITKIODCMTK
23+
PRIVATE
24+
dcmdata
25+
dcmimgle
26+
dcmimage
27+
dcmjpeg
28+
dcmjpls
29+
oflog
30+
)
31+
1732
if(DEFINED DCMTK_HAVE_CONFIG_H_OPTIONAL AND NOT DCMTK_HAVE_CONFIG_H_OPTIONAL)
1833
# Workaround Debian packaging issue - See FindDCMTK.cmake for more details
1934
target_compile_definitions(ITKIODCMTK PRIVATE ${DCMTK_DEFINITIONS})

Modules/IO/IOTransformDCMTK/src/CMakeLists.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ set(
44
itkDCMTKTransformIOFactory.cxx
55
)
66

7+
# Remove ITKDCMTK from private depends so itk_module_add_library does not link
8+
# all DCMTK libraries transitively; only the required subset is linked below.
9+
list(REMOVE_ITEM ITK_MODULE_IOTransformDCMTK_PRIVATE_DEPENDS ITKDCMTK)
10+
711
itk_module_add_library(IOTransformDCMTK ${IOTransformDCMTK_SRCS})
812

13+
target_link_libraries(IOTransformDCMTK PRIVATE dcmdata)
14+
915
# itkDCMTKTransformIO.hxx is a private implementation header in this directory.
1016
target_include_directories(IOTransformDCMTK PRIVATE ${CMAKE_CURRENT_SOURCE_DIR})

0 commit comments

Comments
 (0)