packages: dcmtk/dcmtk.spec, dcmtk/dcmtk-0001-Added-soname-information-for-a...

qboosh qboosh at pld-linux.org
Sat Feb 25 08:52:17 CET 2012


Author: qboosh                       Date: Sat Feb 25 07:52:17 2012 GMT
Module: packages                      Tag: HEAD
---- Log message:
- build shared libraries using Fedora patches over cmake build suite
- added link patch (missing linking issues)
- added libi2d patch to fix library name (libi2d like in autoconf-based build, not liblibi2d)
- added etc patch to use /etc/dcmtk instead of /usr/etc/dcmtk
- use system CharLS (relying on Fedora patches)

---- Files affected:
packages/dcmtk:
   dcmtk.spec (1.1 -> 1.2) , dcmtk-0001-Added-soname-information-for-all-targets.patch (NONE -> 1.1)  (NEW), dcmtk-0002-Install-libs-in-the-correct-arch-dir.patch (NONE -> 1.1)  (NEW), dcmtk-0003-Removed-bundled-libcharl-reference-in-dcmjpls.patch (NONE -> 1.1)  (NEW), dcmtk-0004-Use-system-charls.patch (NONE -> 1.1)  (NEW), dcmtk-0005-Fixed-includes-for-CharLS-1.0.patch (NONE -> 1.1)  (NEW), dcmtk-0006-Added-optional-support-for-building-shared-libraries.patch (NONE -> 1.1)  (NEW), dcmtk-0007-Add-soname-generation-for-modules-which-are-not-in-D.patch (NONE -> 1.1)  (NEW), dcmtk-etc.patch (NONE -> 1.1)  (NEW), dcmtk-libi2d.patch (NONE -> 1.1)  (NEW), dcmtk-link.patch (NONE -> 1.1)  (NEW)

---- Diffs:

================================================================
Index: packages/dcmtk/dcmtk.spec
diff -u packages/dcmtk/dcmtk.spec:1.1 packages/dcmtk/dcmtk.spec:1.2
--- packages/dcmtk/dcmtk.spec:1.1	Tue Feb  7 20:41:01 2012
+++ packages/dcmtk/dcmtk.spec	Sat Feb 25 08:52:12 2012
@@ -1,10 +1,6 @@
 # $Revision$, $Date$
 # TODO:
-# - shared libs
-# - use system libjpeg?
-#
-# Conditional build:
-%bcond_without	apidocs		# do not build and package API docs
+# - use system libjpeg? (8/12/16-bit versions)
 #
 Summary:	DICOM Toolkit - implementation of DICOM/MEDICOM standard
 Summary(pl.UTF-8):	Narzędzia DICOM - implementacja standardu DICOM/MEDICOM
@@ -16,7 +12,18 @@
 Source0:	ftp://dicom.offis.de/pub/dicom/offis/software/dcmtk/dcmtk360/%{name}-%{version}.tar.gz
 # Source0-md5:	19409e039e29a330893caea98715390e
 Patch0:		%{name}-configure.patch
+Patch1:		%{name}-0001-Added-soname-information-for-all-targets.patch
+Patch2:		%{name}-0002-Install-libs-in-the-correct-arch-dir.patch
+Patch3:		%{name}-0003-Removed-bundled-libcharl-reference-in-dcmjpls.patch
+Patch4:		%{name}-0004-Use-system-charls.patch
+Patch5:		%{name}-0005-Fixed-includes-for-CharLS-1.0.patch
+Patch6:		%{name}-0006-Added-optional-support-for-building-shared-libraries.patch
+Patch7:		%{name}-0007-Add-soname-generation-for-modules-which-are-not-in-D.patch
+Patch8:		%{name}-link.patch
+Patch9:		%{name}-libi2d.patch
+Patch10:	%{name}-etc.patch
 URL:		http://dicom.offis.de/dcmtk
+BuildRequires:	CharLS-devel
 BuildRequires:	libpng-devel >= 2:1.2.8
 BuildRequires:	libstdc++-devel
 BuildRequires:	libtiff-devel >= 3.7.0
