diff options
Diffstat (limited to 'sci-libs/gdcm/gdcm-3.0.14.ebuild')
-rw-r--r-- | sci-libs/gdcm/gdcm-3.0.14.ebuild | 121 |
1 files changed, 121 insertions, 0 deletions
diff --git a/sci-libs/gdcm/gdcm-3.0.14.ebuild b/sci-libs/gdcm/gdcm-3.0.14.ebuild new file mode 100644 index 000000000..c1000fea9 --- /dev/null +++ b/sci-libs/gdcm/gdcm-3.0.14.ebuild @@ -0,0 +1,121 @@ +# Copyright 2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_10 ) + +inherit cmake python-single-r1 + +DESCRIPTION="Cross-platform DICOM implementation" +HOMEPAGE="http://gdcm.sourceforge.net/" +SRC_URI="mirror://sourceforge/gdcm/${P}.tar.bz2 + test? ( mirror://sourceforge/gdcm/gdcmData.tar.gz )" # 3.0.14: .bz2 is broken, should be checked in next release + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="doc python test vtk" +RESTRICT="!test? ( test )" + +DEPEND=" + app-text/poppler:0=[cxx] + dev-libs/expat:0= + dev-libs/json-c:0= + dev-libs/libxml2:2= + dev-libs/openssl:0= + >=media-libs/charls-2.0.0:0= + >=media-libs/openjpeg-2.0.0:2= + sys-apps/util-linux:0= + sys-libs/zlib:0= + python? ( ${PYTHON_DEPS} ) + vtk? ( + sci-libs/vtk[rendering] + python? ( + sci-libs/vtk[python,${PYTHON_SINGLE_USEDEP}] + ) + ) +" +RDEPEND="${DEPEND}" +BDEPEND=" + dev-libs/libxslt + app-text/docbook-xsl-ns-stylesheets + doc? ( app-text/doxygen[dot] ) + python? ( + ${PYTHON_DEPS} + >=dev-lang/swig-3.0.7 + )" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +PATCHES=( + "${FILESDIR}/gdcm_support_vtk9.patch" + "${FILESDIR}/gdcm-3.0.14-include-math-h.patch" +) + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + # drop unbundled libs + local -a DROPS=( gdcmcharls gdcmexpat gdcmopenjpeg gdcmuuid gdcmzlib getopt pvrg KWStyle Release ) + local x + for x in "${DROPS[@]}"; do + ebegin "Dropping bundled ${x#gdcm}" + rm -r "Utilities/${x}" || die + sed -i "s,^[ \t]*APPEND_COPYRIGHT(\\\${CMAKE_CURRENT_SOURCE_DIR}/${x}/,#&," "Utilities/CMakeLists.txt" || die + eend $? + done + find Utilities -mindepth 1 -maxdepth 1 '!' -name doxygen '!' -name VTK -type d \ + -exec ewarn "Using bundled" {} ';' || die + + # fix charls include case + sed -i 's:CharLS/charls\.h:charls/charls.h:' CMake/FindCharLS.cmake Utilities/gdcm_charls.h || die + sed -i 's:NAMES CharLS:NAMES charls:' CMake/FindCharLS.cmake || die + + # Use prefixed socket++ (to avoid potential conflicts) + sed -i '/target_link_libraries(/s/socketxx/gdcm&/' \ + Source/MessageExchangeDefinition/CMakeLists.txt \ + Applications/Cxx/CMakeLists.txt \ + || die + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DCMAKE_SKIP_RPATH=ON + -DGDCM_BUILD_SHARED_LIBS=ON + -DGDCM_DATA_ROOT="${WORKDIR}/gdcmData" + -DGDCM_INSTALL_LIB_DIR="$(get_libdir)" + -DGDCM_INSTALL_DOC_DIR="share/doc/${P}" + -DGDCM_INSTALL_PYTHONMODULE_DIR="lib/${EPYTHON}/site-packages" + -DGDCM_USE_SYSTEM_ZLIB=ON + -DGDCM_USE_SYSTEM_OPENSSL=ON + -DGDCM_USE_SYSTEM_UUID=ON + -DGDCM_USE_SYSTEM_EXPAT=ON + -DGDCM_USE_SYSTEM_JSON=ON + -DGDCM_USE_SYSTEM_PAPYRUS3=OFF + -DGDCM_USE_SYSTEM_SOCKETXX=OFF + -DSOCKETXX_NAMESPACE=GDCMSOCKETXX + -DGDCM_USE_SYSTEM_LJPEG=OFF + -DGDCM_USE_SYSTEM_OPENJPEG=ON + -DGDCM_USE_SYSTEM_CHARLS=ON + -DGDCM_USE_SYSTEM_POPPLER=ON + -DGDCM_USE_SYSTEM_LIBXML2=ON + -DGDCM_BUILD_TESTING=$(usex test) + -DGDCM_WRAP_PYTHON=$(usex python) + $(usex python "-DGDCM_DEFAULT_PYTHON_VERSION=${EPYTHON#python}" "") + -DGDCM_WRAP_PERL=OFF + -DGDCM_WRAP_PHP=OFF + -DGDCM_WRAP_JAVA=OFF + -DGDCM_WRAP_CSHARP=OFF + -DGDCM_DOCUMENTATION=$(usex doc) + $(usex doc "-DGDCM_PDF_DOCUMENTATION=OFF" "") + -DGDCM_BUILD_EXAMPLES=OFF + -DGDCM_BUILD_APPLICATIONS=ON + -DGDCM_USE_VTK=$(usex vtk) + ) + cmake_src_configure +} |