Thank you, Eric and Ugesh,

Am Mi., 31. Juli 2019 um 09:16 Uhr schrieb Eric Doenges <[email protected]>:

> My experience has been that find_file and friends behave in unexpected
> ways when you set CMAKE_SYSROOT. In our toolchain files, we set
> set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
> set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
> set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
> set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY)
>
> as suggested in the cmake-toolchains(7) documentation. We then add the
> path to the top-level directory where we keep all our thirdparty
> dependencies to CMAKE_FIND_ROOT_PATH, as otherwise find_package and
> find_path cannot find anything even when we give them the absolute path
> where to search (the find_file documentation suggests that the elements of
> the CMAKE_FIND_ROOT_PATH are prepended to the paths specified in the
> find_file arguments, but that does not seem to happen if the search paths
> are subpaths of the CMAKE_FIND_ROOT_PATH). My guess would be that the NDK
> does something similar, meaning you would need to add the path where to
> look for AWS to CMAKE_FIND_ROOT_PATH.
>

I have just looked that up and yes, it would explain what I'm seeing.
CMAKE_SYSROOT is being set by the toolchain file and it would appear as
this would make all search hints and paths implicitly relative.

I'm now trying to restructure my 3rd party management for this target to
enable me to install my dependencies into the subdirs set as sysroot,
hoping that they will then be found.

Thanks for the suggestion, that looks promising. I will get back with more
info on if and how that turned out.

> CMake feature request: it would be real nice to have a verbose mode for
> the find_XXX functions that tell you exactly where CMake is looking for
> stuff and why to help debug problems like this.
>
Seconded.
I always insert debug message() statements all over the place and then
often forget to clean them up. Also, this way I can only verify the search
paths are correct but not why find_file fails.

Cheers,
Stephan

>
-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

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

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

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

Reply via email to