# Prepare environment and variables set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE) if(WIN32) set(ENV{CMAKE_PREFIX_PATH} "${CMAKE_CURRENT_SOURCE_DIR}\\pc-bletch") else() set(ENV{CMAKE_PREFIX_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/pc-bletch") endif() find_package(PkgConfig REQUIRED) pkg_check_modules(BLETCH QUIET bletch) if (NOT BLETCH_FOUND) message(FATAL_ERROR "Failed to find embedded package bletch via CMAKE_PREFIX_PATH") endif () set(expected_value "item1;item2;item3;item with spaces") pkg_get_variable(bletchvar1 bletch multiple_values1) pkg_get_variable(bletchvar2 bletch multiple_values2) string(FIND "${bletchvar1}" ";" IS_VARIABLE_A_LIST1) string(FIND "${bletchvar2}" ";" IS_VARIABLE_A_LIST2) if (IS_VARIABLE_A_LIST1 EQUAL -1 OR IS_VARIABLE_A_LIST2 EQUAL -1) message(FATAL_ERROR "Failed to fetch variable multiple_values from embedded package bletch as a list") endif() if (NOT (bletchvar1 STREQUAL expected_value AND bletchvar2 STREQUAL expected_value)) message(NOTICE "multiple_values1=${bletchvar1} and expected_value=${expected_value}") message(NOTICE "multiple_values2=${bletchvar2} and expected_value=${expected_value}") message(FATAL_ERROR "Failed to fetch variable multiple_values from embedded package bletch with escaped spaces") endif()