commit: 1f97cb6d7e8d694f6ea9cfa4f4e5d2f0fc0b470a Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Tue Dec 24 05:46:21 2024 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Tue Dec 24 05:46:21 2024 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1f97cb6d
sci-libs/dcmtk: add 3.6.9 Another ODR issue has appeared, not yet reported upstream. Bug: https://bugs.gentoo.org/862699 Closes: https://bugs.gentoo.org/936681 Closes: https://bugs.gentoo.org/937991 Signed-off-by: Sam James <sam <AT> gentoo.org> sci-libs/dcmtk/Manifest | 1 + sci-libs/dcmtk/dcmtk-3.6.9.ebuild | 88 +++++++++++++++++++++++++++ sci-libs/dcmtk/files/dcmtk-3.6.9-docdir.patch | 15 +++++ 3 files changed, 104 insertions(+) diff --git a/sci-libs/dcmtk/Manifest b/sci-libs/dcmtk/Manifest index 283fc868453b..0b011de6386f 100644 --- a/sci-libs/dcmtk/Manifest +++ b/sci-libs/dcmtk/Manifest @@ -1,2 +1,3 @@ DIST dcmtk-3.6.7.tar.gz 6877857 BLAKE2B 242ba19ed3876b27c8eeb6917f9264911c951e91ab27d2ebd3e95ab5dcf55a0e18986cede87c8ab7e6280eafeb19fda120ccb2114d24a16f222b411b44cc28d8 SHA512 b9c227f496de65424256636fa7ad266affc6593f72c6849271da94837b68c93a5b8e056ecd09d46550b6ac0530c406ab9f71751d317a5fd4171a222f9fc9ca45 DIST dcmtk-3.6.8.tar.gz 9628364 BLAKE2B 367885c3fda65b7b2e42555ba648800f9585cbd4c4d94e01f737110fc726ce3396df50ccd6f2c9bacc59284fc1381683b72506a3c566f795c8157da39a95fb2a SHA512 1bb2aad1aa63e0a1b79d92d7c932a969deccde03fdb484dbd44198effb58d50de44a2b0cda150ce7df63e4e986af5bc1f694c8a7988b4c049c578d83ba81184a +DIST dcmtk-3.6.9.tar.gz 9628334 BLAKE2B c60a9620a522b2a2fb976549ec1a3addce9ccd2fee90dad85376b56c105b28450d8ac2c8e8afe397e1bce532f8dd08f3fdb1135513bce3b314bdd7bbae7c06c9 SHA512 1ea4140940f33b34e21895cd7aa6b05be109fcecfbed45f61f8a4a248ea98deae59f2b362e518051d6054f588189d5ef9bba0ab81afa73b219c9ebcf415a0ca0 diff --git a/sci-libs/dcmtk/dcmtk-3.6.9.ebuild b/sci-libs/dcmtk/dcmtk-3.6.9.ebuild new file mode 100644 index 000000000000..605e334411ec --- /dev/null +++ b/sci-libs/dcmtk/dcmtk-3.6.9.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic 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" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" +IUSE="doc png ssl tcpd tiff +threads xml zlib" + +RDEPEND=" + png? ( media-libs/libpng:* ) + ssl? ( dev-libs/openssl:= ) + tcpd? ( sys-apps/tcp-wrappers ) + tiff? ( media-libs/tiff:= ) + xml? ( dev-libs/libxml2:2 ) + zlib? ( sys-libs/zlib ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + doc? ( + app-text/doxygen + virtual/latex-base + ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-3.6.9-docdir.patch +) + +src_prepare() { + cmake_src_prepare + + sed -i -e "s:COPYRIGHT::" CMakeLists.txt || die + # Temporary workaround: docs are not built with CMake + sed -i -e '/include/d' doxygen/Makefile.in || die +} + +src_configure() { + # ODR violations (bug #862699). They seem to have reappeared in 3.6.9. + # Not yet reported upstream. + filter-lto + + # bug 908398 + use elibc_musl && append-cppflags -D_LARGEFILE64_SOURCE + + local mycmakeargs=( + -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc" + -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 +} diff --git a/sci-libs/dcmtk/files/dcmtk-3.6.9-docdir.patch b/sci-libs/dcmtk/files/dcmtk-3.6.9-docdir.patch new file mode 100644 index 000000000000..aa6faf0f5ef7 --- /dev/null +++ b/sci-libs/dcmtk/files/dcmtk-3.6.9-docdir.patch @@ -0,0 +1,15 @@ +--- a/CMake/GenerateDCMTKConfigure.cmake ++++ b/CMake/GenerateDCMTKConfigure.cmake +@@ -193,12 +193,6 @@ else() + set(PATH_SEPARATOR "/") + set(ENVIRONMENT_PATH_SEPARATOR ":") + +- # Modify the installation paths for configuration files, data files and documents +- # by adding a subdirectory with the DCMTK name and version number +- set(CMAKE_INSTALL_SYSCONFDIR "${CMAKE_INSTALL_SYSCONFDIR}/dcmtk-${DCMTK_COMPLETE_PACKAGE_VERSION}") +- set(CMAKE_INSTALL_DATADIR "${CMAKE_INSTALL_DATADIR}/dcmtk-${DCMTK_COMPLETE_PACKAGE_VERSION}") +- set(CMAKE_INSTALL_DOCDIR "${CMAKE_INSTALL_DOCDIR}-${DCMTK_COMPLETE_PACKAGE_VERSION}") +- + # These variables are defined as macros in osconfig.h and must end with a path separator + if(CMAKE_VERSION VERSION_LESS 3.20.0) + # CMake versions prior to 3.20 expect the third parameter to be passed in ${dir}
