diff --git a/deps/Boost/Boost.cmake b/deps/Boost/Boost.cmake index 2d276b3188..f48a9359f2 100644 --- a/deps/Boost/Boost.cmake +++ b/deps/Boost/Boost.cmake @@ -123,6 +123,8 @@ set(_build_cmd ${_build_cmd} link=${_link} threading=multi boost.locale.icu=off + boost.locale.iconv=on + "-sICONV_PATH=${DESTDIR}/usr/local/" --disable-icu ${_boost_variants} stage) diff --git a/deps/CMakeLists.txt b/deps/CMakeLists.txt index 4084b320f8..5bf531056a 100644 --- a/deps/CMakeLists.txt +++ b/deps/CMakeLists.txt @@ -164,6 +164,7 @@ if (DEP_MSAN) include(MSan_Deps/LLVM/LLVM.cmake) include(MSan_Deps/Mesa3D/Mesa3D.cmake) include(MSan_Deps/fontconfig/fontconfig.cmake) + include(MSan_Deps/iconv/iconv.cmake) set(_msan_linker_flags "-fsanitize=memory") if (DEP_MSAN_RECOVERY) @@ -266,7 +267,7 @@ set(_dep_list # endif() if (DEP_MSAN) - list(APPEND _dep_list "dep_LLVM;dep_Mesa3D;dep_fontconfig;dep_Chromium_Libs") + list(APPEND _dep_list "dep_LLVM;dep_Mesa3D;dep_fontconfig;dep_Chromium_Libs;dep_iconv") endif () add_custom_target(deps ALL DEPENDS ${_dep_list}) diff --git a/deps/MSan_Deps/iconv/iconv.cmake b/deps/MSan_Deps/iconv/iconv.cmake new file mode 100644 index 0000000000..5e289cfefc --- /dev/null +++ b/deps/MSan_Deps/iconv/iconv.cmake @@ -0,0 +1,14 @@ + +ExternalProject_Add(dep_iconv + EXCLUDE_FROM_ALL ON + URL "https://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.16.tar.gz" + URL_HASH SHA256=e6a1b1b589654277ee790cce3734f07876ac4ccfaecbee8afa0b649cf529cc04 + DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/iconv + BUILD_IN_SOURCE ON + CONFIGURE_COMMAND ./configure + "--prefix=${DESTDIR}/usr/local" + "${MSAN_CMAKE_C_FLAGS}" + "${MSAN_CMAKE_LD_FLAGS}" + BUILD_COMMAND make "-j${NPROC}" + INSTALL_COMMAND make install +)