From 24a34d44c81bb64ec3390d5ce9d3711c652c0db1 Mon Sep 17 00:00:00 2001 From: Than Ngo Date: Fri, 6 Sep 2024 12:47:01 +0200 Subject: [PATCH] - fix build error and disable build warnings on ppc64le - drop obsolete patches --- ...low-enabling-vulkan-on-ozone-wayland.patch | 11 ---- chromium-127-crabbyavif.patch | 38 ------------ chromium-127-ninja-1.21.1-deps-part0.patch | 44 ------------- chromium-127-ninja-1.21.1-deps-part1.patch | 62 ------------------- chromium-127-ninja-1.21.1-deps-part2.patch | 37 ----------- chromium-127-ninja-1.21.1-deps-part3.patch | 49 --------------- chromium.spec | 22 +++---- fix-swiftshader-compile.patch | 26 -------- 8 files changed, 7 insertions(+), 282 deletions(-) delete mode 100644 chromium-127-allow-enabling-vulkan-on-ozone-wayland.patch delete mode 100644 chromium-127-crabbyavif.patch delete mode 100644 chromium-127-ninja-1.21.1-deps-part0.patch delete mode 100644 chromium-127-ninja-1.21.1-deps-part1.patch delete mode 100644 chromium-127-ninja-1.21.1-deps-part2.patch delete mode 100644 chromium-127-ninja-1.21.1-deps-part3.patch delete mode 100644 fix-swiftshader-compile.patch diff --git a/chromium-127-allow-enabling-vulkan-on-ozone-wayland.patch b/chromium-127-allow-enabling-vulkan-on-ozone-wayland.patch deleted file mode 100644 index 9c35a401..00000000 --- a/chromium-127-allow-enabling-vulkan-on-ozone-wayland.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-127.0.6533.88/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc.me chromium-127.0.6533.88/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc ---- chromium-127.0.6533.88/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc.me 2024-08-06 17:38:26.560468274 +0200 -+++ chromium-127.0.6533.88/ui/ozone/platform/wayland/gpu/wayland_surface_factory.cc 2024-08-06 17:39:00.137139610 +0200 -@@ -214,6 +214,7 @@ WaylandSurfaceFactory::GetAllowedGLImple - impls.emplace_back(gl::ANGLEImplementation::kOpenGL); - impls.emplace_back(gl::ANGLEImplementation::kOpenGLES); - impls.emplace_back(gl::ANGLEImplementation::kSwiftShader); -+ impls.emplace_back(gl::ANGLEImplementation::kVulkan); - impls.emplace_back(gl::kGLImplementationEGLGLES2); - } - return impls; diff --git a/chromium-127-crabbyavif.patch b/chromium-127-crabbyavif.patch deleted file mode 100644 index a72200e6..00000000 --- a/chromium-127-crabbyavif.patch +++ /dev/null @@ -1,38 +0,0 @@ -commit 89dcd2d419755421290f85e32617acabdd81cac1 -Author: lauren n. liberda -Date: Thu Jun 20 18:55:57 2024 +0000 - - unbundle: add missing dav1d targets - - fixes "ERROR Unresolved dependencies. - //third_party/crabbyavif:crabbyavif_dav1d_bindings(//build/toolchain/linux/unbundle:default) - needs //third_party/dav1d:dav1d_config(//build/toolchain/linux/unbundle:default) - //third_party/crabbyavif:crabbyavif_dav1d_bindings(//build/toolchain/linux/unbundle:default) - needs //third_party/dav1d:dav1d_headers(//build/toolchain/linux/unbundle:default)" - - Change-Id: I85442e5fb67a804985354570fba453cc619c83d7 - Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5642761 - Reviewed-by: Lei Zhang - Reviewed-by: Thomas Anderson - Commit-Queue: Thomas Anderson - Cr-Commit-Position: refs/heads/main@{#1317534} - -diff --git a/build/linux/unbundle/dav1d.gn b/build/linux/unbundle/dav1d.gn -index 3d65158bc6144..a6d005a6622e3 100644 ---- a/build/linux/unbundle/dav1d.gn -+++ b/build/linux/unbundle/dav1d.gn -@@ -21,3 +21,14 @@ source_set("dav1d") { - deps = [ ":dav1d_shim" ] - public_configs = [ ":system_dav1d" ] - } -+ -+group("dav1d_headers") { -+ public_deps = [ ":dav1d_shim" ] -+} -+ -+config("dav1d_config") { -+ configs = [ -+ ":system_dav1d", -+ ":dav1d_shim_config", -+ ] -+} diff --git a/chromium-127-ninja-1.21.1-deps-part0.patch b/chromium-127-ninja-1.21.1-deps-part0.patch deleted file mode 100644 index 52581fde..00000000 --- a/chromium-127-ninja-1.21.1-deps-part0.patch +++ /dev/null @@ -1,44 +0,0 @@ -commit 4ca70656fde83d2db6ed5a8ac9ec9e7443846924 -Author: Lei Zhang -Date: Wed Jun 26 16:35:34 2024 +0000 - - Move chrome/browser/ui:webui_name_variants to public_deps - - The chrome/browser/ui build target contains webui_contents_wrapper.h, - which included the generated webui_name_variants.h header. For this to - work correctly, the build system must process the webui_name_variants - target first and generate webui_name_variants.h. To do this reliably, - without having to depend on webui_name_variants in all targets that - transitively include webui_contents_wrapper.h, make it a public_deps. - - Bug: 40253918, 346711540, 346699817, 345645751 - Change-Id: I6e0b573427cda1b2b408702f139b2c9e83f05045 - Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5646245 - Reviewed-by: Anthony Vallée-Dubois - Commit-Queue: Lei Zhang - Cr-Commit-Position: refs/heads/main@{#1319828} - -diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn -index 46648a4c2194e..0883714163a31 100644 ---- a/chrome/browser/ui/BUILD.gn -+++ b/chrome/browser/ui/BUILD.gn -@@ -6436,7 +6436,6 @@ static_library("ui") { - } - - deps += [ -- ":webui_name_variants", - "side_search:side_search_tab_data_proto", - "//base", - "//chrome/browser:main_extra_parts", -@@ -6495,7 +6494,10 @@ static_library("ui") { - "//ui/lottie", - "//ui/views:buildflags", - ] -- public_deps += [ "//ui/base/dragdrop/mojom:mojom_headers" ] -+ public_deps += [ -+ ":webui_name_variants", -+ "//ui/base/dragdrop/mojom:mojom_headers", -+ ] - - allow_circular_includes_from += [ "//chrome/browser/ui/views" ] - diff --git a/chromium-127-ninja-1.21.1-deps-part1.patch b/chromium-127-ninja-1.21.1-deps-part1.patch deleted file mode 100644 index 6d62b32d..00000000 --- a/chromium-127-ninja-1.21.1-deps-part1.patch +++ /dev/null @@ -1,62 +0,0 @@ -commit 50d63ffee3f7f1b1b9303363742ad8ebbfec31fa -Author: Lei Zhang -Date: Wed Jun 26 21:27:51 2024 +0000 - - Make more deps entries public_deps in chrome/browser/ui/BUILD.gn - - The chrome/browser/ui build target includes several buildflag headers. - For this to work correctly, the build system must be able to generate - the buildflag headers first. To do this reliably, without having to - depend on buildflag targets in all targets that transitively include the - headers that includes buildflag heaers, make these dependencies - public_deps. - - For //components/paint_preview/buildflags, remove the deps entry, as it - is already in public_deps. - - Bug: 40253918, 346711540, 346699817, 345645751 - Change-Id: I00e78a430f2e99aa3732406882b352d31e3d7da7 - Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5647662 - Commit-Queue: Lei Zhang - Reviewed-by: Peter Kasting - Cr-Commit-Position: refs/heads/main@{#1320033} - -diff --git a/chrome/browser/ui/BUILD.gn b/chrome/browser/ui/BUILD.gn -index bc6a7c03ecd1c..74f92f0431494 100644 ---- a/chrome/browser/ui/BUILD.gn -+++ b/chrome/browser/ui/BUILD.gn -@@ -415,8 +415,10 @@ static_library("ui") { - "//chrome/browser/ui/tabs:tab_enums", - "//components/cross_device/logging", - "//components/dom_distiller/core", -+ "//components/enterprise/buildflags", - "//components/paint_preview/buildflags", - "//components/safe_browsing:buildflags", -+ "//components/segmentation_platform/public", - "//components/sync", - "//components/sync_user_events", - "//components/translate/content/browser", -@@ -533,7 +535,6 @@ static_library("ui") { - "//components/embedder_support:browser_util", - "//components/encrypted_messages:encrypted_message_proto", - "//components/enterprise", -- "//components/enterprise/buildflags:buildflags", - "//components/error_page/content/browser", - "//components/facilitated_payments/core/features", - "//components/favicon/content", -@@ -644,7 +645,6 @@ static_library("ui") { - "//components/security_interstitials/core:unsafe_resource", - "//components/security_state/content", - "//components/security_state/core", -- "//components/segmentation_platform/public", - "//components/send_tab_to_self", - "//components/sessions", - "//components/sharing_message", -@@ -2119,7 +2119,6 @@ static_library("ui") { - "//components/omnibox/browser:mojo_bindings", - "//components/page_load_metrics/browser", - "//components/paint_preview/browser", -- "//components/paint_preview/buildflags", - "//components/paint_preview/common", - "//components/paint_preview/public", - "//components/password_manager/content/common", diff --git a/chromium-127-ninja-1.21.1-deps-part2.patch b/chromium-127-ninja-1.21.1-deps-part2.patch deleted file mode 100644 index 8cfce7a1..00000000 --- a/chromium-127-ninja-1.21.1-deps-part2.patch +++ /dev/null @@ -1,37 +0,0 @@ -commit 2c101186b60ed50f2ba4feaa2e963bd841bcca47 -Author: Takuto Ikuta -Date: Fri Jun 21 06:23:27 2024 +0000 - - chrome/browser: add missing dependency - - This is to fix build error due to missing dependency when we update - ninja to 1.12. - e.g. https://ci.chromium.org/ui/p/chromium/builders/build/linux-build-perf-no-rbe/1690/overview - - Bug: 346711540, 346699817, 345645751, 40253918 - Change-Id: Ife0a4e09969a4ad2e61dfc1598c9a63ac0b2abd5 - Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5641516 - Reviewed-by: Anthony Vallée-Dubois - Commit-Queue: Takuto Ikuta - Auto-Submit: Takuto Ikuta - Reviewed-by: Lei Zhang - Cr-Commit-Position: refs/heads/main@{#1317790} - -diff --git a/chrome/browser/ui/views/side_panel/BUILD.gn b/chrome/browser/ui/views/side_panel/BUILD.gn -index 96f2c30a6dd22..2957730277a29 100644 ---- a/chrome/browser/ui/views/side_panel/BUILD.gn -+++ b/chrome/browser/ui/views/side_panel/BUILD.gn -@@ -201,5 +201,13 @@ source_set("side_panel") { - "//ui/gfx:color_utils", - "//ui/gfx/geometry:geometry_skia", - "//ui/webui", -+ -+ # TODO(crbug.com/346711540,crbug.com/346699817,crbug.com/345645751): -+ # Use //chrome/browser/ui instead after fixing cyclic dependency. -+ "//chrome/browser/ui:webui_name_variants", -+ "//components/enterprise/buildflags", -+ "//components/paint_preview/buildflags", -+ "//components/segmentation_platform/public/proto", -+ "//components/webapps/common:mojo_bindings", - ] - } diff --git a/chromium-127-ninja-1.21.1-deps-part3.patch b/chromium-127-ninja-1.21.1-deps-part3.patch deleted file mode 100644 index bfb46d97..00000000 --- a/chromium-127-ninja-1.21.1-deps-part3.patch +++ /dev/null @@ -1,49 +0,0 @@ -commit f2b43c18b8ecfc3ddc49c42c062d796c8b563984 -Author: Takuto Ikuta -Date: Wed Jul 3 09:00:47 2024 +0000 - - chrome/browser/ui: add missing dependency - - This is to fix build error due to missing dependency when we update - ninja to 1.12. - e.g. https://ci.chromium.org/ui/p/chromium/builders/build.shadow/win-build-perf-developer/1/overview - - Bug: 40253918, 345645751, 346694160, 346709958, 346707816 - Change-Id: I3ede8e345aef5d6d2d8bf5b155601650828bc817 - Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5644627 - Reviewed-by: Hidehiko Abe - Auto-Submit: Takuto Ikuta - Commit-Queue: Takuto Ikuta - Reviewed-by: Lei Zhang - Cr-Commit-Position: refs/heads/main@{#1322655} - -diff --git a/chrome/browser/ui/views/side_panel/BUILD.gn b/chrome/browser/ui/views/side_panel/BUILD.gn -index 2957730277a29..2680a77d855d5 100644 ---- a/chrome/browser/ui/views/side_panel/BUILD.gn -+++ b/chrome/browser/ui/views/side_panel/BUILD.gn -@@ -202,12 +202,24 @@ source_set("side_panel") { - "//ui/gfx/geometry:geometry_skia", - "//ui/webui", - -- # TODO(crbug.com/346711540,crbug.com/346699817,crbug.com/345645751): -+ # TODO(crbug.com/345645751): Use //chrome/browser instead after fixing cyclic dependency. -+ "//components/enterprise/common/proto:connectors_proto", -+ -+ # TODO(crbug.com/346711540,crbug.com/346699817,crbug.com/345645751, -+ # crbug.com/346694160,crbug.com/346709958,crbug.com/346707816): - # Use //chrome/browser/ui instead after fixing cyclic dependency. -+ "//chrome/browser/cart:mojo_bindings", -+ "//chrome/browser/companion/visual_query", - "//chrome/browser/ui:webui_name_variants", -+ "//chrome/browser/ui/webui/side_panel/bookmarks:mojo_bindings", -+ "//chrome/browser/ui/webui/side_panel/customize_chrome:mojo_bindings", -+ "//chrome/browser/ui/webui/side_panel/reading_list:mojo_bindings", - "//components/enterprise/buildflags", -+ "//components/page_image_service/mojom:mojo_bindings", - "//components/paint_preview/buildflags", - "//components/segmentation_platform/public/proto", -+ "//components/user_education/webui", - "//components/webapps/common:mojo_bindings", -+ "//ui/webui/resources/cr_components/commerce:mojo_bindings", - ] - } diff --git a/chromium.spec b/chromium.spec index 944138a5..62312a54 100644 --- a/chromium.spec +++ b/chromium.spec @@ -415,7 +415,10 @@ Patch379: 0001-third_party-lss-Don-t-look-for-mmap2-on-ppc64.patch Patch380: 0001-third_party-pffft-Include-altivec.h-on-ppc64-with-SI.patch Patch381: 0002-Add-PPC64-generated-files-for-boringssl.patch Patch382: 0002-third_party-lss-kernel-structs.patch + +# error: undefined symbol: llvm::MCAsmInfoXCOFF::MCAsmInfoXCOFF() Patch383: 0001-swiftshader-fix-build.patch + Patch384: Rtc_base-system-arch.h-PPC.patch Patch385: 0002-Include-cstddef-to-fix-build.patch @@ -459,9 +462,6 @@ Patch412: add-ppc64-architecture-to-extensions.diff # Suppress harmless compiler warning messages that appear on ppc64 due to arch-specific warning flags being passed Patch413: fix-unknown-warning-option-messages.diff -# error: undefined symbol: llvm::MCAsmInfoXCOFF::MCAsmInfoXCOFF() -Patch414: fix-swiftshader-compile.patch - # upstream patches # Use chromium-latest.py to generate clean tarball from released build tarballs, found here: @@ -1137,7 +1137,6 @@ Qt6 UI for chromium. %patch -P373 -p1 -b .0007-sandbox-linux-add-ppc64-stat %patch -P374 -p1 -b .Sandbox-linux-services-credentials.cc-PPC %patch -P375 -p1 -b .0008-sandbox-fix-ppc64le-glibc234 - %patch -P376 -p1 -b .0001-third_party-angle-Include-missing-header-cstddef-in- %patch -P377 -p1 -b .0001-Add-PPC64-support-for-boringssl %patch -P378 -p1 -b .0001-third_party-libvpx-Properly-generate-gni-on-ppc64 @@ -1147,23 +1146,17 @@ Qt6 UI for chromium. %patch -P382 -p1 -b .0002-third_party-lss-kernel-structs %patch -P383 -p1 -b .0001-swiftshader-fix-build %patch -P384 -p1 -b .Rtc_base-system-arch.h-PPC - %patch -P385 -p1 -b .0002-Include-cstddef-to-fix-build %patch -P386 -p1 -b .0004-third_party-crashpad-port-curl-transport-ppc64 - %patch -P387 -p1 -b .HACK-third_party-libvpx-use-generic-gnu %patch -P388 -p1 -b .HACK-debian-clang-disable-skia-musttail %patch -P389 -p1 -b .HACK-debian-clang-disable-base-musttail - %patch -P390 -p1 -b .0001-Add-ppc64-target-to-libaom %patch -P391 -p1 -b .0001-Add-pregenerated-config-for-libaom-on-ppc64 - %patch -P392 -p1 -b .0002-third_party-libvpx-Remove-bad-ppc64-config %patch -P393 -p1 -b .0003-third_party-libvpx-Add-ppc64-generated-config %patch -P394 -p1 -b .0004-third_party-libvpx-work-around-ambiguous-vsx - %patch -P395 -p1 -b .skia-vsx-instructions - %patch -P396 -p1 -b .0001-Implement-support-for-ppc64-on-Linux %patch -P397 -p1 -b .0001-Implement-support-for-PPC64-on-Linux %patch -P398 -p1 -b .0001-Force-baseline-POWER8-AltiVec-VSX-CPU-features-when- @@ -1176,17 +1169,12 @@ Qt6 UI for chromium. %patch -P405 -p1 -b .memory-allocator-dcheck-assert-fix %patch -P406 -p1 -b .fix-different-data-layouts %patch -P407 -p1 -b .0002-Add-ppc64-trap-instructions - %patch -P408 -p1 -b .fix-ppc64-linux-syscalls-headers %patch -P409 -p1 -b .use-sysconf-page-size-on-ppc64 - %patch -P410 -p1 -b .dawn-fix-typos %patch -P411 -p1 -b .dawn-fix-ppc64le-detection - %patch -P412 -p1 -b .add-ppc64-architecture-to-extensions - %patch -P413 -p1 -b .fix-unknown-warning-option-messages -%patch -P414 -p1 -b .fix-swiftshader-compile %endif # Change shebang in all relevant files in this directory and all subdirectories @@ -1287,6 +1275,10 @@ CFLAGS="$FLAGS" CXXFLAGS="$FLAGS" %endif +%ifarch ppc64le +CXXFLAGS+=' -faltivec-src-compat=mixed -Wno-deprecated-altivec-src-compat' +%endif + # reduce the size of relocations %if 0%{?fedora} || 0%{?rhel} > 9 LDFLAGS="$LDFLAGS -Wl,-z,pack-relative-relocs" diff --git a/fix-swiftshader-compile.patch b/fix-swiftshader-compile.patch deleted file mode 100644 index 5411a0d4..00000000 --- a/fix-swiftshader-compile.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- chromium-101.0.4951.54/third_party/swiftshader/third_party/llvm-10.0/BUILD.gn.orig 2022-05-15 10:30:50.887333316 +0200 -+++ chromium-101.0.4951.54/third_party/swiftshader/third_party/llvm-10.0/BUILD.gn 2022-05-15 10:31:43.477318032 +0200 -@@ -133,7 +133,6 @@ swiftshader_llvm_source_set("swiftshader_llvm") { - if (is_ubsan_vptr) { - sources = [ - "llvm/lib/MC/MCWasmObjectTargetWriter.cpp", -- "llvm/lib/MC/MCXCOFFObjectTargetWriter.cpp", - "llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp", - "llvm/lib/Target/TargetIntrinsicInfo.cpp", - ] -@@ -583,6 +582,7 @@ swiftshader_llvm_source_set("swiftshader_llvm_most") { - "llvm/lib/MC/MCAsmInfoCOFF.cpp", - "llvm/lib/MC/MCAsmInfoDarwin.cpp", - "llvm/lib/MC/MCAsmInfoELF.cpp", -+ "llvm/lib/MC/MCAsmInfoXCOFF.cpp", - "llvm/lib/MC/MCAsmMacro.cpp", - "llvm/lib/MC/MCAsmStreamer.cpp", - "llvm/lib/MC/MCAssembler.cpp", -@@ -637,6 +637,7 @@ swiftshader_llvm_source_set("swiftshader_llvm_most") { - "llvm/lib/MC/MCWin64EH.cpp", - "llvm/lib/MC/MCWinCOFFStreamer.cpp", - "llvm/lib/MC/MCWinEH.cpp", -+ "llvm/lib/MC/MCXCOFFObjectTargetWriter.cpp", - "llvm/lib/MC/MCXCOFFStreamer.cpp", - "llvm/lib/MC/MachObjectWriter.cpp", - "llvm/lib/MC/StringTableBuilder.cpp",