@@ -24,6 +31,7 @@
 BuildRequires:	libxml2-devel >= 1:2.6.26
 BuildRequires:	openssl-devel >= 0.9.8
 BuildRequires:	zlib-devel >= 1.2.3
+Requires:	%{name}-libs = %{version}-%{release}
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -34,11 +42,22 @@
 Pakiet DICOM ToolKit (DCMTK) to zbiór bibliotek i aplikacji
 implementujących część standardu DICOM/MEDICOM.
 
+%package libs
+Summary:	DICOM ToolKit shared libraries
+Summary(pl.UTF-8):	Biblioteki współdzielone DICOM
+Group:		Libraries
+
+%description libs
+DICOM ToolKit shared libraries.
+
+%description libs -l pl.UTF-8
+Biblioteki współdzielone DICOM.
+
 %package devel
 Summary:	Header files for DCMTK libraries
 Summary(pl.UTF-8):	Pliki nagłówkowe bibliotek DCMTK
 Group:		Development/Libraries
-Requires:	%{name} = %{version}-%{release}
+Requires:	%{name}-libs = %{version}-%{release}
 Requires:	libstdc++-devel
 
 %description devel
@@ -47,55 +66,52 @@
 %description devel -l pl.UTF-8
 Pliki nagłówkowe bibliotek DCMTK.
 
-%package static
-Summary:	Static DCMTK libraries
-Summary(pl.UTF-8):	Statyczne biblioteki DCMTK
-Group:		Development/Libraries
-Requires:	%{name}-devel = %{version}-%{release}
-
-%description static
-Static DCMTK libraries.
-
-%description static -l pl.UTF-8
-Statyczne biblioteki DCMTK.
-
-%package apidocs
-Summary:	DCMTK API documentation
-Summary(pl.UTF-8):	Dokumentacja API bibliotek DCMTK
-Group:		Documentation
-
-%description apidocs
-API documentation for DCMTK library.
-
-%description apidocs -l pl.UTF-8
-Dokumentacja API bibliotek DCMTK.
-
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+
+# enforce system CharLS
+%{__rm} -r dcmjpls/libcharls
 
 %build
-%configure \
-	--datadir=%{_datadir}/dcmtk \
-	--sysconfdir=%{_sysconfdir}/dcmtk
+%cmake . \
+	-DDCMTK_WITH_OPENSSL=ON \
+	-DDCMTK_WITH_PNG=ON \
+	-DDCMTK_WITH_PRIVATE_TAGS=ON \
+	-DDCMTK_WITH_TIFF=ON \
+	-DDCMTK_WITH_XML=ON \
+	-DDCMTK_WITH_CHARLS=ON \
+	-DDCMTK_WITH_ZLIB=ON
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
-%{__make} install-all \
+%{__make} install \
 	DESTDIR=$RPM_BUILD_ROOT
 
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/dcmtk
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post	-p /sbin/ldconfig
-%postun	-p /sbin/ldconfig
+%post	libs -p /sbin/ldconfig
+%postun	libs -p /sbin/ldconfig
 
 %files
 %defattr(644,root,root,755)
-%doc ANNOUNCE.360 CHANGES.360 COPYRIGHT FAQ HISTORY README
+%doc ANNOUNCE.360 CHANGES.360 COPYRIGHT FAQ HISTORY README dcmdata/docs/datadict.txt dcmnet/docs/asconfig.txt dcmqrdb/docs/dcmqr*.txt dcmtls/docs/ciphers.txt dcmwlm/docs/wwwapp.txt
 %attr(755,root,root) %{_bindir}/dcm*
 %attr(755,root,root) %{_bindir}/dcod2lum
 %attr(755,root,root) %{_bindir}/dconvlum
@@ -142,43 +158,79 @@
 %{_mandir}/man1/xml2dcm.1*
 %{_mandir}/man1/xml2dsr.1*
 
