diff options
Diffstat (limited to 'sci-libs/ceres-solver')
-rw-r--r-- | sci-libs/ceres-solver/ceres-solver-2.2.0-r1.ebuild (renamed from sci-libs/ceres-solver/ceres-solver-2.2.0.ebuild) | 26 |
1 files changed, 23 insertions, 3 deletions
diff --git a/sci-libs/ceres-solver/ceres-solver-2.2.0.ebuild b/sci-libs/ceres-solver/ceres-solver-2.2.0-r1.ebuild index 6abc595b8231..747e151d1e59 100644 --- a/sci-libs/ceres-solver/ceres-solver-2.2.0.ebuild +++ b/sci-libs/ceres-solver/ceres-solver-2.2.0-r1.ebuild @@ -7,7 +7,7 @@ PYTHON_COMPAT=( python3_{10..12} ) DOCS_BUILDER="sphinx" DOCS_DEPEND="dev-python/sphinx-rtd-theme" DOCS_DIR="docs/source" -inherit cmake-multilib flag-o-matic python-any-r1 docs +inherit cmake-multilib cuda flag-o-matic python-any-r1 docs DESCRIPTION="Nonlinear least-squares minimizer" HOMEPAGE="http://ceres-solver.org/" @@ -16,7 +16,7 @@ SRC_URI="http://ceres-solver.org/${P}.tar.gz" LICENSE="sparse? ( BSD ) !sparse? ( LGPL-2.1 )" SLOT="0/1" KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" -IUSE="examples gflags lapack +schur sparse test" +IUSE="examples cuda gflags lapack +schur sparse test" REQUIRED_USE="test? ( gflags ) sparse? ( lapack ) abi_x86_32? ( !sparse !lapack )" RESTRICT="!test? ( test )" @@ -28,6 +28,7 @@ BDEPEND="${PYTHON_DEPS} " RDEPEND=" dev-cpp/glog[gflags?,${MULTILIB_USEDEP}] + cuda? ( dev-util/nvidia-cuda-toolkit:= ) lapack? ( virtual/lapack ) sparse? ( sci-libs/amd @@ -61,7 +62,7 @@ src_prepare() { } src_configure() { - # CUSTOM_BLAS=OFF EIGENSPARSE=OFF MINIGLOG=OFF CXX11=OFF + # CUSTOM_BLAS=OFF EIGENSPARSE=OFF MINIGLOG=OFF local mycmakeargs=( -DBUILD_BENCHMARKS=OFF -DBUILD_EXAMPLES=$(usex examples) @@ -72,13 +73,32 @@ src_configure() { -DSCHUR_SPECIALIZATIONS=$(usex schur) -DSUITESPARSE=$(usex sparse) -DEigen3_DIR=/usr/$(get_libdir)/cmake/eigen3 + + -DBUILD_SHARED_LIBS="yes" + -DEIGENMETIS="yes" + -DEIGENSPARSE="yes" + -DMINIGLOG="no" + -DCUSTOM_BLAS="yes" + -DUSE_CUDA="$(usex cuda)" ) + if use cuda; then + : "${CUDAHOSTCXX:=$(cuda_gccdir)}" + : "${CUDAARCHS:=all}" + export CUDAHOSTCXX + export CUDAARCHS + fi + use sparse || mycmakeargs+=( -DEIGENSPARSE=ON ) cmake-multilib_src_configure } +src_test() { + use cuda && cuda_add_sandbox -w + cmake_src_test +} + src_install() { cmake-multilib_src_install |