summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sci-libs/dcmtk')
-rw-r--r--sci-libs/dcmtk/Manifest1
-rw-r--r--sci-libs/dcmtk/dcmtk-3.6.7.ebuild86
2 files changed, 87 insertions, 0 deletions
diff --git a/sci-libs/dcmtk/Manifest b/sci-libs/dcmtk/Manifest
index 6b90d4478b44..4d0e465ad87f 100644
--- a/sci-libs/dcmtk/Manifest
+++ b/sci-libs/dcmtk/Manifest
@@ -1 +1,2 @@
DIST dcmtk-3.6.5.tar.gz 6483626 BLAKE2B 6182ef207b42b16ee91e94397cc8a5b2d108435a30d4c86f0b7e39af91186604f16be07a75e176bf50575446abcab21b2f63158dc4e5f2cb6de3996a0881b295 SHA512 c0cf61b0095c5708709406bfef5e8bb82dd01dbf77df7f2af2118004920bda68218eb1e4174bf92941cdae0acdb275c886570dafd29476eee2eb815e9a82830a
+DIST dcmtk-3.6.7.tar.gz 6877857 BLAKE2B 242ba19ed3876b27c8eeb6917f9264911c951e91ab27d2ebd3e95ab5dcf55a0e18986cede87c8ab7e6280eafeb19fda120ccb2114d24a16f222b411b44cc28d8 SHA512 b9c227f496de65424256636fa7ad266affc6593f72c6849271da94837b68c93a5b8e056ecd09d46550b6ac0530c406ab9f71751d317a5fd4171a222f9fc9ca45
diff --git a/sci-libs/dcmtk/dcmtk-3.6.7.ebuild b/sci-libs/dcmtk/dcmtk-3.6.7.ebuild
new file mode 100644
index 000000000000..34656b3a4676
--- /dev/null
+++ b/sci-libs/dcmtk/dcmtk-3.6.7.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+DESCRIPTION="The DICOM Toolkit"
+HOMEPAGE="https://dicom.offis.de/dcmtk.php.en"
+SRC_URI="https://dicom.offis.de/download/dcmtk/release/${P}.tar.gz"
+
+LICENSE="OFFIS"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+SLOT="0"
+IUSE="doc png ssl tcpd tiff +threads xml zlib"
+
+RDEPEND="
+ dev-libs/icu:=
+ virtual/jpeg:0
+ png? ( media-libs/libpng:* )
+ ssl? ( dev-libs/openssl:0= )
+ tcpd? ( sys-apps/tcp-wrappers )
+ tiff? ( media-libs/tiff:0 )
+ xml? ( dev-libs/libxml2:2 )
+ zlib? ( sys-libs/zlib )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="doc? ( app-doc/doxygen )"
+
+src_prepare() {
+ cmake_src_prepare
+
+ sed -e "s:share/doc/dcmtk:&-${PV}:" \
+ -e "s:DIR \"/:DIR \"/usr/:" \
+ -e "s:usr/etc:etc:" \
+ -e "s:/lib\":/$(get_libdir)\":" \
+ -e "s:COPYRIGHT::" \
+ -i CMakeLists.txt || die
+ sed -e 's:${CMAKE_INSTALL_PREFIX}/::' \
+ -i dcmwlm/data/CMakeLists.txt doxygen/CMakeLists.txt || die
+ # Temporary workaround: docs are not built with CMake
+ sed -i -e '/include/d' doxygen/Makefile.in || die
+
+ # fix -D deprecation warnings
+ sed -i -e "s|_BSD_SOURCE|_DEFAULT_SOURCE|g" \
+ "${S}"/config/configure.in \
+ "${S}"/CMakeLists.txt || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc"
+ -DDCMTK_WITH_ICU=ON
+ -DDCMTK_WITH_TIFF=$(usex tiff)
+ -DDCMTK_WITH_PNG=$(usex png)
+ -DDCMTK_WITH_XML=$(usex xml)
+ -DDCMTK_WITH_ZLIB=$(usex zlib)
+ -DDCMTK_WITH_OPENSSL=$(usex ssl)
+ -DDCMTK_WITH_DOXYGEN=$(usex doc)
+ -DDCMTK_WITH_THREADS=$(usex threads)
+ )
+
+ cmake_src_configure
+
+ if use doc; then
+ cd "${S}"/doxygen || die
+ econf
+ fi
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use doc; then
+ emake -C "${S}"/doxygen
+ fi
+}
+
+src_install() {
+ doman doxygen/manpages/man1/*
+
+ if use doc; then
+ local HTML_DOCS=( "${S}"/doxygen/htmldocs/. )
+ fi
+ cmake_src_install
+}