+%files libs
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libdcmdata.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmdata.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmdsig.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmdsig.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmimage.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmimage.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmimgle.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmimgle.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmjpeg.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmjpeg.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmjpls.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmjpls.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmnet.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmnet.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmpstat.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmpstat.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmqrdb.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmqrdb.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmsr.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmsr.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmtls.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmtls.so.3.6
+%attr(755,root,root) %{_libdir}/libdcmwlm.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libdcmwlm.so.3.6
+%attr(755,root,root) %{_libdir}/libi2d.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libi2d.so.3.6
+%attr(755,root,root) %{_libdir}/libijg12.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libijg12.so.3.6
+%attr(755,root,root) %{_libdir}/libijg16.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libijg16.so.3.6
+%attr(755,root,root) %{_libdir}/libijg8.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libijg8.so.3.6
+%attr(755,root,root) %{_libdir}/liboflog.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/liboflog.so.3.6
+%attr(755,root,root) %{_libdir}/libofstd.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libofstd.so.3.6
+
 %files devel
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libdcmdata.so
+%attr(755,root,root) %{_libdir}/libdcmdsig.so
+%attr(755,root,root) %{_libdir}/libdcmimage.so
+%attr(755,root,root) %{_libdir}/libdcmimgle.so
+%attr(755,root,root) %{_libdir}/libdcmjpeg.so
+%attr(755,root,root) %{_libdir}/libdcmjpls.so
+%attr(755,root,root) %{_libdir}/libdcmnet.so
+%attr(755,root,root) %{_libdir}/libdcmpstat.so
+%attr(755,root,root) %{_libdir}/libdcmqrdb.so
+%attr(755,root,root) %{_libdir}/libdcmsr.so
+%attr(755,root,root) %{_libdir}/libdcmtls.so
+%attr(755,root,root) %{_libdir}/libdcmwlm.so
+%attr(755,root,root) %{_libdir}/libi2d.so
+%attr(755,root,root) %{_libdir}/libijg12.so
+%attr(755,root,root) %{_libdir}/libijg16.so
+%attr(755,root,root) %{_libdir}/libijg8.so
+%attr(755,root,root) %{_libdir}/liboflog.so
+%attr(755,root,root) %{_libdir}/libofstd.so
 %{_includedir}/dcmtk
 
-#%files static
-#%defattr(644,root,root,755)
-%{_libdir}/libcharls.a
-%{_libdir}/libdcmdata.a
-%{_libdir}/libdcmdsig.a
-%{_libdir}/libdcmimage.a
-%{_libdir}/libdcmimgle.a
-%{_libdir}/libdcmjpeg.a
-%{_libdir}/libdcmjpls.a
-%{_libdir}/libdcmnet.a
-%{_libdir}/libdcmpstat.a
-%{_libdir}/libdcmqrdb.a
-%{_libdir}/libdcmsr.a
-%{_libdir}/libdcmtls.a
-%{_libdir}/libdcmwlm.a
-%{_libdir}/libi2d.a
-%{_libdir}/libijg12.a
-%{_libdir}/libijg16.a
-%{_libdir}/libijg8.a
-%{_libdir}/liboflog.a
-%{_libdir}/libofstd.a
-
-#%if %{with apidocs}
-#%files apidocs
-#%defattr(644,root,root,755)
-#%doc apidocs/*
-#%endif
-
 %define date	%(echo `LC_ALL="C" date +"%a %b %d %Y"`)
 %changelog
 * %{date} PLD Team <feedback at pld-linux.org>
 All persons listed below can be reached at <cvs_login>@pld-linux.org
 
 $Log$
+Revision 1.2  2012/02/25 07:52:12  qboosh
+- build shared libraries using Fedora patches over cmake build suite
+- added link patch (missing linking issues)
+- added libi2d patch to fix library name (libi2d like in autoconf-based build, not liblibi2d)
+- added etc patch to use /etc/dcmtk instead of /usr/etc/dcmtk
+- use system CharLS (relying on Fedora patches)
+
 Revision 1.1  2012/02/07 19:41:01  qboosh
 - initial, not finished yet

