diff -ruN v8-0.106.0.orig/build/config/clang/BUILD.gn v8-0.106.0/build/config/clang/BUILD.gn --- a/v8-0.106.0.orig/build/config/clang/BUILD.gn 2024-11-10 19:22:12.986627534 +0800 +++ b/v8-0.106.0/build/config/clang/BUILD.gn 2024-11-10 19:26:08.207250856 +0800 @@ -192,12 +192,15 @@ } else if (is_linux || is_chromeos) { if (current_cpu == "x64") { _dir = "x86_64-unknown-linux-gnu" + _suffix = "-x86_64" } else if (current_cpu == "x86") { _dir = "i386-unknown-linux-gnu" + _suffix = "-i386" } else if (current_cpu == "arm") { _dir = "armv7-unknown-linux-gnueabihf" } else if (current_cpu == "arm64") { _dir = "aarch64-unknown-linux-gnu" + _suffix = "-aarch64" } else { assert(false) # Unhandled cpu type } @@ -228,7 +231,12 @@ assert(false) # Unhandled target platform } - _clang_lib_dir = "$clang_base_path/lib/clang/$clang_version/lib" + # Bit of a hack to make this find builtins from compiler-rt >= 16 + if (is_linux || is_chromeos) { + _dir = "linux" + } + + _clang_lib_dir = "$clang_base_path/lib64/clang/$clang_version/lib/linux" _lib_file = "${_prefix}clang_rt.${_libname}${_suffix}.${_ext}" libs = [ "$_clang_lib_dir/$_dir/$_lib_file" ] }