diff --git build/config/compiler/BUILD.gn build/config/compiler/BUILD.gn index 2673c6a79889..ca5726966ac0 100644 --- build/config/compiler/BUILD.gn +++ build/config/compiler/BUILD.gn @@ -443,7 +443,7 @@ config("compiler") { # chromeos binutils has been patched with the fix, so always use icf there. # The bug only affects x86 and x64, so we can still use ICF when targeting # other architectures. - if ((!is_android && linux_use_bundled_binutils) || is_chromeos || + if ((!is_android && linux_use_bundled_binutils && current_cpu != "x86") || is_chromeos || !(current_cpu == "x86" || current_cpu == "x64")) { ldflags += [ "-Wl,--icf=all" ] } diff --git chrome/browser/ui/libgtkui/gtk_util.cc chrome/browser/ui/libgtkui/gtk_util.cc index fc6ffb9d..f6c22e5 100644 --- chrome/browser/ui/libgtkui/gtk_util.cc +++ chrome/browser/ui/libgtkui/gtk_util.cc @@ -56,6 +56,7 @@ void CommonInitFromCommandLine(const base::CommandLine& command_line, } } +#if GTK_MAJOR_VERSION > 2 using GtkSetState = void (*)(GtkWidgetPath*, gint, GtkStateFlags); PROTECTED_MEMORY_SECTION base::ProtectedMemory _gtk_widget_path_iter_set_state; @@ -63,6 +64,7 @@ PROTECTED_MEMORY_SECTION base::ProtectedMemory using GtkSetObjectName = void (*)(GtkWidgetPath*, gint, const char*); PROTECTED_MEMORY_SECTION base::ProtectedMemory _gtk_widget_path_iter_set_object_name; +#endif } // namespace @@ -401,10 +403,12 @@ ScopedStyleContext AppendCssNodeToStyleContext(GtkStyleContext* context, NOTREACHED(); } } else { +#if GTK_MAJOR_VERSION > 2 static base::ProtectedMemory::Initializer init( &_gtk_widget_path_iter_set_object_name, reinterpret_cast(dlsym( GetGtkSharedLibrary(), "gtk_widget_path_iter_set_object_name"))); +#endif switch (part_type) { case CSS_NAME: { if (GtkVersionCheck(3, 20)) { @@ -449,6 +453,7 @@ ScopedStyleContext AppendCssNodeToStyleContext(GtkStyleContext* context, // widgets specially if they want to. gtk_widget_path_iter_add_class(path, -1, "chromium"); +#if GTK_MAJOR_VERSION > 2 if (GtkVersionCheck(3, 14)) { static base::ProtectedMemory::Initializer init( &_gtk_widget_path_iter_set_state, @@ -457,6 +462,7 @@ ScopedStyleContext AppendCssNodeToStyleContext(GtkStyleContext* context, DCHECK(*_gtk_widget_path_iter_set_state); base::UnsanitizedCfiCall(_gtk_widget_path_iter_set_state)(path, -1, state); } +#endif ScopedStyleContext child_context(gtk_style_context_new()); gtk_style_context_set_path(child_context, path);