Hello community, here is the log from the commit of package dcmtk for openSUSE:Factory checked in at 2020-10-26 16:22:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dcmtk (Old) and /work/SRC/openSUSE:Factory/.dcmtk.new.3463 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dcmtk" Mon Oct 26 16:22:24 2020 rev:21 rq:844055 version:3.6.5 Changes: -------- --- /work/SRC/openSUSE:Factory/dcmtk/dcmtk.changes 2020-04-04 12:27:51.716078684 +0200 +++ /work/SRC/openSUSE:Factory/.dcmtk.new.3463/dcmtk.changes 2020-10-26 16:23:02.535259864 +0100 @@ -1,0 +2,6 @@ +Thu Oct 22 20:02:27 UTC 2020 - Christophe Giboudeaux <christo...@krop.fr> + +- Add patch to avoid file conflict between dcmtk and charls: + * 0001-Link-charls-statically.patch + +------------------------------------------------------------------- New: ---- 0001-Link-charls-statically.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dcmtk.spec ++++++ --- /var/tmp/diff_new_pack.wnc2O4/_old 2020-10-26 16:23:03.527260662 +0100 +++ /var/tmp/diff_new_pack.wnc2O4/_new 2020-10-26 16:23:03.531260665 +0100 @@ -28,6 +28,8 @@ Source0: ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/release/%{name}-%{version}.tar.gz # PATCH-FIX-OPENSUSE dcmtk-fix-DCMTKTargets.cmake.patch -- Do not track executables to be able to use dcmtk-devel without dcmtk package Patch0: dcmtk-fix-DCMTKTargets.cmake.patch +# PATCH-FIX-OPENSUSE 0001-Link-charls-statically.patch -- avoid file conflict with CharLS-devel +Patch1: 0001-Link-charls-statically.patch BuildRequires: cmake BuildRequires: doxygen BuildRequires: fdupes @@ -77,8 +79,7 @@ -DDCMTK_WITH_XML=ON \ -DDCMTK_WITH_OPENSSL=ON \ -DDCMTK_WITH_SNDFILE=ON \ - -DDCMTK_WITH_ZLIB=ON \ - -DDCMTK_WITH_CHARLS=ON + -DDCMTK_WITH_ZLIB=ON %cmake_build ++++++ 0001-Link-charls-statically.patch ++++++ >From e02f943b38ce5bcdeeb3b57a18d8be9cf7f7174d Mon Sep 17 00:00:00 2001 From: Christophe Giboudeaux <christo...@krop.fr> Date: Sun, 25 Oct 2020 18:02:55 +0100 Subject: [PATCH] Link charls statically dcmtk still ships a charls 1 copy which installed a shared library that clashes with charls 2. As upstream still didn't review their merge requests, we'll create a static charls library. This was the dcmtk behaviour until 2012. --- dcmjpls/libcharls/CMakeLists.txt | 6 ++++-- dcmjpls/libcharls/intrface.h | 9 +-------- dcmjpls/libsrc/CMakeLists.txt | 2 +- 3 files changed, 6 insertions(+), 11 deletions(-) diff --git a/dcmjpls/libcharls/CMakeLists.txt b/dcmjpls/libcharls/CMakeLists.txt index 0c5b143..dcea3dc 100644 --- a/dcmjpls/libcharls/CMakeLists.txt +++ b/dcmjpls/libcharls/CMakeLists.txt @@ -2,6 +2,8 @@ include_directories("${dcmjpls_SOURCE_DIR}/libcharls" "${ofstd_SOURCE_DIR}/include") # create library from source files -DCMTK_ADD_LIBRARY(charls header intrface jpegls) +add_library(charls STATIC header.cc intrface.cc jpegls.cc) -DCMTK_TARGET_LINK_MODULES(charls ofstd oflog) +set_target_properties(charls PROPERTIES COMPILE_FLAGS "-fPIC") + +target_link_libraries(charls ofstd oflog) diff --git a/dcmjpls/libcharls/intrface.h b/dcmjpls/libcharls/intrface.h index c8fdaa9..c2150d3 100644 --- a/dcmjpls/libcharls/intrface.h +++ b/dcmjpls/libcharls/intrface.h @@ -8,16 +8,9 @@ #include "pubtypes.h" #include "dcmtk/ofstd/ofstd.h" /* for size_t */ -#include "dcmtk/ofstd/ofdefine.h" /* for DCMTK_DECL_EXPORT */ - -#ifdef charls_EXPORTS -#define DCMTK_CHARLS_EXPORT DCMTK_DECL_EXPORT -#else -#define DCMTK_CHARLS_EXPORT DCMTK_DECL_IMPORT -#endif #ifndef CHARLS_IMEXPORT -#define CHARLS_IMEXPORT(returntype) DCMTK_CHARLS_EXPORT returntype +#define CHARLS_IMEXPORT(returntype) returntype #endif diff --git a/dcmjpls/libsrc/CMakeLists.txt b/dcmjpls/libsrc/CMakeLists.txt index 314face..415444b 100644 --- a/dcmjpls/libsrc/CMakeLists.txt +++ b/dcmjpls/libsrc/CMakeLists.txt @@ -4,4 +4,4 @@ include_directories("${dcmjpls_SOURCE_DIR}/include" "${ofstd_SOURCE_DIR}/include # create library from source files DCMTK_ADD_LIBRARY(dcmjpls djcparam djdecode djencode djrparam djcodecd djutils djcodece) -DCMTK_TARGET_LINK_MODULES(dcmjpls ofstd oflog dcmdata dcmimgle dcmimage charls) +DCMTK_TARGET_LINK_MODULES(dcmjpls PUBLIC ofstd oflog dcmdata dcmimgle dcmimage PRIVATE charls) -- 2.29.0