Fix potential invalid reset of CMAKE_FIND_LIBRARY_PREFIXES on MSVC.

- gflags_report_not_found() calls gflags_reset_find_library_prefix()
  and we only reset CMAKE_FIND_LIBRARY_PREFIXES when performing a manual
  search for gflags, but gflags_report_not_found() is also used
  before the manual search when searching for an exported gflags target.
- As such, it was possible that we could have cleared
  CMAKE_FIND_LIBRARY_PREFIXES rather than reset it if
  gflags_report_not_found() was invoked during the exported target
  search.
- This patch prevents this possibility by verifying that the cached
  version of CMAKE_FIND_LIBRARY_PREFIXES exists before updating it.

Change-Id: I07528ae5f197a366c7da342196b3e977f9a1fc93
1 file changed
tree: 027d177bca1fde931247dc5b3dafbf12aabe442b
  1. cmake/
  2. config/
  3. data/
  4. docs/
  5. examples/
  6. include/
  7. internal/
  8. jni/
  9. scripts/
  10. .gitignore
  11. CMakeLists.txt
  12. LICENSE
  13. package.xml
  14. README.md
README.md

Ceres Solver

Ceres Solver is an open source C++ library for modeling and solving large, complicated optimization problems. It is a feature rich, mature and performant library which has been used in production at Google since 2010. Ceres Solver can solve two kinds of problems.

  1. Non-linear Least Squares problems with bounds constraints.
  2. General unconstrained optimization problems.

Please see ceres-solver.org for more information.

WARNING - Do not make GitHub pull requests!

Ceres development happens on Gerrit, including both repository hosting and code reviews. The GitHub Repository is a continuously updated mirror which is primarily meant for issue tracking. Please see our Contributing to Ceres Guide for more details.

The upstream Gerrit repository is

https://ceres-solver.googlesource.com/ceres-solver