================================================================
Index: packages/dcmtk/dcmtk-0001-Added-soname-information-for-all-targets.patch
diff -u /dev/null packages/dcmtk/dcmtk-0001-Added-soname-information-for-all-targets.patch:1.1
--- /dev/null	Sat Feb 25 08:52:17 2012
+++ packages/dcmtk/dcmtk-0001-Added-soname-information-for-all-targets.patch	Sat Feb 25 08:52:11 2012
@@ -0,0 +1,59 @@
+From 0465f8ceab739a0f096c97c31d43a934a6617099 Mon Sep 17 00:00:00 2001
+From: Mario Ceresa <mrceresa at gmail.com>
+Date: Sun, 20 Mar 2011 12:52:41 +0100
+Subject: [PATCH 1/6] Added soname information for all targets
+
+---
+ CMakeLists.txt |   25 +++++++++++++++++++++++--
+ 1 files changed, 23 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 446d478..62e7a6f 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -20,12 +20,21 @@ SET(DCMTK_MODULES config ofstd oflog dcmdata dcmimgle dcmjpeg dcmimage dcmtls dc
+ SET(DCMTK_PACKAGE_NAME "dcmtk")
+ SET(DCMTK_PACKAGE_DATE "2011-01-06")
+ #SET(DCMTK_PACKAGE_TARNAME "dcmtk-3.6.0")
+-SET(DCMTK_PACKAGE_VERSION "3.6.0")
+-SET(DCMTK_PACKAGE_VERSION_NUMBER "360")
++#SET(DCMTK_PACKAGE_VERSION "3.6.0")
++#SET(DCMTK_PACKAGE_VERSION_NUMBER "360")
+ SET(DCMTK_PACKAGE_VERSION_SUFFIX "")
+ #SET(DCMTK_PACKAGE_STRING "dcmtk 3.6.0")
+ #SET(DCMTK_PACKAGE_BUGREPORT "dicom-bugs at offis.de")
+ 
++SET(DCMTK_MAJOR_VERSION 3)
++SET(DCMTK_MINOR_VERSION 6)
++SET(DCMTK_BUILD_VERSION 0)
++SET(DCMTK_PACKAGE_VERSION "${DCMTK_MAJOR_VERSION}.${DCMTK_MINOR_VERSION}.${DCMTK_BUILD_VERSION}")
++SET(DCMTK_API_VERSION "${DCMTK_MAJOR_VERSION}.${DCMTK_MINOR_VERSION}")
++SET(DCMTK_LIBRARY_PROPERTIES VERSION "${DCMTK_PACKAGE_VERSION}" SOVERSION "${DCMTK_API_VERSION}")
++SET(DCMTK_PACKAGE_VERSION_NUMBER ${DCMTK_MAJOR_VERSION}${DCMTK_MINOR_VERSION}${DCMTK_BUILD_VERSION})
++
++
+ # DCMTK build options
+ OPTION(DCMTK_WITH_TIFF "Configure DCMTK with support for TIFF" ON)
+ OPTION(DCMTK_WITH_PNG "Configure DCMTK with support for PNG" ON)
+@@ -295,6 +304,18 @@ ENDIF(WITH_THREADS)
+ # Recurse into subdirectories
+ FOREACH(module ${DCMTK_MODULES})
+   ADD_SUBDIRECTORY(${module})
++  
++# for each shared lib add proper soname information
++    IF(BUILD_SHARED_LIBS)
++	IF(${module} MATCHES config)
++        # Skip config module
++	ELSEIF(${module} MATCHES doxygen)
++        # Skip doxygen module
++        ELSE(${module} MATCHES config)
++          SET_TARGET_PROPERTIES(${module} PROPERTIES ${DCMTK_LIBRARY_PROPERTIES})
++        ENDIF(${module} MATCHES config)
++    ENDIF(BUILD_SHARED_LIBS)
++    
+ ENDFOREACH(module)
+ 
+ #-----------------------------------------------------------------------------
+-- 
+1.7.4
+

================================================================
Index: packages/dcmtk/dcmtk-0002-Install-libs-in-the-correct-arch-dir.patch
diff -u /dev/null packages/dcmtk/dcmtk-0002-Install-libs-in-the-correct-arch-dir.patch:1.1
--- /dev/null	Sat Feb 25 08:52:17 2012
+++ packages/dcmtk/dcmtk-0002-Install-libs-in-the-correct-arch-dir.patch	Sat Feb 25 08:52:11 2012
@@ -0,0 +1,25 @@
+From 8401d7914ef110d5aca35bf7e1409341c533f1e4 Mon Sep 17 00:00:00 2001
+From: Mario Ceresa <mrceresa at gmail.com>
+Date: Sun, 20 Mar 2011 12:54:16 +0100
+Subject: [PATCH 2/6] Install libs in the correct arch dir
+
+---
+ CMakeLists.txt |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 62e7a6f..86b7601 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -82,7 +82,7 @@ INCLUDE_DIRECTORIES(${DCMTK_INCLUDE_DIR})
+ 
+ SET(INSTALL_BINDIR "/bin")
+ SET(INSTALL_INCDIR "/include")
+-SET(INSTALL_LIBDIR "/lib")
++SET(INSTALL_LIBDIR "/lib${LIB_SUFFIX}")
+ SET(INSTALL_ETCDIR "/etc/dcmtk")
+ SET(INSTALL_DATDIR "/share/dcmtk")
+ SET(INSTALL_DOCDIR "/share/doc/dcmtk")
+-- 
+1.7.4
+

================================================================
Index: packages/dcmtk/dcmtk-0003-Removed-bundled-libcharl-reference-in-dcmjpls.patch
diff -u /dev/null packages/dcmtk/dcmtk-0003-Removed-bundled-libcharl-reference-in-dcmjpls.patch:1.1
--- /dev/null	Sat Feb 25 08:52:17 2012
+++ packages/dcmtk/dcmtk-0003-Removed-bundled-libcharl-reference-in-dcmjpls.patch	Sat Feb 25 08:52:11 2012
@@ -0,0 +1,22 @@
+From 066d61eaecdf0731be99782649340ed141b1d1be Mon Sep 17 00:00:00 2001
+From: Mario Ceresa <mrceresa at gmail.com>
+Date: Sun, 20 Mar 2011 13:11:54 +0100
+Subject: [PATCH 3/6] Removed bundled libcharl reference in dcmjpls
+
+---
+ dcmjpls/CMakeLists.txt |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/dcmjpls/CMakeLists.txt b/dcmjpls/CMakeLists.txt
+index d89eedf..a6faf10 100644
+--- a/dcmjpls/CMakeLists.txt
++++ b/dcmjpls/CMakeLists.txt
+@@ -2,4 +2,4 @@
+ PROJECT(dcmjpls)
+ 
+ # recurse into subdirectories
+-SUBDIRS(libsrc libcharls apps include/dcmtk/dcmjpls)
++SUBDIRS(libsrc apps include/dcmtk/dcmjpls)
+-- 
+1.7.4
+

================================================================
Index: packages/dcmtk/dcmtk-0004-Use-system-charls.patch
diff -u /dev/null packages/dcmtk/dcmtk-0004-Use-system-charls.patch:1.1
--- /dev/null	Sat Feb 25 08:52:17 2012
+++ packages/dcmtk/dcmtk-0004-Use-system-charls.patch	Sat Feb 25 08:52:11 2012
@@ -0,0 +1,120 @@
+From c20efddd5eee01bb5db0aeaac8fc0b64abf6d6cf Mon Sep 17 00:00:00 2001
+From: Mario Ceresa <mrceresa at gmail.com>
+Date: Sun, 20 Mar 2011 14:27:14 +0100
+Subject: [PATCH 4/6] Use system charls
+
+---
+ CMake/3rdparty.cmake          |   17 +++++++++++++++++
+ CMake/FindCharLS.cmake        |   34 ++++++++++++++++++++++++++++++++++
+ CMakeLists.txt                |    1 +
+ dcmjpls/apps/CMakeLists.txt   |    2 +-
+ dcmjpls/libsrc/CMakeLists.txt |    2 +-
+ 5 files changed, 54 insertions(+), 2 deletions(-)
+ create mode 100644 CMake/FindCharLS.cmake
+
+diff --git a/CMake/3rdparty.cmake b/CMake/3rdparty.cmake
+index 74ce78f..36956ce 100755
+--- a/CMake/3rdparty.cmake
++++ b/CMake/3rdparty.cmake
+@@ -197,6 +197,23 @@ ELSE(WIN32)
+       SET(WITH_ZLIB 1)
+     ENDIF(NOT ZLIB_LIBS)
+   ENDIF(DCMTK_WITH_ZLIB)
++  
++  # Find charls
++  
++  SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMake)
++  
++  IF(DCMTK_WITH_CHARLS)
++    FIND_PACKAGE(CharLS)
++    INCLUDE_DIRECTORIES(${CHARLS_INCLUDE_DIRS})
++    SET(CHARLS_LIBS ${CHARLS_LIBRARIES})
++    IF (NOT CHARLS_LIBS)
++      MESSAGE(STATUS "Warning: CharLS not found. Cannot build!")
++    ELSE(NOT CHARLS_LIBS)
++      MESSAGE(STATUS "Info: DCMTK CHARLS support will be enabled")
++      SET(WITH_CHARLS 1)
++    ENDIF(NOT CHARLS_LIBS)
++  ENDIF(DCMTK_WITH_CHARLS)
++  
+ 
+ ENDIF(WIN32)
+ 
+diff --git a/CMake/FindCharLS.cmake b/CMake/FindCharLS.cmake
+new file mode 100644
+index 0000000..eaa45b7
+--- /dev/null
++++ b/CMake/FindCharLS.cmake
+@@ -0,0 +1,34 @@
++FIND_PATH(CHARLS_INCLUDE_DIR CharLS/interface.h
++/usr/local/include
++/usr/include
++)
++
++FIND_LIBRARY(CHARLS_LIBRARY
++  NAMES CharLS
++  PATHS /usr/lib /usr/local/lib /usr/lib64 /usr/local/lib64
++  )
++
++
++IF (CHARLS_LIBRARY AND CHARLS_INCLUDE_DIR)
++    SET(CHARLS_LIBRARIES ${CHARLS_LIBRARY})
++    SET(CHARLS_INCLUDE_DIRS ${CHARLS_INCLUDE_DIR})
++    SET(CHARLS_FOUND "YES")
++ELSE (CHARLS_LIBRARY AND CHARLS_INCLUDE_DIR)
++  SET(CHARLS_FOUND "NO")
++ENDIF (CHARLS_LIBRARY AND CHARLS_INCLUDE_DIR)
++
++
++IF (CHARLS_FOUND)
++   IF (NOT CHARLS_FIND_QUIETLY)
++      MESSAGE(STATUS "Found CHARLS: ${CHARLS_LIBRARIES}")
++   ENDIF (NOT CHARLS_FIND_QUIETLY)
++ELSE (CHARLS_FOUND)
++   IF (CHARLS_FIND_REQUIRED)
++      MESSAGE(FATAL_ERROR "Could not find CHARLS library")
++   ENDIF (CHARLS_FIND_REQUIRED)
++ENDIF (CHARLS_FOUND)
++
++MARK_AS_ADVANCED(
++  CHARLS_LIBRARIES
++  CHARLS_INCLUDE_DIR
++  )
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 86b7601..fa5d9ad 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -36,6 +36,7 @@ SET(DCMTK_PACKAGE_VERSION_NUMBER ${DCMTK_MAJOR_VERSION}${DCMTK_MINOR_VERSION}${D
+ 
+ 
+ # DCMTK build options
++OPTION(DCMTK_WITH_CHARLS "Configure DCMTK with support for CHARLS" ON)
+ OPTION(DCMTK_WITH_TIFF "Configure DCMTK with support for TIFF" ON)
+ OPTION(DCMTK_WITH_PNG "Configure DCMTK with support for PNG" ON)
+ OPTION(DCMTK_WITH_XML "Configure DCMTK with support for XML" OFF)
+diff --git a/dcmjpls/apps/CMakeLists.txt b/dcmjpls/apps/CMakeLists.txt
+index d993bc2..45abcb9 100644
+--- a/dcmjpls/apps/CMakeLists.txt
++++ b/dcmjpls/apps/CMakeLists.txt
+@@ -16,6 +16,6 @@ ENDFOREACH(PROGRAM)
+ 
+ # make sure executables are linked to the corresponding libraries
+ FOREACH(PROGRAM dcmcjpls dcmdjpls dcml2pnm)
+-  TARGET_LINK_LIBRARIES(${PROGRAM} dcmjpls charls dcmimage dcmimgle dcmdata oflog ofstd ofstd ${ZLIB_LIBS} ${THREAD_LIBS} ${WIN32_STD_LIBRARIES})
++  TARGET_LINK_LIBRARIES(${PROGRAM} dcmjpls ${CHARLS_LIBS} dcmimage dcmimgle dcmdata oflog ofstd ofstd ${ZLIB_LIBS} ${THREAD_LIBS} ${WIN32_STD_LIBRARIES})
+ ENDFOREACH(PROGRAM)
+ TARGET_LINK_LIBRARIES(dcml2pnm ${LIBTIFF_LIBS} ${LIBPNG_LIBS})
+diff --git a/dcmjpls/libsrc/CMakeLists.txt b/dcmjpls/libsrc/CMakeLists.txt
+index 63a2766..9499dd8 100644
+--- a/dcmjpls/libsrc/CMakeLists.txt
++++ b/dcmjpls/libsrc/CMakeLists.txt
+@@ -1,5 +1,5 @@
+ # declare additional include directories
+-INCLUDE_DIRECTORIES(${dcmjpls_SOURCE_DIR}/include ${ofstd_SOURCE_DIR}/include ${oflog_SOURCE_DIR}/include ${dcmdata_SOURCE_DIR}/include ${dcmimgle_SOURCE_DIR}/include ${dcmimage_SOURCE_DIR}/include ${dcmjpls_SOURCE_DIR}/libcharls ${ZLIB_INCDIR})
++INCLUDE_DIRECTORIES(${dcmjpls_SOURCE_DIR}/include ${ofstd_SOURCE_DIR}/include ${oflog_SOURCE_DIR}/include ${dcmdata_SOURCE_DIR}/include ${dcmimgle_SOURCE_DIR}/include ${dcmimage_SOURCE_DIR}/include ${CHARLS_INCLUDE_DIRS} ${ZLIB_INCDIR})
+ 
+ # create library from source files
+ ADD_LIBRARY(dcmjpls djcparam djdecode djencode djrparam djcodecd djutils djcodece)
+-- 
+1.7.4
+

================================================================
Index: packages/dcmtk/dcmtk-0005-Fixed-includes-for-CharLS-1.0.patch
diff -u /dev/null packages/dcmtk/dcmtk-0005-Fixed-includes-for-CharLS-1.0.patch:1.1
--- /dev/null	Sat Feb 25 08:52:17 2012
+++ packages/dcmtk/dcmtk-0005-Fixed-includes-for-CharLS-1.0.patch	Sat Feb 25 08:52:11 2012
@@ -0,0 +1,53 @@
+From 6d6a52c1c049c0fe8440d8b03d5cb852a47c0cd5 Mon Sep 17 00:00:00 2001
+From: Mario Ceresa <mrceresa at gmail.com>
+Date: Sun, 20 Mar 2011 14:40:48 +0100
+Subject: [PATCH 5/6] Fixed includes for CharLS 1.0
+
+---
+ dcmjpls/libsrc/djcodecd.cc |    2 +-
+ dcmjpls/libsrc/djcodece.cc |    2 +-
+ dcmjpls/libsrc/djerror.h   |    2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/dcmjpls/libsrc/djcodecd.cc b/dcmjpls/libsrc/djcodecd.cc
+index 8a11515..8da8d7a 100644
+--- a/dcmjpls/libsrc/djcodecd.cc
++++ b/dcmjpls/libsrc/djcodecd.cc
+@@ -44,7 +44,7 @@
+ #include "djerror.h"                 /* for private class DJLSError */
+ 
+ // JPEG-LS library (CharLS) includes
+-#include "intrface.h"
++#include "CharLS/interface.h"
+ 
+ E_TransferSyntax DJLSLosslessDecoder::supportedTransferSyntax() const
+ {
+diff --git a/dcmjpls/libsrc/djcodece.cc b/dcmjpls/libsrc/djcodece.cc
+index 9d6e1d8..8148b31 100644
+--- a/dcmjpls/libsrc/djcodece.cc
++++ b/dcmjpls/libsrc/djcodece.cc
+@@ -62,7 +62,7 @@
+ #include "dcmtk/dcmimgle/dcmimage.h"  /* for class DicomImage */
+ 
+ // JPEG-LS library (CharLS) includes
+-#include "intrface.h"
++#include "CharLS/interface.h"
+ 
+ BEGIN_EXTERN_C
+ #ifdef HAVE_FCNTL_H
+diff --git a/dcmjpls/libsrc/djerror.h b/dcmjpls/libsrc/djerror.h
+index 68ebae1..d3cd2ad 100644
+--- a/dcmjpls/libsrc/djerror.h
++++ b/dcmjpls/libsrc/djerror.h
+@@ -31,7 +31,7 @@
+ 
+ #include "dcmtk/config/osconfig.h"
+ #include "dcmtk/dcmjpls/djlsutil.h" /* For the OFCondition codes */
+-#include "intrface.h" /* CharLS include */
++#include "CharLS/interface.h" /* CharLS include */
+ 
+ /** Helper class for converting between dcmjpls and CharLS error codes
+  */
+-- 
+1.7.4
+

================================================================
Index: packages/dcmtk/dcmtk-0006-Added-optional-support-for-building-shared-libraries.patch
diff -u /dev/null packages/dcmtk/dcmtk-0006-Added-optional-support-for-building-shared-libraries.patch:1.1
--- /dev/null	Sat Feb 25 08:52:17 2012
+++ packages/dcmtk/dcmtk-0006-Added-optional-support-for-building-shared-libraries.patch	Sat Feb 25 08:52:11 2012
@@ -0,0 +1,143 @@
+From d3284cf35b8d92029cba487a285cdd6aeee16d38 Mon Sep 17 00:00:00 2001
+From: Joerg Riesmeier <dicom at offis.de>
+Date: Tue, 1 Feb 2011 09:52:35 +0000
+Subject: [PATCH 6/6] Added optional support for building shared libraries with CMake.
+
+---
+ CMakeLists.txt               |    2 ++
+ dcmimage/apps/CMakeLists.txt |    3 +--
+ dcmimgle/apps/CMakeLists.txt |    3 +--
+ dcmjpeg/apps/CMakeLists.txt  |    5 ++---
+ dcmjpls/apps/CMakeLists.txt  |    3 +--
+ dcmpstat/apps/CMakeLists.txt |    8 +-------
+ dcmqrdb/apps/CMakeLists.txt  |    4 ++--
+ dcmwlm/apps/CMakeLists.txt   |    4 ++--
+ 8 files changed, 12 insertions(+), 20 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fa5d9ad..010c13c 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -34,6 +34,8 @@ SET(DCMTK_API_VERSION "${DCMTK_MAJOR_VERSION}.${DCMTK_MINOR_VERSION}")
+ SET(DCMTK_LIBRARY_PROPERTIES VERSION "${DCMTK_PACKAGE_VERSION}" SOVERSION "${DCMTK_API_VERSION}")
+ SET(DCMTK_PACKAGE_VERSION_NUMBER ${DCMTK_MAJOR_VERSION}${DCMTK_MINOR_VERSION}${DCMTK_BUILD_VERSION})
<<Diff was trimmed, longer than 597 lines>>

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/dcmtk/dcmtk.spec?r1=1.1&r2=1.2&f=u



More information about the pld-cvs-commit mailing list