File gcc-enable-lto.patch of Package chromium
Index: chromium-120.0.6099.18/build/config/BUILDCONFIG.gn
===================================================================
--- chromium-120.0.6099.18.orig/build/config/BUILDCONFIG.gn
+++ chromium-120.0.6099.18/build/config/BUILDCONFIG.gn
@@ -135,6 +135,8 @@ declare_args() {
# set "is_official_build" to true for any build intended to ship to end-users.
is_official_build = false
+ gcc_lto = false
+
# Set to true when compiling with the Clang compiler.
is_clang = current_os != "linux" ||
(current_cpu != "s390x" && current_cpu != "s390" &&
@@ -354,6 +356,12 @@ default_compiler_configs = [
"//build/config/sanitizers:default_sanitizer_flags",
]
+if (gcc_lto) {
+ default_compiler_configs += [
+ "//build/config/compiler:gcc_lto",
+ ]
+}
+
if (is_win) {
default_compiler_configs += [
"//build/config/win:default_cfg_compiler",
Index: chromium-120.0.6099.18/build/config/compiler/BUILD.gn
===================================================================
--- chromium-120.0.6099.18.orig/build/config/compiler/BUILD.gn
+++ chromium-120.0.6099.18/build/config/compiler/BUILD.gn
@@ -2342,6 +2342,10 @@ if (is_win) {
common_optimize_on_cflags += [ "-fno-math-errno" ]
}
+config("gcc_lto") {
+ cflags = [ "-flto" ]
+}
+
config("default_stack_frames") {
if (!is_win) {
if (enable_frame_pointers) {
Index: chromium-120.0.6099.18/sandbox/linux/BUILD.gn
===================================================================
--- chromium-120.0.6099.18.orig/sandbox/linux/BUILD.gn
+++ chromium-120.0.6099.18/sandbox/linux/BUILD.gn
@@ -253,6 +253,9 @@ component("seccomp_bpf") {
"//build:chromeos_buildflags",
"//sandbox:sandbox_buildflags",
]
+ if (gcc_lto) {
+ configs -= [ "//build/config/compiler:gcc_lto" ]
+ }
if (is_android) {
sources += [
Index: chromium-120.0.6099.18/base/BUILD.gn
===================================================================
--- chromium-120.0.6099.18.orig/base/BUILD.gn
+++ chromium-120.0.6099.18/base/BUILD.gn
@@ -3561,6 +3561,10 @@
sources += [ "location_unittest.cc" ]
}
+ if (gcc_lto) {
+ configs -= [ "//build/config/compiler:gcc_lto" ]
+ }
+
if (build_rust_base_conversions) {
sources += [
"containers/span_rust_unittest.cc",