Patrick Williams | ac13d5f | 2023-11-24 18:59:46 -0600 | [diff] [blame] | 1 | DESCRIPTION = "Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems." |
| 2 | HOMEPAGE = "http://ceres-solver.org/" |
| 3 | LICENSE = "BSD-3-Clause" |
| 4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3585a26c9cd9ec0cb36a7d65542878ca" |
| 5 | |
| 6 | DEPENDS = "libeigen glog" |
| 7 | |
| 8 | SRC_URI = "git://github.com/ceres-solver/ceres-solver.git;branch=master;protocol=https" |
| 9 | SRCREV = "85331393dc0dff09f6fb9903ab0c4bfa3e134b01" |
| 10 | |
| 11 | S = "${WORKDIR}/git" |
| 12 | |
| 13 | inherit cmake |
| 14 | |
| 15 | do_configure:prepend() { |
| 16 | # otherwise https://github.com/ceres-solver/ceres-solver/blob/0b748597889f460764f6c980a00c6f502caa3875/cmake/AddGerritCommitHook.cmake#L68 |
| 17 | # will try to fetch https://ceres-solver-review.googlesource.com/tools/hooks/commit-msg durind do_configure |
| 18 | # which sometimes gets stuck (as there is no TIMEOUT set in DOWNLOAD) |
| 19 | # and we really don't need Gerrit's Change-Id tags when just building this |
| 20 | touch ${S}/.git/hooks/commit-msg |
| 21 | } |
| 22 | |
| 23 | # We don't want path to eigen3 in ceres-solver RSS to be |
| 24 | # used by components which use CeresConfig.cmake from their |
| 25 | # own RSS |
| 26 | # 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) |
| 27 | # 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) |
| 28 | # 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) |
| 29 | SSTATE_SCAN_FILES += "*.cmake" |
| 30 | |
| 31 | PACKAGECONFIG ??= "" |
| 32 | |
| 33 | # suitesparse* recipes will be in meta-ros layer |
| 34 | PACKAGECONFIG[suitesparse] = "-DSUITESPARSE=ON,-DSUITESPARSE=OFF,suitesparse-config suitesparse-amd suitesparse-camd suitesparse-colamd suitesparse-ccolamd suitesparse-cholmod suitesparse-metis suitesparse-spqr" |
| 35 | PACKAGECONFIG[cxsparse] = "-DCXSPARSE=ON,-DCXSPARSE=OFF,suitesparse-cxsparse" |
| 36 | PACKAGECONFIG[lapack] = "-DLAPACK=ON,-DLAPACK=OFF,lapack" |
| 37 | |
| 38 | # Only a static library and headers are created |
| 39 | RDEPENDS:${PN}-dev = "" |
| 40 | RRECOMMENDS:${PN}-dev = "${PN}-staticdev" |
| 41 | RRECOMMENDS:${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})" |