summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--media-libs/vigra/vigra-9999.ebuild92
1 files changed, 48 insertions, 44 deletions
diff --git a/media-libs/vigra/vigra-9999.ebuild b/media-libs/vigra/vigra-9999.ebuild
index 09cc7b4ffdc8..490176b71a09 100644
--- a/media-libs/vigra/vigra-9999.ebuild
+++ b/media-libs/vigra/vigra-9999.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{10..13} )
PYTHON_REQ_USE="threads(+),xml(+)"
inherit cmake flag-o-matic python-single-r1
@@ -12,15 +12,22 @@ DESCRIPTION="C++ computer vision library emphasizing customizable algorithms and
HOMEPAGE="https://ukoethe.github.io/vigra/"
if [[ ${PV} == *9999 ]] ; then
- EGIT_REPO_URI="https://github.com/ukoethe/${PN}.git"
+ EGIT_REPO_URI="https://github.com/ukoethe/vigra.git"
inherit git-r3
else
if [[ ${PV} == *_p* ]] ; then
VIGRA_COMMIT="4db795574a471bf1d94d258361f1ef536dd87ac1"
- SRC_URI="https://github.com/ukoethe/vigra/archive/${VIGRA_COMMIT}.tar.gz -> ${P}.tar.gz"
+ SRC_URI="
+ https://github.com/ukoethe/vigra/archive/${VIGRA_COMMIT}.tar.gz
+ -> ${P}.tar.gz
+ "
S="${WORKDIR}"/${PN}-${VIGRA_COMMIT}
else
- SRC_URI="https://github.com/ukoethe/${PN}/releases/download/Version-${PV//\./-}/${P}-src.tar.gz"
+ SRC_URI="
+ https://github.com/ukoethe/vigra/archive/refs/tags/Version-$(ver_rs 1- -).tar.gz
+ -> ${P}.tar.gz
+ "
+ S="${WORKDIR}/${PN}-Version-$(ver_rs 1- -)"
fi
KEYWORDS="~amd64 ~arm64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-solaris"
@@ -28,19 +35,14 @@ fi
LICENSE="MIT"
SLOT="0"
-IUSE="+fftw +hdf5 +jpeg mpi openexr +png test +tiff +zlib"
+IUSE="doc +fftw +hdf5 +jpeg mpi openexr +png test +tiff +zlib"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
test? ( hdf5 fftw )
"
-BDEPEND="
- test? (
- $(python_gen_cond_dep '
- dev-python/pytest[${PYTHON_USEDEP}]
- ')
- )
-"
+RESTRICT="!test? ( test )"
+
DEPEND="
fftw? ( sci-libs/fftw:3.0= )
hdf5? ( >=sci-libs/hdf5-1.8.0:=[mpi=] )
@@ -58,63 +60,65 @@ RDEPEND="
${PYTHON_DEPS}
${DEPEND}
"
-
-# Severely broken, also disabled in Fedora, bugs #390447, #653442
-RESTRICT="test"
+BDEPEND="
+ doc? (
+ app-text/doxygen
+ dev-texlive/texlive-latex
+ )
+"
PATCHES=(
# TODO: upstream
"${FILESDIR}/${PN}-1.11.1-lib_suffix.patch"
"${FILESDIR}/${PN}-1.11.1-cmake-module-dir.patch"
+
+ "${FILESDIR}/${PN}-1.12.1-clang19.patch"
+ "${FILESDIR}/${PN}-1.12.1-python311.patch"
)
src_prepare() {
- vigra_disable() {
- if ! use ${1}; then
- sed -e "/^VIGRA_FIND_PACKAGE.*${2:-$1}/Is/^/#disabled by USE=${1}: /" \
- -i CMakeLists.txt || die "failed to disable ${1}"
- fi
- }
-
cmake_src_prepare
- vigra_disable fftw fftw3
- vigra_disable fftw fftw3f
- vigra_disable jpeg
- vigra_disable png
- vigra_disable tiff
- vigra_disable zlib
-
- # Don't use python_fix_shebang because we can't put this behind USE="python"
- sed -i -e '/env/s:python:python3:' config/vigra-config.in || die
-
- sed -i -e '/ADD_DEPENDENCIES(PACKAGE_SRC_TAR doc_cpp)/d' CMakeLists.txt || die
+ sed -i -e '/ADD_DEPENDENCIES(PACKAGE_SRC_TAR/d' CMakeLists.txt || die
- cmake_comment_add_subdirectory docsrc
-
- if ! use test; then
- cmake_comment_add_subdirectory test
- cmake_run_in vigranumpy cmake_comment_add_subdirectory test
- fi
+ sed -i -e 's|@DOCDIR@|@CMAKE_INSTALL_PREFIX@/@DOCINSTALL@|' config/vigra-config.in || die
}
src_configure() {
- # Needed for now ("fix" compatibility with >=sci-libs/hdf5-1.12)
- # bug #808731
- use hdf5 && append-cppflags -DH5_USE_110_API
+ # Floating point error increases with -mfma leading to test failures
+ append-flags -ffp-contract=off
local mycmakeargs=(
-DAUTOEXEC_TESTS=OFF
+ -DAUTOBUILD_TESTS=$(usex test)
-DDOCINSTALL="share/doc/${PF}/html"
-DWITH_HDF5=$(usex hdf5)
-DWITH_OPENEXR=$(usex openexr)
-DWITH_VALGRIND=OFF # only used for tests
-DWITH_VIGRANUMPY=OFF
+ -DBUILD_TESTS=$(usex test)
+ -DBUILD_DOCS=$(usex doc)
+ $(cmake_use_find_package fftw FFTW3)
+ $(cmake_use_find_package fftw FFTW3F)
+ $(cmake_use_find_package jpeg JPEG)
+ $(cmake_use_find_package png PNG)
+ $(cmake_use_find_package tiff TIFF)
+ $(cmake_use_find_package zlib ZLIB)
)
+ use doc && mycmakeargs+=( -DPython_EXECUTABLE=${PYTHON} )
+
cmake_src_configure
}
-src_test() {
- PYTHONPATH="${BUILD_DIR}/vigranumpy/vigra" cmake_src_test
+src_compile() {
+ cmake_src_compile
+ use doc && cmake_build doc_cpp
+}
+
+src_install() {
+ cmake_src_install
+ einstalldocs
+
+ python_fix_shebang "${ED}"/usr/bin/vigra-config
}