summaryrefslogtreecommitdiff
path: root/www/chromium/files/extra-patch-llvm-port
diff options
context:
space:
mode:
Diffstat (limited to 'www/chromium/files/extra-patch-llvm-port')
-rw-r--r--www/chromium/files/extra-patch-llvm-port112
1 files changed, 108 insertions, 4 deletions
diff --git a/www/chromium/files/extra-patch-llvm-port b/www/chromium/files/extra-patch-llvm-port
index 1e59c7000b4c..a1ef24de0b17 100644
--- a/www/chromium/files/extra-patch-llvm-port
+++ b/www/chromium/files/extra-patch-llvm-port
@@ -1,6 +1,6 @@
---- build/toolchain/gcc_toolchain.gni.orig 2017-06-05 19:03:01 UTC
-+++ build/toolchain/gcc_toolchain.gni
-@@ -19,6 +19,11 @@ analyzer_wrapper =
+--- build/toolchain/gcc_toolchain.gni.orig 2018-06-13 00:10:02.000000000 +0200
++++ build/toolchain/gcc_toolchain.gni 2018-07-21 12:38:45.107087000 +0200
+@@ -25,6 +25,11 @@
rebase_path("//build/toolchain/clang_static_analyzer_wrapper.py",
root_build_dir) + " --mode=clang"
@@ -12,7 +12,22 @@
# This template defines a toolchain for something that works like gcc
# (including clang).
#
-@@ -548,13 +553,22 @@ template("clang_toolchain") {
+@@ -343,12 +348,12 @@
+ # We use slightly different arflags for AIX.
+ extra_arflags = "-r -c -s"
+ } else {
+- extra_arflags = "-r -c -s -D"
++ extra_arflags = "rcsD"
+ }
+
+ # Almost all targets build with //build/config/compiler:thin_archive which
+ # adds -T to arflags.
+- command = "$python_path \"$ar_wrapper\"$whitelist_flag --output={{output}} --ar=\"$ar\" \"{{arflags}} $extra_arflags\" @\"$rspfile\""
++ command = "$python_path \"$ar_wrapper\"$whitelist_flag --output={{output}} --ar=\"$ar\" {{arflags}} $extra_arflags @\"$rspfile\""
+ description = "AR {{output}}"
+ rspfile_content = "{{inputs}}"
+ outputs = [
+@@ -608,13 +613,22 @@
}
gcc_toolchain(target_name) {
@@ -42,3 +57,92 @@
forward_variables_from(invoker,
[
+--- build/config/compiler/BUILD.gn.orig 2018-06-13 00:10:02.000000000 +0200
++++ build/config/compiler/BUILD.gn 2018-07-21 12:57:03.823912000 +0200
+@@ -51,7 +51,7 @@
+ # only two architectures that are currently checked in). Turn this off when
+ # you are using a custom toolchain and need to control -B in cflags.
+ linux_use_bundled_binutils =
+- linux_use_bundled_binutils_override && is_linux &&
++ linux_use_bundled_binutils_override && (is_linux && !is_bsd) &&
+ (current_cpu == "x64" || current_cpu == "x86")
+ binutils_path = rebase_path("//third_party/binutils/Linux_x64/Release/bin",
+ root_build_dir)
+@@ -375,8 +375,6 @@
+ "-Wl,-z,relro",
+ ]
+ if (!using_sanitizer) {
+- ldflags += [ "-Wl,-z,defs" ]
+-
+ # Functions interposed by the sanitizers can make ld think
+ # that some libraries aren't needed when they actually are,
+ # http://crbug.com/234010. As workaround, disable --as-needed.
+@@ -467,7 +465,7 @@
+ # TODO(hans): Remove this once Clang generates better optimized debug info by
+ # default. https://crbug.com/765793
+ if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
+- target_os != "chromeos") {
++ target_os != "chromeos" && !is_bsd) {
+ cflags += [
+ "-Xclang",
+ "-mllvm",
+@@ -708,7 +706,7 @@
+ cflags += [ "-mtune=$arm_tune" ]
+ }
+ } else if (current_cpu == "arm64") {
+- if (is_clang && !is_android && !is_nacl && !is_fuchsia) {
++ if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd) {
+ cflags += [ "--target=aarch64-linux-gnu" ]
+ ldflags += [ "--target=aarch64-linux-gnu" ]
+ }
+@@ -1387,10 +1385,6 @@
+
+ # TODO(hans): https://crbug.com/766891
+ "-Wno-null-pointer-arithmetic",
+-
+- # Ignore warnings about MSVC optimization pragmas.
+- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314
+- "-Wno-ignored-pragma-optimize",
+ ]
+ if (llvm_force_head_revision) {
+ cflags += [
+@@ -1572,9 +1566,9 @@
+ if ((is_posix && !is_nacl) || is_fuchsia) {
+ # TODO(thomasanderson): Enable on ChromeOS builds once
+ # https://crbug.com/829956 is fixed.
+- if (default_toolchain != "//build/toolchain/cros:target") {
+- arflags = [ "-T" ]
+- }
++ # if (default_toolchain != "//build/toolchain/cros:target") {
++ # arflags = [ "-T" ]
++ # }
+ }
+ }
+
+@@ -2096,7 +2090,7 @@
+ # [1] crrev.com/a81d5ade0b043208e06ad71a38bcf9c348a1a52f
+ cflags += [ "-gdwarf-3" ]
+ }
+- cflags += [ "-g2" ]
++ cflags += [ "-g0" ]
+ }
+ if (use_debug_fission && !is_nacl) {
+ cflags += [ "-gsplit-dwarf" ]
+@@ -2110,7 +2104,7 @@
+ # DWARF info may be corrupt; offsets in a range list entry are in different
+ # sections" there. Maybe just a bug in nacl_switch_32.S.
+ if (!is_mac && !is_ios && !is_nacl && target_cpu != "x86" &&
+- (use_gold || use_lld)) {
++ (use_gold || use_lld) && !is_bsd) {
+ if (is_clang) {
+ # This flag enables the GNU-format pubnames and pubtypes sections,
+ # which lld needs in order to generate a correct GDB index.
+@@ -2207,7 +2201,7 @@
+ if (!is_win && fatal_linker_warnings &&
+ !(is_chromeos && current_cpu == "arm") &&
+ !(is_android && use_order_profiling) && !is_mac && !is_ios &&
+- current_os != "aix") {
++ current_os != "aix" && !is_bsd) {
+ # TODO(jochen): Enable this on chromeos on arm. http://crbug.com/356580
+ # TODO(lizeb,pasko): Fix link errors when linking with order_profiling=1
+ # crbug.com/485542