I was trying to do this:

find_package(ICU 59.1 QUIET
COMPONENTS
data
i18n
io
tu
uc
)
if(ICU_FOUND)
  include_directories(BEFORE ${ICU_INCLUDE_DIRS})
  message("ICU_LIBRARIES=${ICU_LIBRARIES}")
endif()

And at configuration time, ICU_FOUND was turning up with double quotes around it, and as we all know from CMake 101, the string "FALSE" has a truth value of TRUE in the if statement.

This is with cmake 3.16.

I fixed this by changing the expression to

IF(ICU_FOUND AND NOT "${ICU_FOUND}" STREQUAL "\"FALSE\"")

but that doesn't seem right somehow!


--

Powered by kitware.com/cmake

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit https://cmake.org/services

Visit other Kitware open-source projects at https://www.kitware.com/platforms

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake

This mailing list is deprecated in favor of https://discourse.cmake.org

Reply via email to