mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 18:32:13 +02:00
cmake: fix linking in multilib SDKs
CMake, in it's infinite wisdom, when searching for libraries (using
find_library) will look inside the libraries PREFIX/lib, PREFIX/lib32, and
PREFIX/lib64. In a multilib SDK more than one of these will exist (potentially
all three) and obviously for a given build configuration only one of those is
valid. This search path is hard-coded deep inside CMake but by setting
CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX we can bypass it and set an explicit
lib<SUFFIX> to use.
Do this by writing ${baselib} into the environment file, and then stripping
"lib" from this to obtain the suffix in the cmake-specific environment script,
which is then read in the CMake toolchain.
(From OE-Core rev: 47160a8c51310f2b40cabf4c1910b5df6e0a15d6)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
bf02f255de
commit
05f2bf7970
@@ -51,6 +51,7 @@ toolchain_create_sdk_env_script () {
|
||||
echo "export OECORE_NATIVE_SYSROOT=\"$sdkpathnative\"" >> $script
|
||||
echo 'export OECORE_TARGET_SYSROOT="$SDKTARGETSYSROOT"' >> $script
|
||||
echo "export OECORE_ACLOCAL_OPTS=\"-I $sdkpathnative/usr/share/aclocal\"" >> $script
|
||||
echo 'export OECORE_BASELIB="${baselib}"' >> $script
|
||||
echo 'unset command_not_found_handle' >> $script
|
||||
|
||||
toolchain_shared_env_script
|
||||
|
||||
Reference in New Issue
Block a user