[ceres] Mark all dependencies REQUIRED (#15802)

* [ceres] Mark all dependencies REQUIRED

* [suitesparse] Fix FindCXSparse.cmake

* [ceres] Add version to db

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
This commit is contained in:
ras0219 2021-01-22 12:25:40 -08:00 committed by GitHub
parent 450de5f3c6
commit 0e4d6f084f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 87 additions and 14 deletions

View File

@ -0,0 +1,58 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b6a3d05..a78c027 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -245,7 +245,7 @@ if (EIGEN3_FOUND)
endif (EIGEN3_FOUND)
if (LAPACK)
- find_package(LAPACK QUIET)
+ find_package(LAPACK REQUIRED)
if (LAPACK_FOUND)
message("-- Found LAPACK library: ${LAPACK_LIBRARIES}")
else (LAPACK_FOUND)
@@ -263,7 +263,7 @@ if (SUITESPARSE)
# built with SuiteSparse support.
# Check for SuiteSparse and dependencies.
- find_package(SuiteSparse)
+ find_package(SuiteSparse REQUIRED)
if (SUITESPARSE_FOUND)
# On Ubuntu the system install of SuiteSparse (v3.4.0) up to at least
# Ubuntu 13.10 cannot be used to link shared libraries.
@@ -300,7 +300,7 @@ endif (SUITESPARSE)
# CXSparse.
if (CXSPARSE)
# Don't search with REQUIRED as we can continue without CXSparse.
- find_package(CXSparse)
+ find_package(CXSparse REQUIRED)
if (CXSPARSE_FOUND)
# By default, if CXSparse and all dependencies are found, Ceres is
# built with CXSparse support.
@@ -336,7 +336,7 @@ endif(NOT SUITESPARSE AND NOT CXSPARSE AND NOT EIGENSPARSE)
# GFlags.
if (GFLAGS)
# Don't search with REQUIRED as we can continue without gflags.
- find_package(gflags 2.2.0)
+ find_package(gflags REQUIRED)
if (gflags_FOUND)
if (TARGET gflags)
message("-- Found Google Flags (gflags) version ${gflags_VERSION}: ${gflags_DIR}")
@@ -537,7 +537,7 @@ else (NOT OPENMP AND NOT TBB AND NOT CXX11_THREADS)
set_ceres_threading_model("${CERES_THREADING_MODEL}")
if (BUILD_BENCHMARKS)
- find_package(benchmark QUIET)
+ find_package(benchmark REQUIRED)
if (benchmark_FOUND)
message("-- Found Google benchmark library. Building Ceres benchmarks.")
else()
@@ -782,7 +782,7 @@ if (BUILD_DOCUMENTATION)
set(CERES_DOCS_INSTALL_DIR "share/doc/ceres" CACHE STRING
"Ceres docs install path relative to CMAKE_INSTALL_PREFIX")
- find_package(Sphinx QUIET)
+ find_package(Sphinx REQUIRED)
if (NOT SPHINX_FOUND)
message("-- Failed to find Sphinx, disabling build of documentation.")
update_cache_variable(BUILD_DOCUMENTATION OFF)

View File

@ -16,6 +16,7 @@ vcpkg_from_github(
0001_cmakelists_fixes.patch
0002_use_glog_target.patch
0003_fix_exported_ceres_config.patch
find-package-required.patch
)
file(REMOVE ${SOURCE_PATH}/cmake/FindCXSparse.cmake)

View File

@ -1,7 +1,7 @@
{
"name": "ceres",
"version-string": "2.0.0",
"port-version": 2,
"version-semver": "2.0.0",
"port-version": 3,
"description": "non-linear optimization package",
"homepage": "https://github.com/ceres-solver/ceres-solver",
"dependencies": [

View File

@ -1,5 +0,0 @@
Source: suitesparse
Version: 5.8.0
Build-Depends: lapack, metis
Homepage: http://suitesparse.com
Description: algebra library

View File

@ -33,9 +33,8 @@
include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake)
include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake)
include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake)
find_path(CXSPARSE_INCLUDE_DIR NAMES cs.h)
find_path(CXSPARSE_INCLUDE_DIR NAMES cs.h PATH_SUFFIXES suitesparse)
find_library(CXSPARSE_LIBRARY_RELEASE NAMES cxsparse libcxsparse)
find_library(CXSPARSE_LIBRARY_DEBUG NAMES cxsparsed libcxsparsed)
@ -65,11 +64,10 @@ endif()
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(CXSparse
REQUIRED_VARS CXSPARSE_INCLUDE_DIRS CXSPARSE_LIBRARIES
REQUIRED_VARS CXSPARSE_INCLUDE_DIR CXSPARSE_LIBRARIES
VERSION_VAR CXSPARSE_VERSION)
set(CXSPARSE_FOUND ${CXSparse_FOUND})
set(CXSPARSE_INCLUDE_DIRS ${CXSPARSE_INCLUDE_DIR})
set(CXSPARSE_LIBRARIES ${CXSPARSE_LIBRARY})
set(CXSparse_INCLUDE_DIRS ${CXSPARSE_INCLUDE_DIR})
set(CXSparse_LIBRARIES ${CXSPARSE_LIBRARY})
set(CXSparse_LIBRARIES ${CXSPARSE_LIBRARIES})

View File

@ -0,0 +1,11 @@
{
"name": "suitesparse",
"version-semver": "5.8.0",
"port-version": 1,
"description": "A suite of sparse matrix algorithms. Also provides libcxsparse.",
"homepage": "http://suitesparse.com",
"dependencies": [
"lapack",
"metis"
]
}

View File

@ -1110,7 +1110,7 @@
},
"ceres": {
"baseline": "2.0.0",
"port-version": 2
"port-version": 3
},
"cfitsio": {
"baseline": "3.49",
@ -5570,7 +5570,7 @@
},
"suitesparse": {
"baseline": "5.8.0",
"port-version": 0
"port-version": 1
},
"sundials": {
"baseline": "5.5.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "bfe64de75017dfef5a1dbd6b034078a0316201c8",
"version-semver": "2.0.0",
"port-version": 3
},
{
"git-tree": "216c1a351f8af9be7952bd5dfcf262a66e24c11e",
"version-string": "2.0.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "4c709290c9cc6e7635c120dbd5cd9d227408a0ab",
"version-semver": "5.8.0",
"port-version": 1
},
{
"git-tree": "cafd2cb5688d179f1ca502ae8e1ce421db1c7ef5",
"version-string": "5.8.0",