On 17/07/2013 7:49 PM, Jonathan Liu wrote:
On 17/07/2013 7:13 PM, Stefan Herbrechtsmeier wrote:
Am 17.07.2013 10:40, schrieb Jonathan Liu:
The CMAKE_{AR,LINKER,NM,OBJCOPY,OBJDUMP,RANLIB,STRIP} cmake variables
are currently set to values like CMAKE_LINKER-NOTFOUND for native
recipes because the host paths are not searched. This is because the
CMAKE_FIND_ROOT_PATH_MODE_PROGRAM cmake variable is set to ONLY.

To resolve this, explicitly set the variables using FIND_PROGRAM and
pass the CMAKE_FIND_ROOT_PATH_BOTH option so the host paths are also
searched.
Can you please debug the issue. Regarding my current check the variables are set in CMakeFindBinUtils.cmake and this is included by CMakeDetermineCCompiler.cmake. The later set _CMAKE_TOOLCHAIN_LOCATION based on the CMAKE_C_COMPILER variable and this is used as search location for the find_program calls. Can you check the value of _CMAKE_TOOLCHAIN_LOCATION?

Within the context of the CMakeLists.txt file:
CMAKE_C_COMPILER is /usr/bin/gcc.
_CMAKE_TOOLCHAIN_LOCATION is not set to anything.

If I add message(test) to build/tmp/sysroots/x86_64-linux/usr/share/cmake-2.8/Modules/CMakeDetermineCCompiler.cmake, it doesn't get printed out when running cmake on CMakeLists.txt (cmake is build/tmp/sysroots/x86_64-linux/usr/bin/cmake).

Regards,
Jonathan
For:
find_program(CMAKE_AR NAMES ${_CMAKE_TOOLCHAIN_PREFIX}ar${_CMAKE_TOOLCHAIN_SUFFIX} HINTS ${_CMAKE_TOOLCHAIN_LOCATION})

It seems the ${_CMAKE_TOOLCHAIN_LOCATION} hint is not used when CMAKE_FIND_ROOT_PATH_MODE_PROGRAM is set to ONLY.

Test case (CMakeLists.txt):
cmake_minimum_required(VERSION 2.8)
set(CMAKE_FIND_ROOT_PATH /var/empty)
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)
FIND_PROGRAM(LD NAMES ld HINTS /usr/bin)
message(${LD})

Running cmake displays:
LD-NOTFOUND

If "set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)" is commented out, it displays /usr/bin/ld.

Regards,
Jonathan

_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to