set(_PREFIX "ROR_") set(USE_PACKAGE_MANAGER TRUE) include(Macros.cmake) function(add_external_lib package conan_package_name) list(REMOVE_AT ARGV 0 1) better_parse_args( . REQUIRED FIND_PACKAGE ALWAYS_ALLOW_CONAN_FALLBACK HAS_ONLY_DEBUG_RELEASE - OPTION_NAME SYMBOL INTERFACE_NAME CONAN_PKG_NAME + CONAN_OPTIONS FIND_PACKAGE_OPTIONS PKG_CONFIG ) if (ARG_OPTION_NAME) set(option_name_base ${ARG_OPTION_NAME}) else () string(TOUPPER "${package}" option_name_base) endif () if (ARG_ALWAYS_ALLOW_CONAN_FALLBACK) set(system_only OFF) else () set(system_only ${${_PREFIX}FORCE_SYSTEM_DEPENDENCIES}) endif () if (ARG_FIND_PACKAGE_OPTIONS) set(ARG_FIND_PACKAGE ON) endif () if (ARG_INTERFACE_NAME) set(interface_name ${ARG_INTERFACE_NAME}) else () set(interface_name "${package}::${package}") endif () if (ARG_SYMBOL) set(symbol ${ARG_SYMBOL}) else () set(symbol ${option_name_base}) endif () # Generate CMake option set(option_name ${_PREFIX}USE_${option_name_base}) set(option_desc "CONAN") if (ARG_PKG_CONFIG OR ARG_FIND_PACKAGE) set(sysopt "SYSTEM") string(PREPEND option_desc "SYSTEM, ") set(default "${${_PREFIX}LIB_PREFERENCE}") else () set(default "CONAN") endif () if (NOT ARG_REQUIRED) set(reqopt "OFF") string(APPEND option_desc ", OFF") endif () message("| ${option_name} | ${option_desc} |") endfunction() message("| Name | Values |") message("|------|--------|") include(DependenciesConfig.cmake)