summaryrefslogtreecommitdiff
path: root/chromium-121-rust-clang_lib.patch
blob: 0701fd2059ad0c91bfdda355d6c8fd5b54452544 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
From ce943790ea147d492f317097eb707745f78193a1 Mon Sep 17 00:00:00 2001
From: misaka00251 <liuxin@iscas.ac.cn>
Date: Fri, 29 Mar 2024 15:12:35 +0800
Subject: [PATCH] Fix rust clang lib for openEuler

---
 build/config/clang/BUILD.gn | 31 +++++++++++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

diff --git a/build/config/clang/BUILD.gn b/build/config/clang/BUILD.gn
index d3054d1..8b956ed 100644
--- a/build/config/clang/BUILD.gn
+++ b/build/config/clang/BUILD.gn
@@ -105,6 +105,7 @@ template("clang_lib") {
       _prefix = "lib"
       _suffix = ""
       _ext = "a"
+      _libprefix = ""
       if (is_win) {
         _dir = "windows"
         _prefix = ""
@@ -120,7 +121,33 @@ template("clang_lib") {
         }
       } else if (is_apple) {
         _dir = "darwin"
-      } else if (is_linux || is_chromeos) {
+      } else if (is_linux) {
+        _libprefix = "64"
+        if (current_cpu == "x64") {
+          if (clang_version == "17") {
+            _dir = "x86_64-openEuler-linux-gnu"
+          } else {
+            _dir = "linux"
+            _suffix ="-x86_64"
+          }
+        } else if (current_cpu == "arm64") {
+          if (clang_version == "17") {
+            _dir = "aarch64-openEuler-linux-gnu"
+          } else {
+            _dir = "linux"
+            _suffix = "-aarch64"
+          }
+        } else if (current_cpu == "riscv64") {
+          if (clang_version == "17") {
+            _dir = "riscv64-openEuler-linux-gnu"
+          } else {
+            _dir = "linux"
+            _suffix = "-riscv64"
+          }
+        } else {
+          assert(false)  # Unhandled cpu type
+        }
+      } else if (is_chromeos) {
         if (current_cpu == "x64") {
           _dir = "x86_64-unknown-linux-gnu"
         } else if (current_cpu == "x86") {
@@ -159,7 +186,7 @@ template("clang_lib") {
         assert(false)  # Unhandled target platform
       }
 
-      _clang_lib_dir = "$clang_base_path/lib/clang/$clang_version/lib"
+      _clang_lib_dir = "$clang_base_path/lib${_libprefix}/clang/$clang_version/lib/"
       _lib_file = "${_prefix}clang_rt.${_libname}${_suffix}.${_ext}"
       libs = [ "$_clang_lib_dir/$_dir/$_lib_file" ]
     }
-- 
2.39.3 (Apple Git-146)