From b380f241817aea12839da38e14f7e44e414858e7 Mon Sep 17 00:00:00 2001 From: Wang Mingyu Date: Mon, 23 Oct 2023 16:24:00 +0800 Subject: ceres-solver: upgrade 2.1.0 -> 2.2.0 License-Update: Copyright updated to 2.2.0. Changelog: ========== -Substantial improvement to threading performance across the board -Mixed precision solves + iterative refinement when using CUDA or CPU based dense linear solvers, or EIGEN_SPARSE as the sparse linear algebra library. -Cuda based CGNR and preconditioner support -Nested Dissection (NESDIS) is now supported as an ordering method in addition to AMD. -Power Bundle Adjustment is available as a linear solver and as a preconditioner by the name of SCHUR POWER SERIES EXPANSION -Generalized Euler Angle conversions Signed-off-by: Wang Mingyu Signed-off-by: Khem Raj (cherry picked from commit 4f8d0ac304801e1706f87b64477e1f50a7796b55) Signed-off-by: Armin Kuster --- .../ceres-solver/ceres-solver_2.1.0.bb | 41 ---------------------- .../ceres-solver/ceres-solver_2.2.0.bb | 41 ++++++++++++++++++++++ 2 files changed, 41 insertions(+), 41 deletions(-) delete mode 100644 meta-oe/recipes-support/ceres-solver/ceres-solver_2.1.0.bb create mode 100644 meta-oe/recipes-support/ceres-solver/ceres-solver_2.2.0.bb diff --git a/meta-oe/recipes-support/ceres-solver/ceres-solver_2.1.0.bb b/meta-oe/recipes-support/ceres-solver/ceres-solver_2.1.0.bb deleted file mode 100644 index d3c6b421e6..0000000000 --- a/meta-oe/recipes-support/ceres-solver/ceres-solver_2.1.0.bb +++ /dev/null @@ -1,41 +0,0 @@ -DESCRIPTION = "Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems." -HOMEPAGE = "http://ceres-solver.org/" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE;md5=bb761279816b72be19d7ce646e4e2a14" - -DEPENDS = "libeigen glog" - -SRC_URI = "git://github.com/ceres-solver/ceres-solver.git;branch=master;protocol=https" -SRCREV = "f68321e7de8929fbcdb95dd42877531e64f72f66" - -S = "${WORKDIR}/git" - -inherit cmake - -do_configure:prepend() { - # otherwise https://github.com/ceres-solver/ceres-solver/blob/0b748597889f460764f6c980a00c6f502caa3875/cmake/AddGerritCommitHook.cmake#L68 - # will try to fetch https://ceres-solver-review.googlesource.com/tools/hooks/commit-msg durind do_configure - # which sometimes gets stuck (as there is no TIMEOUT set in DOWNLOAD) - # and we really don't need Gerrit's Change-Id tags when just building this - touch ${S}/.git/hooks/commit-msg -} - -# We don't want path to eigen3 in ceres-solver RSS to be -# used by components which use CeresConfig.cmake from their -# own RSS -# ceres-solver/1.14-r0/packages-split/ceres-solver-dev/usr/lib/cmake/Ceres/CeresConfig.cmake: set(Eigen3_DIR ceres-solver/1.14-r0/recipe-sysroot/usr/share/eigen3/cmake) -# ceres-solver/1.14-r0/packages-split/ceres-solver-dev/usr/lib/cmake/Ceres/CeresConfig.cmake: list(APPEND EIGEN_INCLUDE_DIR_HINTS ceres-solver/1.14-r0/recipe-sysroot/usr/include/eigen3) -# ceres-solver/1.14-r0/packages-split/ceres-solver-dev/usr/lib/cmake/Ceres/CeresConfig.cmake: set(glog_DIR ceres-solver/1.14-r0/recipe-sysroot/usr/lib/cmake/glog) -SSTATE_SCAN_FILES += "*.cmake" - -PACKAGECONFIG ??= "" - -# suitesparse* recipes will be in meta-ros layer -PACKAGECONFIG[suitesparse] = "-DSUITESPARSE=ON,-DSUITESPARSE=OFF,suitesparse-config suitesparse-amd suitesparse-camd suitesparse-colamd suitesparse-ccolamd suitesparse-cholmod suitesparse-metis suitesparse-spqr" -PACKAGECONFIG[cxsparse] = "-DCXSPARSE=ON,-DCXSPARSE=OFF,suitesparse-cxsparse" -PACKAGECONFIG[lapack] = "-DLAPACK=ON,-DLAPACK=OFF,lapack" - -# Only a static library and headers are created -RDEPENDS:${PN}-dev = "" -RRECOMMENDS:${PN}-dev = "${PN}-staticdev" -RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" diff --git a/meta-oe/recipes-support/ceres-solver/ceres-solver_2.2.0.bb b/meta-oe/recipes-support/ceres-solver/ceres-solver_2.2.0.bb new file mode 100644 index 0000000000..18db0721de --- /dev/null +++ b/meta-oe/recipes-support/ceres-solver/ceres-solver_2.2.0.bb @@ -0,0 +1,41 @@ +DESCRIPTION = "Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems." +HOMEPAGE = "http://ceres-solver.org/" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3585a26c9cd9ec0cb36a7d65542878ca" + +DEPENDS = "libeigen glog" + +SRC_URI = "git://github.com/ceres-solver/ceres-solver.git;branch=master;protocol=https" +SRCREV = "85331393dc0dff09f6fb9903ab0c4bfa3e134b01" + +S = "${WORKDIR}/git" + +inherit cmake + +do_configure:prepend() { + # otherwise https://github.com/ceres-solver/ceres-solver/blob/0b748597889f460764f6c980a00c6f502caa3875/cmake/AddGerritCommitHook.cmake#L68 + # will try to fetch https://ceres-solver-review.googlesource.com/tools/hooks/commit-msg durind do_configure + # which sometimes gets stuck (as there is no TIMEOUT set in DOWNLOAD) + # and we really don't need Gerrit's Change-Id tags when just building this + touch ${S}/.git/hooks/commit-msg +} + +# We don't want path to eigen3 in ceres-solver RSS to be +# used by components which use CeresConfig.cmake from their +# own RSS +# ceres-solver/1.14-r0/packages-split/ceres-solver-dev/usr/lib/cmake/Ceres/CeresConfig.cmake: set(Eigen3_DIR ceres-solver/1.14-r0/recipe-sysroot/usr/share/eigen3/cmake) +# ceres-solver/1.14-r0/packages-split/ceres-solver-dev/usr/lib/cmake/Ceres/CeresConfig.cmake: list(APPEND EIGEN_INCLUDE_DIR_HINTS ceres-solver/1.14-r0/recipe-sysroot/usr/include/eigen3) +# ceres-solver/1.14-r0/packages-split/ceres-solver-dev/usr/lib/cmake/Ceres/CeresConfig.cmake: set(glog_DIR ceres-solver/1.14-r0/recipe-sysroot/usr/lib/cmake/glog) +SSTATE_SCAN_FILES += "*.cmake" + +PACKAGECONFIG ??= "" + +# suitesparse* recipes will be in meta-ros layer +PACKAGECONFIG[suitesparse] = "-DSUITESPARSE=ON,-DSUITESPARSE=OFF,suitesparse-config suitesparse-amd suitesparse-camd suitesparse-colamd suitesparse-ccolamd suitesparse-cholmod suitesparse-metis suitesparse-spqr" +PACKAGECONFIG[cxsparse] = "-DCXSPARSE=ON,-DCXSPARSE=OFF,suitesparse-cxsparse" +PACKAGECONFIG[lapack] = "-DLAPACK=ON,-DLAPACK=OFF,lapack" + +# Only a static library and headers are created +RDEPENDS:${PN}-dev = "" +RRECOMMENDS:${PN}-dev = "${PN}-staticdev" +RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" -- cgit v1.2.3-54-g00ecf