diff options
author | fuzzard <fuzzard@kodi.tv> | 2021-11-17 19:49:00 +1000 |
---|---|---|
committer | fuzzard <fuzzard@kodi.tv> | 2021-11-27 17:07:49 +1000 |
commit | 74c01b3774eb849f535d8a1deab7c101fac0ed9a (patch) | |
tree | 2aa7396bd4e4be5369cfcbf855e06afe0185f3fc /CMakeLists.txt | |
parent | 9bf56e0cbe7afd1ff29d5f4d7b68e8e301c7e5d5 (diff) |
[cmake] Fix android link failure fstrcmp ordering
Building android kodi on macos host runs across linker failure for libkodi target.
Avoid by adding explicit fstrcmp lib prior to core_DEPENDS in whole_archive macro
ld: error: undefined symbol: fstrcmp
>>> referenced by StringUtils.cpp:1716 (/Users/brent/Dev/android/xbmc/utils/StringUtils.cpp:1716)
>>> StringUtils.cpp.o:(StringUtils::CompareFuzzy(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)) in archive build/utils/utils.a
>>> referenced by Scraper.cpp:991 (/Users/brent/Dev/android/xbmc/addons/Scraper.cpp:991)
>>> Scraper.cpp.o:(ADDON::CScraper::FindMovie(XFILE::CCurlFile&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, int, bool)) in archive build/addons/addons.a
>>> referenced by Util.cpp:1418 (/Users/brent/Dev/android/xbmc/Util.cpp:1418)
>>> Util.cpp.o:(CUtil::AlbumRelevance(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)) in archive build/xbmc/xbmc.a
>>> referenced 1 more times
>>> did you mean: strcmp
>>> defined in: /Library/Android/sdk/ndk/23.1.7779620/toolchains/llvm/prebuilt/darwin-x86_64/bin/../sysroot/usr/lib/aarch64-linux-android/31/libc.so
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libkodi.so] Error 1
make[1]: *** [CMakeFiles/kodi.dir/all] Error 2
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index cb5d0854c8..b548976b0e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -350,7 +350,7 @@ else() endif() endif() add_dependencies(${APP_NAME_LC} ${APP_NAME_LC}-libraries export-files pack-skins) -whole_archive(_MAIN_LIBRARIES ${core_DEPENDS}) +whole_archive(_MAIN_LIBRARIES ${FSTRCMP_LIBRARY} ${core_DEPENDS}) target_link_libraries(${APP_NAME_LC} ${_MAIN_LIBRARIES} lib${APP_NAME_LC} ${DEPLIBS}) unset(_MAIN_LIBRARIES) |