Use standard CMake package configuration mechanism to report failures Fixes #1123 Change-Id: Idd327c97391395fb23fc458e8d3dae0e5f3d1ed2
diff --git a/cmake/CeresConfig.cmake.in b/cmake/CeresConfig.cmake.in index 8b44612..9122881 100644 --- a/cmake/CeresConfig.cmake.in +++ b/cmake/CeresConfig.cmake.in
@@ -1,5 +1,5 @@ # Ceres Solver - A fast non-linear least squares minimizer -# Copyright 2022 Google Inc. All rights reserved. +# Copyright 2025 Google Inc. All rights reserved. # http://ceres-solver.org/ # # Redistribution and use in source and binary forms, with or without @@ -76,18 +76,8 @@ # Reset the CMake module path to its state when this script was called. set(CMAKE_MODULE_PATH ${CALLERS_CMAKE_MODULE_PATH}) - - # Note <package>_FIND_[REQUIRED/QUIETLY] variables defined by - # FindPackage() use the camelcase library name, not uppercase. - if (Ceres_FIND_QUIETLY) - message(STATUS "Failed to find Ceres - " ${REASON_MSG} ${ARGN}) - elseif (Ceres_FIND_REQUIRED) - message(FATAL_ERROR "Failed to find Ceres - " ${REASON_MSG} ${ARGN}) - else() - # Neither QUIETLY nor REQUIRED, use SEND_ERROR which emits an error - # that prevents generation, but continues configuration. - message(SEND_ERROR "Failed to find Ceres - " ${REASON_MSG} ${ARGN}) - endif () + # Concatenate REASON_MSG and ARGN with each element separated by a space + string(JOIN " " ${CMAKE_FIND_PACKAGE_NAME}_NOT_FOUND_MESSAGE "${REASON_MSG}" ${ARGN}) return() endmacro(CERES_REPORT_NOT_FOUND)