]> code.ossystems Code Review - openembedded-core.git/commitdiff
cmake: Fully-qualified path to ar
authorDouglas Royds <douglas.royds@taitradio.com>
Wed, 17 Mar 2021 23:25:14 +0000 (12:25 +1300)
committerSteve Sakoman <steve@sakoman.com>
Wed, 24 Mar 2021 14:30:32 +0000 (04:30 -1000)
We (correctly enough) pass in our AR to cmake via the toolchain file,
but unlike the other cross-compilation tools (CC, CXX, ranlib, etc),
cmake does not then do its own search in the PATH for our AR.

By using cmake's own find_program() to search the PATH,
make works as expected from the commandline, outside of bitbake.

Signed-off-by: Douglas Royds <douglas.royds@taitradio.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit e9180c9575f0723b51915a0da58452511b6b03bf)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
meta/classes/cmake.bbclass

index 8243f7ce8c80b4ee827de7a3b5bda83e7918af70..af6a8c4395087d2bea42633818bf65ba924fb4e1 100644 (file)
@@ -102,7 +102,8 @@ set( CMAKE_CXX_COMPILER ${OECMAKE_CXX_COMPILER} )
 set( CMAKE_C_COMPILER_LAUNCHER ${OECMAKE_C_COMPILER_LAUNCHER} )
 set( CMAKE_CXX_COMPILER_LAUNCHER ${OECMAKE_CXX_COMPILER_LAUNCHER} )
 set( CMAKE_ASM_COMPILER ${OECMAKE_C_COMPILER} )
-set( CMAKE_AR ${OECMAKE_AR} CACHE FILEPATH "Archiver" )
+find_program( CMAKE_AR ${OECMAKE_AR} DOC "Archiver" REQUIRED )
+
 set( CMAKE_C_FLAGS "${OECMAKE_C_FLAGS}" CACHE STRING "CFLAGS" )
 set( CMAKE_CXX_FLAGS "${OECMAKE_CXX_FLAGS}" CACHE STRING "CXXFLAGS" )
 set( CMAKE_ASM_FLAGS "${OECMAKE_C_FLAGS}" CACHE STRING "ASM FLAGS" )