summarylogtreecommitdiffstats
path: root/compiler-rt-16.patch
diff options
context:
space:
mode:
Diffstat (limited to 'compiler-rt-16.patch')
-rw-r--r--compiler-rt-16.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/compiler-rt-16.patch b/compiler-rt-16.patch
new file mode 100644
index 000000000000..e14829ad2987
--- /dev/null
+++ b/compiler-rt-16.patch
@@ -0,0 +1,36 @@
+diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
+index d4de2e0cca0..57359c32121 100644
+--- a/build/config/clang/BUILD.gn
++++ b/build/config/clang/BUILD.gn
+@@ -130,12 +130,15 @@ template("clang_lib") {
+ } 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
+ }
+@@ -166,6 +169,15 @@ template("clang_lib") {
+ assert(false) # Unhandled target platform
+ }
+
++ # Bit of a hack to make this find builtins from compiler-rt 16
++ if (is_linux || is_chromeos) {
++ if (clang_version == "16") {
++ _dir = "linux"
++ } else {
++ _suffix = ""
++ }
++ }
++
+ _clang_lib_dir = "$clang_base_path/lib/clang/$clang_version/lib"
+ _lib_file = "${_prefix}clang_rt.${_libname}${_suffix}.${_ext}"
+ libs = [ "$_clang_lib_dir/$_dir/$_lib_file" ]