summaryrefslogtreecommitdiff
path: root/www-client
diff options
context:
space:
mode:
Diffstat (limited to 'www-client')
-rw-r--r--www-client/chromium/chromium-100.0.4867.0.ebuild963
-rw-r--r--www-client/chromium/chromium-100.0.4896.12.ebuild964
-rw-r--r--www-client/chromium/chromium-101.0.4929.5.ebuild1013
-rw-r--r--www-client/chromium/chromium-101.0.4951.15.ebuild1011
-rw-r--r--www-client/chromium/chromium-102.0.5005.12.ebuild1015
-rw-r--r--www-client/chromium/chromium-103.0.5056.0.ebuild1015
-rw-r--r--www-client/chromium/chromium-73.0.3683.10.ebuild727
-rw-r--r--www-client/chromium/chromium-74.0.3702.0.ebuild733
-rw-r--r--www-client/chromium/chromium-75.0.3745.4.ebuild723
-rw-r--r--www-client/chromium/chromium-76.0.3783.0.ebuild722
-rw-r--r--www-client/chromium/chromium-76.0.3800.0.ebuild717
-rw-r--r--www-client/chromium/chromium-77.0.3824.6.ebuild725
-rw-r--r--www-client/chromium/chromium-78.0.3876.0.ebuild725
-rw-r--r--www-client/chromium/chromium-78.0.3880.4.ebuild718
-rw-r--r--www-client/chromium/chromium-78.0.3902.4.ebuild727
-rw-r--r--www-client/chromium/chromium-79.0.3921.0.ebuild731
-rw-r--r--www-client/chromium/chromium-80.0.3955.4.ebuild726
-rw-r--r--www-client/chromium/chromium-80.0.3970.5.ebuild728
-rw-r--r--www-client/chromium/chromium-81.0.4000.3.ebuild728
-rw-r--r--www-client/chromium/chromium-82.0.4056.3.ebuild732
-rw-r--r--www-client/chromium/chromium-83.0.4093.3.ebuild745
-rw-r--r--www-client/chromium/chromium-83.0.4100.3.ebuild744
-rw-r--r--www-client/chromium/chromium-83.0.4103.7.ebuild747
-rw-r--r--www-client/chromium/chromium-84.0.4115.5.ebuild752
-rw-r--r--www-client/chromium/chromium-84.0.4122.7.ebuild754
-rw-r--r--www-client/chromium/chromium-84.0.4136.5.ebuild748
-rw-r--r--www-client/chromium/chromium-84.0.4147.13.ebuild752
-rw-r--r--www-client/chromium/chromium-85.0.4164.2.ebuild754
-rw-r--r--www-client/chromium/chromium-85.0.4183.15.ebuild752
-rw-r--r--www-client/chromium/chromium-86.0.4214.2.ebuild757
-rw-r--r--www-client/chromium/chromium-87.0.4259.3.ebuild758
-rw-r--r--www-client/chromium/chromium-87.0.4263.3-r1.ebuild894
-rw-r--r--www-client/chromium/chromium-87.0.4263.3.ebuild760
-rw-r--r--www-client/chromium/chromium-87.0.4278.0.ebuild892
-rw-r--r--www-client/chromium/chromium-88.0.4298.4.ebuild905
-rw-r--r--www-client/chromium/chromium-88.0.4302.0.ebuild901
-rw-r--r--www-client/chromium/chromium-88.0.4324.11.ebuild907
-rw-r--r--www-client/chromium/chromium-89.0.4343.0.ebuild912
-rw-r--r--www-client/chromium/chromium-89.0.4381.6.ebuild894
-rw-r--r--www-client/chromium/chromium-90.0.4430.19.ebuild911
-rw-r--r--www-client/chromium/chromium-91.0.4442.4.ebuild910
-rw-r--r--www-client/chromium/chromium-91.0.4469.4.ebuild917
-rw-r--r--www-client/chromium/chromium-92.0.4503.0.ebuild919
-rw-r--r--www-client/chromium/chromium-92.0.4512.4.ebuild937
-rw-r--r--www-client/chromium/chromium-93.0.4535.3.ebuild939
-rw-r--r--www-client/chromium/chromium-93.0.4573.0.ebuild954
-rw-r--r--www-client/chromium/chromium-93.0.4577.8.ebuild941
-rw-r--r--www-client/chromium/chromium-94.0.4606.12.ebuild937
-rw-r--r--www-client/chromium/chromium-95.0.4628.3.ebuild935
-rw-r--r--www-client/chromium/chromium-96.0.4662.6.ebuild957
-rw-r--r--www-client/chromium/chromium-96.0.4664.18.ebuild952
-rw-r--r--www-client/chromium/chromium-97.0.4682.3.ebuild948
-rw-r--r--www-client/chromium/chromium-97.0.4688.2.ebuild947
-rw-r--r--www-client/chromium/chromium-98.0.4710.4.ebuild956
-rw-r--r--www-client/chromium/chromium-98.0.4750.0.ebuild964
-rw-r--r--www-client/chromium/chromium-99.0.4818.0.ebuild965
-rw-r--r--www-client/chromium/files/chromium-100-ByteSwapUintPtrT-constexpr.patch56
-rw-r--r--www-client/chromium/files/chromium-100-GLImplementationParts-constexpr.patch92
-rw-r--r--www-client/chromium/files/chromium-100-InMilliseconds-constexpr.patch97
-rw-r--r--www-client/chromium/files/chromium-100-LayoutUnit-constexpr.patch31
-rw-r--r--www-client/chromium/files/chromium-100-PartitionFreelistEntry-namespace.patch26
-rw-r--r--www-client/chromium/files/chromium-100-SCTHashdanceMetadata-move.patch35
-rw-r--r--www-client/chromium/files/chromium-100-compiler.patch220
-rw-r--r--www-client/chromium/files/chromium-100-macro-typo.patch29
-rw-r--r--www-client/chromium/files/chromium-100-sandbox-include.patch12
-rw-r--r--www-client/chromium/files/chromium-101-AccountInfo-noexcept.patch49
-rw-r--r--www-client/chromium/files/chromium-101-WebURLLoaderFactory-incomplete-type.patch26
-rw-r--r--www-client/chromium/files/chromium-101-libxml-unbundle.patch10
-rw-r--r--www-client/chromium/files/chromium-102-compiler.patch236
-rw-r--r--www-client/chromium/files/chromium-103-FrameLoadRequest-type.patch26
-rw-r--r--www-client/chromium/files/chromium-103-SubstringSetMatcher-packed.patch70
-rw-r--r--www-client/chromium/files/chromium-103-compiler.patch235
-rw-r--r--www-client/chromium/files/chromium-71-gcc-0.patch57
-rw-r--r--www-client/chromium/files/chromium-73-gcc-0.patch108
-rw-r--r--www-client/chromium/files/chromium-73-gcc-1.patch99
-rw-r--r--www-client/chromium/files/chromium-73-gcc-2.patch51
-rw-r--r--www-client/chromium/files/chromium-73-gcc-3.patch69
-rw-r--r--www-client/chromium/files/chromium-73-gcc-4.patch59
-rw-r--r--www-client/chromium/files/chromium-73-gcc-5.patch65
-rw-r--r--www-client/chromium/files/chromium-73-gcc-6.patch88
-rw-r--r--www-client/chromium/files/chromium-74-gcc.patch25
-rw-r--r--www-client/chromium/files/chromium-75-vaapi.patch254
-rw-r--r--www-client/chromium/files/chromium-76-arm64-skia.patch41
-rw-r--r--www-client/chromium/files/chromium-76-gcc-ambiguous-nodestructor.patch39
-rw-r--r--www-client/chromium/files/chromium-76-gcc-blink-constexpr.patch32
-rw-r--r--www-client/chromium/files/chromium-76-gcc-blink-namespace1.patch91
-rw-r--r--www-client/chromium/files/chromium-76-gcc-blink-namespace2.patch97
-rw-r--r--www-client/chromium/files/chromium-76-gcc-gl-init.patch33
-rw-r--r--www-client/chromium/files/chromium-76-gcc-include.patch10
-rw-r--r--www-client/chromium/files/chromium-76-gcc-noexcept.patch347
-rw-r--r--www-client/chromium/files/chromium-76-gcc-private.patch63
-rw-r--r--www-client/chromium/files/chromium-76-gcc-pure-virtual.patch50
-rw-r--r--www-client/chromium/files/chromium-76-gcc-uint32.patch30
-rw-r--r--www-client/chromium/files/chromium-76-gcc-vulkan.patch115
-rw-r--r--www-client/chromium/files/chromium-76-quiche.patch239
-rw-r--r--www-client/chromium/files/chromium-77-blink-include.patch28
-rw-r--r--www-client/chromium/files/chromium-77-clang.patch13
-rw-r--r--www-client/chromium/files/chromium-77-fix-gn-gen.patch11
-rw-r--r--www-client/chromium/files/chromium-77-gcc-abstract.patch61
-rw-r--r--www-client/chromium/files/chromium-77-gcc-include.patch56
-rw-r--r--www-client/chromium/files/chromium-77-std-string.patch130
-rw-r--r--www-client/chromium/files/chromium-77-system-hb.patch13
-rw-r--r--www-client/chromium/files/chromium-77-system-icu.patch20
-rw-r--r--www-client/chromium/files/chromium-78-include.patch13
-rw-r--r--www-client/chromium/files/chromium-79-gcc-protobuf-alignas.patch81
-rw-r--r--www-client/chromium/files/chromium-79-span-stlcompat.patch12
-rw-r--r--www-client/chromium/files/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch30
-rw-r--r--www-client/chromium/files/chromium-84-blink-disable-clang-format.patch33
-rw-r--r--www-client/chromium/files/chromium-86-ConsumeDurationNumber-constexpr.patch32
-rw-r--r--www-client/chromium/files/chromium-86-ImageMemoryBarrierData-init.patch31
-rw-r--r--www-client/chromium/files/chromium-86-compiler.patch159
-rw-r--r--www-client/chromium/files/chromium-86-nearby-explicit.patch25
-rw-r--r--www-client/chromium/files/chromium-86-nearby-include.patch24
-rw-r--r--www-client/chromium/files/chromium-87-CrossThreadPersistent-template.patch32
-rw-r--r--www-client/chromium/files/chromium-87-CursorFactory-include.patch36
-rw-r--r--www-client/chromium/files/chromium-87-SystemMemoryPressureEvaluator-namespace.patch70
-rw-r--r--www-client/chromium/files/chromium-87-Thumbnail-noexcept.patch46
-rw-r--r--www-client/chromium/files/chromium-87-anonymous-struct.patch61
-rw-r--r--www-client/chromium/files/chromium-87-compiler-r1.patch166
-rw-r--r--www-client/chromium/files/chromium-87-openscreen-crypto-include.patch11
-rw-r--r--www-client/chromium/files/chromium-87-ozone-deps.patch15
-rw-r--r--www-client/chromium/files/chromium-87-remotesyscall.patch13
-rw-r--r--www-client/chromium/files/chromium-87-std-max_align_t.patch43
-rw-r--r--www-client/chromium/files/chromium-87-thread_cache.patch25
-rw-r--r--www-client/chromium/files/chromium-88-angle-renderer.patch13
-rw-r--r--www-client/chromium/files/chromium-88-compiler.patch147
-rw-r--r--www-client/chromium/files/chromium-88-compositor-dcheck.patch13
-rw-r--r--www-client/chromium/files/chromium-88-dawn-include.patch12
-rw-r--r--www-client/chromium/files/chromium-88-dawn-size_t-std.patch13
-rw-r--r--www-client/chromium/files/chromium-88-gpu-internals-ozone.patch21
-rw-r--r--www-client/chromium/files/chromium-88-mediasource-uniqptrostream.patch22
-rw-r--r--www-client/chromium/files/chromium-88-pcscan-nonfinal.patch13
-rw-r--r--www-client/chromium/files/chromium-88-service-worker-registration-crash.patch14
-rw-r--r--www-client/chromium/files/chromium-88-system-icu.patch13
-rw-r--r--www-client/chromium/files/chromium-88-tree-formatter-include.patch14
-rw-r--r--www-client/chromium/files/chromium-89-CursorFactory-include.patch20
-rw-r--r--www-client/chromium/files/chromium-89-EnumTable-crash.patch71
-rw-r--r--www-client/chromium/files/chromium-89-angle-display.patch1747
-rw-r--r--www-client/chromium/files/chromium-89-compositor-dcheck.patch13
-rw-r--r--www-client/chromium/files/chromium-89-content-dcheck-uniqueptr.patch13
-rw-r--r--www-client/chromium/files/chromium-89-dawn-string-include.patch13
-rw-r--r--www-client/chromium/files/chromium-89-pcscan-include.patch12
-rw-r--r--www-client/chromium/files/chromium-89-quiche-uniqueptr.patch13
-rw-r--r--www-client/chromium/files/chromium-89-quiche-uniqueptr_r1.patch13
-rw-r--r--www-client/chromium/files/chromium-89-sstream.patch344
-rw-r--r--www-client/chromium/files/chromium-89-uigfx-image-skia.patch22
-rw-r--r--www-client/chromium/files/chromium-89-webui-config-include.patch12
-rw-r--r--www-client/chromium/files/chromium-90-blink-disable-clang-format.patch19
-rw-r--r--www-client/chromium/files/chromium-90-compositor-dcheck.patch13
-rw-r--r--www-client/chromium/files/chromium-90-disable-nomerge.patch13
-rw-r--r--www-client/chromium/files/chromium-90-langdetect-include.patch12
-rw-r--r--www-client/chromium/files/chromium-90-quantization-util-stdint.patch12
-rw-r--r--www-client/chromium/files/chromium-90-quiche-uniqueptr.patch13
-rw-r--r--www-client/chromium/files/chromium-90-ruy-include.patch24
-rw-r--r--www-client/chromium/files/chromium-91-clipboard-ozone.patch48
-rw-r--r--www-client/chromium/files/chromium-91-compiler-r1.patch165
-rw-r--r--www-client/chromium/files/chromium-91-compiler.patch154
-rw-r--r--www-client/chromium/files/chromium-91-disable-nomerge.patch13
-rw-r--r--www-client/chromium/files/chromium-91-libyuv-aarch64.patch91
-rw-r--r--www-client/chromium/files/chromium-92-ClassPropertyCaster-namespace.patch46
-rw-r--r--www-client/chromium/files/chromium-92-base_atomic_include.patch12
-rw-r--r--www-client/chromium/files/chromium-92-glibc-2.33.patch146
-rw-r--r--www-client/chromium/files/chromium-92-platform_thread-include.patch24
-rw-r--r--www-client/chromium/files/chromium-92-sql-cursor.patch231
-rw-r--r--www-client/chromium/files/chromium-93-AXPropertyNode-private.patch43
-rw-r--r--www-client/chromium/files/chromium-93-EnumTable-crash.patch79
-rw-r--r--www-client/chromium/files/chromium-93-cart-include.patch13
-rw-r--r--www-client/chromium/files/chromium-93-devtools-msg-dispatcher-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-dnsprefetch-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-ext-autoconfirm-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-gpu-ipc-include.patch13
-rw-r--r--www-client/chromium/files/chromium-93-hid-chooser-include.patch13
-rw-r--r--www-client/chromium/files/chromium-93-lang-prefs-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-login-detection-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-media-ffmpeg-type.patch36
-rw-r--r--www-client/chromium/files/chromium-93-media-history-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-net-http-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-payment-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-pdfium-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-phishing-classifier-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-pwdmgr-include-r1.patch12
-rw-r--r--www-client/chromium/files/chromium-93-pwdmgr-include.patch25
-rw-r--r--www-client/chromium/files/chromium-93-quiche-logging-include.patch13
-rw-r--r--www-client/chromium/files/chromium-93-site_settings_helper-initialzation.patch37
-rw-r--r--www-client/chromium/files/chromium-93-sms-fetcher-include.patch24
-rw-r--r--www-client/chromium/files/chromium-93-sql-virtual-cursor.patch231
-rw-r--r--www-client/chromium/files/chromium-93-tint-include.patch24
-rw-r--r--www-client/chromium/files/chromium-93-ui-event-include.patch13
-rw-r--r--www-client/chromium/files/chromium-93-url-loader-throttles-include.patch13
-rw-r--r--www-client/chromium/files/chromium-93-webapp-include.patch12
-rw-r--r--www-client/chromium/files/chromium-93-worksp-ext-include.patch37
-rw-r--r--www-client/chromium/files/chromium-94-ConversionStorageSql-lambda.patch31
-rw-r--r--www-client/chromium/files/chromium-94-CustomSpaces-include.patch24
-rw-r--r--www-client/chromium/files/chromium-94-compiler.patch218
-rw-r--r--www-client/chromium/files/chromium-94-sql-virtual-cursor.patch216
-rw-r--r--www-client/chromium/files/chromium-94-translate.patch98
-rw-r--r--www-client/chromium/files/chromium-95-hash_traits-include.patch30
-rw-r--r--www-client/chromium/files/chromium-95-libyuv-aarch64.patch31
-rw-r--r--www-client/chromium/files/chromium-95-libyuv-arm.patch13
-rw-r--r--www-client/chromium/files/chromium-95-text_fragments_utils-include.patch37
-rw-r--r--www-client/chromium/files/chromium-96-AppliedTextDecoration-include.patch25
-rw-r--r--www-client/chromium/files/chromium-96-EnumTable-crash.patch76
-rw-r--r--www-client/chromium/files/chromium-96-ax_platform-list-init.patch15
-rw-r--r--www-client/chromium/files/chromium-96-command_line-include.patch12
-rw-r--r--www-client/chromium/files/chromium-96-compiler.patch200
-rw-r--r--www-client/chromium/files/chromium-96-coupondb-include.patch13
-rw-r--r--www-client/chromium/files/chromium-96-drm_render_node_path_finder-include.patch12
-rw-r--r--www-client/chromium/files/chromium-96-restricted_cookie_manager-pair.patch13
-rw-r--r--www-client/chromium/files/chromium-96-template-friend.patch34
-rw-r--r--www-client/chromium/files/chromium-97-ScrollView-reference.patch23
-rw-r--r--www-client/chromium/files/chromium-97-arm-tflite-cast.patch26
-rw-r--r--www-client/chromium/files/chromium-97-shared_element_res-include.patch12
-rw-r--r--www-client/chromium/files/chromium-98-MiraclePtr-gcc-ice.patch91
-rw-r--r--www-client/chromium/files/chromium-98-breakpad-max.patch13
-rw-r--r--www-client/chromium/files/chromium-98-c++17-constexpr-1.patch65
-rw-r--r--www-client/chromium/files/chromium-98-compiler-r1.patch208
-rw-r--r--www-client/chromium/files/chromium-98-compiler.patch213
-rw-r--r--www-client/chromium/files/chromium-98-geometry-cubic_bezier-include.patch12
-rw-r--r--www-client/chromium/files/chromium-98-system-libdrm.patch34
-rw-r--r--www-client/chromium/files/chromium-99-dnd-3381679.patch19
-rw-r--r--www-client/chromium/files/chromium-99-dns_scoped_res_state-include.patch12
-rw-r--r--www-client/chromium/files/chromium-99-predction_common-include.patch13
-rw-r--r--www-client/chromium/files/chromium-99-sandbox-glib234.patch22
-rw-r--r--www-client/chromium/files/chromium-99-sqlcursor.patch16
-rw-r--r--www-client/chromium/files/chromium-angle-inline.patch118
-rw-r--r--www-client/chromium/files/chromium-axobj-ancestoriter-cat-84.patch33
-rw-r--r--www-client/chromium/files/chromium-axtree-incomplete-type-83.patch41
-rw-r--r--www-client/chromium/files/chromium-base-include-84-r1.patch24
-rw-r--r--www-client/chromium/files/chromium-base-include-84-r2.patch12
-rw-r--r--www-client/chromium/files/chromium-base-include-84.patch281
-rw-r--r--www-client/chromium/files/chromium-blink-include-bitset-84.patch13
-rw-r--r--www-client/chromium/files/chromium-blink-include-limits-84.patch13
-rw-r--r--www-client/chromium/files/chromium-blink-include-memory-83.patch13
-rw-r--r--www-client/chromium/files/chromium-blink-template.patch15
-rw-r--r--www-client/chromium/files/chromium-bluetooth-tuple-84.patch51
-rw-r--r--www-client/chromium/files/chromium-build-gn-83.patch36
-rw-r--r--www-client/chromium/files/chromium-cc-matrics-include-84.patch12
-rw-r--r--www-client/chromium/files/chromium-cert-share-encrypted-85.patch13
-rw-r--r--www-client/chromium/files/chromium-char-max-84.patch12
-rw-r--r--www-client/chromium/files/chromium-clang-format-path-82.patch13
-rw-r--r--www-client/chromium/files/chromium-compiler-76.patch160
-rw-r--r--www-client/chromium/files/chromium-compiler-77.patch160
-rw-r--r--www-client/chromium/files/chromium-compiler-78.patch160
-rw-r--r--www-client/chromium/files/chromium-compiler-82.patch166
-rw-r--r--www-client/chromium/files/chromium-compiler-83.patch150
-rw-r--r--www-client/chromium/files/chromium-compiler-84-r1.patch150
-rw-r--r--www-client/chromium/files/chromium-compiler-84.patch150
-rw-r--r--www-client/chromium/files/chromium-compiler-86.patch162
-rw-r--r--www-client/chromium/files/chromium-compiler-87.patch147
-rw-r--r--www-client/chromium/files/chromium-compiler-r10.patch185
-rw-r--r--www-client/chromium/files/chromium-compiler-r4.patch168
-rw-r--r--www-client/chromium/files/chromium-compiler-r6.patch170
-rw-r--r--www-client/chromium/files/chromium-compiler-r7.patch176
-rw-r--r--www-client/chromium/files/chromium-compiler-r8.patch164
-rw-r--r--www-client/chromium/files/chromium-compiler-r9.patch160
-rw-r--r--www-client/chromium/files/chromium-core-management-svc-84.patch12
-rw-r--r--www-client/chromium/files/chromium-crx-install-err-include-83.patch13
-rw-r--r--www-client/chromium/files/chromium-cursor-80.patch99
-rw-r--r--www-client/chromium/files/chromium-deque-constructor-82.patch13
-rw-r--r--www-client/chromium/files/chromium-disable-mojovdec.patch18
-rw-r--r--www-client/chromium/files/chromium-ext-no-vector-const-84.patch40
-rw-r--r--www-client/chromium/files/chromium-fix-char_traits.patch14
-rw-r--r--www-client/chromium/files/chromium-gamepad-include-84.patch12
-rw-r--r--www-client/chromium/files/chromium-gcc-89311.patch88
-rw-r--r--www-client/chromium/files/chromium-gcc-initlist.patch16
-rw-r--r--www-client/chromium/files/chromium-glibc-2.34.patch50
-rw-r--r--www-client/chromium/files/chromium-gpu-vp9-include-84.patch13
-rw-r--r--www-client/chromium/files/chromium-harfbuzz-r0.patch80
-rw-r--r--www-client/chromium/files/chromium-hashtable-iterator-cat-83.patch65
-rw-r--r--www-client/chromium/files/chromium-include-limits-83.patch13
-rw-r--r--www-client/chromium/files/chromium-include-limits-84.patch12
-rw-r--r--www-client/chromium/files/chromium-inline-node-ptr-84.patch13
-rw-r--r--www-client/chromium/files/chromium-launcher-r3.sh39
-rw-r--r--www-client/chromium/files/chromium-launcher-r6.sh48
-rw-r--r--www-client/chromium/files/chromium-layer_tree_impl-stlcompat.patch13
-rw-r--r--www-client/chromium/files/chromium-link.patch17
-rw-r--r--www-client/chromium/files/chromium-math.h-r0.patch29
-rw-r--r--www-client/chromium/files/chromium-media-alloc-84.patch22
-rw-r--r--www-client/chromium/files/chromium-memcpy-r0.patch35
-rw-r--r--www-client/chromium/files/chromium-mojo-ltm-83.patch84
-rw-r--r--www-client/chromium/files/chromium-nearby-inc-86.patch10
-rw-r--r--www-client/chromium/files/chromium-ngphyscontainer-iterator-cat-83.patch17
-rw-r--r--www-client/chromium/files/chromium-noexcept-2.patch26
-rw-r--r--www-client/chromium/files/chromium-noexcept-3.patch26
-rw-r--r--www-client/chromium/files/chromium-noexcept.patch26
-rw-r--r--www-client/chromium/files/chromium-ntp_backgrounds-include-84.patch12
-rw-r--r--www-client/chromium/files/chromium-opencv-include-84.patch12
-rw-r--r--www-client/chromium/files/chromium-pa13.patch82
-rw-r--r--www-client/chromium/files/chromium-pdfium-stdlib-r0.patch30
-rw-r--r--www-client/chromium/files/chromium-remove-no_check_targets-86.patch621
-rw-r--r--www-client/chromium/files/chromium-renderer-std-nullptr-83.patch13
-rw-r--r--www-client/chromium/files/chromium-revert-crrev-2147485-84.patch369
-rw-r--r--www-client/chromium/files/chromium-revert-e7963c4-78.patch335
-rw-r--r--www-client/chromium/files/chromium-serviceworker-83.patch130
-rw-r--r--www-client/chromium/files/chromium-simhash-include-84.patch26
-rw-r--r--www-client/chromium/files/chromium-simhash-include-85.patch15
-rw-r--r--www-client/chromium/files/chromium-sqrt.patch13
-rw-r--r--www-client/chromium/files/chromium-std-nullptr-83.patch22
-rw-r--r--www-client/chromium/files/chromium-stdint.patch21
-rw-r--r--www-client/chromium/files/chromium-stdset.patch13
-rw-r--r--www-client/chromium/files/chromium-string_view-79.patch78
-rw-r--r--www-client/chromium/files/chromium-swiftshader-77.patch53
-rw-r--r--www-client/chromium/files/chromium-unbundle-zlib.patch25
-rw-r--r--www-client/chromium/files/chromium-union.patch54
-rw-r--r--www-client/chromium/files/chromium-unique_ptr-80-r1.patch13
-rw-r--r--www-client/chromium/files/chromium-unique_ptr-80.patch12
-rw-r--r--www-client/chromium/files/chromium-vaapi-76-r1.patch213
-rw-r--r--www-client/chromium/files/chromium-vaapi-76.patch218
-rw-r--r--www-client/chromium/files/chromium-vaapi-77.patch213
-rw-r--r--www-client/chromium/files/chromium-vaapi-78-r1.patch220
-rw-r--r--www-client/chromium/files/chromium-vaapi-78.patch178
-rw-r--r--www-client/chromium/files/chromium-vaapi-79.patch220
-rw-r--r--www-client/chromium/files/chromium-vaapi-80.patch168
-rw-r--r--www-client/chromium/files/chromium-vaapi-81.patch181
-rw-r--r--www-client/chromium/files/chromium-vaapi-82.patch186
-rw-r--r--www-client/chromium/files/chromium-vaapi-83.patch186
-rw-r--r--www-client/chromium/files/chromium-vaapi-87.patch137
-rw-r--r--www-client/chromium/files/chromium-vaapi-fix-87.patch200
-rw-r--r--www-client/chromium/files/chromium-vaapi-signature.patch26
-rw-r--r--www-client/chromium/files/chromium-vector-include-81.patch13
-rw-r--r--www-client/chromium/files/chromium-vector-init.patch13
-rw-r--r--www-client/chromium/files/chromium-vk.patch21
-rw-r--r--www-client/chromium/files/chromium-vr.patch47
-rw-r--r--www-client/chromium/files/chromium-webrtc-include-84.patch10
-rw-r--r--www-client/chromium/files/chromium-webrtc-r0.patch34
-rw-r--r--www-client/chromium/files/chromium-webrtc.patch13
-rw-r--r--www-client/chromium/files/chromium-widevine-80.patch11
-rw-r--r--www-client/chromium/files/chromium-widevine-r2.patch39
-rw-r--r--www-client/chromium/files/chromium-widevine-r3.patch23
-rw-r--r--www-client/chromium/files/chromium-widevine-r4.patch26
-rw-r--r--www-client/chromium/files/chromium-wpt-gn-78.patch13
-rw-r--r--www-client/chromium/files/chromium-zlib-78.patch11
-rw-r--r--www-client/chromium/files/chromium-zlib-82.patch9
333 files changed, 0 insertions, 66990 deletions
diff --git a/www-client/chromium/chromium-100.0.4867.0.ebuild b/www-client/chromium/chromium-100.0.4867.0.ebuild
deleted file mode 100644
index d9fa17d..0000000
--- a/www-client/chromium/chromium-100.0.4867.0.ebuild
+++ /dev/null
@@ -1,963 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-100-compiler.patch"
- "${FILESDIR}/chromium-100-ByteSwapUintPtrT-constexpr.patch"
- "${FILESDIR}/chromium-100-LayoutUnit-constexpr.patch"
- "${FILESDIR}/chromium-100-PartitionFreelistEntry-namespace.patch"
- "${FILESDIR}/chromium-99-sqlcursor.patch"
- "${FILESDIR}/chromium-99-sandbox-glib234.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-100.0.4896.12.ebuild b/www-client/chromium/chromium-100.0.4896.12.ebuild
deleted file mode 100644
index 7d52a04..0000000
--- a/www-client/chromium/chromium-100.0.4896.12.ebuild
+++ /dev/null
@@ -1,964 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-100-compiler.patch"
- "${FILESDIR}/chromium-100-GLImplementationParts-constexpr.patch"
- "${FILESDIR}/chromium-100-InMilliseconds-constexpr.patch"
- "${FILESDIR}/chromium-100-SCTHashdanceMetadata-move.patch"
- "${FILESDIR}/chromium-100-macro-typo.patch"
- "${FILESDIR}/chromium-99-sqlcursor.patch"
- "${FILESDIR}/chromium-100-sandbox-include.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-101.0.4929.5.ebuild b/www-client/chromium/chromium-101.0.4929.5.ebuild
deleted file mode 100644
index 7616d49..0000000
--- a/www-client/chromium/chromium-101.0.4929.5.ebuild
+++ /dev/null
@@ -1,1013 +0,0 @@
-# Copyright 2009-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug gtk4 +hangouts headless +js-type-check kerberos libcxx +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid !libcxx )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- x11-libs/gdk-pixbuf:2
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
- virtual/opengl
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-69.1:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- !libcxx? ( >=dev-libs/re2-0.2019.08.01:= )
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- >=media-libs/libwebp-0.4.0:=
- media-libs/mesa:=[gbm(+)]
- >=media-libs/openh264-1.6.0:=
- sys-libs/zlib:=
- x11-libs/libdrm:=
- !headless? (
- dev-libs/glib:2
- >=media-libs/alsa-lib-1.0.19:=
- pulseaudio? ( media-sound/pulseaudio:= )
- kerberos? ( virtual/krb5 )
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libxcb:=
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- cups? ( >=net-print/cups-1.3.11:= )
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/pango:=
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X,wayland?]
- gui-libs/gtk:4[X,wayland?]
- )
- )
- x11-misc/xdg-utils
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X,wayland?] )
- )
-"
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- libcxx? ( >=sys-devel/clang-12 )
- dev-lang/perl
- >=dev-util/gn-0.1807
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang || use libcxx; then
- tc-is-cross-compiler && CPP=${CBUILD}-clang++ || CPP=${CHOST}-clang++
- CPP+=" -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- tc-is-cross-compiler && CHECKREQS_DISK_BUILD="12G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse} since USE=headless is set."
- done
- fi
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-99-sqlcursor.patch"
- "${FILESDIR}/chromium-100-compiler.patch"
- "${FILESDIR}/chromium-101-AccountInfo-noexcept.patch"
- "${FILESDIR}/chromium-101-WebURLLoaderFactory-incomplete-type.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-97-arm-tflite-cast.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-gtk4-build.patch"
- "${FILESDIR}/chromium-101-libxml-unbundle.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- "${FILESDIR}/chromium-cross-compile.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/six
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use libcxx; then
- keeplibs+=( third_party/re2 )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if { [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx; } && ! tc-is-clang; then
- # Force clang since gcc is either broken or build is using libcxx.
- if tc-is-cross-compiler; then
- CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
- CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
- BUILD_CC=${CBUILD}-clang
- BUILD_CXX=${CBUILD}-clang++
- else
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- fi
- strip-unsupported-flags
- fi
-
- if tc-is-clang || use libcxx; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" pkg_config=\"$(tc-get_PKG_CONFIG)\""
- myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
-
- # setup cups-config, build system only uses --libs option
- if use cups; then
- mkdir "${T}/cups-config" || die
- cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
- export PATH="${PATH}:${T}/cups-config"
- fi
-
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- # re2 library interface relies on std::string and std::vector
- if ! use libcxx; then
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false"
- myconf_gn+=" use_custom_libcxx=$(usex libcxx true false)"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Disable unknown warning message from clang.
- if tc-is-clang; then
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- myconf_gn+=" enable_print_preview=false"
- myconf_gn+=" enable_remoting=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- fi
-}
diff --git a/www-client/chromium/chromium-101.0.4951.15.ebuild b/www-client/chromium/chromium-101.0.4951.15.ebuild
deleted file mode 100644
index 5be4f3e..0000000
--- a/www-client/chromium/chromium-101.0.4951.15.ebuild
+++ /dev/null
@@ -1,1011 +0,0 @@
-# Copyright 2009-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug gtk4 +hangouts headless +js-type-check kerberos libcxx +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid !libcxx )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- x11-libs/gdk-pixbuf:2
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
- virtual/opengl
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-69.1:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- !libcxx? ( >=dev-libs/re2-0.2019.08.01:= )
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- >=media-libs/libwebp-0.4.0:=
- media-libs/mesa:=[gbm(+)]
- >=media-libs/openh264-1.6.0:=
- sys-libs/zlib:=
- x11-libs/libdrm:=
- !headless? (
- dev-libs/glib:2
- >=media-libs/alsa-lib-1.0.19:=
- pulseaudio? ( media-sound/pulseaudio:= )
- kerberos? ( virtual/krb5 )
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libxcb:=
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- cups? ( >=net-print/cups-1.3.11:= )
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/pango:=
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X,wayland?]
- gui-libs/gtk:4[X,wayland?]
- )
- )
- x11-misc/xdg-utils
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X,wayland?] )
- )
-"
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- libcxx? ( >=sys-devel/clang-12 )
- dev-lang/perl
- >=dev-util/gn-0.1807
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang || use libcxx; then
- tc-is-cross-compiler && CPP=${CBUILD}-clang++ || CPP=${CHOST}-clang++
- CPP+=" -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- tc-is-cross-compiler && CHECKREQS_DISK_BUILD="12G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse} since USE=headless is set."
- done
- fi
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-99-sqlcursor.patch"
- "${FILESDIR}/chromium-100-compiler.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-97-arm-tflite-cast.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-gtk4-build.patch"
- "${FILESDIR}/chromium-101-libxml-unbundle.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- "${FILESDIR}/chromium-cross-compile.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/six
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use libcxx; then
- keeplibs+=( third_party/re2 )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if { [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx; } && ! tc-is-clang; then
- # Force clang since gcc is either broken or build is using libcxx.
- if tc-is-cross-compiler; then
- CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
- CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
- BUILD_CC=${CBUILD}-clang
- BUILD_CXX=${CBUILD}-clang++
- else
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- fi
- strip-unsupported-flags
- fi
-
- if tc-is-clang || use libcxx; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" pkg_config=\"$(tc-get_PKG_CONFIG)\""
- myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
-
- # setup cups-config, build system only uses --libs option
- if use cups; then
- mkdir "${T}/cups-config" || die
- cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
- export PATH="${PATH}:${T}/cups-config"
- fi
-
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- # re2 library interface relies on std::string and std::vector
- if ! use libcxx; then
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false"
- myconf_gn+=" use_custom_libcxx=$(usex libcxx true false)"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Disable unknown warning message from clang.
- if tc-is-clang; then
- append-flags -Wno-unknown-warning-option
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- myconf_gn+=" enable_print_preview=false"
- myconf_gn+=" enable_remoting=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- fi
-}
diff --git a/www-client/chromium/chromium-102.0.5005.12.ebuild b/www-client/chromium/chromium-102.0.5005.12.ebuild
deleted file mode 100644
index f9490b4..0000000
--- a/www-client/chromium/chromium-102.0.5005.12.ebuild
+++ /dev/null
@@ -1,1015 +0,0 @@
-# Copyright 2009-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk ur vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug gtk4 +hangouts headless +js-type-check kerberos libcxx +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid !libcxx )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- x11-libs/gdk-pixbuf:2
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
- virtual/opengl
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-69.1:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- !libcxx? ( >=dev-libs/re2-0.2019.08.01:= )
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- >=media-libs/libwebp-0.4.0:=
- media-libs/mesa:=[gbm(+)]
- >=media-libs/openh264-1.6.0:=
- sys-libs/zlib:=
- x11-libs/libdrm:=
- !headless? (
- dev-libs/glib:2
- >=media-libs/alsa-lib-1.0.19:=
- pulseaudio? ( media-sound/pulseaudio:= )
- sys-apps/pciutils:=
- kerberos? ( virtual/krb5 )
- vaapi? ( >=x11-libs/libva-2.7:=[X] )
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libxcb:=
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- cups? ( >=net-print/cups-1.3.11:= )
- virtual/udev
- x11-libs/cairo:=
- x11-libs/pango:=
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X,wayland?]
- gui-libs/gtk:4[X,wayland?]
- )
- )
- x11-misc/xdg-utils
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X,wayland?] )
- )
-"
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- libcxx? ( >=sys-devel/clang-12 )
- dev-lang/perl
- >=dev-util/gn-0.1807
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang || use libcxx; then
- tc-is-cross-compiler && CPP=${CBUILD}-clang++ || CPP=${CHOST}-clang++
- CPP+=" -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="10G"
- tc-is-cross-compiler && CHECKREQS_DISK_BUILD="13G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse} since USE=headless is set."
- done
- fi
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-99-sqlcursor.patch"
- "${FILESDIR}/chromium-102-compiler.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-97-arm-tflite-cast.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-gtk4-build.patch"
- "${FILESDIR}/chromium-101-libxml-unbundle.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- "${FILESDIR}/chromium-cross-compile.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # only required to fulfill gn dependencies
- touch third_party/blink/tools/merge_web_test_results.pydeps || die
- mkdir -p third_party/blink/tools/blinkpy/web_tests || die
- touch third_party/blink/tools/blinkpy/web_tests/merge_results.pydeps || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/gn/webgpu-cts
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/swiftshader/third_party/SPIRV-Tools
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/six
- third_party/ukey2
- third_party/unrar
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use libcxx; then
- keeplibs+=( third_party/re2 )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if { [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx; } && ! tc-is-clang; then
- # Force clang since gcc is either broken or build is using libcxx.
- if tc-is-cross-compiler; then
- CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
- CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
- BUILD_CC=${CBUILD}-clang
- BUILD_CXX=${CBUILD}-clang++
- else
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- fi
- strip-unsupported-flags
- fi
-
- if tc-is-clang || use libcxx; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\""
- myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
-
- # setup cups-config, build system only uses --libs option
- if use cups; then
- mkdir "${T}/cups-config" || die
- cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
- export PATH="${PATH}:${T}/cups-config"
- fi
-
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- # re2 library interface relies on std::string and std::vector
- if ! use libcxx; then
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false"
- myconf_gn+=" use_custom_libcxx=$(usex libcxx true false)"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Disable unknown warning message from clang.
- if tc-is-clang; then
- append-flags -Wno-unknown-warning-option
- append-flags "-fbracket-depth=1024"
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- myconf_gn+=" enable_print_preview=false"
- myconf_gn+=" enable_remoting=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- fi
-}
diff --git a/www-client/chromium/chromium-103.0.5056.0.ebuild b/www-client/chromium/chromium-103.0.5056.0.ebuild
deleted file mode 100644
index 5808c25..0000000
--- a/www-client/chromium/chromium-103.0.5056.0.ebuild
+++ /dev/null
@@ -1,1015 +0,0 @@
-# Copyright 2009-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="af am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk ur vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug gtk4 +hangouts headless +js-type-check kerberos libcxx +official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid !libcxx )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- x11-libs/gdk-pixbuf:2
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxshmfence:=
- virtual/opengl
-"
-
-COMMON_SNAPSHOT_DEPEND="
- system-icu? ( >=dev-libs/icu-69.1:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- !libcxx? ( >=dev-libs/re2-0.2019.08.01:= )
- dev-libs/libxslt:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-3:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- >=media-libs/libwebp-0.4.0:=
- media-libs/mesa:=[gbm(+)]
- >=media-libs/openh264-1.6.0:=
- sys-libs/zlib:=
- x11-libs/libdrm:=
- !headless? (
- dev-libs/glib:2
- >=media-libs/alsa-lib-1.0.19:=
- pulseaudio? ( media-sound/pulseaudio:= )
- sys-apps/pciutils:=
- kerberos? ( virtual/krb5 )
- vaapi? ( >=x11-libs/libva-2.7:=[X] )
- x11-libs/libX11:=
- x11-libs/libXext:=
- x11-libs/libxcb:=
- x11-libs/libxkbcommon:=
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:= )
- )
- )
-"
-
-COMMON_DEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- app-arch/bzip2:=
- dev-libs/expat:=
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- media-libs/flac:=
- sys-libs/zlib:=[minizip]
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- cups? ( >=net-print/cups-1.3.11:= )
- virtual/udev
- x11-libs/cairo:=
- x11-libs/pango:=
- )
-"
-RDEPEND="${COMMON_DEPEND}
- !headless? (
- || (
- x11-libs/gtk+:3[X,wayland?]
- gui-libs/gtk:4[X,wayland?]
- )
- )
- x11-misc/xdg-utils
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
- !headless? (
- gtk4? ( gui-libs/gtk:4[X,wayland?] )
- !gtk4? ( x11-libs/gtk+:3[X,wayland?] )
- )
-"
-BDEPEND="
- ${COMMON_SNAPSHOT_DEPEND}
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- libcxx? ( >=sys-devel/clang-12 )
- dev-lang/perl
- >=dev-util/gn-0.1807
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang || use libcxx; then
- tc-is-cross-compiler && CPP=${CBUILD}-clang++ || CPP=${CHOST}-clang++
- CPP+=" -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="10G"
- tc-is-cross-compiler && CHECKREQS_DISK_BUILD="13G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-
- if use headless; then
- local headless_unused_flags=("cups" "kerberos" "pulseaudio" "vaapi" "wayland")
- for myiuse in ${headless_unused_flags[@]}; do
- use ${myiuse} && ewarn "Ignoring USE=${myiuse} since USE=headless is set."
- done
- fi
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-103-compiler.patch"
- "${FILESDIR}/chromium-103-FrameLoadRequest-type.patch"
- "${FILESDIR}/chromium-103-SubstringSetMatcher-packed.patch"
- "${FILESDIR}/chromium-103-VirtualCursor-std-layout.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-gtk4-build.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- "${FILESDIR}/chromium-cross-compile.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # only required to fulfill gn dependencies
- touch third_party/blink/tools/merge_web_test_results.pydeps || die
- mkdir -p third_party/blink/tools/blinkpy/web_tests || die
- touch third_party/blink/tools/blinkpy/web_tests/merge_results.pydeps || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/gn/webgpu-cts
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/additional_readme_paths.json
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/swiftshader/third_party/SPIRV-Tools
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/six
- third_party/ukey2
- third_party/unrar
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use libcxx; then
- keeplibs+=( third_party/re2 )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- # requires git and clang, bug #832803
- sed -i -e "s|^update_readme||g; s|clang-format|${EPREFIX}/bin/true|g" \
- generate_gni.sh || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if { [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || use libcxx; } && ! tc-is-clang; then
- # Force clang since gcc is either broken or build is using libcxx.
- if tc-is-cross-compiler; then
- CC="${CBUILD}-clang -target ${CHOST} --sysroot ${ESYSROOT}"
- CXX="${CBUILD}-clang++ -target ${CHOST} --sysroot ${ESYSROOT}"
- BUILD_CC=${CBUILD}-clang
- BUILD_CXX=${CBUILD}-clang++
- else
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- fi
- strip-unsupported-flags
- fi
-
- if tc-is-clang || use libcxx; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" pkg_config=\"$(tc-getPKG_CONFIG)\""
- myconf_gn+=" host_pkg_config=\"$(tc-getBUILD_PKG_CONFIG)\""
-
- # setup cups-config, build system only uses --libs option
- if use cups; then
- mkdir "${T}/cups-config" || die
- cp "${ESYSROOT}/usr/bin/${CHOST}-cups-config" "${T}/cups-config/cups-config" || die
- export PATH="${PATH}:${T}/cups-config"
- fi
-
- # Don't inherit PKG_CONFIG_PATH from environment
- local -x PKG_CONFIG_PATH=
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- libxml
- libxslt
- openh264
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- # re2 library interface relies on std::string and std::vector
- if ! use libcxx; then
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
-
- if use headless; then
- myconf_gn+=" use_cups=false"
- myconf_gn+=" use_kerberos=false"
- myconf_gn+=" use_pulseaudio=false"
- myconf_gn+=" use_vaapi=false"
- myconf_gn+=" rtc_use_pipewire=false"
- else
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
- myconf_gn+=" gtk_version=$(usex gtk4 4 3)"
- fi
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false"
- myconf_gn+=" use_custom_libcxx=$(usex libcxx true false)"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Disable unknown warning message from clang.
- if tc-is-clang; then
- append-flags -Wno-unknown-warning-option
- append-flags "-fbracket-depth=1024"
- if tc-is-cross-compiler; then
- export BUILD_CXXFLAGS+=" -Wno-unknown-warning-option"
- export BUILD_CFLAGS+=" -Wno-unknown-warning-option"
- fi
- fi
-
- # Explicitly disable ICU data file support for system-icu/headless builds.
- if use system-icu || use headless; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_xkbcommon=false use_gtk=false"
- myconf_gn+=" use_glib=false use_gio=false"
- myconf_gn+=" use_pangocairo=false use_alsa=false"
- myconf_gn+=" use_libpci=false use_udev=false"
- myconf_gn+=" enable_print_preview=false"
- myconf_gn+=" enable_remoting=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- # Don't add symbols to build
- myconf_gn+=" symbol_level=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu && ! use headless; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if ! use headless; then
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-features=WebRTCPipeWireCapturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- if use gtk4; then
- elog "Chromium prefers GTK3 over GTK4 at runtime. To override this"
- elog "behavior you need to pass --gtk-version=4, e.g. by adding it"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
- fi
-}
diff --git a/www-client/chromium/chromium-73.0.3683.10.ebuild b/www-client/chromium/chromium-73.0.3683.10.ebuild
deleted file mode 100644
index 7dc459d..0000000
--- a/www-client/chromium/chromium-73.0.3683.10.ebuild
+++ /dev/null
@@ -1,727 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.0.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- dev-vcs/git
-"
-
-: ${CHROMIUM_FORCE_CLANG=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-r8.patch"
- "${FILESDIR}/chromium-widevine-r3.patch"
- "${FILESDIR}/chromium-webrtc-r0.patch"
- "${FILESDIR}/chromium-memcpy-r0.patch"
- "${FILESDIR}/chromium-math.h-r0.patch"
- "${FILESDIR}/chromium-stdint.patch"
- "${FILESDIR}/chromium-noexcept.patch"
- "${FILESDIR}/chromium-noexcept-2.patch"
- "${FILESDIR}/chromium-sqrt.patch"
- "${FILESDIR}/chromium-gcc-initlist.patch"
- "${FILESDIR}/chromium-blink-template.patch"
- "${FILESDIR}/chromium-link.patch"
-# "${FILESDIR}/chromium-vk.patch"
-# "${FILESDIR}/chromium-harfbuzz-r0.patch"
-)
-
-pre_build_checks() {
- #if [[ ${MERGE_TYPE} != binary ]]; then
- # local -x CPP="$(tc-getCXX) -E"
- # if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
- # # bugs: #601654
- # die "At least clang 3.9.1 is required"
- # fi
- # if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
- # # bugs: #535730, #525374, #518668, #600288, #627356
- # die "At least gcc 5.0 is required"
- # fi
- #fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
-# net/third_party/http2
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
-# net/third_party/spdy
- net/third_party/uri_template
-# third_party/WebKit
- third_party/abseil-cpp
-# third_party/analytics
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/fips181
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
-# third_party/glslang-angle
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/openmax_dl
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/skia/include/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
-# third_party/spirv-tools-angle
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
-# third_party/vulkan-validation-layers
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- append-cxxflags $(test-flags-CXX -std=gnu++17)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
-if false; then
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-fi
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 22 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-74.0.3702.0.ebuild b/www-client/chromium/chromium-74.0.3702.0.ebuild
deleted file mode 100644
index 270ccf4..0000000
--- a/www-client/chromium/chromium-74.0.3702.0.ebuild
+++ /dev/null
@@ -1,733 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.0.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- dev-vcs/git
-"
-
-: ${CHROMIUM_FORCE_CLANG=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-r8.patch"
- "${FILESDIR}/chromium-widevine-r3.patch"
- "${FILESDIR}/chromium-webrtc-r0.patch"
- "${FILESDIR}/chromium-memcpy-r0.patch"
- "${FILESDIR}/chromium-math.h-r0.patch"
- "${FILESDIR}/chromium-stdint.patch"
- "${FILESDIR}/chromium-noexcept.patch"
- "${FILESDIR}/chromium-noexcept-2.patch"
- "${FILESDIR}/chromium-noexcept-3.patch"
- "${FILESDIR}/chromium-blink-template.patch"
- "${FILESDIR}/chromium-link.patch"
- "${FILESDIR}/chromium-74-gcc.patch"
- "${FILESDIR}/chromium-webrtc.patch"
- "${FILESDIR}/chromium-gcc-89311.patch"
-# "${FILESDIR}/chromium-vk.patch"
-# "${FILESDIR}/chromium-harfbuzz-r0.patch"
-)
-
-pre_build_checks() {
- #if [[ ${MERGE_TYPE} != binary ]]; then
- # local -x CPP="$(tc-getCXX) -E"
- # if tc-is-clang && ! version_is_at_least "3.9.1" "$(clang-fullversion)"; then
- # # bugs: #601654
- # die "At least clang 3.9.1 is required"
- # fi
- # if tc-is-gcc && ! version_is_at_least 5.0 "$(gcc-version)"; then
- # # bugs: #535730, #525374, #518668, #600288, #627356
- # die "At least gcc 5.0 is required"
- # fi
- #fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
-# net/third_party/http2
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
-# net/third_party/spdy
- net/third_party/uri_template
-# third_party/WebKit
- third_party/abseil-cpp
-# third_party/analytics
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/fips181
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/glslang
-# third_party/glslang-angle
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/openmax_dl
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/skia/include/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
-# third_party/spirv-tools-angle
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
-# third_party/vulkan-validation-layers
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- append-cxxflags $(test-flags-CXX -std=gnu++17)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
-if false; then
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-fi
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 22 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-75.0.3745.4.ebuild b/www-client/chromium/chromium-75.0.3745.4.ebuild
deleted file mode 100644
index e274f16..0000000
--- a/www-client/chromium/chromium-75.0.3745.4.ebuild
+++ /dev/null
@@ -1,723 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+closure-compile component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.2.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-r9.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-73-gcc-5.patch"
- "${FILESDIR}/chromium-vr.patch"
- "${FILESDIR}/chromium-75-vaapi.patch"
- "${FILESDIR}/chromium-stdset.patch"
- "${FILESDIR}/chromium-vaapi-signature.patch"
- "${FILESDIR}/chromium-disable-mojovdec.patch"
-# "${FILESDIR}/chromium-union.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/glad
- third_party/dawn/third_party/picojson
- third_party/dawn/third_party/tinygltfloader
- third_party/dawn/third_party/vulkan
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/fips181
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/glslang
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/openmax_dl
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 22 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-76.0.3783.0.ebuild b/www-client/chromium/chromium-76.0.3783.0.ebuild
deleted file mode 100644
index f31574a..0000000
--- a/www-client/chromium/chromium-76.0.3783.0.ebuild
+++ /dev/null
@@ -1,722 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+closure-compile component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.2.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-76.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-vr.patch"
- "${FILESDIR}/chromium-vaapi-76.patch"
- "${FILESDIR}/chromium-vector-init.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/glad
- third_party/dawn/third_party/picojson
- third_party/dawn/third_party/tinygltfloader
- third_party/dawn/third_party/vulkan
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/glslang
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/openmax_dl
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 22 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-76.0.3800.0.ebuild b/www-client/chromium/chromium-76.0.3800.0.ebuild
deleted file mode 100644
index f7e98ec..0000000
--- a/www-client/chromium/chromium-76.0.3800.0.ebuild
+++ /dev/null
@@ -1,717 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+closure-compile component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.2.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-76.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-vaapi-76-r1.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/glad
- third_party/dawn/third_party/vulkan
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/glslang
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 22 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-77.0.3824.6.ebuild b/www-client/chromium/chromium-77.0.3824.6.ebuild
deleted file mode 100644
index 1f7c191..0000000
--- a/www-client/chromium/chromium-77.0.3824.6.ebuild
+++ /dev/null
@@ -1,725 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+closure-compile component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.2.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-77.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-vaapi-77.patch"
- "${FILESDIR}/chromium-swiftshader-77.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/boringssl/src/third_party/sike
- third_party/boringssl/linux-x86_64/crypto/third_party/sike
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/glad
- third_party/dawn/third_party/vulkan
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/glslang
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- #zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 22 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-78.0.3876.0.ebuild b/www-client/chromium/chromium-78.0.3876.0.ebuild
deleted file mode 100644
index ccc1842..0000000
--- a/www-client/chromium/chromium-78.0.3876.0.ebuild
+++ /dev/null
@@ -1,725 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="+closure-compile component-build cups gnome-keyring +hangouts jumbo-build kerberos neon pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-59:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.2.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-# sys-apps/sandbox - https://crbug.com/586444
-DEPEND="${COMMON_DEPEND}
-"
-BDEPEND="
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-5"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-77.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-vaapi-78.patch"
- "${FILESDIR}/chromium-wpt-gn-78.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="5G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/boringssl/src/third_party/sike
- third_party/boringssl/linux-x86_64/crypto/third_party/sike
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/glslang
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- #zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # https://bugs.gentoo.org/588596
- #append-cxxflags $(test-flags-CXX -fno-delete-null-pointer-checks)
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Work around broken deps
- eninja -C out/Release gen/ui/accessibility/ax_enums.mojom{,-shared}.h
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- if type gtk-update-icon-cache &>/dev/null; then
- ebegin "Updating GTK icon cache"
- gtk-update-icon-cache "${EROOT}/usr/share/icons/hicolor"
- eend $?
- fi
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-78.0.3880.4.ebuild b/www-client/chromium/chromium-78.0.3880.4.ebuild
deleted file mode 100644
index da73ace..0000000
--- a/www-client/chromium/chromium-78.0.3880.4.ebuild
+++ /dev/null
@@ -1,718 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-78.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-unbundle-zlib.patch"
- "${FILESDIR}/chromium-wpt-gn-78.patch"
- "${FILESDIR}/chromium-77-system-icu.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-77-blink-include.patch"
- "${FILESDIR}/chromium-vaapi-78.patch"
- "${FILESDIR}/chromium-revert-e7963c4-78.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/dmg_fp
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/boringssl/src/third_party/sike
- third_party/boringssl/linux-aarch64/crypto/third_party/sike
- third_party/boringssl/linux-x86_64/crypto/third_party/sike
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-78.0.3902.4.ebuild b/www-client/chromium/chromium-78.0.3902.4.ebuild
deleted file mode 100644
index d8233a1..0000000
--- a/www-client/chromium/chromium-78.0.3902.4.ebuild
+++ /dev/null
@@ -1,727 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-78.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-78.patch"
- "${FILESDIR}/chromium-77-system-icu.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-78-r1.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/boringssl/src/third_party/sike
- third_party/boringssl/linux-aarch64/crypto/third_party/sike
- third_party/boringssl/linux-x86_64/crypto/third_party/sike
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-79.0.3921.0.ebuild b/www-client/chromium/chromium-79.0.3921.0.ebuild
deleted file mode 100644
index f835db2..0000000
--- a/www-client/chromium/chromium-79.0.3921.0.ebuild
+++ /dev/null
@@ -1,731 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts jumbo-build kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-78.patch"
- "${FILESDIR}/chromium-widevine-r4.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-78.patch"
- "${FILESDIR}/chromium-77-system-icu.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-79.patch"
- "${FILESDIR}/chromium-pa13.patch"
- "${FILESDIR}/chromium-layer_tree_impl-stlcompat.patch"
- "${FILESDIR}/chromium-string_view-79.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/boringssl/src/third_party/sike
- third_party/boringssl/linux-aarch64/crypto/third_party/sike
- third_party/boringssl/linux-x86_64/crypto/third_party/sike
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # https://chromium.googlesource.com/chromium/src/+/lkcr/docs/jumbo.md
- myconf_gn+=" use_jumbo_build=$(usex jumbo-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-80.0.3955.4.ebuild b/www-client/chromium/chromium-80.0.3955.4.ebuild
deleted file mode 100644
index 01938b3..0000000
--- a/www-client/chromium/chromium-80.0.3955.4.ebuild
+++ /dev/null
@@ -1,726 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-78.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-78.patch"
- "${FILESDIR}/chromium-77-system-icu.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-80.patch"
- "${FILESDIR}/chromium-unique_ptr-80.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-80.0.3970.5.ebuild b/www-client/chromium/chromium-80.0.3970.5.ebuild
deleted file mode 100644
index 7085b0b..0000000
--- a/www-client/chromium/chromium-80.0.3970.5.ebuild
+++ /dev/null
@@ -1,728 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-78.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-78.patch"
- "${FILESDIR}/chromium-77-system-icu.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-80.patch"
- "${FILESDIR}/chromium-unique_ptr-80-r1.patch"
- "${FILESDIR}/chromium-cursor-80.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/flot
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/gif
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-81.0.4000.3.ebuild b/www-client/chromium/chromium-81.0.4000.3.ebuild
deleted file mode 100644
index 4a0fd04..0000000
--- a/www-client/chromium/chromium-81.0.4000.3.ebuild
+++ /dev/null
@@ -1,728 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-78.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-78.patch"
- "${FILESDIR}/chromium-77-system-icu.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-81.patch"
- "${FILESDIR}/chromium-vector-include-81.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/sfntly
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-82.0.4056.3.ebuild b/www-client/chromium/chromium-82.0.4056.3.ebuild
deleted file mode 100644
index 06647dc..0000000
--- a/www-client/chromium/chromium-82.0.4056.3.ebuild
+++ /dev/null
@@ -1,732 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-64:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2016.11.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-82.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-82.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-deque-constructor-82.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons and desktop entry.
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- local mime_types="text/html;text/xml;application/xhtml+xml;"
- mime_types+="x-scheme-handler/http;x-scheme-handler/https;" # bug #360797
- mime_types+="x-scheme-handler/ftp;" # bug #412185
- mime_types+="x-scheme-handler/mailto;x-scheme-handler/webcal;" # bug #416393
- make_desktop_entry \
- chromium-browser \
- "Chromium" \
- chromium-browser \
- "Network;WebBrowser" \
- "MimeType=${mime_types}\nStartupWMClass=chromium-browser"
- sed -e "/^Exec/s/$/ %U/" -i "${ED}"/usr/share/applications/*.desktop || die
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-83.0.4093.3.ebuild b/www-client/chromium/chromium-83.0.4093.3.ebuild
deleted file mode 100644
index b02eb94..0000000
--- a/www-client/chromium/chromium-83.0.4093.3.ebuild
+++ /dev/null
@@ -1,745 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-83.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-std-nullptr-83.patch"
- "${FILESDIR}/chromium-ngphyscontainer-iterator-cat-83.patch"
- "${FILESDIR}/chromium-renderer-std-nullptr-83.patch"
- "${FILESDIR}/chromium-axtree-incomplete-type-83.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-83.0.4100.3.ebuild b/www-client/chromium/chromium-83.0.4100.3.ebuild
deleted file mode 100644
index abbfd6e..0000000
--- a/www-client/chromium/chromium-83.0.4100.3.ebuild
+++ /dev/null
@@ -1,744 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-83.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-ngphyscontainer-iterator-cat-83.patch"
- "${FILESDIR}/chromium-axtree-incomplete-type-83.patch"
- "${FILESDIR}/chromium-crx-install-err-include-83.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-83.0.4103.7.ebuild b/www-client/chromium/chromium-83.0.4103.7.ebuild
deleted file mode 100644
index 8e28715..0000000
--- a/www-client/chromium/chromium-83.0.4103.7.ebuild
+++ /dev/null
@@ -1,747 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-83.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-ngphyscontainer-iterator-cat-83.patch"
- "${FILESDIR}/chromium-axtree-incomplete-type-83.patch"
- "${FILESDIR}/chromium-crx-install-err-include-83.patch"
- "${FILESDIR}/chromium-hashtable-iterator-cat-83.patch"
- "${FILESDIR}/chromium-blink-include-memory-83.patch"
- "${FILESDIR}/chromium-include-limits-83.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-84.0.4115.5.ebuild b/www-client/chromium/chromium-84.0.4115.5.ebuild
deleted file mode 100644
index 178184f..0000000
--- a/www-client/chromium/chromium-84.0.4115.5.ebuild
+++ /dev/null
@@ -1,752 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-84.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-ngphyscontainer-iterator-cat-83.patch"
- "${FILESDIR}/chromium-axtree-incomplete-type-83.patch"
- "${FILESDIR}/chromium-crx-install-err-include-83.patch"
- "${FILESDIR}/chromium-hashtable-iterator-cat-83.patch"
- "${FILESDIR}/chromium-blink-include-memory-83.patch"
- "${FILESDIR}/chromium-include-limits-84.patch"
- "${FILESDIR}/chromium-base-include-84.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/VulkanMemoryAllocator
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/fft4g
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-84.0.4122.7.ebuild b/www-client/chromium/chromium-84.0.4122.7.ebuild
deleted file mode 100644
index 48a2d14..0000000
--- a/www-client/chromium/chromium-84.0.4122.7.ebuild
+++ /dev/null
@@ -1,754 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-84.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-ngphyscontainer-iterator-cat-83.patch"
- "${FILESDIR}/chromium-crx-install-err-include-83.patch"
- "${FILESDIR}/chromium-hashtable-iterator-cat-83.patch"
- "${FILESDIR}/chromium-blink-include-memory-83.patch"
- "${FILESDIR}/chromium-base-include-84-r1.patch"
- "${FILESDIR}/chromium-inline-node-ptr-84.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-char-max-84.patch"
- "${FILESDIR}/chromium-cc-matrics-include-84.patch"
- "${FILESDIR}/chromium-blink-include-limits-84.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/VulkanMemoryAllocator
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- third_party/yasm/run_yasm.py
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- yasm
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-84.0.4136.5.ebuild b/www-client/chromium/chromium-84.0.4136.5.ebuild
deleted file mode 100644
index fc1b627..0000000
--- a/www-client/chromium/chromium-84.0.4136.5.ebuild
+++ /dev/null
@@ -1,748 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-84-r1.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-inline-node-ptr-84.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-serviceworker-83.patch"
- "${FILESDIR}/chromium-blink-include-bitset-84.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/VulkanMemoryAllocator
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-84.0.4147.13.ebuild b/www-client/chromium/chromium-84.0.4147.13.ebuild
deleted file mode 100644
index 28d8d0e..0000000
--- a/www-client/chromium/chromium-84.0.4147.13.ebuild
+++ /dev/null
@@ -1,752 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-84-r1.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-inline-node-ptr-84.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-webrtc-include-84.patch"
- "${FILESDIR}/chromium-axobj-ancestoriter-cat-84.patch"
- "${FILESDIR}/chromium-ntp_backgrounds-include-84.patch"
- "${FILESDIR}/chromium-ext-no-vector-const-84.patch"
- "${FILESDIR}/chromium-revert-crrev-2147485-84.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-85.0.4164.2.ebuild b/www-client/chromium/chromium-85.0.4164.2.ebuild
deleted file mode 100644
index 80df496..0000000
--- a/www-client/chromium/chromium-85.0.4164.2.ebuild
+++ /dev/null
@@ -1,754 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-84-r1.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-inline-node-ptr-84.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-gamepad-include-84.patch"
- "${FILESDIR}/chromium-bluetooth-tuple-84.patch"
- "${FILESDIR}/chromium-simhash-include-84.patch"
- "${FILESDIR}/chromium-opencv-include-84.patch"
- "${FILESDIR}/chromium-core-management-svc-84.patch"
- "${FILESDIR}/chromium-gpu-vp9-include-84.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-85.0.4183.15.ebuild b/www-client/chromium/chromium-85.0.4183.15.ebuild
deleted file mode 100644
index 4ffd415..0000000
--- a/www-client/chromium/chromium-85.0.4183.15.ebuild
+++ /dev/null
@@ -1,752 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+closure-compile component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- closure-compile? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-84-r1.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-77-clang.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-core-management-svc-84.patch"
- "${FILESDIR}/chromium-gpu-vp9-include-84.patch"
- "${FILESDIR}/chromium-cert-share-encrypted-85.patch"
- "${FILESDIR}/chromium-simhash-include-85.patch"
- "${FILESDIR}/chromium-media-alloc-84.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/cacheinvalidation
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/third_party/axe-core
- third_party/devtools-frontend/src/third_party/pyjson5
- third_party/devtools-frontend/src/third_party/typescript
- third_party/depot_tools
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-7.0
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" closure_compile=$(usex closure-compile true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-86.0.4214.2.ebuild b/www-client/chromium/chromium-86.0.4214.2.ebuild
deleted file mode 100644
index 3ad74ef..0000000
--- a/www-client/chromium/chromium-86.0.4214.2.ebuild
+++ /dev/null
@@ -1,757 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+js-type-check component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- js-type-check? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-86.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-vaapi-83.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-core-management-svc-84.patch"
- "${FILESDIR}/chromium-gpu-vp9-include-84.patch"
- "${FILESDIR}/chromium-media-alloc-84.patch"
- "${FILESDIR}/chromium-remove-no_check_targets-86.patch"
- "${FILESDIR}/chromium-nearby-inc-86.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-87.0.4259.3.ebuild b/www-client/chromium/chromium-87.0.4259.3.ebuild
deleted file mode 100644
index 123d16f..0000000
--- a/www-client/chromium/chromium-87.0.4259.3.ebuild
+++ /dev/null
@@ -1,758 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+js-type-check component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- js-type-check? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-87.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-core-management-svc-84.patch"
- "${FILESDIR}/chromium-gpu-vp9-include-84.patch"
- "${FILESDIR}/chromium-nearby-inc-86.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/wayland
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zlib/google
- third_party/zxcvbn-cpp
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-87.0.4263.3-r1.ebuild b/www-client/chromium/chromium-87.0.4263.3-r1.ebuild
deleted file mode 100644
index 7c83611..0000000
--- a/www-client/chromium/chromium-87.0.4263.3-r1.ebuild
+++ /dev/null
@@ -1,894 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-79-gcc-protobuf-alignas.patch"
- "${FILESDIR}/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-compiler.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-86-ImageMemoryBarrierData-init.patch"
- "${FILESDIR}/chromium-86-nearby-explicit.patch"
- "${FILESDIR}/chromium-86-nearby-include.patch"
- "${FILESDIR}/chromium-87-anonymous-struct.patch"
- "${FILESDIR}/chromium-87-CrossThreadPersistent-template.patch"
- "${FILESDIR}/chromium-87-CursorFactory-include.patch"
- "${FILESDIR}/chromium-87-SystemMemoryPressureEvaluator-namespace.patch"
- "${FILESDIR}/chromium-87-Thumbnail-noexcept.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-vaapi-fix-87.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/libgifcodec
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-87.0.4263.3.ebuild b/www-client/chromium/chromium-87.0.4263.3.ebuild
deleted file mode 100644
index f75a2d6..0000000
--- a/www-client/chromium/chromium-87.0.4263.3.ebuild
+++ /dev/null
@@ -1,760 +0,0 @@
-# Copyright 2009-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="http://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="+js-type-check component-build cups cpu_flags_arm_neon gnome-keyring +hangouts kerberos pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="component-build? ( !suid )"
-
-COMMON_DEPEND="
- >=app-accessibility/at-spi2-atk-2.26:2
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- >=dev-libs/atk-2.26
- dev-libs/expat:=
- dev-libs/glib:2
- system-icu? ( >=dev-libs/icu-65:= )
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/libxslt:=
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=dev-libs/re2-0.2019.08.01:=
- gnome-keyring? ( >=gnome-base/libgnome-keyring-3.12:= )
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( media-libs/libvpx:=[postproc,svc] )
- >=media-libs/openh264-1.6.0:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- !=net-fs/samba-4.5.12-r0
- media-libs/opus:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/gtk+:3[X]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXScrnSaver:=
- x11-libs/libXtst:=
- x11-libs/pango:=
- app-arch/snappy:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- !<www-plugins/chrome-binary-plugins-57
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
- widevine? ( www-plugins/chrome-binary-plugins[widevine(-)] )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- !arm? (
- dev-lang/yasm
- )
- dev-lang/perl
- dev-util/gn
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- js-type-check? ( virtual/jre )
- virtual/pkgconfig
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-7"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-compiler-87.patch"
- "${FILESDIR}/chromium-widevine-80.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-zlib-82.patch"
- "${FILESDIR}/chromium-clang-format-path-82.patch"
- "${FILESDIR}/chromium-base-include-84-r2.patch"
- "${FILESDIR}/chromium-mojo-ltm-83.patch"
- "${FILESDIR}/chromium-core-management-svc-84.patch"
- "${FILESDIR}/chromium-gpu-vp9-include-84.patch"
- "${FILESDIR}/chromium-nearby-inc-86.patch"
- "${FILESDIR}/chromium-vaapi-fix-87.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 8.0; then
- die "At least gcc 8.0 is required"
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- CHECKREQS_DISK_BUILD="25G"
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgifcodec
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/openscreen/src/third_party/mozilla
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/wayland
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zlib/google
- third_party/zxcvbn-cpp
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- #libxml
- libxslt
- openh264
- re2
- snappy
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_gnome_keyring=$(usex gnome-keyring true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false linux_use_bundled_binutils=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
-
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Prevent linker from running out of address space, bug #471810 .
- if use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2
- fi
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e "s:/usr/lib/:/usr/$(get_libdir)/:g" )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r3.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- doins out/Release/*.so
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-87.0.4278.0.ebuild b/www-client/chromium/chromium-87.0.4278.0.ebuild
deleted file mode 100644
index 7539055..0000000
--- a/www-client/chromium/chromium-87.0.4278.0.ebuild
+++ /dev/null
@@ -1,892 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-79-gcc-protobuf-alignas.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-compiler-r1.patch"
- "${FILESDIR}/chromium-87-CursorFactory-include.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-87-ozone-deps.patch"
- "${FILESDIR}/chromium-87-thread_cache.patch"
- "${FILESDIR}/chromium-87-openscreen-crypto-include.patch"
- "${FILESDIR}/chromium-87-remotesyscall.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/libgifcodec
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shaka-player
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-88.0.4298.4.ebuild b/www-client/chromium/chromium-88.0.4298.4.ebuild
deleted file mode 100644
index 66467b3..0000000
--- a/www-client/chromium/chromium-88.0.4298.4.ebuild
+++ /dev/null
@@ -1,905 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-79-gcc-protobuf-alignas.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-compiler-r1.patch"
- "${FILESDIR}/chromium-87-CursorFactory-include.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-87-ozone-deps.patch"
- "${FILESDIR}/chromium-87-openscreen-crypto-include.patch"
- "${FILESDIR}/chromium-88-service-worker-registration-crash.patch"
- "${FILESDIR}/chromium-88-dawn-include.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-88-angle-renderer.patch"
- "${FILESDIR}/chromium-88-pcscan-nonfinal.patch"
- "${FILESDIR}/chromium-88-mediasource-uniqptrostream.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/libgifcodec
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shaka-player
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-cross
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tint
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-88.0.4302.0.ebuild b/www-client/chromium/chromium-88.0.4302.0.ebuild
deleted file mode 100644
index 6b66aff..0000000
--- a/www-client/chromium/chromium-88.0.4302.0.ebuild
+++ /dev/null
@@ -1,901 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-79-gcc-protobuf-alignas.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-compiler-r1.patch"
- "${FILESDIR}/chromium-87-CursorFactory-include.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-87-ozone-deps.patch"
- "${FILESDIR}/chromium-87-openscreen-crypto-include.patch"
- "${FILESDIR}/chromium-88-service-worker-registration-crash.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/libgifcodec
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shaka-player
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-cross
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tint
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-88.0.4324.11.ebuild b/www-client/chromium/chromium-88.0.4324.11.ebuild
deleted file mode 100644
index e6bc8e9..0000000
--- a/www-client/chromium/chromium-88.0.4324.11.ebuild
+++ /dev/null
@@ -1,907 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-79-gcc-protobuf-alignas.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-88-compiler.patch"
- "${FILESDIR}/chromium-87-CursorFactory-include.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-87-openscreen-crypto-include.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-88-compositor-dcheck.patch"
- "${FILESDIR}/chromium-88-system-icu.patch"
- "${FILESDIR}/chromium-88-tree-formatter-include.patch"
- "${FILESDIR}/chromium-88-gpu-internals-ozone.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgifcodec
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shaka-player
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-cross
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tint
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-89.0.4343.0.ebuild b/www-client/chromium/chromium-89.0.4343.0.ebuild
deleted file mode 100644
index c6cafc8..0000000
--- a/www-client/chromium/chromium-89.0.4343.0.ebuild
+++ /dev/null
@@ -1,912 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-fix-char_traits.patch"
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-87-openscreen-crypto-include.patch"
- "${FILESDIR}/chromium-88-compiler.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-88-compositor-dcheck.patch"
- "${FILESDIR}/chromium-88-system-icu.patch"
- "${FILESDIR}/chromium-88-tree-formatter-include.patch"
- "${FILESDIR}/chromium-89-CursorFactory-include.patch"
- "${FILESDIR}/chromium-89-dawn-string-include.patch"
- "${FILESDIR}/chromium-89-angle-display.patch"
- "${FILESDIR}/chromium-89-pcscan-include.patch"
- "${FILESDIR}/chromium-89-quiche-uniqueptr.patch"
- "${FILESDIR}/chromium-89-sstream.patch"
- "${FILESDIR}/chromium-89-content-dcheck-uniqueptr.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/angle/third_party/glslang
- third_party/angle/third_party/spirv-headers
- third_party/angle/third_party/spirv-tools
- third_party/angle/third_party/vulkan-headers
- third_party/angle/third_party/vulkan-loader
- third_party/angle/third_party/vulkan-tools
- third_party/angle/third_party/vulkan-validation-layers
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgifcodec
- third_party/glslang
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libva_protected_content
- third_party/libudev
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shaka-player
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/spirv-cross
- third_party/spirv-headers
- third_party/SPIRV-Tools
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tint
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-89.0.4381.6.ebuild b/www-client/chromium/chromium-89.0.4381.6.ebuild
deleted file mode 100644
index 1c1c565..0000000
--- a/www-client/chromium/chromium-89.0.4381.6.ebuild
+++ /dev/null
@@ -1,894 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-84-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-88-compiler.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-89-compositor-dcheck.patch"
- "${FILESDIR}/chromium-89-quiche-uniqueptr_r1.patch"
- "${FILESDIR}/chromium-89-uigfx-image-skia.patch"
- "${FILESDIR}/chromium-89-webui-config-include.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/emoji-segmenter
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgifcodec
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libva_protected_content
- third_party/libudev
- third_party/liburlpattern
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shaka-player
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tint
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/adobe
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-90.0.4430.19.ebuild b/www-client/chromium/chromium-90.0.4430.19.ebuild
deleted file mode 100644
index 9bc361f..0000000
--- a/www-client/chromium/chromium-90.0.4430.19.ebuild
+++ /dev/null
@@ -1,911 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-88-compiler.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-90-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-90-compositor-dcheck.patch"
- "${FILESDIR}/chromium-90-quiche-uniqueptr.patch"
- "${FILESDIR}/chromium-90-disable-nomerge.patch"
- "${FILESDIR}/chromium-90-quantization-util-stdint.patch"
- "${FILESDIR}/chromium-90-langdetect-include.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgav1
- third_party/libgifcodec
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libva_protected_content
- third_party/libudev
- third_party/liburlpattern
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/libzip
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/ruy
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tint
- third_party/tflite-support
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-91.0.4442.4.ebuild b/www-client/chromium/chromium-91.0.4442.4.ebuild
deleted file mode 100644
index d6e872a..0000000
--- a/www-client/chromium/chromium-91.0.4442.4.ebuild
+++ /dev/null
@@ -1,910 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-88-compiler.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-90-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-90-compositor-dcheck.patch"
- "${FILESDIR}/chromium-90-quiche-uniqueptr.patch"
- "${FILESDIR}/chromium-91-disable-nomerge.patch"
- "${FILESDIR}/chromium-91-clipboard-ozone.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgav1
- third_party/libgifcodec
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libva_protected_content
- third_party/libudev
- third_party/liburlpattern
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/libzip
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/ruy
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tint
- third_party/tflite-support
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-91.0.4469.4.ebuild b/www-client/chromium/chromium-91.0.4469.4.ebuild
deleted file mode 100644
index 43245a7..0000000
--- a/www-client/chromium/chromium-91.0.4469.4.ebuild
+++ /dev/null
@@ -1,917 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-87-std-max_align_t.patch"
- "${FILESDIR}/chromium-91-compiler.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-90-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-90-compositor-dcheck.patch"
- "${FILESDIR}/chromium-90-quiche-uniqueptr.patch"
- "${FILESDIR}/chromium-91-disable-nomerge.patch"
- "${FILESDIR}/chromium-91-clipboard-ozone.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter versions
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
- sed -i -e "s|python2|python2\.7|g" buildtools/linux64/clang-format || die
- sed -i -e "s|python|python2\.7|g" \
- third_party/dom_distiller_js/protoc_plugins/json_values_converter.py || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgav1
- third_party/libgifcodec
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libavif
- third_party/libjingle
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libva_protected_content
- third_party/libudev
- third_party/liburlpattern
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/libzip
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/ruy
- third_party/s2cellid
- third_party/schema_org
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tint
- third_party/tflite-support
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-92.0.4503.0.ebuild b/www-client/chromium/chromium-92.0.4503.0.ebuild
deleted file mode 100644
index 4d64594..0000000
--- a/www-client/chromium/chromium-92.0.4503.0.ebuild
+++ /dev/null
@@ -1,919 +0,0 @@
-# Copyright 2009-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless js-type-check kerberos official pic +proprietary-codecs pulseaudio selinux +suid +system-ffmpeg +system-icu +system-libvpx +tcmalloc wayland widevine vaapi"
-RESTRICT="!system-ffmpeg? ( proprietary-codecs? ( bindist ) )"
-REQUIRED_USE="
- component-build? ( !suid )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libXScrnSaver:=
- x11-libs/libxcb:=
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- system-libvpx? ( >=media-libs/libvpx-1.8.2:=[postproc] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- dev-libs/libffi:=
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- x11-libs/libxkbcommon:=
- )
- )
-"
-# For nvidia-drivers blocker, see bug #413637 .
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
- tcmalloc? ( !<x11-drivers/nvidia-drivers-331.20 )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-10"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-10"
- DEPEND+=" >=sys-libs/libcxx-10"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-67.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-86-ConsumeDurationNumber-constexpr.patch"
- "${FILESDIR}/chromium-91-compiler.patch"
- "${FILESDIR}/chromium-88-dawn-size_t-std.patch"
- "${FILESDIR}/chromium-90-blink-disable-clang-format.patch"
- "${FILESDIR}/chromium-90-compositor-dcheck.patch"
- "${FILESDIR}/chromium-90-quiche-uniqueptr.patch"
- "${FILESDIR}/chromium-91-disable-nomerge.patch"
- "${FILESDIR}/chromium-92-base_atomic_include.patch"
-)
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- # component build hangs with tcmalloc enabled due to sandbox issue, bug #695976.
- if has usersandbox ${FEATURES} && use tcmalloc && use component-build; then
- die "Component build with tcmalloc requires FEATURES=-usersandbox."
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- if use component-build; then
- die "Component build with clang requires fuzzer headers."
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="7G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter versions
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
- sed -i -e "s|python2|python2\.7|g" buildtools/linux64/clang-format || die
- sed -i -e "s|python|python2\.7|g" \
- third_party/dom_distiller_js/protoc_plugins/json_values_converter.py || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/eu-strip
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/depot_tools/third_party
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/fabricjs
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/libgav1
- third_party/libgifcodec
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/highway
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libavif
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libva_protected_content
- third_party/libudev
- third_party/liburlpattern
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/libzip
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/ruy
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tensorflow-text
- third_party/tflite-support
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-libvpx; then
- keeplibs+=( third_party/libvpx )
- keeplibs+=( third_party/libvpx/source/libvpx/third_party/x86inc )
-
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
- fi
- if use tcmalloc; then
- keeplibs+=( third_party/tcmalloc )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- myconf_gn+=" use_allocator=$(usex tcmalloc \"tcmalloc\" \"none\")"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-libvpx; then
- gn_system_libraries+=( libvpx )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- if use wayland || use headless; then
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" use_ozone=false"
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0:${PYTHONPATH+:}${PYTHONPATH}"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so)
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-}
diff --git a/www-client/chromium/chromium-92.0.4512.4.ebuild b/www-client/chromium/chromium-92.0.4512.4.ebuild
deleted file mode 100644
index 2ddcb4a..0000000
--- a/www-client/chromium/chromium-92.0.4512.4.ebuild
+++ /dev/null
@@ -1,937 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- dev-lang/python:2.7[xml]
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="8G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-90-ruy-include.patch"
- "${FILESDIR}/chromium-91-compiler-r1.patch"
- "${FILESDIR}/chromium-92-sql-cursor.patch"
-# "${FILESDIR}/chromium-89-EnumTable-crash.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- # seccomp sandbox is broken if compiled against >=sys-libs/glibc-2.33, bug #769989
- if has_version -d ">=sys-libs/glibc-2.33"; then
- ewarn "Adding experimental glibc-2.33 sandbox patch. Seccomp sandbox might"
- ewarn "still not work correctly. In case of issues, try to disable seccomp"
- ewarn "sandbox by adding --disable-seccomp-filter-sandbox to CHROMIUM_FLAGS"
- ewarn "in /etc/chromium/default."
- PATCHES+=(
- "${FILESDIR}/chromium-92-glibc-2.33.patch"
- )
- fi
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter versions
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
- sed -i -e "s|python2|python2\.7|g" buildtools/linux64/clang-format || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- buildtools/third_party/eu-strip
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/compiler
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4
- third_party/catapult/third_party/html5lib-python
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/tflite-support
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false) rtc_pipewire_version=\"0.3\""
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- # don't inherit PYTHONPATH from environment, bug #789021
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/crashpad_handler
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-93.0.4535.3.ebuild b/www-client/chromium/chromium-93.0.4535.3.ebuild
deleted file mode 100644
index f01fdb2..0000000
--- a/www-client/chromium/chromium-93.0.4535.3.ebuild
+++ /dev/null
@@ -1,939 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- dev-lang/python:2.7[xml]
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="8G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-90-ruy-include.patch"
- "${FILESDIR}/chromium-91-compiler-r1.patch"
- "${FILESDIR}/chromium-91-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-93-sql-virtual-cursor.patch"
- "${FILESDIR}/chromium-93-AXPropertyNode-private.patch"
- "${FILESDIR}/chromium-93-site_settings_helper-initialzation.patch"
- "${FILESDIR}/chromium-93-tint-include.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- # seccomp sandbox is broken if compiled against >=sys-libs/glibc-2.33, bug #769989
- if has_version -d ">=sys-libs/glibc-2.33"; then
- ewarn "Adding experimental glibc-2.33 sandbox patch. Seccomp sandbox might"
- ewarn "still not work correctly. In case of issues, try to disable seccomp"
- ewarn "sandbox by adding --disable-seccomp-filter-sandbox to CHROMIUM_FLAGS"
- ewarn "in /etc/chromium/default."
- PATCHES+=(
- "${FILESDIR}/chromium-92-glibc-2.33.patch"
- )
- fi
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter versions
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
- sed -i -e "s|python2|python2\.7|g" buildtools/linux64/clang-format || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- buildtools/third_party/eu-strip
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/tflite-support
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- tools/grit/third_party/six
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false) rtc_pipewire_version=\"0.3\""
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- # don't inherit PYTHONPATH from environment, bug #789021
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/crashpad_handler
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-93.0.4573.0.ebuild b/www-client/chromium/chromium-93.0.4573.0.ebuild
deleted file mode 100644
index 8058db7..0000000
--- a/www-client/chromium/chromium-93.0.4573.0.ebuild
+++ /dev/null
@@ -1,954 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- dev-lang/python:2.7[xml]
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="8G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-90-ruy-include.patch"
- "${FILESDIR}/chromium-91-compiler-r1.patch"
- "${FILESDIR}/chromium-91-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-93-sql-virtual-cursor.patch"
- "${FILESDIR}/chromium-93-net-http-include.patch"
- "${FILESDIR}/chromium-93-quiche-logging-include.patch"
- "${FILESDIR}/chromium-93-ui-event-include.patch"
- "${FILESDIR}/chromium-93-media-ffmpeg-type.patch"
- "${FILESDIR}/chromium-93-pwdmgr-include.patch"
- "${FILESDIR}/chromium-93-lang-prefs-include.patch"
- "${FILESDIR}/chromium-93-gpu-ipc-include.patch"
- "${FILESDIR}/chromium-93-pdfium-include.patch"
- "${FILESDIR}/chromium-93-payment-include.patch"
- "${FILESDIR}/chromium-93-webapp-include.patch"
- "${FILESDIR}/chromium-93-dnsprefetch-include.patch"
- "${FILESDIR}/chromium-93-phishing-classifier-include.patch"
- "${FILESDIR}/chromium-93-devtools-msg-dispatcher-include.patch"
- "${FILESDIR}/chromium-93-hid-chooser-include.patch"
- "${FILESDIR}/chromium-93-url-loader-throttles-include.patch"
- "${FILESDIR}/chromium-93-sms-fetcher-include.patch"
- "${FILESDIR}/chromium-93-cart-include.patch"
- "${FILESDIR}/chromium-93-login-detection-include.patch"
- "${FILESDIR}/chromium-93-media-history-include.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- # seccomp sandbox is broken if compiled against >=sys-libs/glibc-2.33, bug #769989
- if has_version -d ">=sys-libs/glibc-2.33"; then
- ewarn "Adding experimental glibc-2.33 sandbox patch. Seccomp sandbox might"
- ewarn "still not work correctly. In case of issues, try to disable seccomp"
- ewarn "sandbox by adding --disable-seccomp-filter-sandbox to CHROMIUM_FLAGS"
- ewarn "in /etc/chromium/default."
- PATCHES+=(
- "${FILESDIR}/chromium-92-glibc-2.33.patch"
- )
- fi
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter versions
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
- sed -i -e "s|python2|python2\.7|g" buildtools/linux64/clang-format || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- buildtools/third_party/eu-strip
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/tflite-support
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false) rtc_pipewire_version=\"0.3\""
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- # don't inherit PYTHONPATH from environment, bug #789021
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/crashpad_handler
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-93.0.4577.8.ebuild b/www-client/chromium/chromium-93.0.4577.8.ebuild
deleted file mode 100644
index 6ea058a..0000000
--- a/www-client/chromium/chromium-93.0.4577.8.ebuild
+++ /dev/null
@@ -1,941 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz
- https://files.pythonhosted.org/packages/ed/7b/bbf89ca71e722b7f9464ebffe4b5ee20a9e5c9a555a56e2d3914bb9119a6/setuptools-44.1.0.zip"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- media-libs/freetype:=
- >=media-libs/harfbuzz-2.4.0:0=[icu(-)]
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- >=app-arch/gzip-1.7
- app-arch/unzip
- dev-lang/perl
- dev-lang/python:2.7[xml]
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="3G"
- CHECKREQS_DISK_BUILD="8G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-90-ruy-include.patch"
- "${FILESDIR}/chromium-91-compiler-r1.patch"
- "${FILESDIR}/chromium-91-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-93-sql-virtual-cursor.patch"
- "${FILESDIR}/chromium-93-media-ffmpeg-type.patch"
- "${FILESDIR}/chromium-93-pdfium-include.patch"
- "${FILESDIR}/chromium-93-devtools-msg-dispatcher-include.patch"
- "${FILESDIR}/chromium-93-worksp-ext-include.patch"
- "${FILESDIR}/chromium-93-pwdmgr-include-r1.patch"
- "${FILESDIR}/chromium-93-ext-autoconfirm-include.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- # seccomp sandbox is broken if compiled against >=sys-libs/glibc-2.33, bug #769989
- if has_version -d ">=sys-libs/glibc-2.33"; then
- ewarn "Adding experimental glibc-2.33 sandbox patch. Seccomp sandbox might"
- ewarn "still not work correctly. In case of issues, try to disable seccomp"
- ewarn "sandbox by adding --disable-seccomp-filter-sandbox to CHROMIUM_FLAGS"
- ewarn "in /etc/chromium/default."
- PATCHES+=(
- "${FILESDIR}/chromium-92-glibc-2.33.patch"
- )
- fi
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter versions
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
- sed -i -e "s|python2|python2\.7|g" buildtools/linux64/clang-format || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- buildtools/third_party/eu-strip
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng/utils
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/tflite-support
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false) rtc_pipewire_version=\"0.3\""
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" fieldtrial_testing_like_official_build=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # https://bugs.gentoo.org/717456
- # don't inherit PYTHONPATH from environment, bug #789021
- local -x PYTHONPATH="${WORKDIR}/setuptools-44.1.0"
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/crashpad_handler
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-94.0.4606.12.ebuild b/www-client/chromium/chromium-94.0.4606.12.ebuild
deleted file mode 100644
index 865710c..0000000
--- a/www-client/chromium/chromium-94.0.4606.12.ebuild
+++ /dev/null
@@ -1,937 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0:=
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=yes}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-90-ruy-include.patch"
- "${FILESDIR}/chromium-91-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-94-compiler.patch"
- "${FILESDIR}/chromium-94-ConversionStorageSql-lambda.patch"
- "${FILESDIR}/chromium-94-CustomSpaces-include.patch"
- "${FILESDIR}/chromium-93-EnumTable-crash.patch"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-94-translate.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/tflite-support
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- # Depends on unreleased harfbuzz features
- # myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false) rtc_pipewire_version=\"0.3\""
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-95.0.4628.3.ebuild b/www-client/chromium/chromium-95.0.4628.3.ebuild
deleted file mode 100644
index 3790e54..0000000
--- a/www-client/chromium/chromium-95.0.4628.3.ebuild
+++ /dev/null
@@ -1,935 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic multilib ninja-utils pax-utils portability python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0:=
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-91-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-94-compiler.patch"
- "${FILESDIR}/chromium-95-hash_traits-include.patch"
- "${FILESDIR}/chromium-95-text_fragments_utils-include.patch"
- "${FILESDIR}/chromium-93-EnumTable-crash.patch"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/harfbuzz-ng
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/tflite-support
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_libsrtp (bug #459932).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_ssl (http://crbug.com/58087).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- # Depends on unreleased harfbuzz features
- # myconf_gn+=" use_system_harfbuzz=true"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false) rtc_pipewire_version=\"0.3\""
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- export HTTP_PROXY=127.0.0.1:8123
- export HTTPS_PROXY=127.0.0.1:8123
- export http_proxy=127.0.0.1:8123
- export https_proxy=127.0.0.1:8123
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(usex wayland true false):g;
- s:@@FORCE_OZONE_PLATFORM@@:$(usex headless true false):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r6.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-96.0.4662.6.ebuild b/www-client/chromium/chromium-96.0.4662.6.ebuild
deleted file mode 100644
index 99ef5fd..0000000
--- a/www-client/chromium/chromium-96.0.4662.6.ebuild
+++ /dev/null
@@ -1,957 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python3_9 )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-95-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-96-compiler.patch"
- "${FILESDIR}/chromium-96-AppliedTextDecoration-include.patch"
- "${FILESDIR}/chromium-96-template-friend.patch"
- "${FILESDIR}/chromium-96-ax_platform-list-init.patch"
- "${FILESDIR}/chromium-96-coupondb-include.patch"
-
- "${FILESDIR}/chromium-96-EnumTable-crash.patch"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- local google_default_client_id="329227923882.apps.googleusercontent.com"
- local google_default_client_secret="vgKG0NNv7GoDpbtoFNLxCUXu"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- myconf_gn+=" google_default_client_id=\"${google_default_client_id}\""
- myconf_gn+=" google_default_client_secret=\"${google_default_client_secret}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-96.0.4664.18.ebuild b/www-client/chromium/chromium-96.0.4664.18.ebuild
deleted file mode 100644
index 858ba12..0000000
--- a/www-client/chromium/chromium-96.0.4664.18.ebuild
+++ /dev/null
@@ -1,952 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- app-arch/snappy:=
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-95-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-96-compiler.patch"
- "${FILESDIR}/chromium-96-AppliedTextDecoration-include.patch"
- "${FILESDIR}/chromium-96-coupondb-include.patch"
- "${FILESDIR}/chromium-96-restricted_cookie_manager-pair.patch"
- "${FILESDIR}/chromium-96-drm_render_node_path_finder-include.patch"
- "${FILESDIR}/chromium-96-command_line-include.patch"
-
- "${FILESDIR}/chromium-96-EnumTable-crash.patch"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- keeplibs+=( third_party/snappy )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- gn_system_libraries+=( snappy )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-97.0.4682.3.ebuild b/www-client/chromium/chromium-97.0.4682.3.ebuild
deleted file mode 100644
index 7ab60cf..0000000
--- a/www-client/chromium/chromium-97.0.4682.3.ebuild
+++ /dev/null
@@ -1,948 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-95-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-96-compiler.patch"
- "${FILESDIR}/chromium-97-shared_element_res-include.patch"
-
- "${FILESDIR}/chromium-96-EnumTable-crash.patch"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-97.0.4688.2.ebuild b/www-client/chromium/chromium-97.0.4688.2.ebuild
deleted file mode 100644
index ecab0ce..0000000
--- a/www-client/chromium/chromium-97.0.4688.2.ebuild
+++ /dev/null
@@ -1,947 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- media-libs/libpng:=
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-95-libyuv-aarch64.patch"
- "${FILESDIR}/chromium-96-compiler.patch"
-
- "${FILESDIR}/chromium-96-EnumTable-crash.patch"
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-98.0.4710.4.ebuild b/www-client/chromium/chromium-98.0.4710.4.ebuild
deleted file mode 100644
index a415bf6..0000000
--- a/www-client/chromium/chromium-98.0.4710.4.ebuild
+++ /dev/null
@@ -1,956 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- sys-apps/hwids[usb(+)]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-95-libyuv-arm.patch"
- "${FILESDIR}/chromium-97-ScrollView-reference.patch"
- "${FILESDIR}/chromium-98-compiler.patch"
- "${FILESDIR}/chromium-98-breakpad-max.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libdrm
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libpng
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-98.0.4750.0.ebuild b/www-client/chromium/chromium-98.0.4750.0.ebuild
deleted file mode 100644
index a750046..0000000
--- a/www-client/chromium/chromium-98.0.4750.0.ebuild
+++ /dev/null
@@ -1,964 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=no}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-95-libyuv-arm.patch"
- "${FILESDIR}/chromium-98-compiler-r1.patch"
- "${FILESDIR}/chromium-98-MiraclePtr-gcc-ice.patch"
- "${FILESDIR}/chromium-98-c++17-constexpr-1.patch"
- "${FILESDIR}/chromium-98-geometry-cubic_bezier-include.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-system-libdrm.patch"
- "${FILESDIR}/chromium-glibc-2.34.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/chromium-99.0.4818.0.ebuild b/www-client/chromium/chromium-99.0.4818.0.ebuild
deleted file mode 100644
index 777eb91..0000000
--- a/www-client/chromium/chromium-99.0.4818.0.ebuild
+++ /dev/null
@@ -1,965 +0,0 @@
-# Copyright 2009-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-PYTHON_COMPAT=( python3_{8..10} )
-PYTHON_REQ_USE="xml"
-
-CHROMIUM_LANGS="am ar bg bn ca cs da de el en-GB es es-419 et fa fi fil fr gu he
- hi hr hu id it ja kn ko lt lv ml mr ms nb nl pl pt-BR pt-PT ro ru sk sl sr
- sv sw ta te th tr uk vi zh-CN zh-TW"
-
-inherit check-reqs chromium-2 desktop flag-o-matic ninja-utils pax-utils python-any-r1 readme.gentoo-r1 toolchain-funcs xdg-utils
-
-DESCRIPTION="Open-source version of Google Chrome web browser"
-HOMEPAGE="https://chromium.org/"
-SRC_URI="https://commondatastorage.googleapis.com/chromium-browser-official/${P}.tar.xz"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-IUSE="component-build cups cpu_flags_arm_neon debug +hangouts headless +js-type-check kerberos official pic +proprietary-codecs pulseaudio screencast selinux +suid +system-ffmpeg +system-harfbuzz +system-icu +system-png vaapi wayland widevine"
-REQUIRED_USE="
- component-build? ( !suid )
- screencast? ( wayland )
-"
-
-COMMON_X_DEPEND="
- media-libs/mesa:=[gbm(+)]
- x11-libs/libX11:=
- x11-libs/libXcomposite:=
- x11-libs/libXcursor:=
- x11-libs/libXdamage:=
- x11-libs/libXext:=
- x11-libs/libXfixes:=
- >=x11-libs/libXi-1.6.0:=
- x11-libs/libXrandr:=
- x11-libs/libXrender:=
- x11-libs/libXtst:=
- x11-libs/libxcb:=
- x11-libs/libxshmfence:=
- vaapi? ( >=x11-libs/libva-2.7:=[X,drm] )
-"
-
-COMMON_DEPEND="
- app-arch/bzip2:=
- cups? ( >=net-print/cups-1.3.11:= )
- dev-libs/expat:=
- dev-libs/glib:2
- >=dev-libs/libxml2-2.9.4-r3:=[icu]
- dev-libs/nspr:=
- >=dev-libs/nss-3.26:=
- >=media-libs/alsa-lib-1.0.19:=
- media-libs/fontconfig:=
- >=media-libs/freetype-2.11.0-r1:=
- system-harfbuzz? ( >=media-libs/harfbuzz-2.9.0:0=[icu(-)] )
- media-libs/libjpeg-turbo:=
- system-png? ( media-libs/libpng:=[-apng] )
- pulseaudio? ( media-sound/pulseaudio:= )
- system-ffmpeg? (
- >=media-video/ffmpeg-4.3:=
- || (
- media-video/ffmpeg[-samba]
- >=net-fs/samba-4.5.10-r1[-debug(-)]
- )
- >=media-libs/opus-1.3.1:=
- )
- net-misc/curl[ssl]
- sys-apps/dbus:=
- sys-apps/pciutils:=
- virtual/udev
- x11-libs/cairo:=
- x11-libs/gdk-pixbuf:2
- x11-libs/libxkbcommon:=
- x11-libs/pango:=
- media-libs/flac:=
- >=media-libs/libwebp-0.4.0:=
- sys-libs/zlib:=[minizip]
- kerberos? ( virtual/krb5 )
- !headless? (
- ${COMMON_X_DEPEND}
- >=app-accessibility/at-spi2-atk-2.26:2
- >=app-accessibility/at-spi2-core-2.26:2
- >=dev-libs/atk-2.26
- x11-libs/gtk+:3[X]
- wayland? (
- dev-libs/wayland:=
- screencast? ( media-video/pipewire:0/0.3 )
- x11-libs/gtk+:3[wayland,X]
- x11-libs/libdrm:=
- )
- )
-"
-RDEPEND="${COMMON_DEPEND}
- x11-misc/xdg-utils
- virtual/opengl
- virtual/ttf-fonts
- selinux? ( sec-policy/selinux-chromium )
-"
-DEPEND="${COMMON_DEPEND}
-"
-# dev-vcs/git - https://bugs.gentoo.org/593476
-BDEPEND="
- ${PYTHON_DEPS}
- $(python_gen_any_dep '
- dev-python/setuptools[${PYTHON_USEDEP}]
- ')
- >=app-arch/gzip-1.7
- dev-lang/perl
- >=dev-util/gn-0.1807
- dev-vcs/git
- >=dev-util/gperf-3.0.3
- >=dev-util/ninja-1.7.2
- >=net-libs/nodejs-7.6.0[inspector]
- >=sys-devel/bison-2.4.3
- sys-devel/flex
- virtual/pkgconfig
- js-type-check? ( virtual/jre )
-"
-
-# These are intended for ebuild maintainer use to force clang if GCC is broken.
-: ${CHROMIUM_FORCE_CLANG=yes}
-: ${CHROMIUM_FORCE_LIBCXX=no}
-
-if [[ ${CHROMIUM_FORCE_CLANG} == yes ]]; then
- BDEPEND+=" >=sys-devel/clang-12"
-fi
-
-if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- RDEPEND+=" >=sys-libs/libcxx-12"
- DEPEND+=" >=sys-libs/libcxx-12"
-else
- COMMON_DEPEND="
- dev-libs/libxslt:=
- >=dev-libs/re2-0.2019.08.01:=
- >=media-libs/openh264-1.6.0:=
- system-icu? ( >=dev-libs/icu-69.1:= )
- "
- RDEPEND+="${COMMON_DEPEND}"
- DEPEND+="${COMMON_DEPEND}"
-fi
-
-if ! has chromium_pkg_die ${EBUILD_DEATH_HOOKS}; then
- EBUILD_DEATH_HOOKS+=" chromium_pkg_die";
-fi
-
-DISABLE_AUTOFORMATTING="yes"
-DOC_CONTENTS="
-Some web pages may require additional fonts to display properly.
-Try installing some of the following packages if some characters
-are not displayed properly:
-- media-fonts/arphicfonts
-- media-fonts/droid
-- media-fonts/ipamonafont
-- media-fonts/noto
-- media-fonts/ja-ipafonts
-- media-fonts/takao-fonts
-- media-fonts/wqy-microhei
-- media-fonts/wqy-zenhei
-
-To fix broken icons on the Downloads page, you should install an icon
-theme that covers the appropriate MIME types, and configure this as your
-GTK+ icon theme.
-
-For native file dialogs in KDE, install kde-apps/kdialog.
-
-To make password storage work with your desktop environment you may
-have install one of the supported credentials management applications:
-- app-crypt/libsecret (GNOME)
-- kde-frameworks/kwallet (KDE)
-If you have one of above packages installed, but don't want to use
-them in Chromium, then add --password-store=basic to CHROMIUM_FLAGS
-in /etc/chromium/default.
-"
-
-python_check_deps() {
- has_version -b "dev-python/setuptools[${PYTHON_USEDEP}]"
-}
-
-pre_build_checks() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- local -x CPP="$(tc-getCXX) -E"
- if tc-is-gcc && ! ver_test "$(gcc-version)" -ge 9.2; then
- die "At least gcc 9.2 is required"
- fi
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] || tc-is-clang; then
- CPP="${CHOST}-clang++ -E"
- if ! ver_test "$(clang-major-version)" -ge 12; then
- die "At least clang 12 is required"
- fi
- fi
- fi
-
- # Check build requirements, bug #541816 and bug #471810 .
- CHECKREQS_MEMORY="4G"
- CHECKREQS_DISK_BUILD="9G"
- if ( shopt -s extglob; is-flagq '-g?(gdb)?([1-9])' ); then
- if use custom-cflags || use component-build; then
- CHECKREQS_DISK_BUILD="25G"
- fi
- if ! use component-build; then
- CHECKREQS_MEMORY="16G"
- fi
- fi
- check-reqs_pkg_setup
-}
-
-pkg_pretend() {
- pre_build_checks
-}
-
-pkg_setup() {
- pre_build_checks
-
- chromium_suid_sandbox_check_kernel_config
-
- # nvidia-drivers does not work correctly with Wayland due to unsupported EGLStreams
- if use wayland && ! use headless && has_version "x11-drivers/nvidia-drivers"; then
- ewarn "Proprietary nVidia driver does not work with Wayland. You can disable"
- ewarn "Wayland by setting DISABLE_OZONE_PLATFORM=true in /etc/chromium/default."
- fi
-}
-
-src_prepare() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local PATCHES=(
- "${FILESDIR}/chromium-78-protobuf-RepeatedPtrField-export.patch"
- "${FILESDIR}/chromium-98-compiler-r1.patch"
- "${FILESDIR}/chromium-98-MiraclePtr-gcc-ice.patch"
- "${FILESDIR}/chromium-99-dnd-3381679.patch"
- "${FILESDIR}/chromium-99-sqlcursor.patch"
- "${FILESDIR}/chromium-99-dns_scoped_res_state-include.patch"
- "${FILESDIR}/chromium-99-predction_common-include.patch"
- "${FILESDIR}/chromium-99-sandbox-glib234.patch"
-
- "${FILESDIR}/chromium-93-InkDropHost-crash.patch"
- "${FILESDIR}/chromium-98-EnumTable-crash.patch"
- "${FILESDIR}/chromium-98-system-libdrm.patch"
- "${FILESDIR}/chromium-use-oauth2-client-switches-as-default.patch"
- "${FILESDIR}/chromium-shim_headers.patch"
- )
-
- default
-
- mkdir -p third_party/node/linux/node-linux-x64/bin || die
- ln -s "${EPREFIX}"/usr/bin/node third_party/node/linux/node-linux-x64/bin/node || die
-
- # adjust python interpreter version
- sed -i -e "s|\(^script_executable = \).*|\1\"${EPYTHON}\"|g" .gn || die
-
- local keeplibs=(
- base/third_party/cityhash
- base/third_party/double_conversion
- base/third_party/dynamic_annotations
- base/third_party/icu
- base/third_party/nspr
- base/third_party/superfasthash
- base/third_party/symbolize
- base/third_party/valgrind
- base/third_party/xdg_mime
- base/third_party/xdg_user_dirs
- buildtools/third_party/libc++
- buildtools/third_party/libc++abi
- chrome/third_party/mozilla_security_manager
- courgette/third_party
- net/third_party/mozilla_security_manager
- net/third_party/nss
- net/third_party/quic
- net/third_party/uri_template
- third_party/abseil-cpp
- third_party/angle
- third_party/angle/src/common/third_party/base
- third_party/angle/src/common/third_party/smhasher
- third_party/angle/src/common/third_party/xxhash
- third_party/angle/src/third_party/libXNVCtrl
- third_party/angle/src/third_party/trace_event
- third_party/angle/src/third_party/volk
- third_party/apple_apsl
- third_party/axe-core
- third_party/blink
- third_party/boringssl
- third_party/boringssl/src/third_party/fiat
- third_party/breakpad
- third_party/breakpad/breakpad/src/third_party/curl
- third_party/brotli
- third_party/catapult
- third_party/catapult/common/py_vulcanize/third_party/rcssmin
- third_party/catapult/common/py_vulcanize/third_party/rjsmin
- third_party/catapult/third_party/beautifulsoup4-4.9.3
- third_party/catapult/third_party/html5lib-1.1
- third_party/catapult/third_party/polymer
- third_party/catapult/third_party/six
- third_party/catapult/tracing/third_party/d3
- third_party/catapult/tracing/third_party/gl-matrix
- third_party/catapult/tracing/third_party/jpeg-js
- third_party/catapult/tracing/third_party/jszip
- third_party/catapult/tracing/third_party/mannwhitneyu
- third_party/catapult/tracing/third_party/oboe
- third_party/catapult/tracing/third_party/pako
- third_party/ced
- third_party/cld_3
- third_party/closure_compiler
- third_party/crashpad
- third_party/crashpad/crashpad/third_party/lss
- third_party/crashpad/crashpad/third_party/zlib
- third_party/crc32c
- third_party/cros_system_api
- third_party/dav1d
- third_party/dawn
- third_party/dawn/third_party/khronos
- third_party/dawn/third_party/tint
- third_party/depot_tools
- third_party/devscripts
- third_party/devtools-frontend
- third_party/devtools-frontend/src/front_end/third_party/acorn
- third_party/devtools-frontend/src/front_end/third_party/axe-core
- third_party/devtools-frontend/src/front_end/third_party/chromium
- third_party/devtools-frontend/src/front_end/third_party/codemirror
- third_party/devtools-frontend/src/front_end/third_party/diff
- third_party/devtools-frontend/src/front_end/third_party/i18n
- third_party/devtools-frontend/src/front_end/third_party/intl-messageformat
- third_party/devtools-frontend/src/front_end/third_party/lighthouse
- third_party/devtools-frontend/src/front_end/third_party/lit-html
- third_party/devtools-frontend/src/front_end/third_party/lodash-isequal
- third_party/devtools-frontend/src/front_end/third_party/marked
- third_party/devtools-frontend/src/front_end/third_party/puppeteer
- third_party/devtools-frontend/src/front_end/third_party/wasmparser
- third_party/devtools-frontend/src/test/unittests/front_end/third_party/i18n
- third_party/devtools-frontend/src/third_party
- third_party/distributed_point_functions
- third_party/dom_distiller_js
- third_party/eigen3
- third_party/emoji-segmenter
- third_party/farmhash
- third_party/fdlibm
- third_party/fft2d
- third_party/flatbuffers
- third_party/freetype
- third_party/fusejs
- third_party/highway
- third_party/libgifcodec
- third_party/liburlpattern
- third_party/libzip
- third_party/gemmlowp
- third_party/google_input_tools
- third_party/google_input_tools/third_party/closure_library
- third_party/google_input_tools/third_party/closure_library/third_party/closure
- third_party/googletest
- third_party/hunspell
- third_party/iccjpeg
- third_party/inspector_protocol
- third_party/jinja2
- third_party/jsoncpp
- third_party/jstemplate
- third_party/khronos
- third_party/leveldatabase
- third_party/libXNVCtrl
- third_party/libaddressinput
- third_party/libaom
- third_party/libaom/source/libaom/third_party/fastfeat
- third_party/libaom/source/libaom/third_party/vector
- third_party/libaom/source/libaom/third_party/x86inc
- third_party/libavif
- third_party/libgav1
- third_party/libjingle
- third_party/libjxl
- third_party/libphonenumber
- third_party/libsecret
- third_party/libsrtp
- third_party/libsync
- third_party/libudev
- third_party/libva_protected_content
- third_party/libvpx
- third_party/libvpx/source/libvpx/third_party/x86inc
- third_party/libwebm
- third_party/libx11
- third_party/libxcb-keysyms
- third_party/libxml/chromium
- third_party/libyuv
- third_party/llvm
- third_party/lottie
- third_party/lss
- third_party/lzma_sdk
- third_party/mako
- third_party/maldoca
- third_party/maldoca/src/third_party/tensorflow_protos
- third_party/maldoca/src/third_party/zlibwrapper
- third_party/markupsafe
- third_party/mesa
- third_party/metrics_proto
- third_party/minigbm
- third_party/modp_b64
- third_party/nasm
- third_party/nearby
- third_party/neon_2_sse
- third_party/node
- third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2
- third_party/one_euro_filter
- third_party/opencv
- third_party/openscreen
- third_party/openscreen/src/third_party/mozilla
- third_party/openscreen/src/third_party/tinycbor/src/src
- third_party/ots
- third_party/pdfium
- third_party/pdfium/third_party/agg23
- third_party/pdfium/third_party/base
- third_party/pdfium/third_party/bigint
- third_party/pdfium/third_party/freetype
- third_party/pdfium/third_party/lcms
- third_party/pdfium/third_party/libopenjpeg20
- third_party/pdfium/third_party/libpng16
- third_party/pdfium/third_party/libtiff
- third_party/pdfium/third_party/skia_shared
- third_party/perfetto
- third_party/perfetto/protos/third_party/chromium
- third_party/pffft
- third_party/ply
- third_party/polymer
- third_party/private-join-and-compute
- third_party/private_membership
- third_party/protobuf
- third_party/protobuf/third_party/six
- third_party/pyjson5
- third_party/qcms
- third_party/rnnoise
- third_party/s2cellid
- third_party/securemessage
- third_party/shell-encryption
- third_party/simplejson
- third_party/six
- third_party/skia
- third_party/skia/include/third_party/skcms
- third_party/skia/include/third_party/vulkan
- third_party/skia/third_party/skcms
- third_party/skia/third_party/vulkan
- third_party/smhasher
- third_party/snappy
- third_party/sqlite
- third_party/swiftshader
- third_party/swiftshader/third_party/astc-encoder
- third_party/swiftshader/third_party/llvm-subzero
- third_party/swiftshader/third_party/marl
- third_party/swiftshader/third_party/subzero
- third_party/swiftshader/third_party/SPIRV-Headers/include/spirv/unified1
- third_party/tcmalloc
- third_party/tensorflow-text
- third_party/tflite
- third_party/tflite/src/third_party/eigen3
- third_party/tflite/src/third_party/fft2d
- third_party/ruy
- third_party/ukey2
- third_party/unrar
- third_party/usrsctp
- third_party/utf
- third_party/vulkan
- third_party/web-animations-js
- third_party/webdriver
- third_party/webgpu-cts
- third_party/webrtc
- third_party/webrtc/common_audio/third_party/ooura
- third_party/webrtc/common_audio/third_party/spl_sqrt_floor
- third_party/webrtc/modules/third_party/fft
- third_party/webrtc/modules/third_party/g711
- third_party/webrtc/modules/third_party/g722
- third_party/webrtc/rtc_base/third_party/base64
- third_party/webrtc/rtc_base/third_party/sigslot
- third_party/widevine
- third_party/woff2
- third_party/wuffs
- third_party/x11proto
- third_party/xcbproto
- third_party/zxcvbn-cpp
- third_party/zlib/google
- url/third_party/mozilla
- v8/src/third_party/siphash
- v8/src/third_party/valgrind
- v8/src/third_party/utf8-decoder
- v8/third_party/inspector_protocol
- v8/third_party/v8
-
- # gyp -> gn leftovers
- base/third_party/libevent
- third_party/speech-dispatcher
- third_party/usb_ids
- third_party/xdg-utils
- )
- if ! use system-ffmpeg; then
- keeplibs+=( third_party/ffmpeg third_party/opus )
- fi
- if ! use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- if ! use system-png; then
- keeplibs+=( third_party/libpng )
- fi
- if use system-harfbuzz; then
- keeplibs+=( third_party/harfbuzz-ng/utils )
- else
- keeplibs+=( third_party/harfbuzz-ng )
- fi
- if use wayland && ! use headless ; then
- keeplibs+=( third_party/wayland )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- keeplibs+=( third_party/libxml )
- keeplibs+=( third_party/libxslt )
- keeplibs+=( third_party/openh264 )
- keeplibs+=( third_party/re2 )
- if use system-icu; then
- keeplibs+=( third_party/icu )
- fi
- fi
- if use arm64 || use ppc64 ; then
- keeplibs+=( third_party/swiftshader/third_party/llvm-10.0 )
- fi
- # we need to generate ppc64 stuff because upstream does not ship it yet
- # it has to be done before unbundling.
- if use ppc64; then
- pushd third_party/libvpx >/dev/null || die
- mkdir -p source/config/linux/ppc64 || die
- ./generate_gni.sh || die
- popd >/dev/null || die
- fi
-
- # Remove most bundled libraries. Some are still needed.
- build/linux/unbundle/remove_bundled_libraries.py "${keeplibs[@]}" --do-remove || die
-
- if use js-type-check; then
- ln -s "${EPREFIX}"/usr/bin/java third_party/jdk/current/bin/java || die
- fi
-
- # bundled eu-strip is for amd64 only and we don't want to pre-stripped binaries
- mkdir -p buildtools/third_party/eu-strip/bin || die
- ln -s "${EPREFIX}"/bin/true buildtools/third_party/eu-strip/bin/eu-strip || die
-}
-
-src_configure() {
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- local myconf_gn=""
-
- # Make sure the build system will use the right tools, bug #340795.
- tc-export AR CC CXX NM
-
- if [[ ${CHROMIUM_FORCE_CLANG} == yes ]] && ! tc-is-clang; then
- # Force clang since gcc is pretty broken at the moment.
- CC=${CHOST}-clang
- CXX=${CHOST}-clang++
- strip-unsupported-flags
- fi
-
- if tc-is-clang; then
- myconf_gn+=" is_clang=true clang_use_chrome_plugins=false"
- else
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- die "Compiling with sys-libs/libcxx requires clang."
- fi
- myconf_gn+=" is_clang=false"
- fi
-
- # Define a custom toolchain for GN
- myconf_gn+=" custom_toolchain=\"//build/toolchain/linux/unbundle:default\""
-
- if tc-is-cross-compiler; then
- tc-export BUILD_{AR,CC,CXX,NM}
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:host\""
- myconf_gn+=" v8_snapshot_toolchain=\"//build/toolchain/linux/unbundle:host\""
- else
- myconf_gn+=" host_toolchain=\"//build/toolchain/linux/unbundle:default\""
- fi
-
- # GN needs explicit config for Debug/Release as opposed to inferring it from build directory.
- myconf_gn+=" is_debug=false"
-
- # enable DCHECK with USE=debug only, increases chrome binary size by 30%, bug #811138.
- # DCHECK is fatal by default, make it configurable at runtime, #bug 807881.
- myconf_gn+=" dcheck_always_on=$(usex debug true false)"
- myconf_gn+=" dcheck_is_configurable=$(usex debug true false)"
-
- # Component build isn't generally intended for use by end users. It's mostly useful
- # for development and debugging.
- myconf_gn+=" is_component_build=$(usex component-build true false)"
-
- # Disable nacl, we can't build without pnacl (http://crbug.com/269560).
- myconf_gn+=" enable_nacl=false"
-
- # Use system-provided libraries.
- # TODO: freetype -- remove sources (https://bugs.chromium.org/p/pdfium/issues/detail?id=733).
- # TODO: use_system_hunspell (upstream changes needed).
- # TODO: use_system_protobuf (bug #525560).
- # TODO: use_system_sqlite (http://crbug.com/22208).
-
- # libevent: https://bugs.gentoo.org/593458
- local gn_system_libraries=(
- flac
- fontconfig
- freetype
- # Need harfbuzz_from_pkgconfig target
- #harfbuzz-ng
- libdrm
- libjpeg
- libwebp
- zlib
- )
- if use system-ffmpeg; then
- gn_system_libraries+=( ffmpeg opus )
- fi
- if use system-icu; then
- gn_system_libraries+=( icu )
- fi
- if use system-png; then
- gn_system_libraries+=( libpng )
- fi
- if [[ ${CHROMIUM_FORCE_LIBCXX} != yes ]]; then
- # unbundle only without libc++, because libc++ is not fully ABI compatible with libstdc++
- gn_system_libraries+=( libxml )
- gn_system_libraries+=( libxslt )
- gn_system_libraries+=( openh264 )
- gn_system_libraries+=( re2 )
- fi
- build/linux/unbundle/replace_gn_files.py --system-libraries "${gn_system_libraries[@]}" || die
-
- # See dependency logic in third_party/BUILD.gn
- myconf_gn+=" use_system_harfbuzz=$(usex system-harfbuzz true false)"
-
- # Disable deprecated libgnome-keyring dependency, bug #713012
- myconf_gn+=" use_gnome_keyring=false"
-
- # Optional dependencies.
- myconf_gn+=" enable_js_type_check=$(usex js-type-check true false)"
- myconf_gn+=" enable_hangout_services_extension=$(usex hangouts true false)"
- myconf_gn+=" enable_widevine=$(usex widevine true false)"
- myconf_gn+=" use_cups=$(usex cups true false)"
- myconf_gn+=" use_kerberos=$(usex kerberos true false)"
- myconf_gn+=" use_pulseaudio=$(usex pulseaudio true false)"
- myconf_gn+=" use_vaapi=$(usex vaapi true false)"
- myconf_gn+=" rtc_use_pipewire=$(usex screencast true false)"
-
- # TODO: link_pulseaudio=true for GN.
-
- myconf_gn+=" disable_fieldtrial_testing_config=true"
-
- # Never use bundled gold binary. Disable gold linker flags for now.
- # Do not use bundled clang.
- # Trying to use gold results in linker crash.
- myconf_gn+=" use_gold=false use_sysroot=false use_custom_libcxx=false"
-
- # Disable forced lld, bug 641556
- myconf_gn+=" use_lld=false"
-
- # Disable pseudolocales, only used for testing
- myconf_gn+=" enable_pseudolocales=false"
-
- # Disable code formating of generated files
- myconf_gn+=" blink_enable_generated_code_formatting=false"
-
- ffmpeg_branding="$(usex proprietary-codecs Chrome Chromium)"
- myconf_gn+=" proprietary_codecs=$(usex proprietary-codecs true false)"
- myconf_gn+=" ffmpeg_branding=\"${ffmpeg_branding}\""
-
- # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys .
- # Note: these are for Gentoo use ONLY. For your own distribution,
- # please get your own set of keys. Feel free to contact chromium@gentoo.org
- # for more info. The OAuth2 credentials, however, have been left out.
- # Those OAuth2 credentials have been broken for quite some time anyway.
- # Instead we apply a patch to use the --oauth2-client-id= and
- # --oauth2-client-secret= switches for setting GOOGLE_DEFAULT_CLIENT_ID and
- # GOOGLE_DEFAULT_CLIENT_SECRET at runtime. This allows signing into
- # Chromium without baked-in values.
- local google_api_key="AIzaSyDEAOvatFo0eTgsV_ZlEzx0ObmepsMzfAc"
- myconf_gn+=" google_api_key=\"${google_api_key}\""
- local myarch="$(tc-arch)"
-
- # Avoid CFLAGS problems, bug #352457, bug #390147.
- if ! use custom-cflags; then
- replace-flags "-Os" "-O2"
- strip-flags
-
- # Debug info section overflows without component build
- # Prevent linker from running out of address space, bug #471810 .
- if ! use component-build || use x86; then
- filter-flags "-g*"
- fi
-
- # Prevent libvpx build failures. Bug 530248, 544702, 546984.
- if [[ ${myarch} == amd64 || ${myarch} == x86 ]]; then
- filter-flags -mno-mmx -mno-sse2 -mno-ssse3 -mno-sse4.1 -mno-avx -mno-avx2 -mno-fma -mno-fma4
- fi
- fi
-
- if [[ ${CHROMIUM_FORCE_LIBCXX} == yes ]]; then
- append-flags -stdlib=libc++
- append-ldflags -stdlib=libc++
- fi
-
- if [[ $myarch = amd64 ]] ; then
- myconf_gn+=" target_cpu=\"x64\""
- ffmpeg_target_arch=x64
- elif [[ $myarch = x86 ]] ; then
- myconf_gn+=" target_cpu=\"x86\""
- ffmpeg_target_arch=ia32
-
- # This is normally defined by compiler_cpu_abi in
- # build/config/compiler/BUILD.gn, but we patch that part out.
- append-flags -msse2 -mfpmath=sse -mmmx
- elif [[ $myarch = arm64 ]] ; then
- myconf_gn+=" target_cpu=\"arm64\""
- ffmpeg_target_arch=arm64
- elif [[ $myarch = arm ]] ; then
- myconf_gn+=" target_cpu=\"arm\""
- ffmpeg_target_arch=$(usex cpu_flags_arm_neon arm-neon arm)
- elif [[ $myarch = ppc64 ]] ; then
- myconf_gn+=" target_cpu=\"ppc64\""
- ffmpeg_target_arch=ppc64
- else
- die "Failed to determine target arch, got '$myarch'."
- fi
-
- # Make sure that -Werror doesn't get added to CFLAGS by the build system.
- # Depending on GCC version the warnings are different and we don't want
- # the build to fail because of that.
- myconf_gn+=" treat_warnings_as_errors=false"
-
- # Disable fatal linker warnings, bug 506268.
- myconf_gn+=" fatal_linker_warnings=false"
-
- # Bug 491582.
- export TMPDIR="${WORKDIR}/temp"
- mkdir -p -m 755 "${TMPDIR}" || die
-
- # https://bugs.gentoo.org/654216
- addpredict /dev/dri/ #nowarn
-
- #if ! use system-ffmpeg; then
- if false; then
- local build_ffmpeg_args=""
- if use pic && [[ "${ffmpeg_target_arch}" == "ia32" ]]; then
- build_ffmpeg_args+=" --disable-asm"
- fi
-
- # Re-configure bundled ffmpeg. See bug #491378 for example reasons.
- einfo "Configuring bundled ffmpeg..."
- pushd third_party/ffmpeg > /dev/null || die
- chromium/scripts/build_ffmpeg.py linux ${ffmpeg_target_arch} \
- --branding ${ffmpeg_branding} -- ${build_ffmpeg_args} || die
- chromium/scripts/copy_config.sh || die
- chromium/scripts/generate_gn.py || die
- popd > /dev/null || die
- fi
-
- # Chromium relies on this, but was disabled in >=clang-10, crbug.com/1042470
- append-cxxflags $(test-flags-CXX -flax-vector-conversions=all)
-
- # Disable unknown warning message from clang.
- tc-is-clang && append-flags -Wno-unknown-warning-option
-
- # Explicitly disable ICU data file support for system-icu builds.
- if use system-icu; then
- myconf_gn+=" icu_use_data_file=false"
- fi
-
- # Enable ozone wayland and/or headless support
- myconf_gn+=" use_ozone=true ozone_auto_platforms=false"
- myconf_gn+=" ozone_platform_headless=true"
- myconf_gn+=" ozone_platform_x11=$(usex headless false true)"
- if use wayland || use headless; then
- if use headless; then
- myconf_gn+=" ozone_platform=\"headless\""
- myconf_gn+=" use_x11=false"
- else
- myconf_gn+=" ozone_platform_wayland=true"
- myconf_gn+=" use_system_libdrm=true"
- myconf_gn+=" use_system_minigbm=true"
- myconf_gn+=" use_xkbcommon=true"
- myconf_gn+=" ozone_platform=\"wayland\""
- fi
- else
- myconf_gn+=" ozone_platform=\"x11\""
- fi
-
- # Enable official builds
- myconf_gn+=" is_official_build=$(usex official true false)"
- myconf_gn+=" use_thin_lto=false"
- if use official; then
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py || die
- # Disable CFI: unsupported for GCC, requires clang+lto+lld
- myconf_gn+=" is_cfi=false"
- # Disable PGO, because profile data is only compatible with >=clang-11
- myconf_gn+=" chrome_pgo_phase=0"
- fi
-
- einfo "Configuring Chromium..."
- set -- gn gen --args="${myconf_gn} ${EXTRA_GN}" out/Release
- echo "$@"
- "$@" || die
-}
-
-src_compile() {
- # Final link uses lots of file descriptors.
- ulimit -n 2048
-
- # Calling this here supports resumption via FEATURES=keepwork
- python_setup
-
- # Don't inherit PYTHONPATH from environment, bug #789021, #812689
- local -x PYTHONPATH=
-
- #"${EPYTHON}" tools/clang/scripts/update.py --force-local-build --gcc-toolchain /usr --skip-checkout --use-system-cmake --without-android || die
-
- # Build mksnapshot and pax-mark it.
- local x
- for x in mksnapshot v8_context_snapshot_generator; do
- if tc-is-cross-compiler; then
- eninja -C out/Release "host/${x}"
- pax-mark m "out/Release/host/${x}"
- else
- eninja -C out/Release "${x}"
- pax-mark m "out/Release/${x}"
- fi
- done
-
- # Even though ninja autodetects number of CPUs, we respect
- # user's options, for debugging with -j 1 or any other reason.
- eninja -C out/Release chrome chromedriver
- use suid && eninja -C out/Release chrome_sandbox
-
- pax-mark m out/Release/chrome
-
- mv out/Release/chromedriver{.unstripped,} || die
-
- # Build manpage; bug #684550
- sed -e 's|@@PACKAGE@@|chromium-browser|g;
- s|@@MENUNAME@@|Chromium|g;' \
- chrome/app/resources/manpage.1.in > \
- out/Release/chromium-browser.1 || die
-
- # Build desktop file; bug #706786
- sed -e 's|@@MENUNAME@@|Chromium|g;
- s|@@USR_BIN_SYMLINK_NAME@@|chromium-browser|g;
- s|@@PACKAGE@@|chromium-browser|g;
- s|\(^Exec=\)/usr/bin/|\1|g;' \
- chrome/installer/linux/common/desktop.template > \
- out/Release/chromium-browser-chromium.desktop || die
-
- # Build vk_swiftshader_icd.json; bug #827861
- sed -e 's|${ICD_LIBRARY_PATH}|./libvk_swiftshader.so|g' \
- third_party/swiftshader/src/Vulkan/vk_swiftshader_icd.json.tmpl > \
- out/Release/vk_swiftshader_icd.json || die
-}
-
-src_install() {
- local CHROMIUM_HOME="/usr/$(get_libdir)/chromium-browser"
- exeinto "${CHROMIUM_HOME}"
- doexe out/Release/chrome
-
- if use suid; then
- newexe out/Release/chrome_sandbox chrome-sandbox
- fperms 4755 "${CHROMIUM_HOME}/chrome-sandbox"
- fi
-
- doexe out/Release/chromedriver
- doexe out/Release/chrome_crashpad_handler
-
- ozone_auto_session () {
- use wayland && ! use headless && echo true || echo false
- }
- local sedargs=( -e
- "s:/usr/lib/:/usr/$(get_libdir)/:g;
- s:@@OZONE_AUTO_SESSION@@:$(ozone_auto_session):g"
- )
- sed "${sedargs[@]}" "${FILESDIR}/chromium-launcher-r7.sh" > chromium-launcher.sh || die
- doexe chromium-launcher.sh
-
- # It is important that we name the target "chromium-browser",
- # xdg-utils expect it; bug #355517.
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium-browser
- # keep the old symlink around for consistency
- dosym "${CHROMIUM_HOME}/chromium-launcher.sh" /usr/bin/chromium
-
- dosym "${CHROMIUM_HOME}/chromedriver" /usr/bin/chromedriver
-
- # Allow users to override command-line options, bug #357629.
- insinto /etc/chromium
- newins "${FILESDIR}/chromium.default" "default"
-
- pushd out/Release/locales > /dev/null || die
- chromium_remove_language_paks
- popd
-
- insinto "${CHROMIUM_HOME}"
- doins out/Release/*.bin
- doins out/Release/*.pak
- (
- shopt -s nullglob
- local files=(out/Release/*.so out/Release/*.so.[0-9])
- [[ ${#files[@]} -gt 0 ]] && doins "${files[@]}"
- )
-
- if ! use system-icu; then
- doins out/Release/icudtl.dat
- fi
-
- doins -r out/Release/locales
- doins -r out/Release/resources
- doins -r out/Release/MEIPreload
-
- # Install vk_swiftshader_icd.json; bug #827861
- doins out/Release/vk_swiftshader_icd.json
-
- if [[ -d out/Release/swiftshader ]]; then
- insinto "${CHROMIUM_HOME}/swiftshader"
- doins out/Release/swiftshader/*.so
- fi
-
- # Install icons
- local branding size
- for size in 16 24 32 48 64 128 256 ; do
- case ${size} in
- 16|32) branding="chrome/app/theme/default_100_percent/chromium" ;;
- *) branding="chrome/app/theme/chromium" ;;
- esac
- newicon -s ${size} "${branding}/product_logo_${size}.png" \
- chromium-browser.png
- done
-
- # Install desktop entry
- domenu out/Release/chromium-browser-chromium.desktop
-
- # Install GNOME default application entry (bug #303100).
- insinto /usr/share/gnome-control-center/default-apps
- newins "${FILESDIR}"/chromium-browser.xml chromium-browser.xml
-
- # Install manpage; bug #684550
- doman out/Release/chromium-browser.1
- dosym chromium-browser.1 /usr/share/man/man1/chromium.1
-
- readme.gentoo_create_doc
-}
-
-pkg_postrm() {
- xdg_icon_cache_update
- xdg_desktop_database_update
-}
-
-pkg_postinst() {
- xdg_icon_cache_update
- xdg_desktop_database_update
- readme.gentoo_print_elog
-
- if use vaapi; then
- elog "VA-API is disabled by default at runtime. You have to enable it"
- elog "by adding --enable-features=VaapiVideoDecoder to CHROMIUM_FLAGS"
- elog "in /etc/chromium/default."
- fi
- if use screencast; then
- elog "Screencast is disabled by default at runtime. Either enable it"
- elog "by navigating to chrome://flags/#enable-webrtc-pipewire-capturer"
- elog "inside Chromium or add --enable-webrtc-pipewire-capturer"
- elog "to CHROMIUM_FLAGS in /etc/chromium/default."
- fi
-}
diff --git a/www-client/chromium/files/chromium-100-ByteSwapUintPtrT-constexpr.patch b/www-client/chromium/files/chromium-100-ByteSwapUintPtrT-constexpr.patch
deleted file mode 100644
index dc85dc2..0000000
--- a/www-client/chromium/files/chromium-100-ByteSwapUintPtrT-constexpr.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 1ea2079fec7098cd0fdfabce259d65a09197532d Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Thu, 27 Jan 2022 14:36:21 +0000
-Subject: [PATCH] GCC: add constexpr to base::ByteSwapUintPtrT and
- base::ByteSwap
-
-base::internal::EncodedPartitionFreelistEntryPtr::Transform() is
-constexpr. This requires base::ByteSwapUintPtrT() and
-base::ByteSwap() to be constexpr too.
----
- base/sys_byteorder.h | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/base/sys_byteorder.h b/base/sys_byteorder.h
-index 4de2b5f..d86cc36 100644
---- a/base/sys_byteorder.h
-+++ b/base/sys_byteorder.h
-@@ -22,7 +22,7 @@
- namespace base {
-
- // Returns a value with all bytes in |x| swapped, i.e. reverses the endianness.
--inline uint16_t ByteSwap(uint16_t x) {
-+constexpr uint16_t ByteSwap(uint16_t x) {
- #if defined(COMPILER_MSVC) && !defined(__clang__)
- return _byteswap_ushort(x);
- #else
-@@ -30,7 +30,7 @@ inline uint16_t ByteSwap(uint16_t x) {
- #endif
- }
-
--inline uint32_t ByteSwap(uint32_t x) {
-+constexpr uint32_t ByteSwap(uint32_t x) {
- #if defined(COMPILER_MSVC) && !defined(__clang__)
- return _byteswap_ulong(x);
- #else
-@@ -38,7 +38,7 @@ inline uint32_t ByteSwap(uint32_t x) {
- #endif
- }
-
--inline uint64_t ByteSwap(uint64_t x) {
-+constexpr uint64_t ByteSwap(uint64_t x) {
- // Per build/build_config.h, clang masquerades as MSVC on Windows. If we are
- // actually using clang, we can rely on the builtin.
- //
-@@ -53,7 +53,7 @@ inline uint64_t ByteSwap(uint64_t x) {
- #endif
- }
-
--inline uintptr_t ByteSwapUintPtrT(uintptr_t x) {
-+constexpr uintptr_t ByteSwapUintPtrT(uintptr_t x) {
- // We do it this way because some build configurations are ILP32 even when
- // defined(ARCH_CPU_64_BITS). Unfortunately, we can't use sizeof in #ifs. But,
- // because these conditionals are constexprs, the irrelevant branches will
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-100-GLImplementationParts-constexpr.patch b/www-client/chromium/files/chromium-100-GLImplementationParts-constexpr.patch
deleted file mode 100644
index 437e672..0000000
--- a/www-client/chromium/files/chromium-100-GLImplementationParts-constexpr.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From d32156fd3773330eca99e9cba5e18db57aaa1a53 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sat, 19 Feb 2022 10:14:24 +0000
-Subject: [PATCH] GCC: make GLImplementationParts constructors constexpr
-
-Fix build error in GCC, as the constexpr operator== requires its
-invocations to be also constexpr.
----
- ui/gl/gl_implementation.cc | 23 -----------------------
- ui/gl/gl_implementation.h | 25 +++++++++++++++++++++++--
- 2 files changed, 23 insertions(+), 25 deletions(-)
-
-diff --git a/ui/gl/gl_implementation.cc b/ui/gl/gl_implementation.cc
-index e4e5456..3e4a47c 100644
---- a/ui/gl/gl_implementation.cc
-+++ b/ui/gl/gl_implementation.cc
-@@ -26,29 +26,6 @@
-
- namespace gl {
-
--ANGLEImplementation MakeANGLEImplementation(
-- const GLImplementation gl_impl,
-- const ANGLEImplementation angle_impl) {
-- if (gl_impl == kGLImplementationEGLANGLE) {
-- if (angle_impl == ANGLEImplementation::kNone) {
-- return ANGLEImplementation::kDefault;
-- } else {
-- return angle_impl;
-- }
-- } else {
-- return ANGLEImplementation::kNone;
-- }
--}
--
--GLImplementationParts::GLImplementationParts(
-- const ANGLEImplementation angle_impl)
-- : gl(kGLImplementationEGLANGLE),
-- angle(MakeANGLEImplementation(kGLImplementationEGLANGLE, angle_impl)) {}
--
--GLImplementationParts::GLImplementationParts(const GLImplementation gl_impl)
-- : gl(gl_impl),
-- angle(MakeANGLEImplementation(gl_impl, ANGLEImplementation::kDefault)) {}
--
- bool GLImplementationParts::IsValid() const {
- if (angle == ANGLEImplementation::kNone) {
- return (gl != kGLImplementationEGLANGLE);
-diff --git a/ui/gl/gl_implementation.h b/ui/gl/gl_implementation.h
-index 376ed58..a2513ea 100644
---- a/ui/gl/gl_implementation.h
-+++ b/ui/gl/gl_implementation.h
-@@ -59,8 +59,14 @@ enum class ANGLEImplementation {
- };
-
- struct GL_EXPORT GLImplementationParts {
-- explicit GLImplementationParts(const ANGLEImplementation angle_impl);
-- explicit GLImplementationParts(const GLImplementation gl_impl);
-+ constexpr explicit GLImplementationParts(const ANGLEImplementation angle_impl)
-+ : gl(kGLImplementationEGLANGLE),
-+ angle(MakeANGLEImplementation(kGLImplementationEGLANGLE, angle_impl)) {}
-+
-+ constexpr explicit GLImplementationParts(const GLImplementation gl_impl)
-+ : gl(gl_impl),
-+ angle(MakeANGLEImplementation(gl_impl, ANGLEImplementation::kDefault)) {
-+ }
-
- GLImplementation gl = kGLImplementationNone;
- ANGLEImplementation angle = ANGLEImplementation::kNone;
-@@ -80,6 +86,21 @@ struct GL_EXPORT GLImplementationParts {
- bool IsValid() const;
- bool IsAllowed(const std::vector<GLImplementationParts>& allowed_impls) const;
- std::string ToString() const;
-+
-+ private:
-+ constexpr ANGLEImplementation MakeANGLEImplementation(
-+ const GLImplementation gl_impl,
-+ const ANGLEImplementation angle_impl) {
-+ if (gl_impl == kGLImplementationEGLANGLE) {
-+ if (angle_impl == ANGLEImplementation::kNone) {
-+ return ANGLEImplementation::kDefault;
-+ } else {
-+ return angle_impl;
-+ }
-+ } else {
-+ return ANGLEImplementation::kNone;
-+ }
-+ }
- };
-
- struct GL_EXPORT GLWindowSystemBindingInfo {
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-100-InMilliseconds-constexpr.patch b/www-client/chromium/files/chromium-100-InMilliseconds-constexpr.patch
deleted file mode 100644
index cf4562a..0000000
--- a/www-client/chromium/files/chromium-100-InMilliseconds-constexpr.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From da6e3f6071fdabeb96c0805626418414b4a4cea8 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Wed, 9 Feb 2022 17:56:21 +0000
-Subject: [PATCH] GCC: make base::InMilliseconds(F,RoundedUp) constexpr
-
-media::DecodeTimestamp uses it in several constexpr methods.
----
- base/time/time.cc | 24 ------------------------
- base/time/time.h | 30 +++++++++++++++++++++++++++---
- 2 files changed, 27 insertions(+), 27 deletions(-)
-
-diff --git a/base/time/time.cc b/base/time/time.cc
-index 0de273e..e0acda2 100644
---- a/base/time/time.cc
-+++ b/base/time/time.cc
-@@ -74,30 +74,6 @@ int TimeDelta::InDaysFloored() const {
- : std::numeric_limits<int>::max();
- }
-
--double TimeDelta::InMillisecondsF() const {
-- if (!is_inf())
-- return static_cast<double>(delta_) / Time::kMicrosecondsPerMillisecond;
-- return (delta_ < 0) ? -std::numeric_limits<double>::infinity()
-- : std::numeric_limits<double>::infinity();
--}
--
--int64_t TimeDelta::InMilliseconds() const {
-- if (!is_inf())
-- return delta_ / Time::kMicrosecondsPerMillisecond;
-- return (delta_ < 0) ? std::numeric_limits<int64_t>::min()
-- : std::numeric_limits<int64_t>::max();
--}
--
--int64_t TimeDelta::InMillisecondsRoundedUp() const {
-- if (!is_inf()) {
-- const int64_t result = delta_ / Time::kMicrosecondsPerMillisecond;
-- // Convert |result| from truncating to ceiling.
-- return (delta_ > result * Time::kMicrosecondsPerMillisecond) ? (result + 1)
-- : result;
-- }
-- return delta_;
--}
--
- double TimeDelta::InMicrosecondsF() const {
- if (!is_inf())
- return static_cast<double>(delta_);
-diff --git a/base/time/time.h b/base/time/time.h
-index c027aab..fb1d78d 100644
---- a/base/time/time.h
-+++ b/base/time/time.h
-@@ -216,9 +216,9 @@ class BASE_EXPORT TimeDelta {
- constexpr int InMinutes() const;
- constexpr double InSecondsF() const;
- constexpr int64_t InSeconds() const;
-- double InMillisecondsF() const;
-- int64_t InMilliseconds() const;
-- int64_t InMillisecondsRoundedUp() const;
-+ constexpr double InMillisecondsF() const;
-+ constexpr int64_t InMilliseconds() const;
-+ constexpr int64_t InMillisecondsRoundedUp() const;
- constexpr int64_t InMicroseconds() const { return delta_; }
- double InMicrosecondsF() const;
- constexpr int64_t InNanoseconds() const;
-@@ -889,6 +889,30 @@ constexpr int64_t TimeDelta::InSeconds() const {
- return is_inf() ? delta_ : (delta_ / Time::kMicrosecondsPerSecond);
- }
-
-+constexpr double TimeDelta::InMillisecondsF() const {
-+ if (!is_inf())
-+ return static_cast<double>(delta_) / Time::kMicrosecondsPerMillisecond;
-+ return (delta_ < 0) ? -std::numeric_limits<double>::infinity()
-+ : std::numeric_limits<double>::infinity();
-+}
-+
-+constexpr int64_t TimeDelta::InMilliseconds() const {
-+ if (!is_inf())
-+ return delta_ / Time::kMicrosecondsPerMillisecond;
-+ return (delta_ < 0) ? std::numeric_limits<int64_t>::min()
-+ : std::numeric_limits<int64_t>::max();
-+}
-+
-+constexpr int64_t TimeDelta::InMillisecondsRoundedUp() const {
-+ if (!is_inf()) {
-+ const int64_t result = delta_ / Time::kMicrosecondsPerMillisecond;
-+ // Convert |result| from truncating to ceiling.
-+ return (delta_ > result * Time::kMicrosecondsPerMillisecond) ? (result + 1)
-+ : result;
-+ }
-+ return delta_;
-+}
-+
- constexpr int64_t TimeDelta::InNanoseconds() const {
- return base::ClampMul(delta_, Time::kNanosecondsPerMicrosecond);
- }
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-100-LayoutUnit-constexpr.patch b/www-client/chromium/files/chromium-100-LayoutUnit-constexpr.patch
deleted file mode 100644
index 41943c4..0000000
--- a/www-client/chromium/files/chromium-100-LayoutUnit-constexpr.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 23384ca857117c7dff6627847638e0ab2b9a9e6c Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Tue, 25 Jan 2022 17:29:49 +0000
-Subject: [PATCH] GCC: default initialize member in blink::LayoutUnit
- constructor
-
-Before C++20 the compiler is not required to check that members are
-initialized before use in constexpr constructors. However,
-expressions with undefined behaviour (e.g. due to unitialized data
-members) is prohibited for constexpr. Default initialize to
-value_ to 0 to workaround the problem.
----
- third_party/blink/renderer/platform/geometry/layout_unit.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h
-index e6cbe37..d1e4f07 100644
---- a/third_party/blink/renderer/platform/geometry/layout_unit.h
-+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h
-@@ -95,7 +95,7 @@ class LayoutUnit {
- public:
- constexpr LayoutUnit() : value_(0) {}
- template <typename IntegerType>
-- constexpr explicit LayoutUnit(IntegerType value) {
-+ constexpr explicit LayoutUnit(IntegerType value) : value_(0) {
- if (std::is_signed<IntegerType>::value)
- SaturatedSet(static_cast<int>(value));
- else
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-100-PartitionFreelistEntry-namespace.patch b/www-client/chromium/files/chromium-100-PartitionFreelistEntry-namespace.patch
deleted file mode 100644
index 0ca9956..0000000
--- a/www-client/chromium/files/chromium-100-PartitionFreelistEntry-namespace.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From f6490c3b85b1d6f2043c59680ac7c273b03b5a39 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sun, 6 Feb 2022 07:58:32 +0000
-Subject: [PATCH] libstdc++: add namespace for nullptr_t in
- PartitionFreelistEntry
-
----
- base/allocator/partition_allocator/partition_freelist_entry.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/base/allocator/partition_allocator/partition_freelist_entry.h b/base/allocator/partition_allocator/partition_freelist_entry.h
-index cb20598..850d27b 100644
---- a/base/allocator/partition_allocator/partition_freelist_entry.h
-+++ b/base/allocator/partition_allocator/partition_freelist_entry.h
-@@ -86,7 +86,7 @@ class EncodedPartitionFreelistEntryPtr {
- // the rationale and mechanism, respectively.
- class PartitionFreelistEntry {
- private:
-- explicit constexpr PartitionFreelistEntry(nullptr_t)
-+ explicit constexpr PartitionFreelistEntry(std::nullptr_t)
- : encoded_next_(EncodedPartitionFreelistEntryPtr(nullptr))
- #if defined(PA_HAS_FREELIST_SHADOW_ENTRY)
- ,
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-100-SCTHashdanceMetadata-move.patch b/www-client/chromium/files/chromium-100-SCTHashdanceMetadata-move.patch
deleted file mode 100644
index 9039429..0000000
--- a/www-client/chromium/files/chromium-100-SCTHashdanceMetadata-move.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 364dc0067d1c20c7a2d21277a7ec0c4419d9bc11 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jdapena@igalia.com>
-Date: Wed, 23 Feb 2022 12:18:57 +0100
-Subject: [PATCH] GCC: explicitely move return value of SCTHashdanceMetadata::ToValue
-
-GCC rejects to do Return Value Optimization in
-SCTHashdanceMetadata::ToValue, because the copy constructor is
-deleted, and in that scenario RVO is rejected in GCC:
- ../../services/network/sct_auditing/sct_auditing_reporter.cc: In member function ‘base::Value network::SCTAuditingReporter::SCTHashdanceMetadata::ToValue() const’:
- ../../services/network/sct_auditing/sct_auditing_reporter.cc:191:10: error: use of deleted function ‘base::Value::Value(const base::Value&)’
- 191 | return value;
- | ^~~~~
- In file included from ../../services/network/sct_auditing/sct_auditing_reporter.h:14,
- from ../../services/network/sct_auditing/sct_auditing_reporter.cc:5:
- ../../base/values.h:254:3: note: declared here
- 254 | Value(const Value&) = delete;
- | ^~~~~
-
-Bug: 819294
-Change-Id: I111e51dd10eee7b909d4ac3c0911aac18a589166
----
-
-diff --git a/services/network/sct_auditing/sct_auditing_reporter.cc b/services/network/sct_auditing/sct_auditing_reporter.cc
-index a057e8e..365527b 100644
---- a/services/network/sct_auditing/sct_auditing_reporter.cc
-+++ b/services/network/sct_auditing/sct_auditing_reporter.cc
-@@ -188,7 +188,7 @@
- kLogIdKey, base::Base64Encode(base::as_bytes(base::make_span(log_id))));
- value.SetKey(kLogMMDKey, base::TimeDeltaToValue(log_mmd));
- value.SetKey(kCertificateExpiry, base::TimeToValue(certificate_expiry));
-- return value;
-+ return std::move(value);
- }
-
- // static
diff --git a/www-client/chromium/files/chromium-100-compiler.patch b/www-client/chromium/files/chromium-100-compiler.patch
deleted file mode 100644
index e4ca9b3..0000000
--- a/www-client/chromium/files/chromium-100-compiler.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-From 307a0f63dd9b118f4b8470ed3d7567e81fdb7a6d Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Thu, 3 Feb 2022 16:26:20 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 105 ++++++---------------------------
- 1 file changed, 17 insertions(+), 88 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 61ceb0d..7392018 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -291,9 +291,7 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
- ":rustc_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -534,31 +532,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && current_os != "zos") {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
--
-- # TODO(crbug.com/1235145): Investigate why/if this should be needed.
-- if (is_win) {
-- cflags += [ "/clang:-ffp-contract=off" ]
-- } else {
-- cflags += [ "-ffp-contract=off" ]
-- }
-- }
--
- # Rust compiler setup (for either clang or rustc).
- if (enable_rust) {
- defines += [ "RUST_ENABLED" ]
-@@ -1235,45 +1208,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1594,7 +1528,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1603,10 +1537,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1615,15 +1545,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2026,7 +1947,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2064,7 +1986,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2104,7 +2027,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2137,7 +2061,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2163,7 +2088,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- rustflags = [ "-Copt-level=1" ]
- ldflags = common_optimize_on_ldflags
-@@ -2283,7 +2209,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2411,7 +2338,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2480,7 +2408,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-100-macro-typo.patch b/www-client/chromium/files/chromium-100-macro-typo.patch
deleted file mode 100644
index 833f869..0000000
--- a/www-client/chromium/files/chromium-100-macro-typo.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 1183b14db8bd08d731ff3433c436887de00be3aa Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jdapena@igalia.com>
-Date: Fri, 18 Feb 2022 16:28:25 +0000
-Subject: [PATCH] Fix typo in non-clang GSL_OWNER macro
-
-GCC build fails because GSL_OWNER is not defined (GSL_OWNER_ was
-the one actually declared).
-
-Bug: 819294
-Change-Id: I1c3d17cb1c08b9bc0e8a888452da9868c308ddb5
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3472080
-Reviewed-by: Daniel Cheng <dcheng@chromium.org>
-Commit-Queue: Daniel Cheng <dcheng@chromium.org>
-Cr-Commit-Position: refs/heads/main@{#972974}
----
-
-diff --git a/base/compiler_specific.h b/base/compiler_specific.h
-index eec5810..1ee8074 100644
---- a/base/compiler_specific.h
-+++ b/base/compiler_specific.h
-@@ -386,7 +386,7 @@
- #define GSL_OWNER [[gsl::Owner]]
- #define GSL_POINTER [[gsl::Pointer]]
- #else
--#define GSL_OWNER_
-+#define GSL_OWNER
- #define GSL_POINTER
- #endif
-
diff --git a/www-client/chromium/files/chromium-100-sandbox-include.patch b/www-client/chromium/files/chromium-100-sandbox-include.patch
deleted file mode 100644
index 328d524..0000000
--- a/www-client/chromium/files/chromium-100-sandbox-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index c933eafd1..c0368e92b 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -11,6 +11,7 @@
- #include <stddef.h>
- #include <stdint.h>
- #include <stdio.h>
-+#include <string.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
- #include <sys/wait.h>
diff --git a/www-client/chromium/files/chromium-101-AccountInfo-noexcept.patch b/www-client/chromium/files/chromium-101-AccountInfo-noexcept.patch
deleted file mode 100644
index 5aff2f8..0000000
--- a/www-client/chromium/files/chromium-101-AccountInfo-noexcept.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From f5743bfaa6b02bc12d040a59f95bbe3abe7081d9 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sat, 5 Mar 2022 08:40:55 +0000
-Subject: [PATCH] GCC: fix noexcept in AccountInfo
-
-Move constructor and move assignment operator for AccountInfo
-is marked noexcept. However, move constructor and assignment operator
-of member AccountCapabilities are not noexcept. Therefore, GCC fails to
-compile AccountInfo. Fix this by adding noexcept to move
-constructor and assignment operator of AccountCapabilities.
----
- .../signin/public/identity_manager/account_capabilities.cc | 4 ++++
- .../signin/public/identity_manager/account_capabilities.h | 2 ++
- 2 files changed, 6 insertions(+)
-
-diff --git a/components/signin/public/identity_manager/account_capabilities.cc b/components/signin/public/identity_manager/account_capabilities.cc
-index 1fe703d..9005e94 100644
---- a/components/signin/public/identity_manager/account_capabilities.cc
-+++ b/components/signin/public/identity_manager/account_capabilities.cc
-@@ -16,8 +16,12 @@ AccountCapabilities::AccountCapabilities() = default;
- AccountCapabilities::~AccountCapabilities() = default;
- AccountCapabilities::AccountCapabilities(const AccountCapabilities& other) =
- default;
-+AccountCapabilities::AccountCapabilities(AccountCapabilities&& other) noexcept =
-+ default;
- AccountCapabilities& AccountCapabilities::operator=(
- const AccountCapabilities& other) = default;
-+AccountCapabilities& AccountCapabilities::operator=(
-+ AccountCapabilities&& other) noexcept = default;
-
- // static
- const std::vector<std::string>&
-diff --git a/components/signin/public/identity_manager/account_capabilities.h b/components/signin/public/identity_manager/account_capabilities.h
-index a9f74c4..153ca4d 100644
---- a/components/signin/public/identity_manager/account_capabilities.h
-+++ b/components/signin/public/identity_manager/account_capabilities.h
-@@ -23,7 +23,9 @@ class AccountCapabilities {
- AccountCapabilities();
- ~AccountCapabilities();
- AccountCapabilities(const AccountCapabilities& other);
-+ AccountCapabilities(AccountCapabilities&& other) noexcept;
- AccountCapabilities& operator=(const AccountCapabilities& other);
-+ AccountCapabilities& operator=(AccountCapabilities&& other) noexcept;
-
- // Chrome can offer extended promos for turning on Sync to accounts with this
- // capability.
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-101-WebURLLoaderFactory-incomplete-type.patch b/www-client/chromium/files/chromium-101-WebURLLoaderFactory-incomplete-type.patch
deleted file mode 100644
index a331868..0000000
--- a/www-client/chromium/files/chromium-101-WebURLLoaderFactory-incomplete-type.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From a092650bfece8a67cddffc7983dce06146f81ffb Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sun, 6 Mar 2022 11:03:11 +0000
-Subject: [PATCH] libstdc++: fix incomplete type of blink::WebURLLoaderFactory
-
-std::unique_ptr of libstdc++ uses sizeof() which requires full
-definition of blink::WebURLLoaderFactory in blink::EmptyChromeClient.
----
- third_party/blink/renderer/core/loader/empty_clients.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/blink/renderer/core/loader/empty_clients.h b/third_party/blink/renderer/core/loader/empty_clients.h
-index d91e67a..e23de75 100644
---- a/third_party/blink/renderer/core/loader/empty_clients.h
-+++ b/third_party/blink/renderer/core/loader/empty_clients.h
-@@ -43,6 +43,7 @@
- #include "third_party/blink/public/mojom/input/focus_type.mojom-blink-forward.h"
- #include "third_party/blink/public/platform/web_spell_check_panel_host_client.h"
- #include "third_party/blink/public/platform/web_url_loader.h"
-+#include "third_party/blink/public/platform/web_url_loader_factory.h"
- #include "third_party/blink/renderer/core/core_export.h"
- #include "third_party/blink/renderer/core/frame/local_frame_client.h"
- #include "third_party/blink/renderer/core/frame/remote_frame_client.h"
---
-2.34.1
-
diff --git a/www-client/chromium/files/chromium-101-libxml-unbundle.patch b/www-client/chromium/files/chromium-101-libxml-unbundle.patch
deleted file mode 100644
index 5699bc8..0000000
--- a/www-client/chromium/files/chromium-101-libxml-unbundle.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/build/linux/unbundle/libxml.gn
-+++ b/build/linux/unbundle/libxml.gn
-@@ -19,6 +19,7 @@ static_library("libxml_utils") {
- ":xml_reader",
- ":xml_writer",
- "//base/test:test_support",
-+ "//services/data_decoder:lib",
- "//services/data_decoder:xml_parser_fuzzer_deps",
- ]
- sources = [
diff --git a/www-client/chromium/files/chromium-102-compiler.patch b/www-client/chromium/files/chromium-102-compiler.patch
deleted file mode 100644
index 5877f62..0000000
--- a/www-client/chromium/files/chromium-102-compiler.patch
+++ /dev/null
@@ -1,236 +0,0 @@
-From 307a0f63dd9b118f4b8470ed3d7567e81fdb7a6d Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Fri, 22 Apr 2022 09:05:24 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 114 +++++----------------------------
- 1 file changed, 17 insertions(+), 97 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index d40843b..b92f03b 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -286,9 +286,7 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
- ":rustc_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -522,31 +520,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && current_os != "zos") {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
--
-- # TODO(crbug.com/1235145): Investigate why/if this should be needed.
-- if (is_win) {
-- cflags += [ "/clang:-ffp-contract=off" ]
-- } else {
-- cflags += [ "-ffp-contract=off" ]
-- }
-- }
--
- # Rust compiler setup (for either clang or rustc).
- if (enable_rust) {
- defines += [ "RUST_ENABLED" ]
-@@ -1232,45 +1205,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1538,15 +1472,6 @@ config("default_warnings") {
- cflags += [ "-Wno-deprecated-non-prototype" ]
- }
-
-- if (!is_nacl && !(is_chromeos ||
-- default_toolchain == "//build/toolchain/cros:target")) {
-- # TODO(https://crbug.com/1316298): Re-enable once test failure is figured out
-- cflags += [
-- "-Xclang",
-- "-no-opaque-pointers",
-- ]
-- }
--
- if (is_fuchsia) {
- # TODO(https://bugs.chromium.org/p/fuchsia/issues/detail?id=77383)
- cflags += [ "-Wno-deprecated-copy" ]
-@@ -1615,7 +1540,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1624,10 +1549,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1636,15 +1557,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2035,7 +1947,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2073,7 +1986,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2113,7 +2027,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2146,7 +2061,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2172,7 +2088,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- rustflags = [ "-Copt-level=1" ]
- ldflags = common_optimize_on_ldflags
-@@ -2291,7 +2208,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2419,7 +2337,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2492,7 +2411,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.35.1
-
diff --git a/www-client/chromium/files/chromium-103-FrameLoadRequest-type.patch b/www-client/chromium/files/chromium-103-FrameLoadRequest-type.patch
deleted file mode 100644
index cdace4b..0000000
--- a/www-client/chromium/files/chromium-103-FrameLoadRequest-type.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 491bf840da4f76fa3591cc0aa2f4c19cdbe57ec4 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Thu, 12 May 2022 11:58:29 +0000
-Subject: [PATCH] GCC: fix ambiguous references in blink::FrameLoadRequest
-
-Add namespace to avoid confusion.
----
- third_party/blink/renderer/core/loader/frame_load_request.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/third_party/blink/renderer/core/loader/frame_load_request.h b/third_party/blink/renderer/core/loader/frame_load_request.h
-index 444b25c..a86814d 100644
---- a/third_party/blink/renderer/core/loader/frame_load_request.h
-+++ b/third_party/blink/renderer/core/loader/frame_load_request.h
-@@ -179,7 +179,7 @@ struct CORE_EXPORT FrameLoadRequest {
- impression_ = impression;
- }
-
-- const absl::optional<Impression>& Impression() const { return impression_; }
-+ const absl::optional<blink::Impression>& Impression() const { return impression_; }
-
- bool CanDisplay(const KURL&) const;
-
---
-2.35.1
-
diff --git a/www-client/chromium/files/chromium-103-SubstringSetMatcher-packed.patch b/www-client/chromium/files/chromium-103-SubstringSetMatcher-packed.patch
deleted file mode 100644
index 03e9bd8..0000000
--- a/www-client/chromium/files/chromium-103-SubstringSetMatcher-packed.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From 3d274856e792a361336eb4ae1670bc9c1905f0cb Mon Sep 17 00:00:00 2001
-From: Steinar H. Gunderson <sesse@chromium.org>
-Date: Thu, 12 May 2022 16:42:40 +0200
-Subject: [PATCH] Make AhoCorasickNode 4-aligned.
-
-This should fix an issue where std::vector could allocate unaligned
-memory for AhoCorasickNode, and we'd then return a pointer to
-inline_edges, where a caller would expect the pointer to be aligned
-but it wasn't.
-
-Change-Id: Id9dff044c61f8e46062c63b8480b18ebc68c4862
----
-
-diff --git a/components/url_matcher/substring_set_matcher.cc b/components/url_matcher/substring_set_matcher.cc
-index e110047..ef0b750 100644
---- a/components/url_matcher/substring_set_matcher.cc
-+++ b/components/url_matcher/substring_set_matcher.cc
-@@ -424,7 +424,12 @@
- edges_.inline_edges[num_edges()] = AhoCorasickEdge{label, node};
- if (label == kFailureNodeLabel) {
- // Make sure that kFailureNodeLabel is first.
-- std::swap(edges_.inline_edges[0], edges_.inline_edges[num_edges()]);
-+ // NOTE: We don't use std::swap here, because GCC
-+ // doesn't understand that inline_edges[] is 4-aligned
-+ // and gives a warning.
-+ AhoCorasickEdge temp = edges_.inline_edges[0];
-+ edges_.inline_edges[0] = edges_.inline_edges[num_edges()];
-+ edges_.inline_edges[num_edges()] = temp;
- }
- --num_free_edges_;
- return;
-diff --git a/components/url_matcher/substring_set_matcher.cc b/components/url_matcher/substring_set_matcher.cc
-index e110047..ef0b750 100644
---- a/components/url_matcher/substring_set_matcher.h
-+++ b/components/url_matcher/substring_set_matcher.h
-@@ -154,8 +154,9 @@
- static constexpr uint32_t kEmptyLabel = 0x103;
-
- // A node in the trie, packed tightly together so that it occupies 12 bytes
-- // (both on 32- and 64-bit platforms).
-- class AhoCorasickNode {
-+ // (both on 32- and 64-bit platforms), but aligned to at least 4 (see the
-+ // comment on edges_).
-+ class alignas(AhoCorasickEdge) AhoCorasickNode {
- public:
- AhoCorasickNode();
- ~AhoCorasickNode();
-@@ -178,6 +179,10 @@
- NodeID GetEdgeNoInline(uint32_t label) const;
- void SetEdge(uint32_t label, NodeID node);
- const AhoCorasickEdge* edges() const {
-+ // NOTE: Returning edges_.inline_edges here is fine, because it's
-+ // the first thing in the struct (see the comment on edges_).
-+ DCHECK_EQ(0u, reinterpret_cast<uintptr_t>(edges_.inline_edges) %
-+ alignof(AhoCorasickEdge));
- return edges_capacity_ == 0 ? edges_.inline_edges : edges_.edges;
- }
-
-@@ -258,6 +263,11 @@
- // in the first slot if it exists (ie., is not equal to kRootID), since we
- // need to access that label during every single node we look at during
- // traversal.
-+ //
-+ // NOTE: Keep this the first member in the struct, so that inline_edges gets
-+ // 4-aligned (since the class is marked as such, despite being packed.
-+ // Otherwise, edges() can return an unaligned pointer marked as aligned
-+ // (the unalignedness gets lost).
- static constexpr int kNumInlineEdges = 2;
- union {
- // Out-of-line edge storage, having room for edges_capacity_ elements.
diff --git a/www-client/chromium/files/chromium-103-compiler.patch b/www-client/chromium/files/chromium-103-compiler.patch
deleted file mode 100644
index e1469bf..0000000
--- a/www-client/chromium/files/chromium-103-compiler.patch
+++ /dev/null
@@ -1,235 +0,0 @@
-From 307a0f63dd9b118f4b8470ed3d7567e81fdb7a6d Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Tue, 3 May 2022 10:51:55 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 114 +++++----------------------------
- 1 file changed, 17 insertions(+), 97 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index f378b95..cb2aeb3 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -286,9 +286,7 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
- ":rustc_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -522,31 +520,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && current_os != "zos") {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
--
-- # TODO(crbug.com/1235145): Investigate why/if this should be needed.
-- if (is_win) {
-- cflags += [ "/clang:-ffp-contract=off" ]
-- } else {
-- cflags += [ "-ffp-contract=off" ]
-- }
-- }
--
- # Rust compiler setup (for either clang or rustc).
- if (enable_rust) {
- defines += [ "RUST_ENABLED" ]
-@@ -1231,45 +1204,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1534,15 +1468,6 @@ config("default_warnings") {
- cflags += [ "-Wno-unqualified-std-cast-call" ]
- }
-
-- if (!is_nacl && !(is_chromeos ||
-- default_toolchain == "//build/toolchain/cros:target")) {
-- # TODO(https://crbug.com/1316298): Re-enable once test failure is figured out
-- cflags += [
-- "-Xclang",
-- "-no-opaque-pointers",
-- ]
-- }
--
- if (is_fuchsia) {
- # TODO(https://bugs.chromium.org/p/fuchsia/issues/detail?id=77383)
- cflags += [ "-Wno-deprecated-copy" ]
-@@ -1611,7 +1536,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1620,10 +1545,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1632,15 +1553,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2031,7 +1943,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2069,7 +1982,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2109,7 +2023,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2142,7 +2057,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2168,7 +2084,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- rustflags = [ "-Copt-level=1" ]
- ldflags = common_optimize_on_ldflags
-@@ -2287,7 +2204,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2415,7 +2333,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2488,7 +2407,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.35.1
diff --git a/www-client/chromium/files/chromium-71-gcc-0.patch b/www-client/chromium/files/chromium-71-gcc-0.patch
deleted file mode 100644
index 711b827..0000000
--- a/www-client/chromium/files/chromium-71-gcc-0.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 65be571f6ac2f7942b4df9e50b24da517f829eec Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Mon, 15 Oct 2018 20:26:10 +0000
-Subject: [PATCH] google_util: Explicitly use std::initializer_list with
- base::NoDestructor
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Follow-up to ac53c5c53 ("Remove CR_DEFINE_STATIC_LOCAL from /components").
-Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having
-base::NoDestructor<T<U>> and passing an initializer list of Us does not
-work if this is not done explicitly, as GCC incorrectly fails to determine
-which constructor overload to use:
-
- ../../components/google/core/common/google_util.cc: In function ‘bool google_util::{anonymous}::IsCanonicalHostGoogleHostname(base::StringPiece, google_util::SubdomainPermission)’:
- ../../components/google/core/common/google_util.cc:120:24: error: call of overloaded ‘NoDestructor(<brace-enclosed initializer list>)’ is ambiguous
- {GOOGLE_TLD_LIST});
-
-See also: https://chromium-review.googlesource.com/c/chromium/src/+/1170905
-
-Bug: 819294
-Change-Id: Ie1490b6646d7998d636c485769caabf56c1cf44c
-Reviewed-on: https://chromium-review.googlesource.com/c/1275854
-Reviewed-by: Peter Kasting <pkasting@chromium.org>
-Commit-Queue: Raphael Kubo da Costa (CET) <raphael.kubo.da.costa@intel.com>
-Cr-Commit-Position: refs/heads/master@{#599733}
----
- components/google/core/common/google_util.cc | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/components/google/core/common/google_util.cc b/components/google/core/common/google_util.cc
-index a44c84393820..7733848a0443 100644
---- a/components/google/core/common/google_util.cc
-+++ b/components/google/core/common/google_util.cc
-@@ -117,7 +117,7 @@ bool IsCanonicalHostGoogleHostname(base::StringPiece canonical_host,
- StripTrailingDot(&tld);
-
- static base::NoDestructor<std::set<std::string>> google_tlds(
-- {GOOGLE_TLD_LIST});
-+ std::initializer_list<std::string>({GOOGLE_TLD_LIST}));
- return base::ContainsKey(*google_tlds, tld.as_string());
- }
-
-@@ -132,7 +132,8 @@ bool IsGoogleSearchSubdomainUrl(const GURL& url) {
- StripTrailingDot(&host);
-
- static base::NoDestructor<std::set<std::string>> google_subdomains(
-- {"ipv4.google.com", "ipv6.google.com"});
-+ std::initializer_list<std::string>(
-+ {"ipv4.google.com", "ipv6.google.com"}));
-
- return base::ContainsKey(*google_subdomains, host.as_string());
- }
---
-2.19.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-0.patch b/www-client/chromium/files/chromium-73-gcc-0.patch
deleted file mode 100644
index 5a50700..0000000
--- a/www-client/chromium/files/chromium-73-gcc-0.patch
+++ /dev/null
@@ -1,108 +0,0 @@
-From 2c3b57cafbbb38c13a519c9d2fda8b65691d9564 Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Thu, 7 Feb 2019 22:55:37 +0000
-Subject: [PATCH] allocator shim: Swap ALIGN_LINKAGE and SHIM_ALWAYS_EXPORT's
- positions
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes the GCC build. GCC seems to be stricter with the position of the
-linkage specification, so just swap the terms to prevent an error that looks
-like:
-
-In file included from ../../base/allocator/allocator_shim.cc:333:
-../../base/allocator/allocator_shim_override_cpp_symbols.h:39:30: error: expected unqualified-id before string constant
- #define ALIGN_LINKAGE extern "C"
- ^~~
-../../base/allocator/allocator_shim_override_cpp_symbols.h:99:20: note: in expansion of macro ‘ALIGN_LINKAGE’
- SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size,
- ^~~~~~~~~~~~~
-
-Bug: 819294
-Change-Id: I0aa16ea88cead42e83796a1c86afad8b447ddc50
-Reviewed-on: https://chromium-review.googlesource.com/c/1458256
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
-Reviewed-by: Primiano Tucci <primiano@chromium.org>
-Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Cr-Commit-Position: refs/heads/master@{#630084}
----
- .../allocator_shim_override_cpp_symbols.h | 20 +++++++++----------
- 1 file changed, 10 insertions(+), 10 deletions(-)
-
-diff --git a/base/allocator/allocator_shim_override_cpp_symbols.h b/base/allocator/allocator_shim_override_cpp_symbols.h
-index 1228f5e33d28..01d25b7f6437 100644
---- a/base/allocator/allocator_shim_override_cpp_symbols.h
-+++ b/base/allocator/allocator_shim_override_cpp_symbols.h
-@@ -96,57 +96,57 @@ SHIM_ALWAYS_EXPORT void operator delete[](void* p, size_t) __THROW {
- ShimCppDelete(p);
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW(std::size_t size,
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW(std::size_t size,
- ALIGN_VAL_T alignment) {
- return ShimCppAlignedNew(size, static_cast<size_t>(alignment));
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_NOTHROW(
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_NOTHROW(
- std::size_t size,
- ALIGN_VAL_T alignment,
- const std::nothrow_t&) __THROW {
- return ShimCppAlignedNew(size, static_cast<size_t>(alignment));
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW {
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL(void* p, ALIGN_VAL_T) __THROW {
- ShimCppDelete(p);
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_SIZED(void* p,
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_SIZED(void* p,
- std::size_t size,
- ALIGN_VAL_T) __THROW {
- ShimCppDelete(p);
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void
- ALIGN_DEL_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW {
- ShimCppDelete(p);
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR(std::size_t size,
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR(std::size_t size,
- ALIGN_VAL_T alignment) {
- return ShimCppAlignedNew(size, static_cast<size_t>(alignment));
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void* ALIGN_NEW_ARR_NOTHROW(
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void* ALIGN_NEW_ARR_NOTHROW(
- std::size_t size,
- ALIGN_VAL_T alignment,
- const std::nothrow_t&) __THROW {
- return ShimCppAlignedNew(size, static_cast<size_t>(alignment));
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR(void* p,
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR(void* p,
- ALIGN_VAL_T) __THROW {
- ShimCppDelete(p);
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void ALIGN_DEL_ARR_SIZED(void* p,
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void ALIGN_DEL_ARR_SIZED(void* p,
- std::size_t size,
- ALIGN_VAL_T) __THROW {
- ShimCppDelete(p);
- }
-
--SHIM_ALWAYS_EXPORT ALIGN_LINKAGE void
-+ALIGN_LINKAGE SHIM_ALWAYS_EXPORT void
- ALIGN_DEL_ARR_NOTHROW(void* p, ALIGN_VAL_T, const std::nothrow_t&) __THROW {
- ShimCppDelete(p);
- }
---
-2.20.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-1.patch b/www-client/chromium/files/chromium-73-gcc-1.patch
deleted file mode 100644
index c3f8e42..0000000
--- a/www-client/chromium/files/chromium-73-gcc-1.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 130a5ae24a02daba8729ba2216bcaf3dbfacea69 Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Fri, 8 Feb 2019 16:58:38 +0000
-Subject: [PATCH] media::learning: Make LabelledExample's move assignment
- operator noexcept
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The GCC build is currently broken with an error like this:
-
- ../../media/learning/common/labelled_example.cc:20:1: error: function ‘media::learning::LabelledExample::LabelledExample(media::learning::LabelledExample&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’
- LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default;
- ^~~~~~~~~~~~~~~
-
-With GCC, having that noexcept marker requires all members to be marked with
-noexcept themselves, and TargetValue was missing some assignment operators
-and noexcept markers.
-
-clang is fine because we pass -fno-exceptions and it disables the same error
-there, while GCC continues to raise it (bug 843143 and its corresponding CL
-have a longer discussion on this issue).
-
-Bug: 819294
-Change-Id: Ide30932fc466ccb52d6883a82777e703dae48798
-Reviewed-on: https://chromium-review.googlesource.com/c/1458210
-Commit-Queue: Frank Liberato <liberato@chromium.org>
-Reviewed-by: Frank Liberato <liberato@chromium.org>
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Cr-Commit-Position: refs/heads/master@{#630355}
----
- media/learning/common/labelled_example.cc | 3 ++-
- media/learning/common/labelled_example.h | 2 +-
- media/learning/common/value.cc | 6 ++++++
- media/learning/common/value.h | 4 ++++
- 4 files changed, 13 insertions(+), 2 deletions(-)
-
-diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc
-index 76d08509298e..43e834f9f3cf 100644
---- a/media/learning/common/labelled_example.cc
-+++ b/media/learning/common/labelled_example.cc
-@@ -59,7 +59,8 @@ bool LabelledExample::operator<(const LabelledExample& rhs) const {
- LabelledExample& LabelledExample::operator=(const LabelledExample& rhs) =
- default;
-
--LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) = default;
-+LabelledExample& LabelledExample::operator=(LabelledExample&& rhs) noexcept =
-+ default;
-
- TrainingData::TrainingData() = default;
-
-diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h
-index 4f43c54e7a76..365abc3c0ebf 100644
---- a/media/learning/common/labelled_example.h
-+++ b/media/learning/common/labelled_example.h
-@@ -40,7 +40,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample {
- bool operator<(const LabelledExample& rhs) const;
-
- LabelledExample& operator=(const LabelledExample& rhs);
-- LabelledExample& operator=(LabelledExample&& rhs);
-+ LabelledExample& operator=(LabelledExample&& rhs) noexcept;
-
- // Observed feature values.
- // Note that to interpret these values, you probably need to have the
-diff --git a/media/learning/common/value.cc b/media/learning/common/value.cc
-index 9c9395c25d4e..12ea399d24c3 100644
---- a/media/learning/common/value.cc
-+++ b/media/learning/common/value.cc
-@@ -23,6 +23,12 @@ Value::Value(const std::string& x) : value_(base::PersistentHash(x)) {}
-
- Value::Value(const Value& other) : value_(other.value_) {}
-
-+Value::Value(Value&& rhs) noexcept = default;
-+
-+Value& Value::operator=(const Value& rhs) = default;
-+
-+Value& Value::operator=(Value&& rhs) noexcept = default;
-+
- bool Value::operator==(const Value& rhs) const {
- return value_ == rhs.value_;
- }
-diff --git a/media/learning/common/value.h b/media/learning/common/value.h
-index 0e64da961f34..62f4953f691c 100644
---- a/media/learning/common/value.h
-+++ b/media/learning/common/value.h
-@@ -38,6 +38,10 @@ class COMPONENT_EXPORT(LEARNING_COMMON) Value {
- explicit Value(const std::string& x);
-
- Value(const Value& other);
-+ Value(Value&&) noexcept;
-+
-+ Value& operator=(const Value&);
-+ Value& operator=(Value&&) noexcept;
-
- bool operator==(const Value& rhs) const;
- bool operator!=(const Value& rhs) const;
---
-2.20.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-2.patch b/www-client/chromium/files/chromium-73-gcc-2.patch
deleted file mode 100644
index 9d1f05a..0000000
--- a/www-client/chromium/files/chromium-73-gcc-2.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From a5ba6f9bb7665040045dc0f8087407096630ad7b Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Fri, 8 Feb 2019 02:57:28 +0000
-Subject: [PATCH] color_utils: Use std::sqrt() instead of std::sqrtf()
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes the build with libstdc++:
-
- ../../ui/gfx/color_utils.cc: In function ‘SkColor color_utils::SetDarkestColorForTesting(SkColor)’:
- ../../ui/gfx/color_utils.cc:434:12: error: ‘sqrtf’ is not a member of ‘std’
- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f;
- ^~~~~
- ../../ui/gfx/color_utils.cc:434:12: note: suggested alternative: ‘sqrt’
- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f;
- ^~~~~
- sqrt
-
-sqrtf() is not formally part of C++14 as far as I can see even though libc++
-has it in <cmath>. Additionally, we're only dealing with floats in all parts
-of the expression above, so using the float sqrt() overload should be
-harmless anyway.
-
-Bug: 819294
-Change-Id: If6c7bf31819df97a761e6963def6d6506154c34d
-Reviewed-on: https://chromium-review.googlesource.com/c/1458193
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Reviewed-by: Peter Kasting <pkasting@chromium.org>
-Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Cr-Commit-Position: refs/heads/master@{#630140}
----
- ui/gfx/color_utils.cc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc
-index c868cd54bac3..92ba1407d594 100644
---- a/ui/gfx/color_utils.cc
-+++ b/ui/gfx/color_utils.cc
-@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) {
- // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below
- // can be verified by plugging it into how GetContrastRatio() operates.
- g_luminance_midpoint =
-- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f;
-+ std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f;
-
- return previous_darkest_color;
- }
---
-2.20.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-3.patch b/www-client/chromium/files/chromium-73-gcc-3.patch
deleted file mode 100644
index 9cc6cf2..0000000
--- a/www-client/chromium/files/chromium-73-gcc-3.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-From c33e832cc145c696d2157796c7640e659740dafa Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Fri, 8 Feb 2019 08:44:00 +0000
-Subject: [PATCH] quic_flags_impl: Fix GCC build after #618558
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Due to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84849, having
-base::NoDestructor<T<U>> and passing an initializer list of Us does not
-work if this is not done explicitly, as GCC incorrectly fails to determine
-which constructor overload to use:
-
- ../../net/third_party/quic/platform/impl/quic_flags_impl.cc: In member function ‘bool quic::TypedQuicFlagHelper<T>::SetFlag(const string&) const [with T = bool; std::__cxx11::string = std::__cxx11::basic_string<char>]’:
- ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:156:41: error: call of overloaded ‘NoDestructor(<brace-enclosed initializer list>)’ is ambiguous
- {"", "1", "t", "true", "y", "yes"});
- ^
- In file included from ../../net/third_party/quic/platform/impl/quic_flags_impl.h:16,
- from ../../net/third_party/quic/platform/impl/quic_flags_impl.cc:5:
- ../../base/no_destructor.h:62:3: note: candidate: ‘base::NoDestructor<T>::NoDestructor(const base::NoDestructor<T>&) [with T = std::set<std::__cxx11::basic_string<char> >]’ <deleted>
- NoDestructor(const NoDestructor&) = delete;
- ^~~~~~~~~~~~
- ../../base/no_destructor.h:60:12: note: candidate: ‘base::NoDestructor<T>::NoDestructor(T&&) [with T = std::set<std::__cxx11::basic_string<char> >]’
- explicit NoDestructor(T&& x) { new (storage_) T(std::move(x)); }
- ^~~~~~~~~~~~
- ../../base/no_destructor.h:59:12: note: candidate: ‘base::NoDestructor<T>::NoDestructor(const T&) [with T = std::set<std::__cxx11::basic_string<char> >]’
- explicit NoDestructor(const T& x) { new (storage_) T(x); }
- ^~~~~~~~~~~~
-
-Explicitly use an std::initializer_list to make the build work everywhere.
-
-Bug: 819294
-Change-Id: I775be20e3766a88a656b58c94c40869cb1bee2a8
-Reviewed-on: https://chromium-review.googlesource.com/c/1458214
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Reviewed-by: Ryan Hamilton <rch@chromium.org>
-Commit-Queue: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Cr-Commit-Position: refs/heads/master@{#630249}
----
- net/third_party/quic/platform/impl/quic_flags_impl.cc | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc
-index 5e6962d1e770..3fa45fc6892d 100644
---- a/net/third_party/quic/platform/impl/quic_flags_impl.cc
-+++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc
-@@ -5,6 +5,7 @@
- #include "net/third_party/quic/platform/impl/quic_flags_impl.h"
-
- #include <algorithm>
-+#include <initializer_list>
- #include <iostream>
- #include <set>
-
-@@ -153,9 +154,9 @@ std::string QuicFlagRegistry::GetHelp() const {
- template <>
- bool TypedQuicFlagHelper<bool>::SetFlag(const std::string& s) const {
- static const base::NoDestructor<std::set<std::string>> kTrueValues(
-- {"", "1", "t", "true", "y", "yes"});
-+ std::initializer_list<std::string>({"", "1", "t", "true", "y", "yes"}));
- static const base::NoDestructor<std::set<std::string>> kFalseValues(
-- {"0", "f", "false", "n", "no"});
-+ std::initializer_list<std::string>({"0", "f", "false", "n", "no"}));
- if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) {
- *flag_ = true;
- return true;
---
-2.20.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-4.patch b/www-client/chromium/files/chromium-73-gcc-4.patch
deleted file mode 100644
index df7d630..0000000
--- a/www-client/chromium/files/chromium-73-gcc-4.patch
+++ /dev/null
@@ -1,59 +0,0 @@
-From bdd76190e54e6a0e11343dd19e4bf1d06956fa48 Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Wed, 13 Feb 2019 01:02:27 +0000
-Subject: [PATCH] BaseRenderingContext2D: Use base::CheckMul and simplify code
- in putImageData()
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Follow-up to commit e0b3253a56 ("Fix image conversion truncation issues").
-The current code does not build with GCC due to
-https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89287:
-
- ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc: In member function ‘void blink::BaseRenderingContext2D::putImageData(blink::ImageData*, int, int, int, int, int, int, blink::ExceptionState&)’:
- ../../third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc:1777:44: error: default type conversion can't deduce template argument for ‘template<class Dst, typename std::enable_if<base::internal::IsNumericRangeContained<Dst, long unsigned int, void>::value, void>::type* <anonymous> > constexpr base::internal::StrictNumeric<T>::operator Dst() const [with Dst = Dst; typename std::enable_if<base::internal::IsNumericRangeContained<Dst, T>::value>::type* <anonymous> = <enumerator>; T = long unsigned int]’
- new uint8_t[data_length.ValueOrDie()]);
- ^
-
-Work around it by using the more idiomatic base::CheckMul() with
-AssignIfValid, so that we can have |data_length| be a size_t again and not
-leave it to the compiler to figure out the type we want when creating the
-|converted_pixels| array.
-
-Bug: 819294
-Change-Id: Id124cc4f3d749b45def4708e21e4badafd708578
-Reviewed-on: https://chromium-review.googlesource.com/c/1467201
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Commit-Queue: Kentaro Hara <haraken@chromium.org>
-Reviewed-by: Kentaro Hara <haraken@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#631472}
----
- .../canvas/canvas2d/base_rendering_context_2d.cc | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
-index d9fa696c9a9d..34a8a202bfd3 100644
---- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
-+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
-@@ -1769,12 +1769,12 @@ void BaseRenderingContext2D::putImageData(ImageData* data,
- CanvasColorParams(ColorParams().ColorSpace(), PixelFormat(), kNonOpaque);
- if (data_color_params.NeedsColorConversion(context_color_params) ||
- PixelFormat() == kF16CanvasPixelFormat) {
-- base::CheckedNumeric<size_t> data_length = data->Size().Area();
-- data_length *= context_color_params.BytesPerPixel();
-- if (!data_length.IsValid())
-+ size_t data_length;
-+ if (!base::CheckMul(data->Size().Area(),
-+ context_color_params.BytesPerPixel())
-+ .AssignIfValid(&data_length))
- return;
-- std::unique_ptr<uint8_t[]> converted_pixels(
-- new uint8_t[data_length.ValueOrDie()]);
-+ std::unique_ptr<uint8_t[]> converted_pixels(new uint8_t[data_length]);
- if (data->ImageDataInCanvasColorSettings(
- ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(),
- kRGBAColorType)) {
---
-2.20.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-5.patch b/www-client/chromium/files/chromium-73-gcc-5.patch
deleted file mode 100644
index 033861e..0000000
--- a/www-client/chromium/files/chromium-73-gcc-5.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From 78b0f0dfa9e6f3c37b71102c01def92f1ab8c330 Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Wed, 13 Feb 2019 23:28:46 +0000
-Subject: [PATCH] CastActivityManager: Do not make DoLaunchSessionParams' move
- constructor noexcept
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes the GCC build:
-
- ../../chrome/browser/media/router/providers/cast/cast_activity_manager.cc:806:1: error: function ‘media_router::CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(media_router::CastActivityManager::DoLaunchSessionParams&&)’ defaulted on its redeclaration with an exception-specification that differs from the implicit exception-specification ‘’
- CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(
- ^~~~~~~~~~~~~~~~~~~
-
-With GCC, having that noexcept marker requires all members to be marked with
-noexcept themselves, and MediaRoute, CastMediaSource and url::Origin need
-the right annotations. Just making DoLaunchSessionParams not noexcept is the
-least intrusive solution for now.
-
-clang is fine because we pass -fno-exceptions and it disables the same error
-there, while GCC continues to raise it (bug 843143 and its corresponding CL
-have a longer discussion on this issue).
-
-Bug: 819294
-Change-Id: Ia3a5fb60b5e74e68bd35cfa50e2fcc728b64e5eb
-Reviewed-on: https://chromium-review.googlesource.com/c/1469942
-Commit-Queue: mark a. foltz <mfoltz@chromium.org>
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Reviewed-by: mark a. foltz <mfoltz@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#631962}
----
- .../media/router/providers/cast/cast_activity_manager.cc | 2 +-
- .../browser/media/router/providers/cast/cast_activity_manager.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc
-index b7ee9695f69a..8569e0cd30a3 100644
---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc
-+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc
-@@ -804,7 +804,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(
- callback(std::move(callback)) {}
-
- CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(
-- DoLaunchSessionParams&& other) noexcept = default;
-+ DoLaunchSessionParams&& other) = default;
-
- CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default;
-
-diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h
-index 325bffc725ee..08fe0ccca603 100644
---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h
-+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h
-@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer,
- const url::Origin& origin,
- int tab_id,
- mojom::MediaRouteProvider::CreateRouteCallback callback);
-- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept;
-+ DoLaunchSessionParams(DoLaunchSessionParams&& other);
- ~DoLaunchSessionParams();
- DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete;
-
---
-2.20.1
-
diff --git a/www-client/chromium/files/chromium-73-gcc-6.patch b/www-client/chromium/files/chromium-73-gcc-6.patch
deleted file mode 100644
index 3cd72ab..0000000
--- a/www-client/chromium/files/chromium-73-gcc-6.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From cf4c534f04c223f8a9d65407852e2a531a6d7fb6 Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Thu, 14 Feb 2019 22:22:21 +0000
-Subject: [PATCH] chrome/browser: Replace some forward declarations with actual
- includes
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-This fixes the GCC build which was failing like this:
-
- ../../base/scoped_observer.h: In instantiation of ‘void ScopedObserver<Source, Observer>::RemoveAll() [with Source = TabStripModel; Observer = TabStripModelObserver]’:
- ../../base/scoped_observer.h:26:5: required from ‘ScopedObserver<Source, Observer>::~ScopedObserver() [with Source = TabStripModel; Observer = TabStripModelObserver]’
- ../../chrome/browser/ui/views/extensions/extension_popup.h:115:70: required from here
- ../../base/scoped_observer.h:45:20: error: invalid use of incomplete type ‘class TabStripModel’
- sources_[i]->RemoveObserver(observer_);
- ~~~~~~~~~~~~~^~~~~~~~~~~~~~
-
-This is caused by https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89311 ("Brace
-initialization needlessly invokes destructor"), i.e. having something like
-
- ScopedObserver<T, U> observer_{this};
-
-in a header declaration requires T and U to be fully declared because
-ScopedObserver's destructor references them. In a few cases, T was only
-forward-declared.
-
-Bug: 819294
-Change-Id: Ie5b9dc2745e27d4532c5539e3845a8c9147a0595
-Reviewed-on: https://chromium-review.googlesource.com/c/1472576
-Auto-Submit: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Commit-Queue: Alan Cutter <alancutter@chromium.org>
-Reviewed-by: Finnur Thorarinsson <finnur@chromium.org>
-Reviewed-by: Alan Cutter <alancutter@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#632385}
----
- chrome/browser/ui/views/extensions/extension_popup.cc | 1 -
- chrome/browser/ui/views/extensions/extension_popup.h | 1 +
- chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc | 1 -
- chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h | 2 +-
- .../web_applications/extensions/bookmark_app_tab_helper.cc | 1 -
- .../web_applications/extensions/bookmark_app_tab_helper.h | 2 +-
- 6 files changed, 3 insertions(+), 5 deletions(-)
-
-diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc
-index 3f0985d383dd..57d16aba9e9f 100644
---- a/chrome/browser/ui/views/extensions/extension_popup.cc
-+++ b/chrome/browser/ui/views/extensions/extension_popup.cc
-@@ -8,7 +8,6 @@
- #include "chrome/browser/devtools/devtools_window.h"
- #include "chrome/browser/extensions/extension_view_host.h"
- #include "chrome/browser/ui/browser.h"
--#include "chrome/browser/ui/tabs/tab_strip_model.h"
- #include "content/public/browser/devtools_agent_host.h"
- #include "content/public/browser/notification_details.h"
- #include "content/public/browser/notification_source.h"
-diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h
-index 3661b5bda950..9018efa0fea5 100644
---- a/chrome/browser/ui/views/extensions/extension_popup.h
-+++ b/chrome/browser/ui/views/extensions/extension_popup.h
-@@ -9,6 +9,7 @@
- #include "base/compiler_specific.h"
- #include "base/macros.h"
- #include "base/scoped_observer.h"
-+#include "chrome/browser/ui/tabs/tab_strip_model.h"
- #include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
- #include "chrome/browser/ui/views/extensions/extension_view_views.h"
- #include "content/public/browser/devtools_agent_host_observer.h"
-diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h
-index 2a3ea8e4f91f..ac44a4f05dec 100644
---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h
-+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h
-@@ -8,6 +8,7 @@
- #include "base/macros.h"
- #include "base/memory/weak_ptr.h"
- #include "base/scoped_observer.h"
-+#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h"
- #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h"
- #include "chrome/browser/ui/views/frame/app_menu_button_observer.h"
- #include "ui/views/controls/scroll_view.h"
-@@ -16,7 +17,6 @@ class AppMenu;
- class AppMenuButton;
- class Browser;
- class BrowserActionsContainer;
--class ToolbarActionsBar;
-
- namespace views {
- class MenuItemView;
diff --git a/www-client/chromium/files/chromium-74-gcc.patch b/www-client/chromium/files/chromium-74-gcc.patch
deleted file mode 100644
index d4829ff..0000000
--- a/www-client/chromium/files/chromium-74-gcc.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/third_party/dav1d/BUILD.gn b/third_party/dav1d/BUILD.gn
-index aedc658c3..4baeac7df 100644
---- a/third_party/dav1d/BUILD.gn
-+++ b/third_party/dav1d/BUILD.gn
-@@ -31,9 +31,9 @@ if (current_cpu == "x86" || current_cpu == "x64") {
- } else {
- needs_stack_alignment = true
- if (current_cpu == "x86") {
-- stack_alignment = 16
-+ stack_alignment = 4
- } else if (current_cpu == "x64") {
-- stack_alignment = 32
-+ stack_alignment = 5
- }
- }
- } else {
-@@ -73,7 +73,7 @@ dav1d_copts = [
- if (!is_win) {
- dav1d_copts += [ "-std=c99" ]
- if (needs_stack_alignment) {
-- dav1d_copts += [ "-mstack-alignment=$stack_alignment" ]
-+ dav1d_copts += [ "-mpreferred-stack-boundary=$stack_alignment" ]
- }
- }
-
diff --git a/www-client/chromium/files/chromium-75-vaapi.patch b/www-client/chromium/files/chromium-75-vaapi.patch
deleted file mode 100644
index 7e08455..0000000
--- a/www-client/chromium/files/chromium-75-vaapi.patch
+++ /dev/null
@@ -1,254 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index cb04c939a..dc1a995a6 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1434,7 +1434,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- #if defined(OS_WIN)
-@@ -1980,12 +1980,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
- flag_descriptions::kV8CacheOptionsDescription, kOsAll,
- MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
-@@ -3696,10 +3696,10 @@ const FeatureEntry kFeatureEntries[] = {
- "AutofillDropdownLayout")},
- #endif // OS_ANDROID
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"enable-vaapi-jpeg-image-decode-acceleration",
- flag_descriptions::kVaapiJpegImageDecodeAccelerationName,
-- flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS,
-+ flag_descriptions::kVaapiJpegImageDecodeAccelerationDescription, kOsCrOS | kOsLinux,
- FEATURE_VALUE_TYPE(features::kVaapiJpegImageDecodeAcceleration)},
- #endif
-
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 7457414f6..5c84e90f6 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2991,13 +2991,22 @@ const char kMacViewsTaskManagerDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+#endif // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID)
-+
-+#if defined(OS_CHROMEOS)
-
- const char kAppServiceAshName[] = "App Service Ash";
- const char kAppServiceAshDescription[] =
-@@ -3437,12 +3446,6 @@ const char kUserActivityPredictionMlServiceName[] =
- const char kUserActivityPredictionMlServiceDescription[] =
- "Uses the new ML Service model for user activity prediction (Smart Dim).";
-
--const char kVaapiJpegImageDecodeAccelerationName[] =
-- "VA-API JPEG decode acceleration for images";
--const char kVaapiJpegImageDecodeAccelerationDescription[] =
-- "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-- " captures) using the VA-API.";
--
- const char kVideoPlayerChromecastSupportName[] =
- "Experimental Chromecast support for Video Player";
- const char kVideoPlayerChromecastSupportDescription[] =
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index 11e45a0ac..d7cbf8394 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1779,11 +1779,17 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
-
-@@ -2059,9 +2065,6 @@ extern const char kUseMonitorColorSpaceDescription[];
- extern const char kUserActivityPredictionMlServiceName[];
- extern const char kUserActivityPredictionMlServiceDescription[];
-
--extern const char kVaapiJpegImageDecodeAccelerationName[];
--extern const char kVaapiJpegImageDecodeAccelerationDescription[];
--
- extern const char kVideoPlayerChromecastSupportName[];
- extern const char kVideoPlayerChromecastSupportDescription[];
-
-diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc
-index 284d0167d..87d5e14c5 100644
---- a/components/viz/service/main/viz_main_impl.cc
-+++ b/components/viz/service/main/viz_main_impl.cc
-@@ -36,7 +36,7 @@ std::unique_ptr<base::Thread> CreateAndStartIOThread() {
- // It should be possible to use |main_task_runner_| for doing IO tasks.
- base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0);
- thread_options.priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // TODO(reveman): Remove this in favor of setting it explicitly for each
- // type of process.
- thread_options.priority = base::ThreadPriority::DISPLAY;
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 2b1165264..fec963bd9 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -127,4 +128,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
-index a838f0ccf..4c891fb92 100644
---- a/content/gpu/gpu_main.cc
-+++ b/content/gpu/gpu_main.cc
-@@ -288,7 +288,7 @@ int GpuMain(const MainFunctionParams& parameters) {
-
- base::PlatformThread::SetName("CrGpuMain");
-
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // Set thread priority before sandbox initialization.
- base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
- #endif
-@@ -321,7 +321,7 @@ int GpuMain(const MainFunctionParams& parameters) {
- GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
-
- base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- io_thread_priority = base::ThreadPriority::DISPLAY;
- #endif
-
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index d4c3b4364..935fdeb86 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -369,17 +369,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index b3477148d..477caecdb 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -517,7 +517,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeJpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index 81c1e4fca..81996bc56 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -212,7 +213,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index b1750d527..cc1ad45af 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -512,6 +512,13 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
-+
- if (use_v4l2_codec || use_vaapi) {
- test("jpeg_encode_accelerator_unittest") {
- deps = [
-@@ -582,6 +589,7 @@ if (is_chromeos || is_linux) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
diff --git a/www-client/chromium/files/chromium-76-arm64-skia.patch b/www-client/chromium/files/chromium-76-arm64-skia.patch
deleted file mode 100644
index 8a44235..0000000
--- a/www-client/chromium/files/chromium-76-arm64-skia.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 7aacb0b30a86936aedd1308708d1a51d951197f2 Mon Sep 17 00:00:00 2001
-From: Mike Klein <mtklein@google.com>
-Date: Tue, 02 Jul 2019 13:23:06 -0500
-Subject: [PATCH] fix GCC arm64 builds
-
-These two guards are checking if we're building for aarch64 and thus
-have F16 conversion instructions, but weren't checking if we want to use
-them (if we have them _and_ we're being compiled by Clang). At head
-we're trying to pass a 2-byte uint16_t to a function expecting an 8-byte
-uint16x4_t, etc.
-
-Change-Id: I21f6cd2100ec81ccdd47c4ec0575107624cd7c5a
-Reviewed-on: https://skia-review.googlesource.com/c/skia/+/225257
-Reviewed-by: Herb Derby <herb@google.com>
-Commit-Queue: Mike Klein <mtklein@google.com>
----
-
-diff --git a/third_party/skia/src/opts/SkRasterPipeline_opts.h b/third_party/skia/src/opts/SkRasterPipeline_opts.h
-index 0eae9fe..e05f36c 100644
---- a/third_party/skia/src/opts/SkRasterPipeline_opts.h
-+++ b/third_party/skia/src/opts/SkRasterPipeline_opts.h
-@@ -972,7 +972,8 @@
- }
-
- SI F from_half(U16 h) {
--#if defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
-+#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \
-+ && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
- return vcvt_f32_f16(h);
-
- #elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_AVX512)
-@@ -992,7 +993,8 @@
- }
-
- SI U16 to_half(F f) {
--#if defined(SK_CPU_ARM64) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
-+#if defined(JUMPER_IS_NEON) && defined(SK_CPU_ARM64) \
-+ && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
- return vcvt_f16_f32(f);
-
- #elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_AVX512)
diff --git a/www-client/chromium/files/chromium-76-gcc-ambiguous-nodestructor.patch b/www-client/chromium/files/chromium-76-gcc-ambiguous-nodestructor.patch
deleted file mode 100644
index 587abf3..0000000
--- a/www-client/chromium/files/chromium-76-gcc-ambiguous-nodestructor.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-From 52b5ceac95b67491b1c71f0ef9a32b778bbbaa2e Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 05 Jun 2019 19:46:55 +0000
-Subject: [PATCH] GCC: avoid ambiguous NoDestructor creation in GetNeverSniffedMimeTypes.
-
-Use brace-list notation to wrap the already existing brace-list for
-initializing the flat-set. This resolves an ambiguous instantiation
-in GCC.
-
-Bug: 819294
-Change-Id: I89ddf12522d62a5140a8c2c41dc98e30ec7a0e78
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645774
-Reviewed-by: Matt Menke <mmenke@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666401}
----
-
-diff --git a/services/network/cross_origin_read_blocking.cc b/services/network/cross_origin_read_blocking.cc
-index 30999c0..60a03f6 100644
---- a/services/network/cross_origin_read_blocking.cc
-+++ b/services/network/cross_origin_read_blocking.cc
-@@ -211,7 +211,7 @@
- // confirmation sniffing because images, scripts, etc. are frequently
- // mislabelled by http servers as HTML/JSON/XML).
- base::flat_set<std::string>& GetNeverSniffedMimeTypes() {
-- static base::NoDestructor<base::flat_set<std::string>> s_types({
-+ static base::NoDestructor<base::flat_set<std::string>> s_types{{
- // The list below has been populated based on most commonly used content
- // types according to HTTP Archive - see:
- // https://github.com/whatwg/fetch/issues/860#issuecomment-457330454
-@@ -224,7 +224,7 @@
- "application/x-www-form-urlencoded",
- "application/zip",
- "text/event-stream",
-- });
-+ }};
-
- // All items need to be lower-case, to support case-insensitive comparisons
- // later.
diff --git a/www-client/chromium/files/chromium-76-gcc-blink-constexpr.patch b/www-client/chromium/files/chromium-76-gcc-blink-constexpr.patch
deleted file mode 100644
index 26bba05..0000000
--- a/www-client/chromium/files/chromium-76-gcc-blink-constexpr.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From cf6d6b40d711fce93a24a2cf517fa3becdbae8bb Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 05 Jun 2019 17:18:40 +0000
-Subject: [PATCH] Make blink::LayoutUnit::HasFraction constexpr
-
-Other HasFraction methods as in PhysicalUnit are declared already
-constexpr and using it. It breaks GCC build.
-
-Bug: 819294.
-Change-Id: I0c4bd9bd206d45cf31f7fa815ce8533718a425cb
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645222
-Reviewed-by: vmpstr <vmpstr@chromium.org>
-Reviewed-by: Xianzhu Wang <wangxianzhu@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666336}
----
-
-diff --git a/third_party/blink/renderer/platform/geometry/layout_unit.h b/third_party/blink/renderer/platform/geometry/layout_unit.h
-index f073986..b6dbc76 100644
---- a/third_party/blink/renderer/platform/geometry/layout_unit.h
-+++ b/third_party/blink/renderer/platform/geometry/layout_unit.h
-@@ -202,7 +202,9 @@
- return value_ > 0 ? LayoutUnit() : *this;
- }
-
-- bool HasFraction() const { return RawValue() % kFixedPointDenominator; }
-+ constexpr bool HasFraction() const {
-+ return RawValue() % kFixedPointDenominator;
-+ }
-
- LayoutUnit Fraction() const {
- // Compute fraction using the mod operator to preserve the sign of the value
diff --git a/www-client/chromium/files/chromium-76-gcc-blink-namespace1.patch b/www-client/chromium/files/chromium-76-gcc-blink-namespace1.patch
deleted file mode 100644
index bae3ede..0000000
--- a/www-client/chromium/files/chromium-76-gcc-blink-namespace1.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From c6afbd59c997c2b64f11abdd1eaef71ae8ea2ddc Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 07 Jun 2019 18:11:15 +0000
-Subject: [PATCH] GCC: FeaturePolicyParser ParseValueForFuzzer is not in anonymous namespace
-
-Compilation fails because we are declaring ParseValueForFuzzer as friend method,
-but we are declaring it is in anonymous namespace. Moving to global namespace
-still fails (in this case in Clang).
-
-So final solution is making it a public static method of FeaturePolicyParser.
-
-Bug: 819294
-Change-Id: Iea307cb6faef675b748d6eb5da2175dcbb17fdc7
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645223
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Luna Lu <loonybear@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#667228}
----
-
-diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc
-index f1c9594..bae91a1 100644
---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc
-+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.cc
-@@ -323,6 +323,13 @@
- return value;
- }
-
-+void FeaturePolicyParser::ParseValueForFuzzer(
-+ blink::mojom::PolicyValueType feature_type,
-+ const WTF::String& value_string) {
-+ bool ok;
-+ ParseValueForType(feature_type, value_string, &ok);
-+}
-+
- bool IsFeatureDeclared(mojom::FeaturePolicyFeature feature,
- const ParsedFeaturePolicy& policy) {
- return std::any_of(policy.begin(), policy.end(),
-diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h
-index fd25d90..8aa7323 100644
---- a/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h
-+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_parser.h
-@@ -16,9 +16,6 @@
- #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
- #include "third_party/blink/renderer/platform/wtf/vector.h"
-
--// Forward declare for friendship.
--void ParseValueForFuzzer(blink::mojom::PolicyValueType, const WTF::String&);
--
- namespace blink {
-
- class Document;
-@@ -79,8 +76,10 @@
- const FeatureNameMap& feature_names,
- ExecutionContext* execution_context = nullptr);
-
-+ // Used for LLVM fuzzer test
-+ static void ParseValueForFuzzer(mojom::PolicyValueType, const String&);
-+
- private:
-- friend void ::ParseValueForFuzzer(mojom::PolicyValueType, const String&);
- static PolicyValue GetFallbackValueForFeature(
- mojom::FeaturePolicyFeature feature);
- static PolicyValue ParseValueForType(mojom::PolicyValueType feature_type,
-diff --git a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc
-index 7f8e6aa..1455636 100644
---- a/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc
-+++ b/third_party/blink/renderer/core/feature_policy/feature_policy_value_fuzzer.cc
-@@ -13,19 +13,12 @@
- #include "third_party/blink/renderer/platform/wtf/text/wtf_string.h"
- #include "third_party/blink/renderer/platform/wtf/vector.h"
-
--void ParseValueForFuzzer(blink::mojom::PolicyValueType feature_type,
-- const WTF::String& value_string) {
-- bool ok;
-- blink::FeaturePolicyParser::ParseValueForType(feature_type, value_string,
-- &ok);
--}
--
- extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
- static blink::BlinkFuzzerTestSupport test_support =
- blink::BlinkFuzzerTestSupport();
-- ParseValueForFuzzer(blink::mojom::PolicyValueType::kBool,
-- WTF::String(data, size));
-- ParseValueForFuzzer(blink::mojom::PolicyValueType::kDecDouble,
-- WTF::String(data, size));
-+ blink::FeaturePolicyParser::ParseValueForFuzzer(
-+ blink::mojom::PolicyValueType::kBool, WTF::String(data, size));
-+ blink::FeaturePolicyParser::ParseValueForFuzzer(
-+ blink::mojom::PolicyValueType::kDecDouble, WTF::String(data, size));
- return 0;
- }
diff --git a/www-client/chromium/files/chromium-76-gcc-blink-namespace2.patch b/www-client/chromium/files/chromium-76-gcc-blink-namespace2.patch
deleted file mode 100644
index 1d4b90f..0000000
--- a/www-client/chromium/files/chromium-76-gcc-blink-namespace2.patch
+++ /dev/null
@@ -1,97 +0,0 @@
-From dcb55fb8f18abe5f43d260aa67b14b2dc996f992 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 08:00:13 +0000
-Subject: [PATCH] GCC: move explicit specialization out of RunInfo
-
-Explicit specialization in non-namespace scope is not allowed in C++, and GCC breaks
-build because of that. Move the template specializations out of RunInfo declaration
-in shape_result_inline_headeres.h to fix the GCC build issue.
-
-Bug: 819294
-Change-Id: Id083852bcf8e9efbdc911fdad28fd8767d2905d0
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651728
-Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#667901}
----
-
-diff --git a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h
-index 76ee6091..c14d3a0 100644
---- a/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h
-+++ b/third_party/blink/renderer/platform/fonts/shaping/shape_result_inline_headers.h
-@@ -251,37 +251,6 @@
- template <bool has_non_zero_glyph_offsets>
- struct iterator final {};
-
-- // For non-zero glyph offset array
-- template <>
-- struct iterator<true> final {
-- // The constructor for ShapeResult
-- explicit iterator(const GlyphOffsetArray& array)
-- : pointer(array.storage_.get()) {
-- DCHECK(pointer);
-- }
--
-- // The constructor for ShapeResultView
-- explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) {
-- DCHECK(pointer);
-- }
--
-- GlyphOffset operator*() const { return *pointer; }
-- void operator++() { ++pointer; }
--
-- const GlyphOffset* pointer;
-- };
--
-- // For zero glyph offset array
-- template <>
-- struct iterator<false> final {
-- explicit iterator(const GlyphOffsetArray& array) {
-- DCHECK(!array.HasStorage());
-- }
-- explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); }
-- GlyphOffset operator*() const { return GlyphOffset(); }
-- void operator++() {}
-- };
--
- template <bool has_non_zero_glyph_offsets>
- iterator<has_non_zero_glyph_offsets> GetIterator() const {
- return iterator<has_non_zero_glyph_offsets>(*this);
-@@ -495,6 +464,37 @@
- float width_;
- };
-
-+// For non-zero glyph offset array
-+template <>
-+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator<true> final {
-+ // The constructor for ShapeResult
-+ explicit iterator(const GlyphOffsetArray& array)
-+ : pointer(array.storage_.get()) {
-+ DCHECK(pointer);
-+ }
-+
-+ // The constructor for ShapeResultView
-+ explicit iterator(const GlyphDataRange& range) : pointer(range.offsets) {
-+ DCHECK(pointer);
-+ }
-+
-+ GlyphOffset operator*() const { return *pointer; }
-+ void operator++() { ++pointer; }
-+
-+ const GlyphOffset* pointer;
-+};
-+
-+// For zero glyph offset array
-+template <>
-+struct ShapeResult::RunInfo::GlyphOffsetArray::iterator<false> final {
-+ explicit iterator(const GlyphOffsetArray& array) {
-+ DCHECK(!array.HasStorage());
-+ }
-+ explicit iterator(const GlyphDataRange& range) { DCHECK(!range.offsets); }
-+ GlyphOffset operator*() const { return GlyphOffset(); }
-+ void operator++() {}
-+};
-+
- // Find the range of HarfBuzzRunGlyphData for the specified character index
- // range. This function uses binary search twice, hence O(2 log n).
- inline ShapeResult::RunInfo::GlyphDataRange
diff --git a/www-client/chromium/files/chromium-76-gcc-gl-init.patch b/www-client/chromium/files/chromium-76-gcc-gl-init.patch
deleted file mode 100644
index 3bf394f..0000000
--- a/www-client/chromium/files/chromium-76-gcc-gl-init.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 7dc76c8d9f4cfbce7cf11424120aa6f6094916dc Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 05 Jun 2019 21:09:01 +0000
-Subject: [PATCH] GCC: XSetWindowAttributes struct initialization should keep order of declaration
-
-XSetWindowAttributes initialization of attributes in GLSurfaceGLX is not in the
-same order of the declaration. GCC fails because of that.
-
-Bug: 819294
-Change-Id: I8a97da980d5961a35a47ae4d0d8d558b85291f1f
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646253
-Reviewed-by: Zhenyao Mo <zmo@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666436}
----
-
-diff --git a/ui/gl/gl_surface_glx.cc b/ui/gl/gl_surface_glx.cc
-index f649dd4..0aa6892 100644
---- a/ui/gl/gl_surface_glx.cc
-+++ b/ui/gl/gl_surface_glx.cc
-@@ -583,10 +583,10 @@
-
- XSetWindowAttributes swa = {
- .background_pixmap = 0,
-- .bit_gravity = NorthWestGravity,
-- .colormap = g_colormap,
- .background_pixel = 0, // ARGB(0,0,0,0) for compositing WM
- .border_pixel = 0,
-+ .bit_gravity = NorthWestGravity,
-+ .colormap = g_colormap,
- };
- auto value_mask = CWBackPixmap | CWBitGravity | CWColormap | CWBorderPixel;
- if (ui::IsCompositingManagerPresent() &&
diff --git a/www-client/chromium/files/chromium-76-gcc-include.patch b/www-client/chromium/files/chromium-76-gcc-include.patch
deleted file mode 100644
index adc7f3a..0000000
--- a/www-client/chromium/files/chromium-76-gcc-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/chrome/browser/themes/theme_service.h 2019-06-13 18:56:30.000000000 -0000
-+++ b/chrome/browser/themes/theme_service.h 2019-06-17 08:50:57.714289399 -0000
-@@ -26,6 +26,7 @@
- #include "extensions/common/extension_id.h"
- #include "ui/base/theme_provider.h"
- #include "ui/native_theme/native_theme_observer.h"
-+#include "ui/native_theme/native_theme.h"
-
- class BrowserThemePack;
- class CustomThemeSupplier;
diff --git a/www-client/chromium/files/chromium-76-gcc-noexcept.patch b/www-client/chromium/files/chromium-76-gcc-noexcept.patch
deleted file mode 100644
index 2a7f4b3..0000000
--- a/www-client/chromium/files/chromium-76-gcc-noexcept.patch
+++ /dev/null
@@ -1,347 +0,0 @@
-From 84c91abab33966f928497c24db4a39f436d2dca8 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 07 Jun 2019 09:50:11 +0000
-Subject: [PATCH] Make SharedMemoryMapping move constructor noexcept
-
-As LayerTreeHostImpl::UIResourceData move constructor is declared
-noexcept with default implementation, the move constructor of its
-members should also be noexcept. GCC will fail to build otherwise
-for mismatching noexcept declaration.
-
-We also set the move assignment operator.
-
-Bug: 819294
-Change-Id: Icd663da83b882e15f7d16780c9241972e09bc492
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645297
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Daniel Cheng <dcheng@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#667064}
----
-
-diff --git a/base/memory/shared_memory_mapping.cc b/base/memory/shared_memory_mapping.cc
-index 2be2570..8426fa8 100644
---- a/base/memory/shared_memory_mapping.cc
-+++ b/base/memory/shared_memory_mapping.cc
-@@ -33,7 +33,7 @@
-
- SharedMemoryMapping::SharedMemoryMapping() = default;
-
--SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping)
-+SharedMemoryMapping::SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept
- : memory_(mapping.memory_),
- size_(mapping.size_),
- mapped_size_(mapping.mapped_size_),
-@@ -42,7 +42,7 @@
- }
-
- SharedMemoryMapping& SharedMemoryMapping::operator=(
-- SharedMemoryMapping&& mapping) {
-+ SharedMemoryMapping&& mapping) noexcept {
- Unmap();
- memory_ = mapping.memory_;
- size_ = mapping.size_;
-@@ -90,9 +90,9 @@
-
- ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping() = default;
- ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping(
-- ReadOnlySharedMemoryMapping&&) = default;
-+ ReadOnlySharedMemoryMapping&&) noexcept = default;
- ReadOnlySharedMemoryMapping& ReadOnlySharedMemoryMapping::operator=(
-- ReadOnlySharedMemoryMapping&&) = default;
-+ ReadOnlySharedMemoryMapping&&) noexcept = default;
- ReadOnlySharedMemoryMapping::ReadOnlySharedMemoryMapping(
- void* address,
- size_t size,
-@@ -102,9 +102,9 @@
-
- WritableSharedMemoryMapping::WritableSharedMemoryMapping() = default;
- WritableSharedMemoryMapping::WritableSharedMemoryMapping(
-- WritableSharedMemoryMapping&&) = default;
-+ WritableSharedMemoryMapping&&) noexcept = default;
- WritableSharedMemoryMapping& WritableSharedMemoryMapping::operator=(
-- WritableSharedMemoryMapping&&) = default;
-+ WritableSharedMemoryMapping&&) noexcept = default;
- WritableSharedMemoryMapping::WritableSharedMemoryMapping(
- void* address,
- size_t size,
-diff --git a/base/memory/shared_memory_mapping.h b/base/memory/shared_memory_mapping.h
-index d9569af..2b8858e 100644
---- a/base/memory/shared_memory_mapping.h
-+++ b/base/memory/shared_memory_mapping.h
-@@ -32,8 +32,8 @@
- SharedMemoryMapping();
-
- // Move operations are allowed.
-- SharedMemoryMapping(SharedMemoryMapping&& mapping);
-- SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping);
-+ SharedMemoryMapping(SharedMemoryMapping&& mapping) noexcept;
-+ SharedMemoryMapping& operator=(SharedMemoryMapping&& mapping) noexcept;
-
- // Unmaps the region if the mapping is valid.
- virtual ~SharedMemoryMapping();
-@@ -93,8 +93,9 @@
- ReadOnlySharedMemoryMapping();
-
- // Move operations are allowed.
-- ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&);
-- ReadOnlySharedMemoryMapping& operator=(ReadOnlySharedMemoryMapping&&);
-+ ReadOnlySharedMemoryMapping(ReadOnlySharedMemoryMapping&&) noexcept;
-+ ReadOnlySharedMemoryMapping& operator=(
-+ ReadOnlySharedMemoryMapping&&) noexcept;
-
- // Returns the base address of the mapping. This is read-only memory. This is
- // page-aligned. This is nullptr for invalid instances.
-@@ -171,8 +172,9 @@
- WritableSharedMemoryMapping();
-
- // Move operations are allowed.
-- WritableSharedMemoryMapping(WritableSharedMemoryMapping&&);
-- WritableSharedMemoryMapping& operator=(WritableSharedMemoryMapping&&);
-+ WritableSharedMemoryMapping(WritableSharedMemoryMapping&&) noexcept;
-+ WritableSharedMemoryMapping& operator=(
-+ WritableSharedMemoryMapping&&) noexcept;
-
- // Returns the base address of the mapping. This is writable memory. This is
- // page-aligned. This is nullptr for invalid instances.
-
-From bdc24128b75008743d819e298557a53205706e7c Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Sun, 09 Jun 2019 11:22:25 +0000
-Subject: [PATCH] GCC: fix noexcept from move constructor and assign operators of AccountInfo
-
-AccountInfo declares them as noexcept and uses default implementation,
-so all its members (including AccountId) should be noexcept. But AccountId
-is not noexcept. To fix it we just need to make CoreAccountId move
-operator/assign operator noexcept.
-
-Bug: 819294
-Change-Id: Ice38654ab7cf3b9eaa6f54aa36e1fec329264f98
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645296
-Reviewed-by: Roger Tawa <rogerta@chromium.org>
-Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#667484}
----
-
-diff --git a/google_apis/gaia/core_account_id.cc b/google_apis/gaia/core_account_id.cc
-index d808082..12eefe3 100644
---- a/google_apis/gaia/core_account_id.cc
-+++ b/google_apis/gaia/core_account_id.cc
-@@ -6,8 +6,16 @@
-
- CoreAccountId::CoreAccountId() = default;
-
-+CoreAccountId::CoreAccountId(const CoreAccountId&) = default;
-+
-+CoreAccountId::CoreAccountId(CoreAccountId&&) noexcept = default;
-+
- CoreAccountId::~CoreAccountId() = default;
-
-+CoreAccountId& CoreAccountId::operator=(const CoreAccountId&) = default;
-+
-+CoreAccountId& CoreAccountId::operator=(CoreAccountId&&) noexcept = default;
-+
- CoreAccountId::CoreAccountId(const char* id) : id(id) {}
-
- CoreAccountId::CoreAccountId(std::string&& id) : id(std::move(id)) {}
-diff --git a/google_apis/gaia/core_account_id.h b/google_apis/gaia/core_account_id.h
-index 5ea602a..c2d1911 100644
---- a/google_apis/gaia/core_account_id.h
-+++ b/google_apis/gaia/core_account_id.h
-@@ -14,8 +14,13 @@
- // for design and tracking).
- struct CoreAccountId {
- CoreAccountId();
-+ CoreAccountId(const CoreAccountId&);
-+ CoreAccountId(CoreAccountId&&) noexcept;
- ~CoreAccountId();
-
-+ CoreAccountId& operator=(const CoreAccountId&);
-+ CoreAccountId& operator=(CoreAccountId&&) noexcept;
-+
- // Those implicit constructor and conversion operator allow to
- // progressively migrate the code to use this struct. Removing
- // them is tracked by https://crbug.com/959161
-
-From 9aae68736bc7eb7172d0d0c978ecb6d1f75c7b30 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 10:27:19 +0200
-Subject: [PATCH] GCC: add noexcept move assignment in history::URLRow
-
-In GCC, build is failing because history::QueryURLResult declares its move
-assignment operator as noexcept using default implementation. That requires
-its members to provide a move assignment operator that is noexcept too.
-
-But URLRow was missing noexcept declaration in move assignment operator (even
-though it was providing noexcept to its move constructor).
-
-Bug: 819294
-Change-Id: I726e3cf7a4a50c9206a5d0fba8a561d363483d4f
----
-
-diff --git a/components/history/core/browser/url_row.cc b/components/history/core/browser/url_row.cc
-index 44c22fd..aec0101 100644
---- a/components/history/core/browser/url_row.cc
-+++ b/components/history/core/browser/url_row.cc
-@@ -26,7 +26,7 @@
- }
-
- URLRow& URLRow::operator=(const URLRow& other) = default;
--URLRow& URLRow::operator=(URLRow&& other) = default;
-+URLRow& URLRow::operator=(URLRow&& other) noexcept = default;
-
- void URLRow::Swap(URLRow* other) {
- std::swap(id_, other->id_);
-diff --git a/components/history/core/browser/url_row.h b/components/history/core/browser/url_row.h
-index 8f6f9cf..31a1ef8 100644
---- a/components/history/core/browser/url_row.h
-+++ b/components/history/core/browser/url_row.h
-@@ -35,7 +35,7 @@
-
- virtual ~URLRow();
- URLRow& operator=(const URLRow& other);
-- URLRow& operator=(URLRow&& other);
-+ URLRow& operator=(URLRow&& other) noexcept;
-
- URLID id() const { return id_; }
-
-
-From 41d954dec0669c9a85730c0bde7df7ba7a0ff43e Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 06 Jun 2019 15:30:49 +0000
-Subject: [PATCH] Fix AutocompleteMatch move constructor/assign operator noexcept
-
-For AutocompleteMatch to declare noexcept them, all the contained
-properties need to be noexcept too. This is required at least
-for SuggestionAnswer, because base::string16 will make default
-calculated signature of the move operator noexcept(false).
-
-To avoid this issue we explicitely declare them on SuggestionAnswer,
-and its member classes TextField and ImageLine.
-
-Bug: 819294
-Change-Id: I8714f2c6352a3292bdebdc3aed9790270e49c580
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1554669
-Reviewed-by: Kevin Bailey <krb@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666714}
----
-
-diff --git a/components/omnibox/browser/suggestion_answer.cc b/components/omnibox/browser/suggestion_answer.cc
-index 151e55f..a0c9049 100644
---- a/components/omnibox/browser/suggestion_answer.cc
-+++ b/components/omnibox/browser/suggestion_answer.cc
-@@ -55,6 +55,12 @@
-
- SuggestionAnswer::TextField::TextField() = default;
- SuggestionAnswer::TextField::~TextField() = default;
-+SuggestionAnswer::TextField::TextField(const TextField&) = default;
-+SuggestionAnswer::TextField::TextField(TextField&&) noexcept = default;
-+SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=(
-+ const TextField&) = default;
-+SuggestionAnswer::TextField& SuggestionAnswer::TextField::operator=(
-+ TextField&&) noexcept = default;
-
- // static
- bool SuggestionAnswer::TextField::ParseTextField(const base::Value& field_json,
-@@ -93,9 +99,12 @@
- SuggestionAnswer::ImageLine::ImageLine()
- : num_text_lines_(1) {}
- SuggestionAnswer::ImageLine::ImageLine(const ImageLine& line) = default;
-+SuggestionAnswer::ImageLine::ImageLine(ImageLine&&) noexcept = default;
-
- SuggestionAnswer::ImageLine& SuggestionAnswer::ImageLine::operator=(
- const ImageLine& line) = default;
-+SuggestionAnswer::ImageLine& SuggestionAnswer::ImageLine::operator=(
-+ ImageLine&&) noexcept = default;
-
- SuggestionAnswer::ImageLine::~ImageLine() {}
-
-@@ -251,9 +260,14 @@
-
- SuggestionAnswer::SuggestionAnswer(const SuggestionAnswer& answer) = default;
-
-+SuggestionAnswer::SuggestionAnswer(SuggestionAnswer&&) noexcept = default;
-+
- SuggestionAnswer& SuggestionAnswer::operator=(const SuggestionAnswer& answer) =
- default;
-
-+SuggestionAnswer& SuggestionAnswer::operator=(SuggestionAnswer&&) noexcept =
-+ default;
-+
- SuggestionAnswer::~SuggestionAnswer() = default;
-
- // static
-diff --git a/components/omnibox/browser/suggestion_answer.h b/components/omnibox/browser/suggestion_answer.h
-index 31be937..2840ace 100644
---- a/components/omnibox/browser/suggestion_answer.h
-+++ b/components/omnibox/browser/suggestion_answer.h
-@@ -125,6 +125,10 @@
- public:
- TextField();
- ~TextField();
-+ TextField(const TextField&);
-+ TextField(TextField&&) noexcept;
-+ TextField& operator=(const TextField&);
-+ TextField& operator=(TextField&&) noexcept;
-
- // Parses |field_json| dictionary and populates |text_field| with the
- // contents. If any of the required elements is missing, returns false and
-@@ -162,7 +166,9 @@
- public:
- ImageLine();
- explicit ImageLine(const ImageLine& line);
-+ ImageLine(ImageLine&&) noexcept;
- ImageLine& operator=(const ImageLine& line);
-+ ImageLine& operator=(ImageLine&&) noexcept;
- ~ImageLine();
-
- // Parses dictionary |line_json| and populates |image_line| with the
-@@ -213,7 +219,9 @@
-
- SuggestionAnswer();
- SuggestionAnswer(const SuggestionAnswer& answer);
-+ SuggestionAnswer(SuggestionAnswer&&) noexcept;
- SuggestionAnswer& operator=(const SuggestionAnswer& answer);
-+ SuggestionAnswer& operator=(SuggestionAnswer&&) noexcept;
- ~SuggestionAnswer();
-
- // Parses dictionary |answer_json| and fills a SuggestionAnswer containing the
-
-From 9f99af41cae3cfff3bcdcc856c1539801c9b745b Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 07 Jun 2019 18:59:59 +0000
-Subject: [PATCH] DisjoingRangeLockManager::Lock move constructor/assign operator cannot be noexcept
-
-They depend on LockRequest, that depends on WeakPtr, none of them noexcept.
-
-Bug: 819294
-Change-Id: I04ec15901ca627358df727540597f21f135c129b
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1646252
-Reviewed-by: Joshua Bell <jsbell@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#667260}
----
-
-diff --git a/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc b/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
-index 478a5c9..a18c6cd 100644
---- a/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
-+++ b/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc
-@@ -19,14 +19,13 @@
- : requested_type(type),
- locks_holder(std::move(locks_holder)),
- acquired_callback(std::move(acquired_callback)) {}
--DisjointRangeLockManager::LockRequest::LockRequest(LockRequest&&) noexcept =
-- default;
-+DisjointRangeLockManager::LockRequest::LockRequest(LockRequest&&) = default;
- DisjointRangeLockManager::LockRequest::~LockRequest() = default;
- DisjointRangeLockManager::Lock::Lock() = default;
--DisjointRangeLockManager::Lock::Lock(Lock&&) noexcept = default;
-+DisjointRangeLockManager::Lock::Lock(Lock&&) = default;
- DisjointRangeLockManager::Lock::~Lock() = default;
- DisjointRangeLockManager::Lock& DisjointRangeLockManager::Lock::operator=(
-- DisjointRangeLockManager::Lock&&) noexcept = default;
-+ DisjointRangeLockManager::Lock&&) = default;
-
- DisjointRangeLockManager::DisjointRangeLockManager(int level_count)
- : task_runner_(base::SequencedTaskRunnerHandle::Get()),
diff --git a/www-client/chromium/files/chromium-76-gcc-private.patch b/www-client/chromium/files/chromium-76-gcc-private.patch
deleted file mode 100644
index bc0ed98..0000000
--- a/www-client/chromium/files/chromium-76-gcc-private.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-From 502e6e42633d2571c8236c8649b031fe9915eb5b Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 16:56:27 +0000
-Subject: [PATCH] GCC: CertNetFetcherImpl declares Job as a friend but it is in the anonymous namespace
-
-GCC does not allow friendship declaration to anonymous namespace as done with Job
-object in the CertNetFetcherImpl. This fix removes the friend declaration, and just
-makes RemoveJob method public, that was the only reason to make Job a friend.
-
-Error was:
-./../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::DetachRequest(net::CertNetFetcherImpl::RequestCore*)’:
-../../net/cert_net/cert_net_fetcher_impl.cc:458:42: error: ‘std::unique_ptr<net::{anonymous}::Job> net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context
- delete_this = parent_->RemoveJob(this);
- ^
-../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here
- std::unique_ptr<Job> RemoveJob(Job* job);
- ^~~~~~~~~
-../../net/cert_net/cert_net_fetcher_impl.cc: In member function ‘void net::{anonymous}::Job::OnJobCompleted(net::Error)’:
-../../net/cert_net/cert_net_fetcher_impl.cc:610:61: error: ‘std::unique_ptr<net::{anonymous}::Job> net::CertNetFetcherImpl::AsyncCertNetFetcherImpl::RemoveJob(net::{anonymous}::Job*)’ is private within this context
- std::unique_ptr<Job> delete_this = parent_->RemoveJob(this);
- ^
-../../net/cert_net/cert_net_fetcher_impl.cc:151:24: note: declared private here
- std::unique_ptr<Job> RemoveJob(Job* job);
- ^~~~~~~~~
-
-Bug: 819294
-Change-Id: I3609f4558e570741395366de6a4cd40577d91450
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651783
-Commit-Queue: Eric Roman <eroman@chromium.org>
-Reviewed-by: Eric Roman <eroman@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#668015}
----
-
-diff --git a/net/cert_net/cert_net_fetcher_impl.cc b/net/cert_net/cert_net_fetcher_impl.cc
-index 11a1166..349c656 100644
---- a/net/cert_net/cert_net_fetcher_impl.cc
-+++ b/net/cert_net/cert_net_fetcher_impl.cc
-@@ -135,21 +135,19 @@
- void Fetch(std::unique_ptr<RequestParams> request_params,
- scoped_refptr<RequestCore> request);
-
-+ // Removes |job| from the in progress jobs and transfers ownership to the
-+ // caller.
-+ std::unique_ptr<Job> RemoveJob(Job* job);
-+
- // Cancels outstanding jobs, which stops network requests and signals the
- // corresponding RequestCores that the requests have completed.
- void Shutdown();
-
- private:
-- friend class Job;
--
- // Finds a job with a matching RequestPararms or returns nullptr if there was
- // no match.
- Job* FindJob(const RequestParams& params);
-
-- // Removes |job| from the in progress jobs and transfers ownership to the
-- // caller.
-- std::unique_ptr<Job> RemoveJob(Job* job);
--
- // The in-progress jobs. This set does not contain the job which is actively
- // invoking callbacks (OnJobCompleted).
- JobSet jobs_;
diff --git a/www-client/chromium/files/chromium-76-gcc-pure-virtual.patch b/www-client/chromium/files/chromium-76-gcc-pure-virtual.patch
deleted file mode 100644
index 3d34e43..0000000
--- a/www-client/chromium/files/chromium-76-gcc-pure-virtual.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From cdf306db81efaaaa954487585d5a5a16205a5ebd Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Wed, 05 Jun 2019 14:45:06 +0000
-Subject: [PATCH] Avoid pure virtual crash destroying RenderProcessUserData
-
-When RenderProcessUserData is destroyed from the destructor of
-RenderProcessHostImpl, it is done in the destructor of RenderProcessHost.
-At this point RemoveObserver override is already freed, so RenderProcessHost
-is pure virtual. This crash happens at least building with GCC:
-
- at /usr/include/c++/8/ext/new_allocator.h:140
- (this=0x7fffffffcb50, __in_chrg=<optimized out>) at /usr/include/c++/8/bits/stl_tree.h:964
-
-We need to destroy RenderProcessUserData before that happens. To do that
-we can just override RenderProcessHostDestroyed.
-
-Bug: 910288
-Change-Id: I38107b178829b0cb7494f5333b765e5b087d82cd
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645366
-Commit-Queue: Sigurður Ásgeirsson <siggi@chromium.org>
-Reviewed-by: Sigurður Ásgeirsson <siggi@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#666279}
----
-
-diff --git a/chrome/browser/performance_manager/render_process_user_data.cc b/chrome/browser/performance_manager/render_process_user_data.cc
-index 2e2c199..ef6e1fb 100644
---- a/chrome/browser/performance_manager/render_process_user_data.cc
-+++ b/chrome/browser/performance_manager/render_process_user_data.cc
-@@ -116,4 +116,9 @@
- base::Unretained(process_node_.get()), info.exit_code));
- }
-
-+void RenderProcessUserData::RenderProcessHostDestroyed(
-+ content::RenderProcessHost* host) {
-+ host->RemoveUserData(kRenderProcessUserDataKey);
-+}
-+
- } // namespace performance_manager
-diff --git a/chrome/browser/performance_manager/render_process_user_data.h b/chrome/browser/performance_manager/render_process_user_data.h
-index ac74b1d..f3b4d16 100644
---- a/chrome/browser/performance_manager/render_process_user_data.h
-+++ b/chrome/browser/performance_manager/render_process_user_data.h
-@@ -47,6 +47,7 @@
- void RenderProcessExited(
- content::RenderProcessHost* host,
- const content::ChildProcessTerminationInfo& info) override;
-+ void RenderProcessHostDestroyed(content::RenderProcessHost* host) override;
-
- // All instances are linked together in a doubly linked list to allow orderly
- // destruction at browser shutdown time.
diff --git a/www-client/chromium/files/chromium-76-gcc-uint32.patch b/www-client/chromium/files/chromium-76-gcc-uint32.patch
deleted file mode 100644
index 5e392e6..0000000
--- a/www-client/chromium/files/chromium-76-gcc-uint32.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 53bb5a463ee956c70230eaa5450022185d0ddc3c Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Thu, 06 Jun 2019 07:54:05 +0000
-Subject: [PATCH] ThrottlingController::Liveness needs to be uint32_t
-
-We are setting kAlive and kDead values assigning values that
-are bigger than the maximum signed int32. It is better to use
-uint32_t in this case.
-
-Bug: 819294
-Change-Id: If72b48291a66a3a9db24b4c8e2d11d31936a66ee
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1645772
-Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#666619}
----
-
-diff --git a/services/network/throttling/throttling_controller.h b/services/network/throttling/throttling_controller.h
-index 43751c4..3c6f87b 100644
---- a/services/network/throttling/throttling_controller.h
-+++ b/services/network/throttling/throttling_controller.h
-@@ -38,7 +38,7 @@
-
- // TODO(https://crbug.com/960874): Debugging code to try and shed some light
- // on why the owned maps are invalid.
-- enum class Liveness : int32_t {
-+ enum class Liveness : uint32_t {
- kAlive = 0xCA11AB13,
- kDead = 0xDEADBEEF,
- };
diff --git a/www-client/chromium/files/chromium-76-gcc-vulkan.patch b/www-client/chromium/files/chromium-76-gcc-vulkan.patch
deleted file mode 100644
index cf93bce..0000000
--- a/www-client/chromium/files/chromium-76-gcc-vulkan.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-From fdb3bb1f8c41d044a5b0cb80257a26dd3c8f83a3 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Tue, 11 Jun 2019 17:39:38 +0000
-Subject: [PATCH] GCC: do not use old C notation to assign struct with property names.
-
-The notation for initialization of structs referring to its properties
-is invalid in C++. This is not accepted in GCC. It was making build
-fail in VulkanCommandBuffer.
-
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::TransitionImageLayout(VkImage, VkImageLayout, VkImageLayout)':
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:214:7: error: expected primary-expression before '.' token
- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:215:7: error: expected primary-expression before '.' token
- .subresourceRange.baseMipLevel = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:216:7: error: expected primary-expression before '.' token
- .subresourceRange.levelCount = 1,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:217:7: error: expected primary-expression before '.' token
- .subresourceRange.baseArrayLayer = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:218:7: error: expected primary-expression before '.' token
- .subresourceRange.layerCount = 1,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc: In member function 'void gpu::VulkanCommandBuffer::CopyBufferToImage(VkBuffer, VkImage, uint32_t, uint32_t, uint32_t, uint32_t)':
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:235:7: error: expected primary-expression before '.' token
- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:236:7: error: expected primary-expression before '.' token
- .imageSubresource.mipLevel = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:237:7: error: expected primary-expression before '.' token
- .imageSubresource.baseArrayLayer = 0,
- ^
-./../../../chromium-76.0.3806.1/gpu/vulkan/vulkan_command_buffer.cc:238:7: error: expected primary-expression before '.' token
- .imageSubresource.layerCount = 1,
- ^
-Bug: 819294
-
-Change-Id: I999abece0c727e77964789183642ba62009c2c22
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1651802
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Reviewed-by: Antoine Labour <piman@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#668033}
----
-
-diff --git a/gpu/vulkan/vulkan_command_buffer.cc b/gpu/vulkan/vulkan_command_buffer.cc
-index ba776e4..4f14c85 100644
---- a/gpu/vulkan/vulkan_command_buffer.cc
-+++ b/gpu/vulkan/vulkan_command_buffer.cc
-@@ -207,21 +207,20 @@
- void VulkanCommandBuffer::TransitionImageLayout(VkImage image,
- VkImageLayout old_layout,
- VkImageLayout new_layout) {
-- VkImageMemoryBarrier barrier = {
-- .sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER,
-- .srcAccessMask = GetAccessMask(old_layout),
-- .dstAccessMask = GetAccessMask(new_layout),
-- .oldLayout = old_layout,
-- .newLayout = new_layout,
-- .srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED,
-- .dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED,
-- .image = image,
-- .subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
-- .subresourceRange.baseMipLevel = 0,
-- .subresourceRange.levelCount = 1,
-- .subresourceRange.baseArrayLayer = 0,
-- .subresourceRange.layerCount = 1,
-- };
-+ VkImageMemoryBarrier barrier = {};
-+ barrier.sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;
-+ barrier.srcAccessMask = GetAccessMask(old_layout);
-+ barrier.dstAccessMask = GetAccessMask(new_layout);
-+ barrier.oldLayout = old_layout;
-+ barrier.newLayout = new_layout;
-+ barrier.srcQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
-+ barrier.dstQueueFamilyIndex = VK_QUEUE_FAMILY_IGNORED;
-+ barrier.image = image;
-+ barrier.subresourceRange.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-+ barrier.subresourceRange.baseMipLevel = 0;
-+ barrier.subresourceRange.levelCount = 1;
-+ barrier.subresourceRange.baseArrayLayer = 0;
-+ barrier.subresourceRange.layerCount = 1;
- vkCmdPipelineBarrier(command_buffer_, GetPipelineStageFlags(old_layout),
- GetPipelineStageFlags(new_layout), 0, 0, nullptr, 0,
- nullptr, 1, &barrier);
-@@ -233,17 +232,16 @@
- uint32_t buffer_height,
- uint32_t width,
- uint32_t height) {
-- VkBufferImageCopy region = {
-- .bufferOffset = 0,
-- .bufferRowLength = buffer_width,
-- .bufferImageHeight = buffer_height,
-- .imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,
-- .imageSubresource.mipLevel = 0,
-- .imageSubresource.baseArrayLayer = 0,
-- .imageSubresource.layerCount = 1,
-- .imageOffset = {0, 0, 0},
-- .imageExtent = {width, height, 1},
-- };
-+ VkBufferImageCopy region = {};
-+ region.bufferOffset = 0;
-+ region.bufferRowLength = buffer_width;
-+ region.bufferImageHeight = buffer_height;
-+ region.imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
-+ region.imageSubresource.mipLevel = 0;
-+ region.imageSubresource.baseArrayLayer = 0;
-+ region.imageSubresource.layerCount = 1;
-+ region.imageOffset = {0, 0, 0};
-+ region.imageExtent = {width, height, 1};
- vkCmdCopyBufferToImage(command_buffer_, buffer, image,
- VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 1, &region);
- }
diff --git a/www-client/chromium/files/chromium-76-quiche.patch b/www-client/chromium/files/chromium-76-quiche.patch
deleted file mode 100644
index f3aa42a..0000000
--- a/www-client/chromium/files/chromium-76-quiche.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-From 9424add9d73432a794b7944790253213cce6dcb8 Mon Sep 17 00:00:00 2001
-From: danzh <danzh@google.com>
-Date: Thu, 06 Jun 2019 14:04:36 -0700
-Subject: [PATCH] gfe-relnote: (n/a) code cleanup. Fix envoy compile errors.
-
-Add #include header for std library.
-Reference TransportParameters when using its enum TransportParameterId.
-
-PiperOrigin-RevId: 251922363
-Change-Id: Iba38660e5adc3069e377829acec44267658b11c6
----
-
-diff --git a/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc b/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc
-index ee0ebf0..e5df9fe 100644
---- a/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc
-+++ b/net/third_party/quiche/src/quic/core/crypto/transport_parameters.cc
-@@ -62,37 +62,37 @@
- std::string TransportParameterIdToString(
- TransportParameters::TransportParameterId param_id) {
- switch (param_id) {
-- case kOriginalConnectionId:
-+ case TransportParameters::kOriginalConnectionId:
- return "original_connection_id";
-- case kIdleTimeout:
-+ case TransportParameters::kIdleTimeout:
- return "idle_timeout";
-- case kStatelessResetToken:
-+ case TransportParameters::kStatelessResetToken:
- return "stateless_reset_token";
-- case kMaxPacketSize:
-+ case TransportParameters::kMaxPacketSize:
- return "max_packet_size";
-- case kInitialMaxData:
-+ case TransportParameters::kInitialMaxData:
- return "initial_max_data";
-- case kInitialMaxStreamDataBidiLocal:
-+ case TransportParameters::kInitialMaxStreamDataBidiLocal:
- return "initial_max_stream_data_bidi_local";
-- case kInitialMaxStreamDataBidiRemote:
-+ case TransportParameters::kInitialMaxStreamDataBidiRemote:
- return "initial_max_stream_data_bidi_remote";
-- case kInitialMaxStreamDataUni:
-+ case TransportParameters::kInitialMaxStreamDataUni:
- return "initial_max_stream_data_uni";
-- case kInitialMaxStreamsBidi:
-+ case TransportParameters::kInitialMaxStreamsBidi:
- return "initial_max_streams_bidi";
-- case kInitialMaxStreamsUni:
-+ case TransportParameters::kInitialMaxStreamsUni:
- return "initial_max_streams_uni";
-- case kAckDelayExponent:
-+ case TransportParameters::kAckDelayExponent:
- return "ack_delay_exponent";
-- case kMaxAckDelay:
-+ case TransportParameters::kMaxAckDelay:
- return "max_ack_delay";
-- case kDisableMigration:
-+ case TransportParameters::kDisableMigration:
- return "disable_migration";
-- case kPreferredAddress:
-+ case TransportParameters::kPreferredAddress:
- return "preferred_address";
-- case kGoogleQuicParam:
-+ case TransportParameters::kGoogleQuicParam:
- return "google";
-- case kGoogleQuicVersion:
-+ case TransportParameters::kGoogleQuicVersion:
- return "google-version";
- }
- return "Unknown(" + QuicTextUtils::Uint64ToString(param_id) + ")";
-@@ -390,7 +390,7 @@
- CBB original_connection_id_param;
- if (!in.original_connection_id.IsEmpty()) {
- DCHECK_EQ(Perspective::IS_SERVER, in.perspective);
-- if (!CBB_add_u16(&params, kOriginalConnectionId) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kOriginalConnectionId) ||
- !CBB_add_u16_length_prefixed(&params, &original_connection_id_param) ||
- !CBB_add_bytes(
- &original_connection_id_param,
-@@ -412,7 +412,7 @@
- if (!in.stateless_reset_token.empty()) {
- DCHECK_EQ(kStatelessResetTokenLength, in.stateless_reset_token.size());
- DCHECK_EQ(Perspective::IS_SERVER, in.perspective);
-- if (!CBB_add_u16(&params, kStatelessResetToken) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kStatelessResetToken) ||
- !CBB_add_u16_length_prefixed(&params, &stateless_reset_token_param) ||
- !CBB_add_bytes(&stateless_reset_token_param,
- in.stateless_reset_token.data(),
-@@ -438,7 +438,7 @@
-
- // disable_migration
- if (in.disable_migration) {
-- if (!CBB_add_u16(&params, kDisableMigration) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kDisableMigration) ||
- !CBB_add_u16(&params, 0u)) { // 0 is the length of this parameter.
- QUIC_BUG << "Failed to write disable_migration for " << in;
- return false;
-@@ -458,7 +458,7 @@
- QUIC_BUG << "Bad lengths " << *in.preferred_address;
- return false;
- }
-- if (!CBB_add_u16(&params, kPreferredAddress) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kPreferredAddress) ||
- !CBB_add_u16_length_prefixed(&params, &preferred_address_params) ||
- !CBB_add_bytes(
- &preferred_address_params,
-@@ -491,7 +491,7 @@
- if (in.google_quic_params) {
- const QuicData& serialized_google_quic_params =
- in.google_quic_params->GetSerialized();
-- if (!CBB_add_u16(&params, kGoogleQuicParam) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kGoogleQuicParam) ||
- !CBB_add_u16_length_prefixed(&params, &google_quic_params) ||
- !CBB_add_bytes(&google_quic_params,
- reinterpret_cast<const uint8_t*>(
-@@ -505,7 +505,7 @@
-
- // Google-specific version extension.
- CBB google_version_params;
-- if (!CBB_add_u16(&params, kGoogleQuicVersion) ||
-+ if (!CBB_add_u16(&params, TransportParameters::kGoogleQuicVersion) ||
- !CBB_add_u16_length_prefixed(&params, &google_version_params) ||
- !CBB_add_u32(&google_version_params, in.version)) {
- QUIC_BUG << "Failed to write Google version extension for " << in;
-@@ -565,7 +565,7 @@
- }
- bool parse_success = true;
- switch (param_id) {
-- case kOriginalConnectionId:
-+ case TransportParameters::kOriginalConnectionId:
- if (!out->original_connection_id.IsEmpty()) {
- QUIC_DLOG(ERROR) << "Received a second original connection ID";
- return false;
-@@ -581,10 +581,10 @@
- CBS_len(&value));
- }
- break;
-- case kIdleTimeout:
-+ case TransportParameters::kIdleTimeout:
- parse_success = out->idle_timeout_milliseconds.ReadFromCbs(&value);
- break;
-- case kStatelessResetToken:
-+ case TransportParameters::kStatelessResetToken:
- if (!out->stateless_reset_token.empty()) {
- QUIC_DLOG(ERROR) << "Received a second stateless reset token";
- return false;
-@@ -597,36 +597,36 @@
- out->stateless_reset_token.assign(CBS_data(&value),
- CBS_data(&value) + CBS_len(&value));
- break;
-- case kMaxPacketSize:
-+ case TransportParameters::kMaxPacketSize:
- parse_success = out->max_packet_size.ReadFromCbs(&value);
- break;
-- case kInitialMaxData:
-+ case TransportParameters::kInitialMaxData:
- parse_success = out->initial_max_data.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamDataBidiLocal:
-+ case TransportParameters::kInitialMaxStreamDataBidiLocal:
- parse_success =
- out->initial_max_stream_data_bidi_local.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamDataBidiRemote:
-+ case TransportParameters::kInitialMaxStreamDataBidiRemote:
- parse_success =
- out->initial_max_stream_data_bidi_remote.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamDataUni:
-+ case TransportParameters::kInitialMaxStreamDataUni:
- parse_success = out->initial_max_stream_data_uni.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamsBidi:
-+ case TransportParameters::kInitialMaxStreamsBidi:
- parse_success = out->initial_max_streams_bidi.ReadFromCbs(&value);
- break;
-- case kInitialMaxStreamsUni:
-+ case TransportParameters::kInitialMaxStreamsUni:
- parse_success = out->initial_max_streams_uni.ReadFromCbs(&value);
- break;
-- case kAckDelayExponent:
-+ case TransportParameters::kAckDelayExponent:
- parse_success = out->ack_delay_exponent.ReadFromCbs(&value);
- break;
-- case kMaxAckDelay:
-+ case TransportParameters::kMaxAckDelay:
- parse_success = out->max_ack_delay.ReadFromCbs(&value);
- break;
-- case kDisableMigration:
-+ case TransportParameters::kDisableMigration:
- if (out->disable_migration) {
- QUIC_DLOG(ERROR) << "Received a second disable migration";
- return false;
-@@ -638,7 +638,7 @@
- }
- out->disable_migration = true;
- break;
-- case kPreferredAddress: {
-+ case TransportParameters::kPreferredAddress: {
- uint16_t ipv4_port, ipv6_port;
- in_addr ipv4_address;
- in6_addr ipv6_address;
-@@ -692,7 +692,7 @@
- QuicMakeUnique<TransportParameters::PreferredAddress>(
- preferred_address);
- } break;
-- case kGoogleQuicParam: {
-+ case TransportParameters::kGoogleQuicParam: {
- if (out->google_quic_params) {
- QUIC_DLOG(ERROR) << "Received a second Google parameter";
- return false;
-@@ -701,7 +701,7 @@
- reinterpret_cast<const char*>(CBS_data(&value)), CBS_len(&value));
- out->google_quic_params = CryptoFramer::ParseMessage(serialized_params);
- } break;
-- case kGoogleQuicVersion: {
-+ case TransportParameters::kGoogleQuicVersion: {
- if (!CBS_get_u32(&value, &out->version)) {
- QUIC_DLOG(ERROR) << "Failed to parse Google version extension";
- return false;
-diff --git a/quic/core/quic_socket_address_coder.cc b/quic/core/quic_socket_address_coder.cc
-index 2527fc9..b26103d 100644
---- a/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc
-+++ b/net/third_party/quiche/src/quic/core/quic_socket_address_coder.cc
-@@ -2,10 +2,12 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
--#include <string>
--
- #include "net/third_party/quiche/src/quic/core/quic_socket_address_coder.h"
-
-+#include <cstring>
-+#include <string>
-+#include <vector>
-+
- namespace quic {
-
- namespace {
diff --git a/www-client/chromium/files/chromium-77-blink-include.patch b/www-client/chromium/files/chromium-77-blink-include.patch
deleted file mode 100644
index 3ac1770..0000000
--- a/www-client/chromium/files/chromium-77-blink-include.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 5baf7df7f4c5971dab552897eeef94b194650ce5 Mon Sep 17 00:00:00 2001
-From: Dave Tapuska <dtapuska@chromium.org>
-Date: Mon, 12 Aug 2019 22:30:13 +0000
-Subject: [PATCH] Fix build failure due to missing include for std::numeric_limits usage.
-
-Some configurations fail to build, limits should have been included.
-
-BUG=992832
-
-Change-Id: I894ba0543bfcef101c93259e39a31d12ae6d035c
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1747981
-Commit-Queue: Dave Tapuska <dtapuska@chromium.org>
-Reviewed-by: Mostyn Bramley-Moore <mostynb@vewd.com>
-Cr-Commit-Position: refs/heads/master@{#686214}
----
-
-diff --git a/third_party/blink/renderer/platform/exported/web_time_range.cc b/third_party/blink/renderer/platform/exported/web_time_range.cc
-index 384566a..68d83e1 100644
---- a/third_party/blink/renderer/platform/exported/web_time_range.cc
-+++ b/third_party/blink/renderer/platform/exported/web_time_range.cc
-@@ -31,6 +31,7 @@
- #include "third_party/blink/public/platform/web_time_range.h"
-
- #include <cmath>
-+#include <limits>
-
- namespace blink {
-
diff --git a/www-client/chromium/files/chromium-77-clang.patch b/www-client/chromium/files/chromium-77-clang.patch
deleted file mode 100644
index a57b5a4..0000000
--- a/www-client/chromium/files/chromium-77-clang.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/base/location.h b/base/location.h
-index c07e747..924db1c 100644
---- a/base/location.h
-+++ b/base/location.h
-@@ -18,7 +18,7 @@
-
- namespace base {
-
--#if defined(__has_builtin)
-+#if defined(__clang__)
- // Clang allows detection of these builtins.
- #define SUPPORTS_LOCATION_BUILTINS \
- (__has_builtin(__builtin_FUNCTION) && __has_builtin(__builtin_FILE) && \
diff --git a/www-client/chromium/files/chromium-77-fix-gn-gen.patch b/www-client/chromium/files/chromium-77-fix-gn-gen.patch
deleted file mode 100644
index 2c5f128..0000000
--- a/www-client/chromium/files/chromium-77-fix-gn-gen.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/third_party/blink/tools/BUILD.gn
-+++ b/third_party/blink/tools/BUILD.gn
-@@ -11,7 +11,7 @@ action("build_wpt_metadata") {
- rebase_path("$root_out_dir/wpt_expectations_metadata"),
- ]
- outputs = [
-- "$root_out_dir/wpt_expectations_metadata/",
-+ "$root_out_dir/wpt_expectations_metadata",
- ]
- data = [
- # Include the blinkpy tools to access expectations data
diff --git a/www-client/chromium/files/chromium-77-gcc-abstract.patch b/www-client/chromium/files/chromium-77-gcc-abstract.patch
deleted file mode 100644
index 6d77299..0000000
--- a/www-client/chromium/files/chromium-77-gcc-abstract.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From f08cb0022527081c078e8b96062e6c9b4fbda151 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 26 Jul 2019 16:48:06 +0000
-Subject: [PATCH] BinaryUploadService: change parameter passing that cannot afford abstract class
-
-The method UploadForDeepScanning gets a Request as parameter. But Request is an
-abstract class, so GCC will not allow that declaration (polimorphycs should be
-passed by reference). Use std::unique_ptr so BinaryUploadService can assume
-ownership.
-
-Bug: 819294
-Change-Id: I9e8c75cc92b01abd704d9049b0421555377da5ba
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713550
-Reviewed-by: Daniel Rubery <drubery@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#681333}
----
-
-diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc
-index 6430c89..4e90487 100644
---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc
-+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.cc
-@@ -10,7 +10,7 @@
- namespace safe_browsing {
-
- void BinaryUploadService::UploadForDeepScanning(
-- BinaryUploadService::Request request) {
-+ std::unique_ptr<BinaryUploadService::Request> request) {
- DCHECK_CURRENTLY_ON(content::BrowserThread::UI);
- NOTREACHED();
- }
-diff --git a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h
-index d2dfd83..9b6f395 100644
---- a/chrome/browser/safe_browsing/download_protection/binary_upload_service.h
-+++ b/chrome/browser/safe_browsing/download_protection/binary_upload_service.h
-@@ -5,6 +5,8 @@
- #ifndef CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_
- #define CHROME_BROWSER_SAFE_BROWSING_DOWNLOAD_PROTECTION_BINARY_UPLOAD_SERVICE_H_
-
-+#include <memory>
-+
- #include "base/callback.h"
- #include "components/safe_browsing/proto/webprotect.pb.h"
-
-@@ -40,6 +42,7 @@
- public:
- // |callback| will run on the UI thread.
- explicit Request(Callback callback);
-+ virtual ~Request() = default;
- Request(const Request&) = delete;
- Request& operator=(const Request&) = delete;
-
-@@ -67,7 +70,7 @@
- // Upload the given file contents for deep scanning. The results will be
- // returned asynchronously by calling |request|'s |callback|. This must be
- // called on the UI thread.
-- void UploadForDeepScanning(Request request);
-+ void UploadForDeepScanning(std::unique_ptr<Request> request);
- };
-
- } // namespace safe_browsing
diff --git a/www-client/chromium/files/chromium-77-gcc-include.patch b/www-client/chromium/files/chromium-77-gcc-include.patch
deleted file mode 100644
index f464039..0000000
--- a/www-client/chromium/files/chromium-77-gcc-include.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-From 8c747a9c14ed4905f60f6680e2e09e33ea34163e Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 26 Jul 2019 16:18:17 +0000
-Subject: [PATCH] IWYU: include <memory> in one_euro_filter.h as it uses std::unique_ptr
-
-Bug: 819294
-Change-Id: Ie1530f7046b0c8eb76e26adca530fa57c67ed876
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1720637
-Reviewed-by: Ella Ge <eirage@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#681321}
----
-
-diff --git a/third_party/one_euro_filter/src/one_euro_filter.h b/third_party/one_euro_filter/src/one_euro_filter.h
-index 7f8d15b..a8cd0ab 100644
---- a/third_party/one_euro_filter/src/one_euro_filter.h
-+++ b/third_party/one_euro_filter/src/one_euro_filter.h
-@@ -1,6 +1,8 @@
- #ifndef ONE_EURO_ONE_EURO_FILTER_H_
- #define ONE_EURO_ONE_EURO_FILTER_H_
-
-+#include <memory>
-+
- #include "low_pass_filter.h"
-
- namespace one_euro_filter {
-
-From 258f5f182f8dd72f727af26e614794c67a5996e6 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena@lge.com>
-Date: Fri, 26 Jul 2019 15:17:54 +0000
-Subject: [PATCH] IWYU: ScopedObserver of TabStripModel requires it to be included
-
-Build with GCC and libstdc++ is failing in files using tab_sharing_ui.h
-as it has a ScopedObserver of a TabStripModel without including it
-in advance.
-
-Bug: 819294
-Change-Id: I4b12073484f65ad2bb873119daa748245296d282
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1713526
-Reviewed-by: Guido Urdaneta <guidou@chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena@lge.com>
-Cr-Commit-Position: refs/heads/master@{#681290}
----
-
-diff --git a/chrome/browser/ui/tab_sharing/tab_sharing_ui.h b/chrome/browser/ui/tab_sharing/tab_sharing_ui.h
-index 6d931129..147868f 100644
---- a/chrome/browser/ui/tab_sharing/tab_sharing_ui.h
-+++ b/chrome/browser/ui/tab_sharing/tab_sharing_ui.h
-@@ -14,6 +14,7 @@
- #include "base/strings/string16.h"
- #include "chrome/browser/media/webrtc/media_stream_capture_indicator.h"
- #include "chrome/browser/ui/browser_list_observer.h"
-+#include "chrome/browser/ui/tabs/tab_strip_model.h"
- #include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
- #include "components/infobars/core/infobar_manager.h"
- #include "content/public/browser/desktop_media_id.h"
diff --git a/www-client/chromium/files/chromium-77-std-string.patch b/www-client/chromium/files/chromium-77-std-string.patch
deleted file mode 100644
index f921f1a..0000000
--- a/www-client/chromium/files/chromium-77-std-string.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 74138b9febd37eac0fc26b8efb110014a83a52c6 Mon Sep 17 00:00:00 2001
-From: Jeremy Roman <jbroman@chromium.org>
-Date: Wed, 07 Aug 2019 13:26:48 +0000
-Subject: [PATCH] WTF: Make LinkedHashSet understand values for which memset initialization would be bad.
-
-Includes a unit test which fails before, and uses this to fix FontCacheKeyTraits.
-
-Bug: 980025
-Change-Id: If41f97444c7fd37b9b95d6dadaf3da5689079e9e
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1739948
-Reviewed-by: Kentaro Hara <haraken@chromium.org>
-Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
-Commit-Queue: Jeremy Roman <jbroman@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#684731}
----
-
-diff --git a/third_party/blink/renderer/platform/fonts/font_cache_key.h b/third_party/blink/renderer/platform/fonts/font_cache_key.h
-index 0efc8fb..90063cb 100644
---- a/third_party/blink/renderer/platform/fonts/font_cache_key.h
-+++ b/third_party/blink/renderer/platform/fonts/font_cache_key.h
-@@ -133,6 +133,10 @@
-
- struct FontCacheKeyTraits : WTF::SimpleClassHashTraits<FontCacheKey> {
- STATIC_ONLY(FontCacheKeyTraits);
-+
-+ // std::string's empty state need not be zero in all implementations,
-+ // and it is held within FontFaceCreationParams.
-+ static const bool kEmptyValueIsZero = false;
- };
-
- } // namespace blink
-diff --git a/third_party/blink/renderer/platform/wtf/linked_hash_set.h b/third_party/blink/renderer/platform/wtf/linked_hash_set.h
-index b35b6e9..77e524c 100644
---- a/third_party/blink/renderer/platform/wtf/linked_hash_set.h
-+++ b/third_party/blink/renderer/platform/wtf/linked_hash_set.h
-@@ -146,6 +146,11 @@
- LinkedHashSetNodeBase* next)
- : LinkedHashSetNodeBase(prev, next), value_(value) {}
-
-+ LinkedHashSetNode(ValueArg&& value,
-+ LinkedHashSetNodeBase* prev,
-+ LinkedHashSetNodeBase* next)
-+ : LinkedHashSetNodeBase(prev, next), value_(std::move(value)) {}
-+
- LinkedHashSetNode(LinkedHashSetNode&& other)
- : LinkedHashSetNodeBase(std::move(other)),
- value_(std::move(other.value_)) {}
-@@ -445,10 +450,13 @@
-
- // The slot is empty when the next_ field is zero so it's safe to zero
- // the backing.
-- static const bool kEmptyValueIsZero = true;
-+ static const bool kEmptyValueIsZero = ValueTraits::kEmptyValueIsZero;
-
- static const bool kHasIsEmptyValueFunction = true;
- static bool IsEmptyValue(const Node& node) { return !node.next_; }
-+ static Node EmptyValue() {
-+ return Node(ValueTraits::EmptyValue(), nullptr, nullptr);
-+ }
-
- static const int kDeletedValue = -1;
-
-diff --git a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc
-index 4c3f899..cd1be00 100644
---- a/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc
-+++ b/third_party/blink/renderer/platform/wtf/list_hash_set_test.cc
-@@ -487,6 +487,7 @@
- };
-
- struct Complicated {
-+ Complicated() : Complicated(0) {}
- Complicated(int value) : simple_(value) { objects_constructed_++; }
-
- Complicated(const Complicated& other) : simple_(other.simple_) {
-@@ -495,9 +496,6 @@
-
- Simple simple_;
- static int objects_constructed_;
--
-- private:
-- Complicated() = delete;
- };
-
- int Complicated::objects_constructed_ = 0;
-@@ -731,4 +729,45 @@
-
- } // anonymous namespace
-
-+// A unit type which objects to its state being initialized wrong.
-+struct InvalidZeroValue {
-+ InvalidZeroValue() = default;
-+ InvalidZeroValue(WTF::HashTableDeletedValueType) : deleted_(true) {}
-+ ~InvalidZeroValue() { CHECK(ok_); }
-+ bool IsHashTableDeletedValue() const { return deleted_; }
-+
-+ bool ok_ = true;
-+ bool deleted_ = false;
-+};
-+
-+template <>
-+struct HashTraits<InvalidZeroValue> : SimpleClassHashTraits<InvalidZeroValue> {
-+ static const bool kEmptyValueIsZero = false;
-+};
-+
-+template <>
-+struct DefaultHash<InvalidZeroValue> {
-+ struct Hash {
-+ static unsigned GetHash(const InvalidZeroValue&) { return 0; }
-+ static bool Equal(const InvalidZeroValue&, const InvalidZeroValue&) {
-+ return true;
-+ }
-+ };
-+};
-+
-+template <typename Set>
-+class ListOrLinkedHashSetInvalidZeroTest : public testing::Test {};
-+
-+using InvalidZeroValueSetTypes =
-+ testing::Types<ListHashSet<InvalidZeroValue>,
-+ ListHashSet<InvalidZeroValue, 1>,
-+ LinkedHashSet<InvalidZeroValue>>;
-+TYPED_TEST_SUITE(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValueSetTypes);
-+
-+TYPED_TEST(ListOrLinkedHashSetInvalidZeroTest, InvalidZeroValue) {
-+ using Set = TypeParam;
-+ Set set;
-+ set.insert(InvalidZeroValue());
-+}
-+
- } // namespace WTF
diff --git a/www-client/chromium/files/chromium-77-system-hb.patch b/www-client/chromium/files/chromium-77-system-hb.patch
deleted file mode 100644
index 9cea0fa..0000000
--- a/www-client/chromium/files/chromium-77-system-hb.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/harfbuzz-ng/BUILD.gn b/third_party/harfbuzz-ng/BUILD.gn
-index 37d8e33..6610cc6 100644
---- a/third_party/harfbuzz-ng/BUILD.gn
-+++ b/third_party/harfbuzz-ng/BUILD.gn
-@@ -16,7 +16,7 @@ if (use_system_harfbuzz) {
- "//third_party:freetype_harfbuzz",
- "//third_party/freetype:freetype_source",
- ]
-- packages = [ "harfbuzz" ]
-+ packages = [ "harfbuzz", "harfbuzz-subset" ]
- }
- } else {
- config("harfbuzz_config") {
diff --git a/www-client/chromium/files/chromium-77-system-icu.patch b/www-client/chromium/files/chromium-77-system-icu.patch
deleted file mode 100644
index 1f848d7..0000000
--- a/www-client/chromium/files/chromium-77-system-icu.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/build/linux/unbundle/icu.gn b/build/linux/unbundle/icu.gn
-index 4450e40..9ca36dd 100644
---- a/build/linux/unbundle/icu.gn
-+++ b/build/linux/unbundle/icu.gn
-@@ -96,6 +96,7 @@ shim_headers("icui18n_shim") {
- "unicode/fpositer.h",
- "unicode/gender.h",
- "unicode/gregocal.h",
-+ "unicode/listformatter.h",
- "unicode/measfmt.h",
- "unicode/measunit.h",
- "unicode/measure.h",
-@@ -178,7 +179,6 @@ shim_headers("icuuc_shim") {
- "unicode/icudataver.h",
- "unicode/icuplug.h",
- "unicode/idna.h",
-- "unicode/listformatter.h",
- "unicode/localpointer.h",
- "unicode/locdspnm.h",
- "unicode/locid.h",
diff --git a/www-client/chromium/files/chromium-78-include.patch b/www-client/chromium/files/chromium-78-include.patch
deleted file mode 100644
index a0b77c4..0000000
--- a/www-client/chromium/files/chromium-78-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/components/password_manager/core/browser/leak_detection/encryption_utils.cc b/components/password_manager/core/browser/leak_detection/encryption_utils.cc
-index 31a7116..53eb464 100644
---- a/components/password_manager/core/browser/leak_detection/encryption_utils.cc
-+++ b/components/password_manager/core/browser/leak_detection/encryption_utils.cc
-@@ -13,6 +13,8 @@
- #include "crypto/sha2.h"
- #include "third_party/boringssl/src/include/openssl/evp.h"
-
-+#include <climits>
-+
- namespace password_manager {
-
- namespace {
diff --git a/www-client/chromium/files/chromium-79-gcc-protobuf-alignas.patch b/www-client/chromium/files/chromium-79-gcc-protobuf-alignas.patch
deleted file mode 100644
index 20180c4..0000000
--- a/www-client/chromium/files/chromium-79-gcc-protobuf-alignas.patch
+++ /dev/null
@@ -1,81 +0,0 @@
-From 5d66d5907ac3e76d1e382b8a8e8afe653bd00f4c Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sun, 31 May 2020 13:59:15 +0000
-Subject: [PATCH] Fix GCC build with PROTOBUF_USE_DLLS enabled
-
-GCC does not allow mixing __attribute__(()) syntax and alignas()
-syntax. Re-use approach from chromium base/compiler_specific.h
----
- .../protobuf/src/google/protobuf/arena.h | 2 +-
- .../protobuf/src/google/protobuf/port_def.inc | 29 +++++++++++++++++++
- .../src/google/protobuf/port_undef.inc | 1 +
- 3 files changed, 31 insertions(+), 1 deletion(-)
-
-diff --git a/third_party/protobuf/src/google/protobuf/arena.h b/third_party/protobuf/src/google/protobuf/arena.h
-index dedc221..a8515ce 100644
---- a/third_party/protobuf/src/google/protobuf/arena.h
-+++ b/third_party/protobuf/src/google/protobuf/arena.h
-@@ -245,7 +245,7 @@ struct ArenaOptions {
- // well as protobuf container types like RepeatedPtrField and Map. The protocol
- // is internal to protobuf and is not guaranteed to be stable. Non-proto types
- // should not rely on this protocol.
--class PROTOBUF_EXPORT alignas(8) Arena final {
-+class PROTOBUF_EXPORT PROTOBUF_ALIGNAS(8) Arena final {
- public:
- // Arena constructor taking custom options. See ArenaOptions below for
- // descriptions of the options available.
-diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc
-index f1bd85d..6d02b53 100644
---- a/third_party/protobuf/src/google/protobuf/port_def.inc
-+++ b/third_party/protobuf/src/google/protobuf/port_def.inc
-@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport));
- #undef IN
- #endif // _MSC_VER
-
-+// Specify memory alignment for structs, classes, etc.
-+// Use like:
-+// class PROTOBUF_ALIGNAS(16) MyClass { ... }
-+// PROTOBUF_ALIGNAS(16) int array[4];
-+//
-+// In most places you can use the C++11 keyword "alignas", which is preferred.
-+//
-+// But compilers have trouble mixing __attribute__((...)) syntax with
-+// alignas(...) syntax.
-+//
-+// Doesn't work in clang or gcc:
-+// struct alignas(16) __attribute__((packed)) S { char c; };
-+// Works in clang but not gcc:
-+// struct __attribute__((packed)) alignas(16) S2 { char c; };
-+// Works in clang and gcc:
-+// struct alignas(16) S3 { char c; } __attribute__((packed));
-+//
-+// There are also some attributes that must be specified *before* a class
-+// definition: visibility (used for exporting functions/classes) is one of
-+// these attributes. This means that it is not possible to use alignas() with a
-+// class that is marked as exported.
-+#if defined(_MSC_VER)
-+#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment))
-+#elif defined(__GNUC__)
-+#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment)))
-+#else
-+#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment)
-+#endif
-+
- #if defined(__clang__)
- #pragma clang diagnostic push
- // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many
-diff --git a/third_party/protobuf/src/google/protobuf/port_undef.inc b/third_party/protobuf/src/google/protobuf/port_undef.inc
-index b7e67fe..ba1fffc 100644
---- a/third_party/protobuf/src/google/protobuf/port_undef.inc
-+++ b/third_party/protobuf/src/google/protobuf/port_undef.inc
-@@ -80,6 +80,7 @@
- #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_foj3FJo5StF0OvIzl7oMxA__declspec
- #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllexport
- #undef PROTOBUF_EXPORT_TEMPLATE_STYLE_MATCH_DECLSPEC_dllimport
-+#undef PROTOBUF_ALIGNAS
-
-
-
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-79-span-stlcompat.patch b/www-client/chromium/files/chromium-79-span-stlcompat.patch
deleted file mode 100644
index 9b47ee7..0000000
--- a/www-client/chromium/files/chromium-79-span-stlcompat.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/base/containers/span.h b/base/containers/span.h
-index c03bdf836..ff00275e7 100644
---- a/base/containers/span.h
-+++ b/base/containers/span.h
-@@ -224,6 +224,7 @@ class span : public internal::ExtentStorage<Extent> {
- using difference_type = ptrdiff_t;
- using pointer = T*;
- using reference = T&;
-+ using iterator_category = std::random_access_iterator_tag;
- using iterator = CheckedContiguousIterator<T>;
- using const_iterator = CheckedContiguousConstIterator<T>;
- using reverse_iterator = std::reverse_iterator<iterator>;
diff --git a/www-client/chromium/files/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch b/www-client/chromium/files/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch
deleted file mode 100644
index aa3d541..0000000
--- a/www-client/chromium/files/chromium-80-QuicStreamSendBuffer-deleted-move-constructor.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 00f47df999c9b19e80fdc01db0ae9ca1b6a12b3a Mon Sep 17 00:00:00 2001
-From: vasilvv <vasilvv@google.com>
-Date: Wed, 03 Apr 2019 13:58:53 -0700
-Subject: [PATCH] GCC: do not delete move constructor of QuicStreamSendBuffer
-
-QuicStreamSendBuffer constructor is implicitely required in the
-initialization of the vector of substreams in QuicCryptoStream.
-Though clang apparently ignores that, GCC fails to build.
-
-BUG=chromium:819294
-
-Originally submitted by José Dapena Paz <jose.dapena@lge.com> at https://quiche-review.googlesource.com/c/quiche/+/2420
-
-PiperOrigin-RevId: 241800134
-Change-Id: I4e3c97d6e5895d85340e8c1b740e6196d9104066
----
-
-diff --git a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
-index e34514b..74e9d0d 100644
---- a/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
-+++ b/net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h
-@@ -62,7 +62,7 @@
- public:
- explicit QuicStreamSendBuffer(QuicBufferAllocator* allocator);
- QuicStreamSendBuffer(const QuicStreamSendBuffer& other) = delete;
-- QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = delete;
-+ QuicStreamSendBuffer(QuicStreamSendBuffer&& other) = default;
- ~QuicStreamSendBuffer();
-
- // Save |data_length| of data starts at |iov_offset| in |iov| to send buffer.
diff --git a/www-client/chromium/files/chromium-84-blink-disable-clang-format.patch b/www-client/chromium/files/chromium-84-blink-disable-clang-format.patch
deleted file mode 100644
index c573db8..0000000
--- a/www-client/chromium/files/chromium-84-blink-disable-clang-format.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 08ac7188f414218ac9d764e29e7aa64a6bfc2f96 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sun, 31 May 2020 10:02:03 +0000
-Subject: [PATCH] disable clang-format for generated code in blink
-
-For GCC builds clang-format might be not available. Additionally,
-current scripts look for clang-format within chromium sources and
-don't consider system clang-format.
----
- .../bindings/scripts/bind_gen/codegen_utils.py | 10 +---------
- 1 file changed, 1 insertion(+), 9 deletions(-)
-
-diff --git a/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py b/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py
-index 7021f1a..33bf5bf 100644
---- a/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py
-+++ b/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py
-@@ -150,12 +150,4 @@ def write_code_node_to_file(code_node, filepath):
-
- rendered_text = render_code_node(code_node)
-
-- format_result = style_format.auto_format(rendered_text, filename=filepath)
-- if not format_result.did_succeed:
-- raise RuntimeError("Style-formatting failed: filename = {filename}\n"
-- "---- stderr ----\n"
-- "{stderr}:".format(
-- filename=format_result.filename,
-- stderr=format_result.error_message))
--
-- web_idl.file_io.write_to_file_if_changed(filepath, format_result.contents)
-+ web_idl.file_io.write_to_file_if_changed(filepath, rendered_text)
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-86-ConsumeDurationNumber-constexpr.patch b/www-client/chromium/files/chromium-86-ConsumeDurationNumber-constexpr.patch
deleted file mode 100644
index b623223..0000000
--- a/www-client/chromium/files/chromium-86-ConsumeDurationNumber-constexpr.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From f64e2d2daa64749995253f8ad00679ce74abdc1b Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jdapena@igalia.com>
-Date: Wed, 19 Aug 2020 11:02:00 +0200
-Subject: [PATCH] GCC: ConsumeDurationNumber cannot be a constexpr
-
-Declaring base::ConsumeDurationNumber as constexpr is not valid, as it
-uses the BasicStringPiece::begin method, that is not constexpr.
-
-build error in GCC:
-../../base/time/time.cc: In function ‘constexpr base::Optional<base::{anonymous}::ParsedDecimal> base::{anonymous}::ConsumeDurationNumber(base::StringPiece&)’:
-../../base/time/time.cc:67:63: error: call to non-‘constexpr’ function ‘const value_type* base::BasicStringPiece<STRING_TYPE>::begin() const [with STRING_TYPE = std::__cxx11::basic_string<char>; base::BasicStringPiece<STRING_TYPE>::const_iterator = const char*; base::BasicStringPiece<STRING_TYPE>::value_type = char]’
- 67 | StringPiece::const_iterator orig_start = number_string.begin();
- | ~~~~~~~~~~~~~~~~~~~^~
-
-Bug: 859294
-Change-Id: Id987d003f66052848d7083bb33abc3acfd109b73
----
-
-diff --git a/base/time/time.cc b/base/time/time.cc
-index 1b1a830..7c47419 100644
---- a/base/time/time.cc
-+++ b/base/time/time.cc
-@@ -61,8 +61,7 @@
- //
- // Adapted from absl:
- // https://cs.chromium.org/chromium/src/third_party/abseil-cpp/absl/time/duration.cc?l=807&rcl=2c22e9135f107a4319582ae52e2e3e6b201b6b7c
--constexpr Optional<ParsedDecimal> ConsumeDurationNumber(
-- StringPiece& number_string) {
-+Optional<ParsedDecimal> ConsumeDurationNumber(StringPiece& number_string) {
- ParsedDecimal res;
- StringPiece::const_iterator orig_start = number_string.begin();
- // Parse contiguous digits.
diff --git a/www-client/chromium/files/chromium-86-ImageMemoryBarrierData-init.patch b/www-client/chromium/files/chromium-86-ImageMemoryBarrierData-init.patch
deleted file mode 100644
index ff12a80..0000000
--- a/www-client/chromium/files/chromium-86-ImageMemoryBarrierData-init.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 2879a6ba43b65c33e3c02432b4ae7a7462d24096 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 28 Aug 2020 07:23:29 +0000
-Subject: [PATCH] GCC: fix ImageMemoryBarrierData initialization
-
-GCC can't convert constant string to char[40]. Use const char * instead.
-Otherwise fails like this:
-
-src/libANGLE/renderer/vulkan/vk_helpers.cpp:121:1: error: could not convert
-'...' from '<brace-enclosed initializer list>' to
-'const angle::PackedEnumMap<rx::vk::ImageLayout, rx::vk::{anonymous}::ImageMemoryBarrierData>'
----
- third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
-index af957d7..7fe82ae 100644
---- a/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
-+++ b/third_party/angle/src/libANGLE/renderer/vulkan/vk_helpers.cpp
-@@ -73,7 +73,7 @@ enum BarrierType
-
- struct ImageMemoryBarrierData
- {
-- char name[40];
-+ const char *name;
-
- // The Vk layout corresponding to the ImageLayout key.
- VkImageLayout layout;
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-86-compiler.patch b/www-client/chromium/files/chromium-86-compiler.patch
deleted file mode 100644
index 3088207..0000000
--- a/www-client/chromium/files/chromium-86-compiler.patch
+++ /dev/null
@@ -1,159 +0,0 @@
-From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Thu, 20 Aug 2020 19:12:21 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 52 +++++++++++-----------------------
- 1 file changed, 17 insertions(+), 35 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 06c166f..fe5d340 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -254,8 +254,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -488,17 +486,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1575,7 +1562,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1584,10 +1571,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1596,15 +1579,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2002,7 +1976,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2037,7 +2012,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2077,7 +2053,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2109,7 +2086,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2134,7 +2112,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2251,7 +2230,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2346,7 +2326,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2399,7 +2380,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-86-nearby-explicit.patch b/www-client/chromium/files/chromium-86-nearby-explicit.patch
deleted file mode 100644
index 84709cb..0000000
--- a/www-client/chromium/files/chromium-86-nearby-explicit.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 849e5c6b3a8746d9205102bd3df4e140cead405a Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sat, 18 Jul 2020 15:11:13 +0000
-Subject: [PATCH] GCC: remove explicit from AtomicReference constructor
-
----
- .../nearby/src/cpp/platform_v2/public/atomic_reference.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h b/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h
-index 5742724..bbb8c01 100644
---- a/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h
-+++ b/third_party/nearby/src/cpp/platform_v2/public/atomic_reference.h
-@@ -37,7 +37,7 @@ class AtomicReference<T, std::enable_if_t<sizeof(T) <= sizeof(std::uint32_t) &&
- final {
- public:
- using Platform = api::ImplementationPlatform;
-- explicit AtomicReference(T value)
-+ AtomicReference(T value)
- : impl_(Platform::CreateAtomicUint32(static_cast<std::uint32_t>(value))) {
- }
- ~AtomicReference() = default;
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-86-nearby-include.patch b/www-client/chromium/files/chromium-86-nearby-include.patch
deleted file mode 100644
index d3f02c2..0000000
--- a/www-client/chromium/files/chromium-86-nearby-include.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From a5b2ee9dd7dfb186e26ec6c0c06c2ae1a9d27195 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sat, 18 Jul 2020 14:15:50 +0000
-Subject: [PATCH] IWYU: memcpy is defined in cstring
-
----
- third_party/nearby/src/cpp/platform_v2/base/byte_array.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h
-index ee5d0eb..4b1d79b 100644
---- a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h
-+++ b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h
-@@ -17,6 +17,7 @@
-
- #include <array>
- #include <cstdint>
-+#include <cstring>
- #include <string>
- #include <type_traits>
- #include <utility>
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-87-CrossThreadPersistent-template.patch b/www-client/chromium/files/chromium-87-CrossThreadPersistent-template.patch
deleted file mode 100644
index 585c91f..0000000
--- a/www-client/chromium/files/chromium-87-CrossThreadPersistent-template.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 37070745728cd7744e12fa5110cde304ab6a048d Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jdapena@igalia.com>
-Date: Tue, 15 Sep 2020 16:55:19 +0200
-Subject: [PATCH] GCC: avoid GCC getting confused with wrong using resolution in CrossThreadPersistent
-
-In the method to assign a CrossThreadWeakPersistent<U> to a CrossThreadPersistent<T>,
-there is a call to the parent class implementation of Get. It uses Parent, that is,
-in CrossThreadPersistent<T> an alias to its parent. GCC resolves it as that, but
-that's wrong, and it should resolve to the parent of CrossThreadWeakPersistent<U>.
-
-To avoid the problem, we define in that method ParentU resolving to the right
-parent, and use a static cast to it.
-
-Bug: 819294
-Change-Id: I0152dac92d4a28eb1f1abbc56473204b62f33797
----
-
-diff --git a/third_party/blink/renderer/platform/heap/persistent.h b/third_party/blink/renderer/platform/heap/persistent.h
-index f08f42f..32cadc0 100644
---- a/third_party/blink/renderer/platform/heap/persistent.h
-+++ b/third_party/blink/renderer/platform/heap/persistent.h
-@@ -784,7 +784,9 @@
- CrossThreadPersistent<T>& CrossThreadPersistent<T>::operator=(
- const CrossThreadWeakPersistent<U>& other) {
- MutexLocker locker(ProcessHeap::CrossThreadPersistentMutex());
-- this->AssignUnsafe(other.Parent::Get());
-+ using ParentU = PersistentBase<U, kWeakPersistentConfiguration,
-+ kCrossThreadPersistentConfiguration>;
-+ this->AssignUnsafe(static_cast<const ParentU&>(other).Get());
- return *this;
- }
-
diff --git a/www-client/chromium/files/chromium-87-CursorFactory-include.patch b/www-client/chromium/files/chromium-87-CursorFactory-include.patch
deleted file mode 100644
index 98cb9cf..0000000
--- a/www-client/chromium/files/chromium-87-CursorFactory-include.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From c4f6e8cd34a245c3640b86a91c9694d69594d80b Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Wed, 16 Sep 2020 15:05:02 +0000
-Subject: [PATCH] IWYU: ui::CursorFactory is now required independent from
- Ozone
-
----
- .../ui/views/chrome_browser_main_extra_parts_views_linux.cc | 5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc b/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
-index 5a97d61..ccedd2a 100644
---- a/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
-+++ b/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
-@@ -7,6 +7,7 @@
- #include "chrome/browser/themes/theme_service_aura_linux.h"
- #include "chrome/browser/ui/browser_list.h"
- #include "chrome/browser/ui/views/theme_profile_key.h"
-+#include "ui/base/cursor/cursor_factory.h"
- #include "ui/display/screen.h"
- #include "ui/views/linux_ui/linux_ui.h"
-
-@@ -15,10 +16,6 @@
- #include "ui/gtk/gtk_ui_delegate.h"
- #endif
-
--#if defined(USE_OZONE)
--#include "ui/base/cursor/cursor_factory.h"
--#endif
--
- #if defined(USE_X11)
- #include "ui/gfx/x/connection.h" // nogncheck
- #if BUILDFLAG(USE_GTK)
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-87-SystemMemoryPressureEvaluator-namespace.patch b/www-client/chromium/files/chromium-87-SystemMemoryPressureEvaluator-namespace.patch
deleted file mode 100644
index 3129a75..0000000
--- a/www-client/chromium/files/chromium-87-SystemMemoryPressureEvaluator-namespace.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-From b73f096a06f4241a1459b0e02ddaa0bb4e14f7a1 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 4 Sep 2020 17:57:22 +0000
-Subject: [PATCH] GCC: fix clash in predefined macro "linux"
-
-"linux" is predefined in GCC and can't be used for namespace name.
----
- base/util/memory_pressure/system_memory_pressure_evaluator.cc | 2 +-
- .../memory_pressure/system_memory_pressure_evaluator_linux.cc | 4 ++--
- .../memory_pressure/system_memory_pressure_evaluator_linux.h | 4 ++--
- 3 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/base/util/memory_pressure/system_memory_pressure_evaluator.cc b/base/util/memory_pressure/system_memory_pressure_evaluator.cc
-index babb4f8..4a9963b 100644
---- a/base/util/memory_pressure/system_memory_pressure_evaluator.cc
-+++ b/base/util/memory_pressure/system_memory_pressure_evaluator.cc
-@@ -46,7 +46,7 @@ SystemMemoryPressureEvaluator::CreateDefaultSystemEvaluator(
- }
- return evaluator;
- #elif defined(OS_LINUX) && !defined(OS_CHROMEOS)
-- return std::make_unique<util::linux::SystemMemoryPressureEvaluator>(
-+ return std::make_unique<util::os_linux::SystemMemoryPressureEvaluator>(
- monitor->CreateVoter());
- #endif
- return nullptr;
-diff --git a/base/util/memory_pressure/system_memory_pressure_evaluator_linux.cc b/base/util/memory_pressure/system_memory_pressure_evaluator_linux.cc
-index 258d983..1878d88 100644
---- a/base/util/memory_pressure/system_memory_pressure_evaluator_linux.cc
-+++ b/base/util/memory_pressure/system_memory_pressure_evaluator_linux.cc
-@@ -32,7 +32,7 @@ int GetAvailableSystemMemoryMiB(const base::SystemMemoryInfoKB& mem_info) {
- } // namespace
-
- namespace util {
--namespace linux {
-+namespace os_linux {
-
- const base::TimeDelta SystemMemoryPressureEvaluator::kModeratePressureCooldown =
- base::TimeDelta::FromSeconds(10);
-@@ -153,5 +153,5 @@ SystemMemoryPressureEvaluator::CalculateCurrentPressureLevel() {
- return base::MemoryPressureListener::MEMORY_PRESSURE_LEVEL_NONE;
- }
-
--} // namespace linux
-+} // namespace os_linux
- } // namespace util
-diff --git a/base/util/memory_pressure/system_memory_pressure_evaluator_linux.h b/base/util/memory_pressure/system_memory_pressure_evaluator_linux.h
-index 0f5c43d..3a24427 100644
---- a/base/util/memory_pressure/system_memory_pressure_evaluator_linux.h
-+++ b/base/util/memory_pressure/system_memory_pressure_evaluator_linux.h
-@@ -13,7 +13,7 @@
- #include "base/util/memory_pressure/system_memory_pressure_evaluator.h"
-
- namespace util {
--namespace linux {
-+namespace os_linux {
-
- // Linux memory pressure voter. Because there is no OS provided signal this
- // polls at a low frequency, and applies internal hysteresis.
-@@ -106,7 +106,7 @@ class SystemMemoryPressureEvaluator
- SEQUENCE_CHECKER(sequence_checker_);
- };
-
--} // namespace linux
-+} // namespace os_linux
- } // namespace util
-
- #endif // BASE_UTIL_MEMORY_PRESSURE_SYSTEM_MEMORY_PRESSURE_EVALUATOR_LINUX_H_
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-87-Thumbnail-noexcept.patch b/www-client/chromium/files/chromium-87-Thumbnail-noexcept.patch
deleted file mode 100644
index 76c3d43..0000000
--- a/www-client/chromium/files/chromium-87-Thumbnail-noexcept.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 92db841a0d8449b46ce9d9e76bb4a23e5b370f9c Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 11 Sep 2020 07:07:00 +0000
-Subject: [PATCH] GCC: remove noexcept from PDF Thumbnail
-
-Move constructor/operator can't be noexcept, because of SkBitmap
-member has no noexcept move constructor/operator.
----
- pdf/thumbnail.cc | 4 ++--
- pdf/thumbnail.h | 4 ++--
- 2 files changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/pdf/thumbnail.cc b/pdf/thumbnail.cc
-index d46b20b..82f4790 100644
---- a/pdf/thumbnail.cc
-+++ b/pdf/thumbnail.cc
-@@ -113,9 +113,9 @@ Thumbnail::Thumbnail(const gfx::Size& page_size, float device_pixel_ratio) {
- DCHECK(success);
- }
-
--Thumbnail::Thumbnail(Thumbnail&& other) noexcept = default;
-+Thumbnail::Thumbnail(Thumbnail&& other) = default;
-
--Thumbnail& Thumbnail::operator=(Thumbnail&& other) noexcept = default;
-+Thumbnail& Thumbnail::operator=(Thumbnail&& other) = default;
-
- Thumbnail::~Thumbnail() = default;
-
-diff --git a/pdf/thumbnail.h b/pdf/thumbnail.h
-index 4b2bdef..d62a56a 100644
---- a/pdf/thumbnail.h
-+++ b/pdf/thumbnail.h
-@@ -17,8 +17,8 @@ class Thumbnail final {
- public:
- Thumbnail();
- Thumbnail(const gfx::Size& page_size, float device_pixel_ratio);
-- Thumbnail(Thumbnail&& other) noexcept;
-- Thumbnail& operator=(Thumbnail&& other) noexcept;
-+ Thumbnail(Thumbnail&& other);
-+ Thumbnail& operator=(Thumbnail&& other);
- ~Thumbnail();
-
- SkBitmap& bitmap() { return bitmap_; }
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-87-anonymous-struct.patch b/www-client/chromium/files/chromium-87-anonymous-struct.patch
deleted file mode 100644
index 7d7c356..0000000
--- a/www-client/chromium/files/chromium-87-anonymous-struct.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 9f2b2a3a6153be7ae5cef3305161c07fa2f6f70c Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jdapena@igalia.com>
-Date: Tue, 15 Sep 2020 18:58:11 +0000
-Subject: [PATCH] GCC: do not use anonymous structs
-
-Two using declarations have been added in x11.h for an
-unnamed struct. This is not allowed by C++ (and GCC). An example:
-using XErrorEvent = struct {
- ...
-};
-
-The solution is giving a name to the struct.
-
-Bug: 819294
-Change-Id: I9e77017851efe8e0a92fb37c01fdba693bb7a36d
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2412450
-Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
-Commit-Queue: José Dapena Paz <jdapena@igalia.com>
-Cr-Commit-Position: refs/heads/master@{#807126}
----
-
-diff --git a/ui/gfx/x/x11.h b/ui/gfx/x/x11.h
-index 6b36d48..d2dab40 100644
---- a/ui/gfx/x/x11.h
-+++ b/ui/gfx/x/x11.h
-@@ -139,7 +139,7 @@
-
- enum XEventQueueOwner { XlibOwnsEventQueue = 0, XCBOwnsEventQueue };
-
--using XErrorEvent = struct {
-+using XErrorEvent = struct _XErrorEvent {
- int type;
- Display* display;
- XID resourceid;
-@@ -149,7 +149,7 @@
- unsigned char minor_code;
- };
-
--using XRectangle = struct {
-+using XRectangle = struct _XRectangle {
- short x, y;
- unsigned short width, height;
- };
-@@ -161,7 +161,7 @@
- XPointer private_data;
- };
-
--using Visual = struct {
-+using Visual = struct _Visual {
- XExtData* ext_data;
- VisualID visualid;
- int c_class;
-@@ -170,7 +170,7 @@
- int map_entries;
- };
-
--using XVisualInfo = struct {
-+using XVisualInfo = struct _XVisualInfo {
- Visual* visual;
- VisualID visualid;
- int screen;
diff --git a/www-client/chromium/files/chromium-87-compiler-r1.patch b/www-client/chromium/files/chromium-87-compiler-r1.patch
deleted file mode 100644
index 181e724..0000000
--- a/www-client/chromium/files/chromium-87-compiler-r1.patch
+++ /dev/null
@@ -1,166 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 4f6461b6b..b5d2c7700 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -254,8 +254,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -480,36 +478,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
--
-- # Pinned clang has enable-dse-memoryssa enabled by default but it's broken,
-- # so we have to force it off.
-- # Trunk clang has it disabled by default but it might work, so we force it
-- # on so the ToT bots can check if it works now.
-- if (!llvm_force_head_revision) {
-- cflags += [
-- # TODO(https://crbug.com/1127713): Investigate, remove.
-- "-mllvm",
-- "-enable-dse-memoryssa=false",
-- ]
-- }
-- if (llvm_force_head_revision) {
-- cflags += [
-- # TODO(https://crbug.com/1127713): Investigate, remove.
-- "-mllvm",
-- "-enable-dse-memoryssa=true",
-- ]
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1571,7 +1539,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1580,10 +1548,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1592,15 +1556,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1998,7 +1953,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2033,7 +1989,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2073,7 +2030,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2105,7 +2063,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2130,7 +2089,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2247,7 +2207,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2355,7 +2316,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2408,7 +2370,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-87-openscreen-crypto-include.patch b/www-client/chromium/files/chromium-87-openscreen-crypto-include.patch
deleted file mode 100644
index 5edd10b..0000000
--- a/www-client/chromium/files/chromium-87-openscreen-crypto-include.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/third_party/openscreen/src/util/crypto/random_bytes.h 2020-10-03 07:37:39.335192533 +0800
-+++ b/third_party/openscreen/src/util/crypto/random_bytes.h 2020-10-03 07:37:29.548124971 +0800
-@@ -5,6 +5,8 @@
- #ifndef UTIL_CRYPTO_RANDOM_BYTES_H_
- #define UTIL_CRYPTO_RANDOM_BYTES_H_
-
-+#include <stdint.h>
-+
- #include <array>
-
- namespace openscreen {
diff --git a/www-client/chromium/files/chromium-87-ozone-deps.patch b/www-client/chromium/files/chromium-87-ozone-deps.patch
deleted file mode 100644
index c9bac08..0000000
--- a/www-client/chromium/files/chromium-87-ozone-deps.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/chrome/browser/BUILD.gn b/chrome/browser/BUILD.gn
-index 51b25f1a8..56dfeb165 100644
---- a/chrome/browser/BUILD.gn
-+++ b/chrome/browser/BUILD.gn
-@@ -5073,7 +5073,9 @@ static_library("browser") {
- "chrome_browser_main_extra_parts_ozone.cc",
- "chrome_browser_main_extra_parts_ozone.h",
- ]
-- deps += [ "//ui/ozone" ]
-+ if (use_ozone) {
-+ deps += [ "//ui/ozone" ]
-+ }
- }
-
- if (enable_background_mode) {
diff --git a/www-client/chromium/files/chromium-87-remotesyscall.patch b/www-client/chromium/files/chromium-87-remotesyscall.patch
deleted file mode 100644
index 63d1cf9..0000000
--- a/www-client/chromium/files/chromium-87-remotesyscall.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/sandbox/linux/syscall_broker/remote_syscall_arg_handler.cc b/sandbox/linux/syscall_broker/remote_syscall_arg_handler.cc
-index 33ff80225..d503a86e0 100644
---- a/sandbox/linux/syscall_broker/remote_syscall_arg_handler.cc
-+++ b/sandbox/linux/syscall_broker/remote_syscall_arg_handler.cc
-@@ -4,6 +4,8 @@
-
- #include "sandbox/linux/syscall_broker/remote_syscall_arg_handler.h"
-
-+#include <string.h>
-+
- #include <sys/ioctl.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
diff --git a/www-client/chromium/files/chromium-87-std-max_align_t.patch b/www-client/chromium/files/chromium-87-std-max_align_t.patch
deleted file mode 100644
index e37d0fb..0000000
--- a/www-client/chromium/files/chromium-87-std-max_align_t.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 1e0683735e26c6fcecb0977e0cdae5da2eaf7c84 Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jdapena@igalia.com>
-Date: Tue, 22 Sep 2020 13:18:55 +0200
-Subject: [PATCH] libstdc++: use max_align_t without std prefix in partition alloc constants.
-
-Using std::max_align_t would require using cstddef instead of stddef.h. As
-partition alloc constants is including stddef.h, let's remove the std::
-namespace prefix.
-
-This fixes this error building with libstdc++
-../../base/allocator/partition_allocator/partition_alloc_constants.h:200:51: error: ‘max_align_t’ is not a member of ‘std’; did you mean ‘max_align_t’?
-
-Bug: 957519
-Change-Id: I72b22428937e7b7b1e6bb31fb0ac0bef3b72c581
-
-(Adjusted to work with clang too)
----
-
-diff --git a/base/allocator/partition_allocator/partition_alloc_constants.h b/base/allocator/partition_allocator/partition_alloc_constants.h
-index 0c74dbe..ef1488f 100644
---- a/base/allocator/partition_allocator/partition_alloc_constants.h
-+++ b/base/allocator/partition_allocator/partition_alloc_constants.h
-@@ -183,7 +183,7 @@ NumPartitionPagesPerSuperPage() {
- }
-
- // Alignment has two constraints:
--// - Alignment requirement for scalar types: alignof(std::max_align_t)
-+// - Alignment requirement for scalar types: alignof(max_align_t)
- // - Alignment requirement for operator new().
- //
- // The two are separate on Windows 64 bits, where the first one is 8 bytes, and
-@@ -195,9 +195,9 @@ NumPartitionPagesPerSuperPage() {
- // platforms, as Chrome's requirement is C++14 as of 2020.
- #if defined(__STDCPP_DEFAULT_NEW_ALIGNMENT__)
- static constexpr size_t kAlignment =
-- std::max(alignof(std::max_align_t), __STDCPP_DEFAULT_NEW_ALIGNMENT__);
-+ std::max(alignof(max_align_t), __STDCPP_DEFAULT_NEW_ALIGNMENT__);
- #else
--static constexpr size_t kAlignment = alignof(std::max_align_t);
-+static constexpr size_t kAlignment = alignof(max_align_t);
- #endif
- static_assert(kAlignment <= 16,
- "PartitionAlloc doesn't support a fundamental alignment larger "
diff --git a/www-client/chromium/files/chromium-87-thread_cache.patch b/www-client/chromium/files/chromium-87-thread_cache.patch
deleted file mode 100644
index b2ef990..0000000
--- a/www-client/chromium/files/chromium-87-thread_cache.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/base/allocator/partition_allocator/partition_alloc.h b/base/allocator/partition_allocator/partition_alloc.h
-index 549451e2d..17b7deab3 100644
---- a/base/allocator/partition_allocator/partition_alloc.h
-+++ b/base/allocator/partition_allocator/partition_alloc.h
-@@ -582,7 +582,7 @@ struct BASE_EXPORT PartitionRoot {
- EXCLUSIVE_LOCKS_REQUIRED(lock_);
- void DecommitEmptyPages() EXCLUSIVE_LOCKS_REQUIRED(lock_);
-
-- friend class internal::ThreadCache;
-+ friend class base::internal::ThreadCache;
- };
-
- static_assert(sizeof(PartitionRoot<internal::ThreadSafe>) ==
-diff --git a/base/allocator/partition_allocator/thread_cache.h b/base/allocator/partition_allocator/thread_cache.h
-index dd71ccc09..05097470a 100644
---- a/base/allocator/partition_allocator/thread_cache.h
-+++ b/base/allocator/partition_allocator/thread_cache.h
-@@ -5,6 +5,7 @@
- #ifndef BASE_ALLOCATOR_PARTITION_ALLOCATOR_THREAD_CACHE_H_
- #define BASE_ALLOCATOR_PARTITION_ALLOCATOR_THREAD_CACHE_H_
-
-+#include <atomic>
- #include <cstdint>
- #include <memory>
-
diff --git a/www-client/chromium/files/chromium-88-angle-renderer.patch b/www-client/chromium/files/chromium-88-angle-renderer.patch
deleted file mode 100644
index 257c00c..0000000
--- a/www-client/chromium/files/chromium-88-angle-renderer.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/angle/src/libANGLE/renderer/EGLReusableSync.h b/third_party/angle/src/libANGLE/renderer/EGLReusableSync.h
-index 9c65fccad..12c972565 100644
---- a/third_party/angle/src/libANGLE/renderer/EGLReusableSync.h
-+++ b/third_party/angle/src/libANGLE/renderer/EGLReusableSync.h
-@@ -14,6 +14,8 @@
-
- #include "common/angleutils.h"
-
-+#include <condition_variable>
-+
- namespace rx
- {
-
diff --git a/www-client/chromium/files/chromium-88-compiler.patch b/www-client/chromium/files/chromium-88-compiler.patch
deleted file mode 100644
index cb72cf2..0000000
--- a/www-client/chromium/files/chromium-88-compiler.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 9d66490cd..4e79a84f8 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -254,8 +254,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -478,17 +476,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1574,7 +1561,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1583,10 +1570,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1595,15 +1578,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2006,7 +1980,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2041,7 +2016,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2081,7 +2057,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2113,7 +2090,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2138,7 +2116,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2267,7 +2246,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2365,7 +2345,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2418,7 +2399,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-88-compositor-dcheck.patch b/www-client/chromium/files/chromium-88-compositor-dcheck.patch
deleted file mode 100644
index ef51614..0000000
--- a/www-client/chromium/files/chromium-88-compositor-dcheck.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/cc/metrics/compositor_frame_reporter.cc b/cc/metrics/compositor_frame_reporter.cc
-index 93d0e2352..7ca5e379c 100644
---- a/cc/metrics/compositor_frame_reporter.cc
-+++ b/cc/metrics/compositor_frame_reporter.cc
-@@ -671,7 +671,7 @@ void CompositorFrameReporter::ReportCompositorLatencyHistogram(
-
- void CompositorFrameReporter::ReportEventLatencyHistograms() const {
- for (const auto& event_metrics : events_metrics_) {
-- DCHECK_NE(event_metrics, nullptr);
-+ DCHECK_NE(event_metrics.get(), nullptr);
- const std::string histogram_base_name =
- GetEventLatencyHistogramBaseName(*event_metrics);
- const int event_type_index = static_cast<int>(event_metrics->type());
diff --git a/www-client/chromium/files/chromium-88-dawn-include.patch b/www-client/chromium/files/chromium-88-dawn-include.patch
deleted file mode 100644
index 3b01546..0000000
--- a/www-client/chromium/files/chromium-88-dawn-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/third_party/dawn/src/dawn_wire/ChunkedCommandSerializer.h b/third_party/dawn/src/dawn_wire/ChunkedCommandSerializer.h
-index cef4ebba4..db28b87e2 100644
---- a/third_party/dawn/src/dawn_wire/ChunkedCommandSerializer.h
-+++ b/third_party/dawn/src/dawn_wire/ChunkedCommandSerializer.h
-@@ -21,6 +21,7 @@
-
- #include <algorithm>
- #include <cstring>
-+#include <memory>
-
- namespace dawn_wire {
-
diff --git a/www-client/chromium/files/chromium-88-dawn-size_t-std.patch b/www-client/chromium/files/chromium-88-dawn-size_t-std.patch
deleted file mode 100644
index f6392e9..0000000
--- a/www-client/chromium/files/chromium-88-dawn-size_t-std.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/dawn/src/common/ityp_array.h b/third_party/dawn/src/common/ityp_array.h
-index 48e080fa5..d70d9e2da 100644
---- a/third_party/dawn/src/common/ityp_array.h
-+++ b/third_party/dawn/src/common/ityp_array.h
-@@ -27,7 +27,7 @@ namespace ityp {
- // indices must be a particular type |Index|. Dawn uses multiple flat maps of
- // index-->data, and this class helps ensure an indices cannot be passed interchangably
- // to a flat map of a different type.
-- template <typename Index, typename Value, size_t Size>
-+ template <typename Index, typename Value, std::size_t Size>
- class array : private std::array<Value, Size> {
- using I = UnderlyingType<Index>;
- using Base = std::array<Value, Size>;
diff --git a/www-client/chromium/files/chromium-88-gpu-internals-ozone.patch b/www-client/chromium/files/chromium-88-gpu-internals-ozone.patch
deleted file mode 100644
index c74e72b..0000000
--- a/www-client/chromium/files/chromium-88-gpu-internals-ozone.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/content/browser/gpu/gpu_internals_ui.cc b/content/browser/gpu/gpu_internals_ui.cc
-index ce9359413..472d42913 100644
---- a/content/browser/gpu/gpu_internals_ui.cc
-+++ b/content/browser/gpu/gpu_internals_ui.cc
-@@ -69,6 +69,7 @@
-
- #if defined(USE_OZONE)
- #include "ui/base/ui_base_features.h"
-+#include "ui/ozone/public/ozone_platform.h"
- #endif
-
- namespace content {
-@@ -393,7 +394,7 @@ std::unique_ptr<base::ListValue> GpuMemoryBufferInfo(
- gpu::GpuMemoryBufferSupport gpu_memory_buffer_support;
-
- gpu::GpuMemoryBufferConfigurationSet native_config;
--#if defined(USE_X11)
-+#if defined(USE_X11) && defined(USE_OZONE)
- if (!features::IsUsingOzonePlatform()) {
- for (const auto& config : gpu_extra_info.gpu_memory_buffer_support_x11) {
- native_config.emplace(config);
diff --git a/www-client/chromium/files/chromium-88-mediasource-uniqptrostream.patch b/www-client/chromium/files/chromium-88-mediasource-uniqptrostream.patch
deleted file mode 100644
index 908a993..0000000
--- a/www-client/chromium/files/chromium-88-mediasource-uniqptrostream.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/third_party/blink/renderer/modules/mediasource/cross_thread_media_source_attachment.cc b/third_party/blink/renderer/modules/mediasource/cross_thread_media_source_attachment.cc
-index 4caa0753b..9efe53057 100644
---- a/third_party/blink/renderer/modules/mediasource/cross_thread_media_source_attachment.cc
-+++ b/third_party/blink/renderer/modules/mediasource/cross_thread_media_source_attachment.cc
-@@ -575,7 +575,7 @@ void CrossThreadMediaSourceAttachment::CompleteAttachingToMediaElement(
- MediaSourceTracer* /* tracer */,
- std::unique_ptr<WebMediaSource> web_media_source) {
- DVLOG(1) << __func__ << " this=" << this
-- << ", web_media_source=" << web_media_source;
-+ << ", web_media_source=" << web_media_source.get();
- DCHECK(web_media_source);
-
- {
-@@ -618,7 +618,7 @@ void CrossThreadMediaSourceAttachment::
- DCHECK(worker_runner_->BelongsToCurrentThread());
-
- DVLOG(1) << __func__ << " this=" << this
-- << ", web_media_source=" << web_media_source;
-+ << ", web_media_source=" << web_media_source.get();
-
- // While awaiting task scheduling, the media element could have begun
- // detachment or main context could have been destroyed. Return early in
diff --git a/www-client/chromium/files/chromium-88-pcscan-nonfinal.patch b/www-client/chromium/files/chromium-88-pcscan-nonfinal.patch
deleted file mode 100644
index ea7f31f..0000000
--- a/www-client/chromium/files/chromium-88-pcscan-nonfinal.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/base/allocator/partition_allocator/pcscan.cc b/base/allocator/partition_allocator/pcscan.cc
-index 5cc93dbbd..69aaa0934 100644
---- a/base/allocator/partition_allocator/pcscan.cc
-+++ b/base/allocator/partition_allocator/pcscan.cc
-@@ -41,7 +41,7 @@ ThreadSafePartitionRoot& PCScanMetadataAllocator() {
- // STL allocator which is needed to keep internal data structures required by
- // PCScan.
- template <typename T>
--class MetadataAllocator final {
-+class MetadataAllocator {
- public:
- using value_type = T;
-
diff --git a/www-client/chromium/files/chromium-88-service-worker-registration-crash.patch b/www-client/chromium/files/chromium-88-service-worker-registration-crash.patch
deleted file mode 100644
index e543fca..0000000
--- a/www-client/chromium/files/chromium-88-service-worker-registration-crash.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/content/browser/service_worker/service_worker_container_host.cc b/content/browser/service_worker/service_worker_container_host.cc
-index 5cb7b2da2..fa11602ed 100644
---- a/content/browser/service_worker/service_worker_container_host.cc
-+++ b/content/browser/service_worker/service_worker_container_host.cc
-@@ -626,6 +626,9 @@ void ServiceWorkerContainerHost::RemoveServiceWorkerRegistrationObjectHost(
- int64_t registration_id) {
- DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId());
- DCHECK(base::Contains(registration_object_hosts_, registration_id));
-+ std::unique_ptr<ServiceWorkerRegistrationObjectHost> to_be_deleted =
-+ std::move(registration_object_hosts_[registration_id]);
-+ DCHECK(to_be_deleted);
- registration_object_hosts_.erase(registration_id);
- }
-
diff --git a/www-client/chromium/files/chromium-88-system-icu.patch b/www-client/chromium/files/chromium-88-system-icu.patch
deleted file mode 100644
index 968143e..0000000
--- a/www-client/chromium/files/chromium-88-system-icu.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc b/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc
-index fb8ab0530..5d4ea13e7 100644
---- a/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc
-+++ b/third_party/blink/renderer/platform/wtf/text/text_codec_icu.cc
-@@ -432,7 +432,7 @@ String TextCodecICU::Decode(const char* bytes,
- // ICU decodes it as U+E5E5.
- if (!strcmp(encoding_.GetName(), "GBK")) {
- if (EqualIgnoringASCIICase(encoding_.GetName(), "gb18030"))
-- resultString.Replace(0xE5E5, ideographicSpaceCharacter);
-+ resultString.Replace(0xE5E5, kIdeographicSpaceCharacter);
- // Make GBK compliant to the encoding spec and align with GB18030
- resultString.Replace(0x01F9, 0xE7C8);
- // FIXME: Once https://www.w3.org/Bugs/Public/show_bug.cgi?id=28740#c3
diff --git a/www-client/chromium/files/chromium-88-tree-formatter-include.patch b/www-client/chromium/files/chromium-88-tree-formatter-include.patch
deleted file mode 100644
index 71258c5..0000000
--- a/www-client/chromium/files/chromium-88-tree-formatter-include.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/ui/accessibility/platform/inspect/tree_formatter.h b/ui/accessibility/platform/inspect/tree_formatter.h
-index 4a70a4d54..532da613a 100644
---- a/ui/accessibility/platform/inspect/tree_formatter.h
-+++ b/ui/accessibility/platform/inspect/tree_formatter.h
-@@ -5,6 +5,9 @@
- #ifndef UI_ACCESSIBILITY_PLATFORM_INSPECT_TREE_FORMATTER_H_
- #define UI_ACCESSIBILITY_PLATFORM_INSPECT_TREE_FORMATTER_H_
-
-+#include <vector>
-+#include <memory>
-+
- #include "ui/accessibility/platform/inspect/inspect.h"
-
- #include "ui/gfx/native_widget_types.h"
diff --git a/www-client/chromium/files/chromium-89-CursorFactory-include.patch b/www-client/chromium/files/chromium-89-CursorFactory-include.patch
deleted file mode 100644
index dfce7bc..0000000
--- a/www-client/chromium/files/chromium-89-CursorFactory-include.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc b/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
-index d69bec5b8..0f9a87571 100644
---- a/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
-+++ b/chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.cc
-@@ -8,6 +8,7 @@
- #include "chrome/browser/ui/browser_list.h"
- #include "chrome/browser/ui/views/theme_profile_key.h"
- #include "ui/base/ime/linux/fake_input_method_context_factory.h"
-+#include "ui/base/cursor/cursor_factory.h"
- #include "ui/display/screen.h"
- #include "ui/views/linux_ui/linux_ui.h"
-
-@@ -17,7 +18,6 @@
- #endif
-
- #if defined(USE_OZONE)
--#include "ui/base/cursor/cursor_factory.h"
- #include "ui/base/ime/input_method.h"
- #include "ui/base/ui_base_features.h"
- #include "ui/ozone/public/ozone_platform.h"
diff --git a/www-client/chromium/files/chromium-89-EnumTable-crash.patch b/www-client/chromium/files/chromium-89-EnumTable-crash.patch
deleted file mode 100644
index 89a5070..0000000
--- a/www-client/chromium/files/chromium-89-EnumTable-crash.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
-index e3130c7..2ad16ea 100644
---- a/components/cast_channel/enum_table.h
-+++ b/components/cast_channel/enum_table.h
-@@ -212,7 +212,7 @@ class
-
- template <typename E>
- friend class EnumTable;
-- DISALLOW_COPY_AND_ASSIGN(GenericEnumTableEntry);
-+ DISALLOW_ASSIGN(GenericEnumTableEntry);
- };
-
- // Yes, these constructors really needs to be inlined. Even though they look
-@@ -250,8 +250,7 @@ class EnumTable {
- // Constructor for regular entries.
- constexpr Entry(E value, base::StringPiece str)
- : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
--
-- DISALLOW_COPY_AND_ASSIGN(Entry);
-+ DISALLOW_ASSIGN(Entry);
- };
-
- static_assert(sizeof(E) <= sizeof(int32_t),
-@@ -306,15 +305,14 @@ class EnumTable {
- if (is_sorted_) {
- const std::size_t index = static_cast<std::size_t>(value);
- if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-- const auto& entry = data_.begin()[index];
-+ const auto& entry = data_[index];
- if (ANALYZER_ASSUME_TRUE(entry.has_str()))
- return entry.str();
- }
- return base::nullopt;
- }
- return GenericEnumTableEntry::FindByValue(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), static_cast<int32_t>(value));
-+ &data_[0], data_.size(), static_cast<int32_t>(value));
- }
-
- // This overload of GetString is designed for cases where the argument is a
-@@ -342,8 +340,7 @@ class EnumTable {
- // enum value directly.
- base::Optional<E> GetEnum(base::StringPiece str) const {
- auto* entry = GenericEnumTableEntry::FindByString(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), str);
-+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : base::Optional<E>();
- }
-
-@@ -358,7 +355,7 @@ class EnumTable {
- // Align the data on a cache line boundary.
- alignas(64)
- #endif
-- std::initializer_list<Entry> data_;
-+ const std::vector<Entry> data_;
- bool is_sorted_;
-
- constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
-@@ -370,8 +367,8 @@ class EnumTable {
-
- for (std::size_t i = 0; i < data.size(); i++) {
- for (std::size_t j = i + 1; j < data.size(); j++) {
-- const Entry& ei = data.begin()[i];
-- const Entry& ej = data.begin()[j];
-+ const Entry& ei = data[i];
-+ const Entry& ej = data[j];
- DCHECK(ei.value != ej.value)
- << "Found duplicate enum values at indices " << i << " and " << j;
- DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-89-angle-display.patch b/www-client/chromium/files/chromium-89-angle-display.patch
deleted file mode 100644
index d467ce9..0000000
--- a/www-client/chromium/files/chromium-89-angle-display.patch
+++ /dev/null
@@ -1,1747 +0,0 @@
-diff --git a/third_party/angle/scripts/code_generation_hashes/GL_EGL_entry_points.json b/third_party/angle/scripts/code_generation_hashes/GL_EGL_entry_points.json
-index c506d31fb..df8758d30 100644
---- a/third_party/angle/scripts/code_generation_hashes/GL_EGL_entry_points.json
-+++ b/third_party/angle/scripts/code_generation_hashes/GL_EGL_entry_points.json
-@@ -8,7 +8,7 @@
- "scripts/entry_point_packed_gl_enums.json":
- "846be5dc8cb36076207699b025633fcc",
- "scripts/generate_entry_points.py":
-- "95fc7635243122e679e82e1757816ab3",
-+ "d15fcd0f5e3296787753ff507f7051d9",
- "scripts/gl.xml":
- "f66967f3f3d696b5d8306fd80bbd49a8",
- "scripts/gl_angle_ext.xml":
-@@ -102,7 +102,7 @@
- "src/libANGLE/frame_capture_utils_autogen.h":
- "652b821a877d6eb2c62ba8d151157eea",
- "src/libANGLE/validationEGL_autogen.h":
-- "b3c0eae46748da68d6833cc40e4bb486",
-+ "3927fa260ad183fd9193d65b3f8d82c5",
- "src/libANGLE/validationES1_autogen.h":
- "c8edb0a5b26303bf7c4692b9d0b05c1f",
- "src/libANGLE/validationES2_autogen.h":
-@@ -238,17 +238,17 @@
- "src/libGL/libGL_autogen.def":
- "2789d87b05eea9f53d52e2aff499b785",
- "src/libGLESv2/egl_ext_stubs_autogen.h":
-- "03de6401c1695f8ca4acbde9c3ae1ba2",
-+ "aeb007419aaab7b5e52b084d83dda77c",
- "src/libGLESv2/egl_get_labeled_object_data.json":
- "2f4148b2ddf34e62670e32c5e6da4937",
- "src/libGLESv2/egl_stubs_autogen.h":
-- "1c9d160acb1ed9bf5e7c26918d4a039e",
-+ "6439daa350c1663e71dd0af37dcc91df",
- "src/libGLESv2/entry_points_egl_autogen.cpp":
-- "9fd1b2d1e0dbab804e854e33e5bc9ef2",
-+ "ba9796b20452dbbe4180480aae02b8a3",
- "src/libGLESv2/entry_points_egl_autogen.h":
- "3bc7a8df9deadd7cfd615d0cfad0c6a8",
- "src/libGLESv2/entry_points_egl_ext_autogen.cpp":
-- "f52756d7a31ce136ea04a67e0ea1b447",
-+ "5397ab40e9cbe1d7aa3faf91154a837a",
- "src/libGLESv2/entry_points_egl_ext_autogen.h":
- "9154781afd9bd6354ec6fc201b43c790",
- "src/libGLESv2/entry_points_gles_1_0_autogen.cpp":
-@@ -283,4 +283,4 @@
- "f93450c1f787f3da53f2525865568989",
- "src/libGLESv2/libGLESv2_with_capture_autogen.def":
- "7b78ab59dd1fe360a5d3c1f513c7ce55"
--}
-\ No newline at end of file
-+}
-diff --git a/third_party/angle/scripts/generate_entry_points.py b/third_party/angle/scripts/generate_entry_points.py
-index de26a60ad..0e99f6bf2 100755
---- a/third_party/angle/scripts/generate_entry_points.py
-+++ b/third_party/angle/scripts/generate_entry_points.py
-@@ -1010,7 +1010,8 @@ EGL_PACKED_TYPES = {
- "EGLContext": "gl::Context *",
- "EGLConfig": "Config *",
- "EGLDeviceEXT": "Device *",
-- "EGLDisplay": "Display *",
-+ # Needs an explicit namespace to avoid an X11 namespace collision.
-+ "EGLDisplay": "egl::Display *",
- "EGLImage": "Image *",
- "EGLImageKHR": "Image *",
- "EGLStreamKHR": "Stream *",
-@@ -2085,7 +2086,7 @@ def get_egl_entry_point_labeled_object(ep_to_object, cmd_stripped, params, packe
- return just_the_name_packed(param, packed_enums)
- return None
-
-- display_param = find_param(params, "Display", packed_enums)
-+ display_param = find_param(params, "egl::Display", packed_enums)
-
- # For entry points not listed in the JSON file, they default to an EGLDisplay or nothing.
- if cmd_stripped not in ep_to_object:
-diff --git a/third_party/angle/src/libANGLE/validationEGL_autogen.h b/third_party/angle/src/libANGLE/validationEGL_autogen.h
-index aa43ab156..869bd86e5 100644
---- a/third_party/angle/src/libANGLE/validationEGL_autogen.h
-+++ b/third_party/angle/src/libANGLE/validationEGL_autogen.h
-@@ -18,47 +18,47 @@ namespace egl
-
- // EGL 1.0
- bool ValidateChooseConfig(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const AttributeMap &attrib_listPacked,
- const EGLConfig *configs,
- EGLint config_size,
- const EGLint *num_config);
- bool ValidateCopyBuffers(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLNativePixmapType target);
- bool ValidateCreateContext(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- const gl::Context *share_contextPacked,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreatePbufferSurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreatePixmapSurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- EGLNativePixmapType pixmap,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreateWindowSurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- EGLNativeWindowType win,
- const AttributeMap &attrib_listPacked);
- bool ValidateDestroyContext(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const gl::Context *ctxPacked);
- bool ValidateDestroySurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked);
- bool ValidateGetConfigAttrib(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- EGLint attribute,
- const EGLint *value);
- bool ValidateGetConfigs(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const EGLConfig *configs,
- EGLint config_size,
- const EGLint *num_config);
-@@ -68,52 +68,54 @@ bool ValidateGetDisplay(const ValidationContext *val, EGLNativeDisplayType displ
- bool ValidateGetError(const ValidationContext *val);
- bool ValidateGetProcAddress(const ValidationContext *val, const char *procname);
- bool ValidateInitialize(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const EGLint *major,
- const EGLint *minor);
- bool ValidateMakeCurrent(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *drawPacked,
- const Surface *readPacked,
- const gl::Context *ctxPacked);
- bool ValidateQueryContext(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const gl::Context *ctxPacked,
- EGLint attribute,
- const EGLint *value);
--bool ValidateQueryString(const ValidationContext *val, const Display *dpyPacked, EGLint name);
-+bool ValidateQueryString(const ValidationContext *val, const egl::Display *dpyPacked, EGLint name);
- bool ValidateQuerySurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint attribute,
- const EGLint *value);
- bool ValidateSwapBuffers(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked);
--bool ValidateTerminate(const ValidationContext *val, const Display *dpyPacked);
-+bool ValidateTerminate(const ValidationContext *val, const egl::Display *dpyPacked);
- bool ValidateWaitGL(const ValidationContext *val);
- bool ValidateWaitNative(const ValidationContext *val, EGLint engine);
-
- // EGL 1.1
- bool ValidateBindTexImage(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint buffer);
- bool ValidateReleaseTexImage(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint buffer);
- bool ValidateSurfaceAttrib(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint attribute,
- EGLint value);
--bool ValidateSwapInterval(const ValidationContext *val, const Display *dpyPacked, EGLint interval);
-+bool ValidateSwapInterval(const ValidationContext *val,
-+ const egl::Display *dpyPacked,
-+ EGLint interval);
-
- // EGL 1.2
- bool ValidateBindAPI(const ValidationContext *val, EGLenum api);
- bool ValidateCreatePbufferFromClientBuffer(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLenum buftype,
- EGLClientBuffer buffer,
- const Config *configPacked,
-@@ -127,53 +129,53 @@ bool ValidateGetCurrentContext(const ValidationContext *val);
-
- // EGL 1.5
- bool ValidateClientWaitSync(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLint flags,
- EGLTime timeout);
- bool ValidateCreateImage(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const gl::Context *ctxPacked,
- EGLenum target,
- EGLClientBuffer buffer,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreatePlatformPixmapSurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- const void *native_pixmap,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreatePlatformWindowSurface(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- const void *native_window,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreateSync(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLenum type,
- const AttributeMap &attrib_listPacked);
- bool ValidateDestroyImage(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Image *imagePacked);
- bool ValidateDestroySync(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked);
- bool ValidateGetPlatformDisplay(const ValidationContext *val,
- EGLenum platform,
- const void *native_display,
- const AttributeMap &attrib_listPacked);
- bool ValidateGetSyncAttrib(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLint attribute,
- const EGLAttrib *value);
- bool ValidateWaitSync(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLint flags);
-
- // EGL_ANDROID_blob_cache
- bool ValidateSetBlobCacheFuncsANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLSetBlobFuncANDROID set,
- EGLGetBlobFuncANDROID get);
-
-@@ -183,25 +185,25 @@ bool ValidateCreateNativeClientBufferANDROID(const ValidationContext *val,
-
- // EGL_ANDROID_get_frame_timestamps
- bool ValidateGetCompositorTimingSupportedANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- CompositorTiming namePacked);
- bool ValidateGetCompositorTimingANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint numTimestamps,
- const EGLint *names,
- const EGLnsecsANDROID *values);
- bool ValidateGetNextFrameIdANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- const EGLuint64KHR *frameId);
- bool ValidateGetFrameTimestampSupportedANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- Timestamp timestampPacked);
- bool ValidateGetFrameTimestampsANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLuint64KHR frameId,
- EGLint numTimestamps,
-@@ -214,12 +216,12 @@ bool ValidateGetNativeClientBufferANDROID(const ValidationContext *val,
-
- // EGL_ANDROID_native_fence_sync
- bool ValidateDupNativeFenceFDANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked);
-
- // EGL_ANDROID_presentation_time
- bool ValidatePresentationTimeANDROID(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLnsecsANDROID time);
-
-@@ -232,79 +234,79 @@ bool ValidateReleaseDeviceANGLE(const ValidationContext *val, const Device *devi
-
- // EGL_ANGLE_feature_control
- bool ValidateQueryStringiANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLint name,
- EGLint index);
- bool ValidateQueryDisplayAttribANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLint attribute,
- const EGLAttrib *value);
-
- // EGL_ANGLE_power_preference
- bool ValidateReleaseHighPowerGPUANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const gl::Context *ctxPacked);
- bool ValidateReacquireHighPowerGPUANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const gl::Context *ctxPacked);
--bool ValidateHandleGPUSwitchANGLE(const ValidationContext *val, const Display *dpyPacked);
-+bool ValidateHandleGPUSwitchANGLE(const ValidationContext *val, const egl::Display *dpyPacked);
-
- // EGL_ANGLE_program_cache_control
- bool ValidateProgramCacheGetAttribANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLenum attrib);
- bool ValidateProgramCacheQueryANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLint index,
- const void *key,
- const EGLint *keysize,
- const void *binary,
- const EGLint *binarysize);
- bool ValidateProgramCachePopulateANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const void *key,
- EGLint keysize,
- const void *binary,
- EGLint binarysize);
- bool ValidateProgramCacheResizeANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLint limit,
- EGLint mode);
-
- // EGL_ANGLE_query_surface_pointer
- bool ValidateQuerySurfacePointerANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint attribute,
- void *const *value);
-
- // EGL_ANGLE_stream_producer_d3d_texture
- bool ValidateCreateStreamProducerD3DTextureANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked,
- const AttributeMap &attrib_listPacked);
- bool ValidateStreamPostD3DTextureANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked,
- const void *texture,
- const AttributeMap &attrib_listPacked);
-
- // EGL_ANGLE_swap_with_frame_token
- bool ValidateSwapBuffersWithFrameTokenANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLFrameTokenANGLE frametoken);
-
- // EGL_ANGLE_sync_control_rate
- bool ValidateGetMscRateANGLE(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- const EGLint *numerator,
- const EGLint *denominator);
-
- // EGL_CHROMIUM_sync_control
- bool ValidateGetSyncValuesCHROMIUM(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- const EGLuint64KHR *ust,
- const EGLuint64KHR *msc,
-@@ -319,18 +321,18 @@ bool ValidateQueryDeviceStringEXT(const ValidationContext *val,
- const Device *devicePacked,
- EGLint name);
- bool ValidateQueryDisplayAttribEXT(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLint attribute,
- const EGLAttrib *value);
-
- // EGL_EXT_platform_base
- bool ValidateCreatePlatformPixmapSurfaceEXT(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- const void *native_pixmap,
- const AttributeMap &attrib_listPacked);
- bool ValidateCreatePlatformWindowSurfaceEXT(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Config *configPacked,
- const void *native_window,
- const AttributeMap &attrib_listPacked);
-@@ -344,7 +346,7 @@ bool ValidateDebugMessageControlKHR(const ValidationContext *val,
- EGLDEBUGPROCKHR callback,
- const AttributeMap &attrib_listPacked);
- bool ValidateLabelObjectKHR(const ValidationContext *val,
-- const Display *displayPacked,
-+ const egl::Display *displayPacked,
- ObjectType objectTypePacked,
- EGLObjectKHR object,
- EGLLabelKHR label);
-@@ -352,90 +354,90 @@ bool ValidateQueryDebugKHR(const ValidationContext *val, EGLint attribute, const
-
- // EGL_KHR_fence_sync
- bool ValidateClientWaitSyncKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLint flags,
- EGLTimeKHR timeout);
- bool ValidateCreateSyncKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- EGLenum type,
- const AttributeMap &attrib_listPacked);
- bool ValidateDestroySyncKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked);
- bool ValidateGetSyncAttribKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLint attribute,
- const EGLint *value);
-
- // EGL_KHR_image
- bool ValidateCreateImageKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const gl::Context *ctxPacked,
- EGLenum target,
- EGLClientBuffer buffer,
- const AttributeMap &attrib_listPacked);
- bool ValidateDestroyImageKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Image *imagePacked);
-
- // EGL_KHR_reusable_sync
- bool ValidateSignalSyncKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLenum mode);
-
- // EGL_KHR_stream
- bool ValidateCreateStreamKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const AttributeMap &attrib_listPacked);
- bool ValidateDestroyStreamKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked);
- bool ValidateQueryStreamKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked,
- EGLenum attribute,
- const EGLint *value);
- bool ValidateQueryStreamu64KHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked,
- EGLenum attribute,
- const EGLuint64KHR *value);
- bool ValidateStreamAttribKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked,
- EGLenum attribute,
- EGLint value);
-
- // EGL_KHR_stream_consumer_gltexture
- bool ValidateStreamConsumerAcquireKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked);
- bool ValidateStreamConsumerGLTextureExternalKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked);
- bool ValidateStreamConsumerReleaseKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked);
-
- // EGL_KHR_swap_buffers_with_damage
- bool ValidateSwapBuffersWithDamageKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- const EGLint *rects,
- EGLint n_rects);
-
- // EGL_KHR_wait_sync
- bool ValidateWaitSyncKHR(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Sync *syncPacked,
- EGLint flags);
-
- // EGL_NV_post_sub_buffer
- bool ValidatePostSubBufferNV(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Surface *surfacePacked,
- EGLint x,
- EGLint y,
-@@ -444,7 +446,7 @@ bool ValidatePostSubBufferNV(const ValidationContext *val,
-
- // EGL_NV_stream_consumer_gltexture_yuv
- bool ValidateStreamConsumerGLTextureExternalAttribsNV(const ValidationContext *val,
-- const Display *dpyPacked,
-+ const egl::Display *dpyPacked,
- const Stream *streamPacked,
- const AttributeMap &attrib_listPacked);
- } // namespace egl
-diff --git a/third_party/angle/src/libGLESv2/egl_ext_stubs_autogen.h b/third_party/angle/src/libGLESv2/egl_ext_stubs_autogen.h
-index aecd051d9..404717bde 100644
---- a/third_party/angle/src/libGLESv2/egl_ext_stubs_autogen.h
-+++ b/third_party/angle/src/libGLESv2/egl_ext_stubs_autogen.h
-@@ -33,12 +33,12 @@ class Thread;
- struct Config;
-
- EGLint ClientWaitSyncKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Sync *syncPacked,
- EGLint flags,
- EGLTimeKHR timeout);
- EGLImageKHR CreateImageKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- gl::Context *ctxPacked,
- EGLenum target,
- EGLClientBuffer buffer,
-@@ -46,75 +46,75 @@ EGLImageKHR CreateImageKHR(Thread *thread,
- EGLClientBuffer CreateNativeClientBufferANDROID(Thread *thread,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePlatformPixmapSurfaceEXT(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- void *native_pixmap,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePlatformWindowSurfaceEXT(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- void *native_window,
- const AttributeMap &attrib_listPacked);
- EGLStreamKHR CreateStreamKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- const AttributeMap &attrib_listPacked);
- EGLSyncKHR CreateSyncKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLenum type,
- const AttributeMap &attrib_listPacked);
- EGLint DebugMessageControlKHR(Thread *thread,
- EGLDEBUGPROCKHR callback,
- const AttributeMap &attrib_listPacked);
--EGLBoolean DestroyImageKHR(Thread *thread, Display *dpyPacked, Image *imagePacked);
--EGLBoolean DestroyStreamKHR(Thread *thread, Display *dpyPacked, Stream *streamPacked);
--EGLBoolean DestroySyncKHR(Thread *thread, Display *dpyPacked, Sync *syncPacked);
--EGLint DupNativeFenceFDANDROID(Thread *thread, Display *dpyPacked, Sync *syncPacked);
-+EGLBoolean DestroyImageKHR(Thread *thread, egl::Display *dpyPacked, Image *imagePacked);
-+EGLBoolean DestroyStreamKHR(Thread *thread, egl::Display *dpyPacked, Stream *streamPacked);
-+EGLBoolean DestroySyncKHR(Thread *thread, egl::Display *dpyPacked, Sync *syncPacked);
-+EGLint DupNativeFenceFDANDROID(Thread *thread, egl::Display *dpyPacked, Sync *syncPacked);
- EGLClientBuffer GetNativeClientBufferANDROID(Thread *thread, const struct AHardwareBuffer *buffer);
- EGLDisplay GetPlatformDisplayEXT(Thread *thread,
- EGLenum platform,
- void *native_display,
- const AttributeMap &attrib_listPacked);
- EGLBoolean GetSyncAttribKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Sync *syncPacked,
- EGLint attribute,
- EGLint *value);
- EGLint LabelObjectKHR(Thread *thread,
-- Display *displayPacked,
-+ egl::Display *displayPacked,
- ObjectType objectTypePacked,
- EGLObjectKHR object,
- EGLLabelKHR label);
- EGLBoolean PostSubBufferNV(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint x,
- EGLint y,
- EGLint width,
- EGLint height);
- EGLBoolean PresentationTimeANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLnsecsANDROID time);
- EGLBoolean GetCompositorTimingSupportedANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- CompositorTiming namePacked);
- EGLBoolean GetCompositorTimingANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint numTimestamps,
- const EGLint *names,
- EGLnsecsANDROID *values);
- EGLBoolean GetNextFrameIdANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLuint64KHR *frameId);
- EGLBoolean GetFrameTimestampSupportedANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- Timestamp timestampPacked);
- EGLBoolean GetFrameTimestampsANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLuint64KHR frameId,
- EGLint numTimestamps,
-@@ -127,99 +127,99 @@ EGLBoolean QueryDeviceAttribEXT(Thread *thread,
- EGLAttrib *value);
- const char *QueryDeviceStringEXT(Thread *thread, Device *devicePacked, EGLint name);
- EGLBoolean QueryDisplayAttribEXT(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLint attribute,
- EGLAttrib *value);
- EGLBoolean QueryStreamKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked,
- EGLenum attribute,
- EGLint *value);
- EGLBoolean QueryStreamu64KHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked,
- EGLenum attribute,
- EGLuint64KHR *value);
- EGLBoolean QuerySurfacePointerANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint attribute,
- void **value);
- void SetBlobCacheFuncsANDROID(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLSetBlobFuncANDROID set,
- EGLGetBlobFuncANDROID get);
--EGLBoolean SignalSyncKHR(Thread *thread, Display *dpyPacked, Sync *syncPacked, EGLenum mode);
-+EGLBoolean SignalSyncKHR(Thread *thread, egl::Display *dpyPacked, Sync *syncPacked, EGLenum mode);
- EGLBoolean StreamAttribKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked,
- EGLenum attribute,
- EGLint value);
--EGLBoolean StreamConsumerAcquireKHR(Thread *thread, Display *dpyPacked, Stream *streamPacked);
-+EGLBoolean StreamConsumerAcquireKHR(Thread *thread, egl::Display *dpyPacked, Stream *streamPacked);
- EGLBoolean StreamConsumerGLTextureExternalKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked);
- EGLBoolean StreamConsumerGLTextureExternalAttribsNV(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked,
- const AttributeMap &attrib_listPacked);
--EGLBoolean StreamConsumerReleaseKHR(Thread *thread, Display *dpyPacked, Stream *streamPacked);
-+EGLBoolean StreamConsumerReleaseKHR(Thread *thread, egl::Display *dpyPacked, Stream *streamPacked);
- EGLBoolean SwapBuffersWithDamageKHR(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint *rects,
- EGLint n_rects);
--EGLint WaitSyncKHR(Thread *thread, Display *dpyPacked, Sync *syncPacked, EGLint flags);
-+EGLint WaitSyncKHR(Thread *thread, egl::Display *dpyPacked, Sync *syncPacked, EGLint flags);
- EGLDeviceEXT CreateDeviceANGLE(Thread *thread,
- EGLint device_type,
- void *native_device,
- const EGLAttrib *attrib_list);
- EGLBoolean ReleaseDeviceANGLE(Thread *thread, Device *devicePacked);
- EGLBoolean CreateStreamProducerD3DTextureANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked,
- const AttributeMap &attrib_listPacked);
- EGLBoolean StreamPostD3DTextureANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Stream *streamPacked,
- void *texture,
- const AttributeMap &attrib_listPacked);
- EGLBoolean GetMscRateANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint *numerator,
- EGLint *denominator);
- EGLBoolean GetSyncValuesCHROMIUM(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLuint64KHR *ust,
- EGLuint64KHR *msc,
- EGLuint64KHR *sbc);
--EGLint ProgramCacheGetAttribANGLE(Thread *thread, Display *dpyPacked, EGLenum attrib);
-+EGLint ProgramCacheGetAttribANGLE(Thread *thread, egl::Display *dpyPacked, EGLenum attrib);
- void ProgramCacheQueryANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLint index,
- void *key,
- EGLint *keysize,
- void *binary,
- EGLint *binarysize);
- void ProgramCachePopulateANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- const void *key,
- EGLint keysize,
- const void *binary,
- EGLint binarysize);
--EGLint ProgramCacheResizeANGLE(Thread *thread, Display *dpyPacked, EGLint limit, EGLint mode);
--const char *QueryStringiANGLE(Thread *thread, Display *dpyPacked, EGLint name, EGLint index);
-+EGLint ProgramCacheResizeANGLE(Thread *thread, egl::Display *dpyPacked, EGLint limit, EGLint mode);
-+const char *QueryStringiANGLE(Thread *thread, egl::Display *dpyPacked, EGLint name, EGLint index);
- EGLBoolean SwapBuffersWithFrameTokenANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLFrameTokenANGLE frametoken);
--void ReleaseHighPowerGPUANGLE(Thread *thread, Display *dpyPacked, gl::Context *ctxPacked);
--void ReacquireHighPowerGPUANGLE(Thread *thread, Display *dpyPacked, gl::Context *ctxPacked);
--void HandleGPUSwitchANGLE(Thread *thread, Display *dpyPacked);
-+void ReleaseHighPowerGPUANGLE(Thread *thread, egl::Display *dpyPacked, gl::Context *ctxPacked);
-+void ReacquireHighPowerGPUANGLE(Thread *thread, egl::Display *dpyPacked, gl::Context *ctxPacked);
-+void HandleGPUSwitchANGLE(Thread *thread, egl::Display *dpyPacked);
- EGLBoolean QueryDisplayAttribANGLE(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLint attribute,
- EGLAttrib *value);
- } // namespace egl
-diff --git a/third_party/angle/src/libGLESv2/egl_stubs_autogen.h b/third_party/angle/src/libGLESv2/egl_stubs_autogen.h
-index 9118495ed..6d7d210d9 100644
---- a/third_party/angle/src/libGLESv2/egl_stubs_autogen.h
-+++ b/third_party/angle/src/libGLESv2/egl_stubs_autogen.h
-@@ -33,78 +33,81 @@ class Thread;
- struct Config;
-
- EGLBoolean BindAPI(Thread *thread, EGLenum api);
--EGLBoolean BindTexImage(Thread *thread, Display *dpyPacked, Surface *surfacePacked, EGLint buffer);
-+EGLBoolean BindTexImage(Thread *thread,
-+ egl::Display *dpyPacked,
-+ Surface *surfacePacked,
-+ EGLint buffer);
- EGLBoolean ChooseConfig(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- const AttributeMap &attrib_listPacked,
- EGLConfig *configs,
- EGLint config_size,
- EGLint *num_config);
- EGLint ClientWaitSync(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Sync *syncPacked,
- EGLint flags,
- EGLTime timeout);
- EGLBoolean CopyBuffers(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLNativePixmapType target);
- EGLContext CreateContext(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- gl::Context *share_contextPacked,
- const AttributeMap &attrib_listPacked);
- EGLImage CreateImage(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- gl::Context *ctxPacked,
- EGLenum target,
- EGLClientBuffer buffer,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePbufferFromClientBuffer(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLenum buftype,
- EGLClientBuffer buffer,
- Config *configPacked,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePbufferSurface(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePixmapSurface(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- EGLNativePixmapType pixmap,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePlatformPixmapSurface(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- void *native_pixmap,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreatePlatformWindowSurface(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- void *native_window,
- const AttributeMap &attrib_listPacked);
- EGLSync CreateSync(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLenum type,
- const AttributeMap &attrib_listPacked);
- EGLSurface CreateWindowSurface(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- EGLNativeWindowType win,
- const AttributeMap &attrib_listPacked);
--EGLBoolean DestroyContext(Thread *thread, Display *dpyPacked, gl::Context *ctxPacked);
--EGLBoolean DestroyImage(Thread *thread, Display *dpyPacked, Image *imagePacked);
--EGLBoolean DestroySurface(Thread *thread, Display *dpyPacked, Surface *surfacePacked);
--EGLBoolean DestroySync(Thread *thread, Display *dpyPacked, Sync *syncPacked);
-+EGLBoolean DestroyContext(Thread *thread, egl::Display *dpyPacked, gl::Context *ctxPacked);
-+EGLBoolean DestroyImage(Thread *thread, egl::Display *dpyPacked, Image *imagePacked);
-+EGLBoolean DestroySurface(Thread *thread, egl::Display *dpyPacked, Surface *surfacePacked);
-+EGLBoolean DestroySync(Thread *thread, egl::Display *dpyPacked, Sync *syncPacked);
- EGLBoolean GetConfigAttrib(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Config *configPacked,
- EGLint attribute,
- EGLint *value);
- EGLBoolean GetConfigs(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- EGLConfig *configs,
- EGLint config_size,
- EGLint *num_config);
-@@ -119,44 +122,44 @@ EGLDisplay GetPlatformDisplay(Thread *thread,
- const AttributeMap &attrib_listPacked);
- __eglMustCastToProperFunctionPointerType GetProcAddress(Thread *thread, const char *procname);
- EGLBoolean GetSyncAttrib(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Sync *syncPacked,
- EGLint attribute,
- EGLAttrib *value);
--EGLBoolean Initialize(Thread *thread, Display *dpyPacked, EGLint *major, EGLint *minor);
-+EGLBoolean Initialize(Thread *thread, egl::Display *dpyPacked, EGLint *major, EGLint *minor);
- EGLBoolean MakeCurrent(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *drawPacked,
- Surface *readPacked,
- gl::Context *ctxPacked);
- EGLenum QueryAPI(Thread *thread);
- EGLBoolean QueryContext(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- gl::Context *ctxPacked,
- EGLint attribute,
- EGLint *value);
--const char *QueryString(Thread *thread, Display *dpyPacked, EGLint name);
-+const char *QueryString(Thread *thread, egl::Display *dpyPacked, EGLint name);
- EGLBoolean QuerySurface(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint attribute,
- EGLint *value);
- EGLBoolean ReleaseTexImage(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint buffer);
- EGLBoolean ReleaseThread(Thread *thread);
- EGLBoolean SurfaceAttrib(Thread *thread,
-- Display *dpyPacked,
-+ egl::Display *dpyPacked,
- Surface *surfacePacked,
- EGLint attribute,
- EGLint value);
--EGLBoolean SwapBuffers(Thread *thread, Display *dpyPacked, Surface *surfacePacked);
--EGLBoolean SwapInterval(Thread *thread, Display *dpyPacked, EGLint interval);
--EGLBoolean Terminate(Thread *thread, Display *dpyPacked);
-+EGLBoolean SwapBuffers(Thread *thread, egl::Display *dpyPacked, Surface *surfacePacked);
-+EGLBoolean SwapInterval(Thread *thread, egl::Display *dpyPacked, EGLint interval);
-+EGLBoolean Terminate(Thread *thread, egl::Display *dpyPacked);
- EGLBoolean WaitClient(Thread *thread);
- EGLBoolean WaitGL(Thread *thread);
- EGLBoolean WaitNative(Thread *thread, EGLint engine);
--EGLBoolean WaitSync(Thread *thread, Display *dpyPacked, Sync *syncPacked, EGLint flags);
-+EGLBoolean WaitSync(Thread *thread, egl::Display *dpyPacked, Sync *syncPacked, EGLint flags);
- } // namespace egl
- #endif // LIBGLESV2_EGL_STUBS_AUTOGEN_H_
-diff --git a/third_party/angle/src/libGLESv2/entry_points_egl_autogen.cpp b/third_party/angle/src/libGLESv2/entry_points_egl_autogen.cpp
-index 3e127ee9d..7671cc7ab 100644
---- a/third_party/angle/src/libGLESv2/entry_points_egl_autogen.cpp
-+++ b/third_party/angle/src/libGLESv2/entry_points_egl_autogen.cpp
-@@ -35,7 +35,7 @@ EGLBoolean EGLAPIENTRY EGL_ChooseConfig(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
- ANGLE_EGL_VALIDATE(thread, ChooseConfig, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
-@@ -55,8 +55,8 @@ EGLBoolean EGLAPIENTRY EGL_CopyBuffers(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, CopyBuffers, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, target);
-@@ -77,7 +77,7 @@ EGLContext EGLAPIENTRY EGL_CreateContext(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- gl::Context *share_contextPacked = PackParam<gl::Context *>(share_context);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-@@ -100,7 +100,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePbufferSurface(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -123,7 +123,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePixmapSurface(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -146,7 +146,7 @@ EGLSurface EGLAPIENTRY EGL_CreateWindowSurface(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -164,8 +164,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroyContext(EGLDisplay dpy, EGLContext ctx)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-
- ANGLE_EGL_VALIDATE(thread, DestroyContext, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- ctxPacked);
-@@ -181,8 +181,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroySurface(EGLDisplay dpy, EGLSurface surface)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, DestroySurface, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked);
-@@ -203,8 +203,8 @@ EGLBoolean EGLAPIENTRY EGL_GetConfigAttrib(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Config *configPacked = PackParam<Config *>(config);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Config *configPacked = PackParam<Config *>(config);
-
- ANGLE_EGL_VALIDATE(thread, GetConfigAttrib, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- configPacked, attribute, value);
-@@ -225,7 +225,7 @@ EGLBoolean EGLAPIENTRY EGL_GetConfigs(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, GetConfigs, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- configs, config_size, num_config);
-@@ -303,7 +303,7 @@ EGLBoolean EGLAPIENTRY EGL_Initialize(EGLDisplay dpy, EGLint *major, EGLint *min
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, Initialize, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- major, minor);
-@@ -324,10 +324,10 @@ EGLBoolean EGLAPIENTRY EGL_MakeCurrent(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *drawPacked = PackParam<Surface *>(draw);
-- Surface *readPacked = PackParam<Surface *>(read);
-- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *drawPacked = PackParam<Surface *>(draw);
-+ Surface *readPacked = PackParam<Surface *>(read);
-+ gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-
- ANGLE_EGL_VALIDATE(thread, MakeCurrent, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- drawPacked, readPacked, ctxPacked);
-@@ -348,8 +348,8 @@ EGLBoolean EGLAPIENTRY EGL_QueryContext(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-
- ANGLE_EGL_VALIDATE(thread, QueryContext, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- ctxPacked, attribute, value);
-@@ -364,7 +364,7 @@ const char *EGLAPIENTRY EGL_QueryString(EGLDisplay dpy, EGLint name)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, QueryString, GetDisplayIfValid(dpyPacked), const char *, dpyPacked,
- name);
-@@ -385,8 +385,8 @@ EGLBoolean EGLAPIENTRY EGL_QuerySurface(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, QuerySurface, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, attribute, value);
-@@ -402,8 +402,8 @@ EGLBoolean EGLAPIENTRY EGL_SwapBuffers(EGLDisplay dpy, EGLSurface surface)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, SwapBuffers, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked);
-@@ -418,7 +418,7 @@ EGLBoolean EGLAPIENTRY EGL_Terminate(EGLDisplay dpy)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, Terminate, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked);
-
-@@ -458,8 +458,8 @@ EGLBoolean EGLAPIENTRY EGL_BindTexImage(EGLDisplay dpy, EGLSurface surface, EGLi
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, BindTexImage, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, buffer);
-@@ -475,8 +475,8 @@ EGLBoolean EGLAPIENTRY EGL_ReleaseTexImage(EGLDisplay dpy, EGLSurface surface, E
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, ReleaseTexImage, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, buffer);
-@@ -496,8 +496,8 @@ EGLBoolean EGLAPIENTRY EGL_SurfaceAttrib(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, SurfaceAttrib, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, attribute, value);
-@@ -512,7 +512,7 @@ EGLBoolean EGLAPIENTRY EGL_SwapInterval(EGLDisplay dpy, EGLint interval)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, SwapInterval, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- interval);
-@@ -548,7 +548,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePbufferFromClientBuffer(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -618,8 +618,8 @@ EGLint EGLAPIENTRY EGL_ClientWaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, ClientWaitSync, GetDisplayIfValid(dpyPacked), EGLint, dpyPacked,
- syncPacked, flags, timeout);
-@@ -641,7 +641,7 @@ EGLImage EGLAPIENTRY EGL_CreateImage(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -664,7 +664,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurface(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -688,7 +688,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurface(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -707,7 +707,7 @@ EGLSync EGLAPIENTRY EGL_CreateSync(EGLDisplay dpy, EGLenum type, const EGLAttrib
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
- ANGLE_EGL_VALIDATE(thread, CreateSync, GetDisplayIfValid(dpyPacked), EGLSync, dpyPacked, type,
-@@ -724,8 +724,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroyImage(EGLDisplay dpy, EGLImage image)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Image *imagePacked = PackParam<Image *>(image);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Image *imagePacked = PackParam<Image *>(image);
-
- ANGLE_EGL_VALIDATE(thread, DestroyImage, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- imagePacked);
-@@ -741,8 +741,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroySync(EGLDisplay dpy, EGLSync sync)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, DestroySync, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- syncPacked);
-@@ -783,8 +783,8 @@ EGLBoolean EGLAPIENTRY EGL_GetSyncAttrib(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, GetSyncAttrib, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- syncPacked, attribute, value);
-@@ -800,8 +800,8 @@ EGLBoolean EGLAPIENTRY EGL_WaitSync(EGLDisplay dpy, EGLSync sync, EGLint flags)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, WaitSync, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- syncPacked, flags);
-diff --git a/third_party/angle/src/libGLESv2/entry_points_egl_ext_autogen.cpp b/third_party/angle/src/libGLESv2/entry_points_egl_ext_autogen.cpp
-index d9f4b76ea..76fcf8c17 100644
---- a/third_party/angle/src/libGLESv2/entry_points_egl_ext_autogen.cpp
-+++ b/third_party/angle/src/libGLESv2/entry_points_egl_ext_autogen.cpp
-@@ -31,7 +31,7 @@ void EGLAPIENTRY EGL_SetBlobCacheFuncsANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE_VOID(thread, SetBlobCacheFuncsANDROID, GetDisplayIfValid(dpyPacked),
- dpyPacked, set, get);
-@@ -68,7 +68,7 @@ EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingSupportedANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Surface *surfacePacked = PackParam<Surface *>(surface);
- CompositorTiming namePacked = PackParam<CompositorTiming>(name);
-
-@@ -93,8 +93,8 @@ EGLBoolean EGLAPIENTRY EGL_GetCompositorTimingANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, GetCompositorTimingANDROID, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, numTimestamps, names, values);
-@@ -114,8 +114,8 @@ EGLBoolean EGLAPIENTRY EGL_GetNextFrameIdANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, GetNextFrameIdANDROID, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, frameId);
-@@ -134,7 +134,7 @@ EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampSupportedANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Surface *surfacePacked = PackParam<Surface *>(surface);
- Timestamp timestampPacked = PackParam<Timestamp>(timestamp);
-
-@@ -161,8 +161,8 @@ EGLBoolean EGLAPIENTRY EGL_GetFrameTimestampsANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, GetFrameTimestampsANDROID, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, frameId, numTimestamps, timestamps, values);
-@@ -193,8 +193,8 @@ EGLint EGLAPIENTRY EGL_DupNativeFenceFDANDROID(EGLDisplay dpy, EGLSyncKHR sync)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, DupNativeFenceFDANDROID, GetDisplayIfValid(dpyPacked), EGLint,
- dpyPacked, syncPacked);
-@@ -214,8 +214,8 @@ EGLBoolean EGLAPIENTRY EGL_PresentationTimeANDROID(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, PresentationTimeANDROID, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, time);
-@@ -265,7 +265,7 @@ const char *EGLAPIENTRY EGL_QueryStringiANGLE(EGLDisplay dpy, EGLint name, EGLin
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, QueryStringiANGLE, GetDisplayIfValid(dpyPacked), const char *,
- dpyPacked, name, index);
-@@ -284,7 +284,7 @@ EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, QueryDisplayAttribANGLE, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, attribute, value);
-@@ -301,8 +301,8 @@ void EGLAPIENTRY EGL_ReleaseHighPowerGPUANGLE(EGLDisplay dpy, EGLContext ctx)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-
- ANGLE_EGL_VALIDATE_VOID(thread, ReleaseHighPowerGPUANGLE, GetDisplayIfValid(dpyPacked),
- dpyPacked, ctxPacked);
-@@ -318,8 +318,8 @@ void EGLAPIENTRY EGL_ReacquireHighPowerGPUANGLE(EGLDisplay dpy, EGLContext ctx)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
-
- ANGLE_EGL_VALIDATE_VOID(thread, ReacquireHighPowerGPUANGLE, GetDisplayIfValid(dpyPacked),
- dpyPacked, ctxPacked);
-@@ -334,7 +334,7 @@ void EGLAPIENTRY EGL_HandleGPUSwitchANGLE(EGLDisplay dpy)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE_VOID(thread, HandleGPUSwitchANGLE, GetDisplayIfValid(dpyPacked), dpyPacked);
-
-@@ -350,7 +350,7 @@ EGLint EGLAPIENTRY EGL_ProgramCacheGetAttribANGLE(EGLDisplay dpy, EGLenum attrib
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, ProgramCacheGetAttribANGLE, GetDisplayIfValid(dpyPacked), EGLint,
- dpyPacked, attrib);
-@@ -375,7 +375,7 @@ void EGLAPIENTRY EGL_ProgramCacheQueryANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE_VOID(thread, ProgramCacheQueryANGLE, GetDisplayIfValid(dpyPacked), dpyPacked,
- index, key, keysize, binary, binarysize);
-@@ -397,7 +397,7 @@ void EGLAPIENTRY EGL_ProgramCachePopulateANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE_VOID(thread, ProgramCachePopulateANGLE, GetDisplayIfValid(dpyPacked),
- dpyPacked, key, keysize, binary, binarysize);
-@@ -413,7 +413,7 @@ EGLint EGLAPIENTRY EGL_ProgramCacheResizeANGLE(EGLDisplay dpy, EGLint limit, EGL
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, ProgramCacheResizeANGLE, GetDisplayIfValid(dpyPacked), EGLint,
- dpyPacked, limit, mode);
-@@ -435,8 +435,8 @@ EGLBoolean EGLAPIENTRY EGL_QuerySurfacePointerANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, QuerySurfacePointerANGLE, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, attribute, value);
-@@ -457,7 +457,7 @@ EGLBoolean EGLAPIENTRY EGL_CreateStreamProducerD3DTextureANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Stream *streamPacked = PackParam<Stream *>(stream);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -480,7 +480,7 @@ EGLBoolean EGLAPIENTRY EGL_StreamPostD3DTextureANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Stream *streamPacked = PackParam<Stream *>(stream);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -502,8 +502,8 @@ EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithFrameTokenANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, SwapBuffersWithFrameTokenANGLE, GetDisplayIfValid(dpyPacked),
- EGLBoolean, dpyPacked, surfacePacked, frametoken);
-@@ -525,8 +525,8 @@ EGLBoolean EGLAPIENTRY EGL_GetMscRateANGLE(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, GetMscRateANGLE, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, numerator, denominator);
-@@ -549,8 +549,8 @@ EGLBoolean EGLAPIENTRY EGL_GetSyncValuesCHROMIUM(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, GetSyncValuesCHROMIUM, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, ust, msc, sbc);
-@@ -602,7 +602,7 @@ EGLBoolean EGLAPIENTRY EGL_QueryDisplayAttribEXT(EGLDisplay dpy, EGLint attribut
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-
- ANGLE_EGL_VALIDATE(thread, QueryDisplayAttribEXT, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, attribute, value);
-@@ -624,7 +624,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePlatformPixmapSurfaceEXT(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -648,7 +648,7 @@ EGLSurface EGLAPIENTRY EGL_CreatePlatformWindowSurfaceEXT(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Config *configPacked = PackParam<Config *>(config);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -711,7 +711,7 @@ EGLint EGLAPIENTRY EGL_LabelObjectKHR(EGLDisplay display,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *displayPacked = PackParam<Display *>(display);
-+ egl::Display *displayPacked = PackParam<egl::Display *>(display);
- ObjectType objectTypePacked = PackParam<ObjectType>(objectType);
-
- ANGLE_EGL_VALIDATE(thread, LabelObjectKHR, GetDisplayIfValid(displayPacked), EGLint,
-@@ -746,8 +746,8 @@ EGLint EGLAPIENTRY EGL_ClientWaitSyncKHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, ClientWaitSyncKHR, GetDisplayIfValid(dpyPacked), EGLint, dpyPacked,
- syncPacked, flags, timeout);
-@@ -764,7 +764,7 @@ EGLSyncKHR EGLAPIENTRY EGL_CreateSyncKHR(EGLDisplay dpy, EGLenum type, const EGL
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
- ANGLE_EGL_VALIDATE(thread, CreateSyncKHR, GetDisplayIfValid(dpyPacked), EGLSyncKHR, dpyPacked,
-@@ -781,8 +781,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroySyncKHR(EGLDisplay dpy, EGLSyncKHR sync)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, DestroySyncKHR, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- syncPacked);
-@@ -803,8 +803,8 @@ EGLBoolean EGLAPIENTRY EGL_GetSyncAttribKHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, GetSyncAttribKHR, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, syncPacked, attribute, value);
-@@ -827,7 +827,7 @@ EGLImageKHR EGLAPIENTRY EGL_CreateImageKHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- gl::Context *ctxPacked = PackParam<gl::Context *>(ctx);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
-@@ -845,8 +845,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroyImageKHR(EGLDisplay dpy, EGLImageKHR image)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Image *imagePacked = PackParam<Image *>(image);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Image *imagePacked = PackParam<Image *>(image);
-
- ANGLE_EGL_VALIDATE(thread, DestroyImageKHR, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- imagePacked);
-@@ -863,8 +863,8 @@ EGLBoolean EGLAPIENTRY EGL_SignalSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLenu
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, SignalSyncKHR, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- syncPacked, mode);
-@@ -889,7 +889,7 @@ EGLStreamKHR EGLAPIENTRY EGL_CreateStreamKHR(EGLDisplay dpy, const EGLint *attri
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
- ANGLE_EGL_VALIDATE(thread, CreateStreamKHR, GetDisplayIfValid(dpyPacked), EGLStreamKHR,
-@@ -906,8 +906,8 @@ EGLBoolean EGLAPIENTRY EGL_DestroyStreamKHR(EGLDisplay dpy, EGLStreamKHR stream)
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, DestroyStreamKHR, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, streamPacked);
-@@ -928,8 +928,8 @@ EGLBoolean EGLAPIENTRY EGL_QueryStreamKHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, QueryStreamKHR, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- streamPacked, attribute, value);
-@@ -950,8 +950,8 @@ EGLBoolean EGLAPIENTRY EGL_QueryStreamu64KHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, QueryStreamu64KHR, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, streamPacked, attribute, value);
-@@ -971,8 +971,8 @@ EGLBoolean EGLAPIENTRY EGL_StreamAttribKHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, StreamAttribKHR, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- streamPacked, attribute, value);
-@@ -989,8 +989,8 @@ EGLBoolean EGLAPIENTRY EGL_StreamConsumerAcquireKHR(EGLDisplay dpy, EGLStreamKHR
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, StreamConsumerAcquireKHR, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, streamPacked);
-@@ -1007,8 +1007,8 @@ EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalKHR(EGLDisplay dpy, EG
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, StreamConsumerGLTextureExternalKHR, GetDisplayIfValid(dpyPacked),
- EGLBoolean, dpyPacked, streamPacked);
-@@ -1024,8 +1024,8 @@ EGLBoolean EGLAPIENTRY EGL_StreamConsumerReleaseKHR(EGLDisplay dpy, EGLStreamKHR
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Stream *streamPacked = PackParam<Stream *>(stream);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Stream *streamPacked = PackParam<Stream *>(stream);
-
- ANGLE_EGL_VALIDATE(thread, StreamConsumerReleaseKHR, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, streamPacked);
-@@ -1047,8 +1047,8 @@ EGLBoolean EGLAPIENTRY EGL_SwapBuffersWithDamageKHR(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, SwapBuffersWithDamageKHR, GetDisplayIfValid(dpyPacked), EGLBoolean,
- dpyPacked, surfacePacked, rects, n_rects);
-@@ -1065,8 +1065,8 @@ EGLint EGLAPIENTRY EGL_WaitSyncKHR(EGLDisplay dpy, EGLSyncKHR sync, EGLint flags
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Sync *syncPacked = PackParam<Sync *>(sync);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Sync *syncPacked = PackParam<Sync *>(sync);
-
- ANGLE_EGL_VALIDATE(thread, WaitSyncKHR, GetDisplayIfValid(dpyPacked), EGLint, dpyPacked,
- syncPacked, flags);
-@@ -1090,8 +1090,8 @@ EGLBoolean EGLAPIENTRY EGL_PostSubBufferNV(EGLDisplay dpy,
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-- Surface *surfacePacked = PackParam<Surface *>(surface);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
-+ Surface *surfacePacked = PackParam<Surface *>(surface);
-
- ANGLE_EGL_VALIDATE(thread, PostSubBufferNV, GetDisplayIfValid(dpyPacked), EGLBoolean, dpyPacked,
- surfacePacked, x, y, width, height);
-@@ -1112,7 +1112,7 @@ EGLBoolean EGLAPIENTRY EGL_StreamConsumerGLTextureExternalAttribsNV(EGLDisplay d
-
- Thread *thread = egl::GetCurrentThread();
-
-- Display *dpyPacked = PackParam<Display *>(dpy);
-+ egl::Display *dpyPacked = PackParam<egl::Display *>(dpy);
- Stream *streamPacked = PackParam<Stream *>(stream);
- const AttributeMap &attrib_listPacked = PackParam<const AttributeMap &>(attrib_list);
-
diff --git a/www-client/chromium/files/chromium-89-compositor-dcheck.patch b/www-client/chromium/files/chromium-89-compositor-dcheck.patch
deleted file mode 100644
index 2a12ca9..0000000
--- a/www-client/chromium/files/chromium-89-compositor-dcheck.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/cc/metrics/compositor_frame_reporter.cc b/cc/metrics/compositor_frame_reporter.cc
-index bab060123..f3ee60127 100644
---- a/cc/metrics/compositor_frame_reporter.cc
-+++ b/cc/metrics/compositor_frame_reporter.cc
-@@ -767,7 +767,7 @@ void CompositorFrameReporter::ReportCompositorLatencyHistogram(
-
- void CompositorFrameReporter::ReportEventLatencyHistograms() const {
- for (const auto& event_metrics : events_metrics_) {
-- DCHECK(event_metrics);
-+ DCHECK(event_metrics.get());
- const std::string histogram_base_name =
- GetEventLatencyHistogramBaseName(*event_metrics);
- const int event_type_index = static_cast<int>(event_metrics->type());
diff --git a/www-client/chromium/files/chromium-89-content-dcheck-uniqueptr.patch b/www-client/chromium/files/chromium-89-content-dcheck-uniqueptr.patch
deleted file mode 100644
index 2297062..0000000
--- a/www-client/chromium/files/chromium-89-content-dcheck-uniqueptr.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/content/browser/renderer_host/render_frame_host_manager.cc b/content/browser/renderer_host/render_frame_host_manager.cc
-index f020be446..d7cb4656e 100644
---- a/content/browser/renderer_host/render_frame_host_manager.cc
-+++ b/content/browser/renderer_host/render_frame_host_manager.cc
-@@ -738,7 +738,7 @@ void RenderFrameHostManager::ValidateSpeculativeRenderFrameHostForBug1146573() {
- // This should never be true.
- SCOPED_CRASH_KEY_BOOL(ValidateSpeculative, HostsEqual,
- speculative_render_frame_host_ == render_frame_host_);
-- DCHECK_NE(speculative_render_frame_host_, render_frame_host_);
-+ DCHECK_NE(speculative_render_frame_host_.get(), render_frame_host_.get());
- SCOPED_CRASH_KEY_BOOL(ValidateSpeculative, Live,
- render_frame_host_->IsRenderFrameLive());
- SCOPED_CRASH_KEY_STRING256(
diff --git a/www-client/chromium/files/chromium-89-dawn-string-include.patch b/www-client/chromium/files/chromium-89-dawn-string-include.patch
deleted file mode 100644
index ae0bcc8..0000000
--- a/www-client/chromium/files/chromium-89-dawn-string-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/dawn/src/dawn_wire/ChunkedCommandHandler.cpp b/third_party/dawn/src/dawn_wire/ChunkedCommandHandler.cpp
-index e91e540fa..502a470e6 100644
---- a/third_party/dawn/src/dawn_wire/ChunkedCommandHandler.cpp
-+++ b/third_party/dawn/src/dawn_wire/ChunkedCommandHandler.cpp
-@@ -14,6 +14,8 @@
-
- #include "dawn_wire/ChunkedCommandHandler.h"
-
-+#include <string.h>
-+
- #include <algorithm>
-
- namespace dawn_wire {
diff --git a/www-client/chromium/files/chromium-89-pcscan-include.patch b/www-client/chromium/files/chromium-89-pcscan-include.patch
deleted file mode 100644
index 96fcfb6..0000000
--- a/www-client/chromium/files/chromium-89-pcscan-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/base/allocator/partition_allocator/pcscan.cc b/base/allocator/partition_allocator/pcscan.cc
-index b8d96e32d..a802a1fae 100644
---- a/base/allocator/partition_allocator/pcscan.cc
-+++ b/base/allocator/partition_allocator/pcscan.cc
-@@ -7,6 +7,7 @@
- #include <algorithm>
- #include <map>
- #include <mutex>
-+#include <condition_variable>
- #include <numeric>
- #include <set>
- #include <thread>
diff --git a/www-client/chromium/files/chromium-89-quiche-uniqueptr.patch b/www-client/chromium/files/chromium-89-quiche-uniqueptr.patch
deleted file mode 100644
index a093522..0000000
--- a/www-client/chromium/files/chromium-89-quiche-uniqueptr.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/net/third_party/quiche/src/quic/core/quic_path_validator.cc b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-index 5d5e7206d..8145252aa 100644
---- a/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-+++ b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-@@ -66,7 +66,7 @@ void QuicPathValidator::StartValidingPath(
- std::unique_ptr<QuicPathValidationContext> context,
- std::unique_ptr<ResultDelegate> result_delegate) {
- CancelPathValidation();
-- DCHECK_NE(nullptr, context);
-+ DCHECK_NE(nullptr, context.get());
- QUIC_DLOG(INFO) << "Start validating path " << *context
- << " via writer: " << context->WriterToUse();
-
diff --git a/www-client/chromium/files/chromium-89-quiche-uniqueptr_r1.patch b/www-client/chromium/files/chromium-89-quiche-uniqueptr_r1.patch
deleted file mode 100644
index 6872128..0000000
--- a/www-client/chromium/files/chromium-89-quiche-uniqueptr_r1.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/net/third_party/quiche/src/quic/core/quic_path_validator.cc b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-index 0722216a8..834a491e0 100644
---- a/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-+++ b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-@@ -68,7 +68,7 @@ void QuicPathValidator::OnPathResponse(const QuicPathFrameBuffer& probing_data,
- void QuicPathValidator::StartPathValidation(
- std::unique_ptr<QuicPathValidationContext> context,
- std::unique_ptr<ResultDelegate> result_delegate) {
-- DCHECK_NE(nullptr, context);
-+ DCHECK_NE(nullptr, context.get());
- QUIC_DLOG(INFO) << "Start validating path " << *context
- << " via writer: " << context->WriterToUse();
- if (path_context_ != nullptr) {
diff --git a/www-client/chromium/files/chromium-89-sstream.patch b/www-client/chromium/files/chromium-89-sstream.patch
deleted file mode 100644
index 8204fe2..0000000
--- a/www-client/chromium/files/chromium-89-sstream.patch
+++ /dev/null
@@ -1,344 +0,0 @@
-diff --git a/chrome/browser/ui/webui/internals/web_app/web_app_internals_page_handler_impl.cc b/chrome/browser/ui/webui/internals/web_app/web_app_internals_page_handler_impl.cc
-index 339fc5a6c..5e23be6fb 100644
---- a/chrome/browser/ui/webui/internals/web_app/web_app_internals_page_handler_impl.cc
-+++ b/chrome/browser/ui/webui/internals/web_app/web_app_internals_page_handler_impl.cc
-@@ -23,7 +23,7 @@ namespace {
-
- template <typename T>
- std::string ConvertToString(const T& value) {
-- return (std::stringstream() << value).str();
-+ return static_cast<const std::stringstream &>(std::stringstream() << value).str();
- }
-
- } // namespace
-diff --git a/chrome/browser/web_applications/external_web_app_manager.cc b/chrome/browser/web_applications/external_web_app_manager.cc
-index 3da14c154..64c2e80a9 100644
---- a/chrome/browser/web_applications/external_web_app_manager.cc
-+++ b/chrome/browser/web_applications/external_web_app_manager.cc
-@@ -100,7 +100,7 @@ LoadedConfigs LoadConfigsBlocking(const base::FilePath& config_dir) {
- deserializer.Deserialize(nullptr, &error_msg);
- if (!app_config) {
- result.errors.push_back(
-- (std::stringstream() << file << " was not valid JSON: " << error_msg)
-+ static_cast<const std::stringstream &>(std::stringstream() << file << " was not valid JSON: " << error_msg)
- .str());
- VLOG(1) << result.errors.back();
- continue;
-diff --git a/chrome/browser/web_applications/external_web_app_utils.cc b/chrome/browser/web_applications/external_web_app_utils.cc
-index 8b3414d06..6d0718198 100644
---- a/chrome/browser/web_applications/external_web_app_utils.cc
-+++ b/chrome/browser/web_applications/external_web_app_utils.cc
-@@ -158,7 +158,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- options.require_manifest = true;
-
- if (app_config.type() != base::Value::Type::DICTIONARY) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " was not a dictionary as the top level")
- .str();
- }
-@@ -166,18 +166,18 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- // user_type
- const base::Value* value = app_config.FindListKey(kUserType);
- if (!value) {
-- return (std::stringstream() << file << " missing " << kUserType).str();
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " missing " << kUserType).str();
- }
- for (const auto& item : value->GetList()) {
- if (!item.is_string()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " has invalid " << kUserType << item)
- .str();
- }
- options.user_type_allowlist.push_back(item.GetString());
- }
- if (options.user_type_allowlist.empty()) {
-- return (std::stringstream() << file << " has empty " << kUserType).str();
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " has empty " << kUserType).str();
- }
-
- // feature_name
-@@ -188,18 +188,18 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- // app_url
- value = app_config.FindKeyOfType(kAppUrl, base::Value::Type::STRING);
- if (!value) {
-- return (std::stringstream() << file << " had a missing " << kAppUrl).str();
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " had a missing " << kAppUrl).str();
- }
- options.install_url = GURL(value->GetString());
- if (!options.install_url.is_valid()) {
-- return (std::stringstream() << file << " had an invalid " << kAppUrl).str();
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " had an invalid " << kAppUrl).str();
- }
-
- // only_for_new_users
- value = app_config.FindKey(kOnlyForNewUsers);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kOnlyForNewUsers)
- .str();
- }
-@@ -211,7 +211,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kHideFromUser);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kHideFromUser)
- .str();
- }
-@@ -226,7 +226,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kCreateShortcuts);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kCreateShortcuts)
- .str();
- }
-@@ -242,7 +242,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kDisableIfArcSupported);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kDisableIfArcSupported)
- .str();
- }
-@@ -253,7 +253,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kDisableIfTabletFormFactor);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kDisableIfTabletFormFactor)
- .str();
- }
-@@ -263,7 +263,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- // launch_container
- value = app_config.FindKeyOfType(kLaunchContainer, base::Value::Type::STRING);
- if (!value) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kLaunchContainer)
- .str();
- }
-@@ -273,7 +273,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- } else if (launch_container_str == kLaunchContainerWindow) {
- options.user_display_mode = DisplayMode::kStandalone;
- } else {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kLaunchContainer << ": "
- << launch_container_str)
- .str();
-@@ -283,7 +283,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kLaunchQueryParams);
- if (value) {
- if (!value->is_string()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kLaunchQueryParams)
- .str();
- }
-@@ -294,7 +294,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kLoadAndAwaitServiceWorkerRegistration);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream() << file << " had an invalid "
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " had an invalid "
- << kLoadAndAwaitServiceWorkerRegistration)
- .str();
- }
-@@ -305,20 +305,20 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kServiceWorkerRegistrationUrl);
- if (value) {
- if (!options.load_and_await_service_worker_registration) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " should not specify a "
- << kServiceWorkerRegistrationUrl << " while "
- << kLoadAndAwaitServiceWorkerRegistration << " is disabled")
- .str();
- }
- if (!value->is_string()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kServiceWorkerRegistrationUrl)
- .str();
- }
- options.service_worker_registration_url.emplace(value->GetString());
- if (!options.service_worker_registration_url->is_valid()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kServiceWorkerRegistrationUrl)
- .str();
- }
-@@ -328,7 +328,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kUninstallAndReplace);
- if (value) {
- if (!value->is_list()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kUninstallAndReplace)
- .str();
- }
-@@ -336,7 +336,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
-
- for (const auto& app_id_value : uninstall_and_replace_values) {
- if (!app_id_value.is_string()) {
-- return (std::stringstream() << file << " had an invalid "
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " had an invalid "
- << kUninstallAndReplace << " entry")
- .str();
- }
-@@ -348,7 +348,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- value = app_config.FindKey(kOnlyUseOfflineManifest);
- if (value) {
- if (!value->is_bool()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " had an invalid " << kOnlyUseOfflineManifest)
- .str();
- }
-@@ -369,7 +369,7 @@ OptionsOrError ParseConfig(FileUtilsWrapper& file_utils,
- }
-
- if (options.only_use_app_info_factory && !options.app_info_factory) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << kOnlyUseOfflineManifest << " set with no "
- << kOfflineManifest << " available")
- .str();
-@@ -389,7 +389,7 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- const std::string* name_string =
- offline_manifest.FindStringKey(kOfflineManifestName);
- if (!name_string) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestName
- << " missing or invalid.")
- .str();
-@@ -397,7 +397,7 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- if (!base::UTF8ToUTF16(name_string->data(), name_string->size(),
- &app_info.title) ||
- app_info.title.empty()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestName
- << " invalid: " << *name_string)
- .str();
-@@ -407,14 +407,14 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- const std::string* start_url_string =
- offline_manifest.FindStringKey(kOfflineManifestStartUrl);
- if (!start_url_string) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " "
- << kOfflineManifestStartUrl << " missing or invalid.")
- .str();
- }
- app_info.start_url = GURL(*start_url_string);
- if (!app_info.start_url.is_valid()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " "
- << kOfflineManifestStartUrl << " invalid: " << *start_url_string)
- .str();
-@@ -424,21 +424,21 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- const std::string* scope_string =
- offline_manifest.FindStringKey(kOfflineManifestScope);
- if (!scope_string) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestScope
- << " missing or invalid.")
- .str();
- }
- app_info.scope = GURL(*scope_string);
- if (!app_info.scope.is_valid()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestScope
- << " invalid: " << *scope_string)
- .str();
- }
- if (!base::StartsWith(app_info.start_url.path(), app_info.scope.path(),
- base::CompareCase::SENSITIVE)) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestScope
- << " (" << app_info.start_url << ") not within "
- << kOfflineManifestScope << " (" << app_info.scope << ").")
-@@ -449,14 +449,14 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- const std::string* display_string =
- offline_manifest.FindStringKey(kOfflineManifestDisplay);
- if (!display_string) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestDisplay
- << " missing or invalid.")
- .str();
- }
- DisplayMode display = blink::DisplayModeFromString(*display_string);
- if (display == DisplayMode::kUndefined) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " " << kOfflineManifestDisplay
- << " invalid: " << display_string)
- .str();
-@@ -467,14 +467,14 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- const base::Value* icon_files =
- offline_manifest.FindListKey(kOfflineManifestIconAnyPngs);
- if (!icon_files || icon_files->GetList().empty()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " "
- << kOfflineManifestIconAnyPngs << " missing, empty or invalid.")
- .str();
- }
- for (const base::Value& icon_file : icon_files->GetList()) {
- if (!icon_file.is_string()) {
-- return (std::stringstream()
-+ return static_cast<const std::stringstream &>(std::stringstream()
- << file << " " << kOfflineManifest << " "
- << kOfflineManifestIconAnyPngs << " " << icon_file << " invalid.")
- .str();
-@@ -483,7 +483,7 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- base::FilePath icon_path = dir.AppendASCII(icon_file.GetString());
- std::string icon_data;
- if (!file_utils.ReadFileToString(icon_path, &icon_data)) {
-- return (std::stringstream() << file << " " << kOfflineManifest << " "
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " " << kOfflineManifest << " "
- << kOfflineManifestIconAnyPngs << " "
- << icon_file << " failed to read.")
- .str();
-@@ -493,14 +493,14 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- if (!gfx::PNGCodec::Decode(
- reinterpret_cast<const unsigned char*>(icon_data.c_str()),
- icon_data.size(), &bitmap)) {
-- return (std::stringstream() << file << " " << kOfflineManifest << " "
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " " << kOfflineManifest << " "
- << kOfflineManifestIconAnyPngs << " "
- << icon_file << " failed to decode.")
- .str();
- }
-
- if (bitmap.width() != bitmap.height()) {
-- return (std::stringstream() << file << " " << kOfflineManifest << " "
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " " << kOfflineManifest << " "
- << kOfflineManifestIconAnyPngs << " "
- << icon_file << " must be square: "
- << bitmap.width() << "x" << bitmap.height())
-@@ -521,7 +521,7 @@ WebApplicationInfoFactoryOrError ParseOfflineManifest(
- SkColor theme_color;
- if (!theme_color_argb_hex ||
- !base::HexStringToUInt(*theme_color_argb_hex, &theme_color)) {
-- return (std::stringstream() << file << " " << kOfflineManifest << " "
-+ return static_cast<const std::stringstream &>(std::stringstream() << file << " " << kOfflineManifest << " "
- << kOfflineManifestThemeColorArgbHex
- << " invalid: " << *theme_color_value)
- .str();
diff --git a/www-client/chromium/files/chromium-89-uigfx-image-skia.patch b/www-client/chromium/files/chromium-89-uigfx-image-skia.patch
deleted file mode 100644
index a96dd00..0000000
--- a/www-client/chromium/files/chromium-89-uigfx-image-skia.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/ui/gfx/image/image_skia.cc b/ui/gfx/image/image_skia.cc
-index 6d2748d67..31dfdf5d2 100644
---- a/ui/gfx/image/image_skia.cc
-+++ b/ui/gfx/image/image_skia.cc
-@@ -125,7 +125,7 @@ class ImageSkiaStorage : public base::RefCountedThreadSafe<ImageSkiaStorage> {
- // one and rescale the image.
- // Right now only Windows uses 2 and other platforms use 1 by default.
- // TODO(mukai, oshima): abandon 1 code path and use 2 for every platforms.
-- std::vector<const ImageSkiaRep>::iterator FindRepresentation(
-+ std::vector<ImageSkiaRep>::const_iterator FindRepresentation(
- float scale,
- bool fetch_new_image) const;
-
-@@ -211,7 +211,7 @@ bool ImageSkiaStorage::HasRepresentationAtAllScales() const {
- return source_ && source_->HasRepresentationAtAllScales();
- }
-
--std::vector<const ImageSkiaRep>::iterator ImageSkiaStorage::FindRepresentation(
-+std::vector<ImageSkiaRep>::const_iterator ImageSkiaStorage::FindRepresentation(
- float scale,
- bool fetch_new_image) const {
- auto closest_iter = image_reps_.end();
diff --git a/www-client/chromium/files/chromium-89-webui-config-include.patch b/www-client/chromium/files/chromium-89-webui-config-include.patch
deleted file mode 100644
index 5ed2bd5..0000000
--- a/www-client/chromium/files/chromium-89-webui-config-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/ui/webui/webui_config.h b/ui/webui/webui_config.h
-index 29990bd5a..44918fa34 100644
---- a/ui/webui/webui_config.h
-+++ b/ui/webui/webui_config.h
-@@ -6,6 +6,7 @@
- #define UI_WEBUI_WEBUI_CONFIG_H_
-
- #include <string>
-+#include <memory>
-
- #include "base/strings/string_piece.h"
-
diff --git a/www-client/chromium/files/chromium-90-blink-disable-clang-format.patch b/www-client/chromium/files/chromium-90-blink-disable-clang-format.patch
deleted file mode 100644
index 2d8ea05..0000000
--- a/www-client/chromium/files/chromium-90-blink-disable-clang-format.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py b/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py
-index e24764c13..7c5add8f4 100644
---- a/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py
-+++ b/third_party/blink/renderer/bindings/scripts/bind_gen/codegen_utils.py
-@@ -171,13 +171,5 @@ def write_code_node_to_file(code_node, filepath):
-
- rendered_text = render_code_node(code_node)
-
-- format_result = style_format.auto_format(rendered_text, filename=filepath)
-- if not format_result.did_succeed:
-- raise RuntimeError("Style-formatting failed: filename = {filename}\n"
-- "---- stderr ----\n"
-- "{stderr}:".format(
-- filename=format_result.filename,
-- stderr=format_result.error_message))
--
- web_idl.file_io.write_to_file_if_changed(
-- filepath, format_result.contents.encode('utf-8'))
-+ filepath, rendered_text.encode('utf-8'))
diff --git a/www-client/chromium/files/chromium-90-compositor-dcheck.patch b/www-client/chromium/files/chromium-90-compositor-dcheck.patch
deleted file mode 100644
index d718a68..0000000
--- a/www-client/chromium/files/chromium-90-compositor-dcheck.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/cc/metrics/compositor_frame_reporter.cc b/cc/metrics/compositor_frame_reporter.cc
-index fcad7a8cd..152b724c8 100644
---- a/cc/metrics/compositor_frame_reporter.cc
-+++ b/cc/metrics/compositor_frame_reporter.cc
-@@ -960,7 +960,7 @@ void CompositorFrameReporter::ReportEventLatencyHistograms() const {
- "EventLatency." + total_latency_stage_name;
-
- for (const auto& event_metrics : events_metrics_) {
-- DCHECK(event_metrics);
-+ DCHECK(event_metrics.get());
- const std::string histogram_base_name =
- GetEventLatencyHistogramBaseName(*event_metrics);
- const int event_type_index = static_cast<int>(event_metrics->type());
diff --git a/www-client/chromium/files/chromium-90-disable-nomerge.patch b/www-client/chromium/files/chromium-90-disable-nomerge.patch
deleted file mode 100644
index fc4049f..0000000
--- a/www-client/chromium/files/chromium-90-disable-nomerge.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/base/compiler_specific.h b/base/compiler_specific.h
-index 14a5d6870..b4d31d77e 100644
---- a/base/compiler_specific.h
-+++ b/base/compiler_specific.h
-@@ -334,7 +334,7 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) {
-
- // Use nomerge attribute to disable optimization of merging multiple same calls.
- #if defined(__clang__) && __has_attribute(nomerge) && !defined(OS_CHROMEOS)
--#define NOMERGE [[clang::nomerge]]
-+#define NOMERGE //[[clang::nomerge]]
- #else
- #define NOMERGE
- #endif
diff --git a/www-client/chromium/files/chromium-90-langdetect-include.patch b/www-client/chromium/files/chromium-90-langdetect-include.patch
deleted file mode 100644
index 39cd0a8..0000000
--- a/www-client/chromium/files/chromium-90-langdetect-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/translate/core/language_detection/ngram_hash_ops_utils.cc b/components/translate/core/language_detection/ngram_hash_ops_utils.cc
-index cf9103358..dd03a3db4 100644
---- a/components/translate/core/language_detection/ngram_hash_ops_utils.cc
-+++ b/components/translate/core/language_detection/ngram_hash_ops_utils.cc
-@@ -4,6 +4,7 @@
-
- #include "components/translate/core/language_detection/ngram_hash_ops_utils.h"
-
-+#include <cstring>
- #include <vector>
-
- #include "third_party/utf/src/include/utf.h"
diff --git a/www-client/chromium/files/chromium-90-quantization-util-stdint.patch b/www-client/chromium/files/chromium-90-quantization-util-stdint.patch
deleted file mode 100644
index 060763a..0000000
--- a/www-client/chromium/files/chromium-90-quantization-util-stdint.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/translate/core/language_detection/quantization_utils.h b/components/translate/core/language_detection/quantization_utils.h
-index eb8f6d1e9..699a48897 100644
---- a/components/translate/core/language_detection/quantization_utils.h
-+++ b/components/translate/core/language_detection/quantization_utils.h
-@@ -7,6 +7,7 @@
-
- #include <algorithm>
- #include <cmath>
-+#include <cstdint>
-
- namespace translate {
-
diff --git a/www-client/chromium/files/chromium-90-quiche-uniqueptr.patch b/www-client/chromium/files/chromium-90-quiche-uniqueptr.patch
deleted file mode 100644
index 21183a6..0000000
--- a/www-client/chromium/files/chromium-90-quiche-uniqueptr.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/net/third_party/quiche/src/quic/core/quic_path_validator.cc b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-index f2abef054..b419c9070 100644
---- a/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-+++ b/net/third_party/quiche/src/quic/core/quic_path_validator.cc
-@@ -68,7 +68,7 @@ void QuicPathValidator::OnPathResponse(const QuicPathFrameBuffer& probing_data,
- void QuicPathValidator::StartPathValidation(
- std::unique_ptr<QuicPathValidationContext> context,
- std::unique_ptr<ResultDelegate> result_delegate) {
-- QUICHE_DCHECK(context);
-+ QUICHE_DCHECK(context.get());
- QUIC_DLOG(INFO) << "Start validating path " << *context
- << " via writer: " << context->WriterToUse();
- if (path_context_ != nullptr) {
diff --git a/www-client/chromium/files/chromium-90-ruy-include.patch b/www-client/chromium/files/chromium-90-ruy-include.patch
deleted file mode 100644
index 81d5367..0000000
--- a/www-client/chromium/files/chromium-90-ruy-include.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 714092f336bb14d2fcc27396ec323b3d843bb962 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Thu, 4 Mar 2021 15:05:46 +0000
-Subject: [PATCH] IWYU: include limits for std::numeric_limits
-
----
- third_party/ruy/src/ruy/block_map.cc | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/ruy/src/ruy/block_map.cc b/third_party/ruy/src/ruy/block_map.cc
-index 44e5039..a7a7559 100644
---- a/third_party/ruy/src/ruy/block_map.cc
-+++ b/third_party/ruy/src/ruy/block_map.cc
-@@ -17,6 +17,7 @@ limitations under the License.
-
- #include <algorithm>
- #include <cstdint>
-+#include <limits>
-
- #ifdef RUY_MAKEBLOCKMAP_DEBUG
- #include <cstdio>
---
-2.26.2
-
diff --git a/www-client/chromium/files/chromium-91-clipboard-ozone.patch b/www-client/chromium/files/chromium-91-clipboard-ozone.patch
deleted file mode 100644
index 5aac0ee..0000000
--- a/www-client/chromium/files/chromium-91-clipboard-ozone.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-diff --git a/ui/base/clipboard/clipboard_factory_ozone.cc b/ui/base/clipboard/clipboard_factory_ozone.cc
-index e2a061df8..5463e6bf9 100644
---- a/ui/base/clipboard/clipboard_factory_ozone.cc
-+++ b/ui/base/clipboard/clipboard_factory_ozone.cc
-@@ -50,7 +50,8 @@ Clipboard* Clipboard::Create() {
- #if defined(USE_X11) && BUILDFLAG(IS_CHROMEOS_LACROS)
- NOTREACHED() << "System clipboard integration should be in place.";
- #endif
-- return new ClipboardNonBacked;
-+ return nullptr;
-+ //return new ClipboardNonBacked;
- }
-
- } // namespace ui
-diff --git a/ui/base/clipboard/clipboard_non_backed.cc b/ui/base/clipboard/clipboard_non_backed.cc
-index a6e85cd2f..734c7e961 100644
---- a/ui/base/clipboard/clipboard_non_backed.cc
-+++ b/ui/base/clipboard/clipboard_non_backed.cc
-@@ -688,6 +688,7 @@ void ClipboardNonBacked::ReadData(const ClipboardFormatType& format,
- #endif
- }
-
-+#if defined(USE_OZONE)
- bool ClipboardNonBacked::IsSelectionBufferAvailable() const {
- #if BUILDFLAG(IS_CHROMEOS_ASH)
- return false;
-@@ -695,6 +696,7 @@ bool ClipboardNonBacked::IsSelectionBufferAvailable() const {
- return true;
- #endif
- }
-+#endif // defined(USE_OZONE)
-
- void ClipboardNonBacked::WritePortableRepresentations(
- ClipboardBuffer buffer,
-diff --git a/ui/base/clipboard/clipboard_non_backed.h b/ui/base/clipboard/clipboard_non_backed.h
-index d14ff0ff6..702f02a84 100644
---- a/ui/base/clipboard/clipboard_non_backed.h
-+++ b/ui/base/clipboard/clipboard_non_backed.h
-@@ -97,7 +97,9 @@ class COMPONENT_EXPORT(UI_BASE_CLIPBOARD) ClipboardNonBacked
- void ReadData(const ClipboardFormatType& format,
- const DataTransferEndpoint* data_dst,
- std::string* result) const override;
-+#if defined(USE_OZONE)
- bool IsSelectionBufferAvailable() const override;
-+#endif // defined(USE_OZONE)
- void WritePortableRepresentations(
- ClipboardBuffer buffer,
- const ObjectMap& objects,
diff --git a/www-client/chromium/files/chromium-91-compiler-r1.patch b/www-client/chromium/files/chromium-91-compiler-r1.patch
deleted file mode 100644
index 8724c6b..0000000
--- a/www-client/chromium/files/chromium-91-compiler-r1.patch
+++ /dev/null
@@ -1,165 +0,0 @@
-From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Wed, 7 Apr 2021 08:50:04 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 59 ++++++++++------------------------
- 1 file changed, 17 insertions(+), 42 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 72ea590..539672d 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -273,8 +273,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -518,24 +516,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1643,7 +1623,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1652,10 +1632,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1664,15 +1640,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2068,7 +2035,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2103,7 +2071,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2143,7 +2112,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2175,7 +2145,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2200,7 +2171,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2319,7 +2291,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2422,7 +2395,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2481,7 +2455,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.26.3
diff --git a/www-client/chromium/files/chromium-91-compiler.patch b/www-client/chromium/files/chromium-91-compiler.patch
deleted file mode 100644
index e45d4a3..0000000
--- a/www-client/chromium/files/chromium-91-compiler.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 72ea590d6..bc23dce78 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -273,8 +273,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -518,24 +516,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1643,7 +1623,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1652,10 +1632,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1664,15 +1640,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2068,7 +2035,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2103,7 +2071,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2143,7 +2112,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2175,7 +2145,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2200,7 +2171,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2319,7 +2291,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2422,7 +2395,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2481,7 +2455,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-91-disable-nomerge.patch b/www-client/chromium/files/chromium-91-disable-nomerge.patch
deleted file mode 100644
index 11dc66a..0000000
--- a/www-client/chromium/files/chromium-91-disable-nomerge.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/base/compiler_specific.h b/base/compiler_specific.h
-index d662305dc..8e99145da 100644
---- a/base/compiler_specific.h
-+++ b/base/compiler_specific.h
-@@ -341,7 +341,7 @@ inline constexpr bool AnalyzerAssumeTrue(bool arg) {
-
- // Use nomerge attribute to disable optimization of merging multiple same calls.
- #if defined(__clang__) && __has_attribute(nomerge)
--#define NOMERGE [[clang::nomerge]]
-+#define NOMERGE //[[clang::nomerge]]
- #else
- #define NOMERGE
- #endif
diff --git a/www-client/chromium/files/chromium-91-libyuv-aarch64.patch b/www-client/chromium/files/chromium-91-libyuv-aarch64.patch
deleted file mode 100644
index 77b8f4c..0000000
--- a/www-client/chromium/files/chromium-91-libyuv-aarch64.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-diff --git a/third_party/libyuv/source/row_neon64.cc b/third_party/libyuv/source/row_neon64.cc
-index 350c964..2aab413 100644
---- a/third_party/libyuv/source/row_neon64.cc
-+++ b/third_party/libyuv/source/row_neon64.cc
-@@ -1835,7 +1835,7 @@ void ARGBToAB64Row_NEON(const uint8_t* src_argb,
- : "+r"(src_argb), // %0
- "+r"(dst_ab64), // %1
- "+r"(width) // %2
-- : "m"(kShuffleARGBToABGR) // %3
-+ : "Q"(kShuffleARGBToABGR) // %3
- : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
- }
-
-@@ -1859,7 +1859,7 @@ void AR64ToARGBRow_NEON(const uint16_t* src_ar64,
- : "+r"(src_ar64), // %0
- "+r"(dst_argb), // %1
- "+r"(width) // %2
-- : "m"(kShuffleAR64ToARGB) // %3
-+ : "Q"(kShuffleAR64ToARGB) // %3
- : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
- }
-
-@@ -1883,7 +1883,7 @@ void AB64ToARGBRow_NEON(const uint16_t* src_ab64,
- : "+r"(src_ab64), // %0
- "+r"(dst_argb), // %1
- "+r"(width) // %2
-- : "m"(kShuffleAB64ToARGB) // %3
-+ : "Q"(kShuffleAB64ToARGB) // %3
- : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
- }
-
-diff --git a/third_party/libyuv/source/scale_neon64.cc b/third_party/libyuv/source/scale_neon64.cc
-index 8656fec..9f9636e 100644
---- a/third_party/libyuv/source/scale_neon64.cc
-+++ b/third_party/libyuv/source/scale_neon64.cc
-@@ -601,8 +601,8 @@ void ScaleRowUp2_Bilinear_NEON(const uint8_t* src_ptr,
- "umlal v4.8h, v1.8b, v31.8b \n" // 3*near+far (2, odd)
- "umlal v5.8h, v0.8b, v31.8b \n" // 3*near+far (2, even)
-
-- "mov v0.8h, v4.8h \n"
-- "mov v1.8h, v5.8h \n"
-+ "mov v0.16b, v4.16b \n"
-+ "mov v1.16b, v5.16b \n"
- "mla v4.8h, v2.8h, v30.8h \n" // 9 3 3 1 (1, odd)
- "mla v5.8h, v3.8h, v30.8h \n" // 9 3 3 1 (1, even)
- "mla v2.8h, v0.8h, v30.8h \n" // 9 3 3 1 (2, odd)
-@@ -642,7 +642,7 @@ void ScaleRowUp2_Linear_12_NEON(const uint16_t* src_ptr,
- "ld1 {v1.8h}, [%1], #16 \n" // 12345678 (16b)
- "prfm pldl1keep, [%0, 448] \n" // prefetch 7 lines ahead
-
-- "mov v2.8h, v0.8h \n"
-+ "mov v2.16b, v0.16b \n"
- "mla v0.8h, v1.8h, v31.8h \n" // 3*near+far (odd)
- "mla v1.8h, v2.8h, v31.8h \n" // 3*near+far (even)
-
-@@ -679,7 +679,7 @@ void ScaleRowUp2_Bilinear_12_NEON(const uint16_t* src_ptr,
- "ld1 {v3.8h}, [%2], #16 \n" // 12345678 (16b)
- "prfm pldl1keep, [%0, 448] \n" // prefetch 7 lines ahead
-
-- "mov v0.8h, v2.8h \n"
-+ "mov v0.16b, v2.16b \n"
- "mla v2.8h, v3.8h, v31.8h \n" // 3*near+far (odd)
- "mla v3.8h, v0.8h, v31.8h \n" // 3*near+far (even)
-
-@@ -687,12 +687,12 @@ void ScaleRowUp2_Bilinear_12_NEON(const uint16_t* src_ptr,
- "ld1 {v5.8h}, [%3], #16 \n" // 12345678 (16b)
- "prfm pldl1keep, [%1, 448] \n" // prefetch 7 lines ahead
-
-- "mov v0.8h, v4.8h \n"
-+ "mov v0.16b, v4.16b \n"
- "mla v4.8h, v5.8h, v31.8h \n" // 3*near+far (odd)
- "mla v5.8h, v0.8h, v31.8h \n" // 3*near+far (even)
-
-- "mov v0.8h, v4.8h \n"
-- "mov v1.8h, v5.8h \n"
-+ "mov v0.16b, v4.16b \n"
-+ "mov v1.16b, v5.16b \n"
- "mla v4.8h, v2.8h, v31.8h \n" // 9 3 3 1 (1, odd)
- "mla v5.8h, v3.8h, v31.8h \n" // 9 3 3 1 (1, even)
- "mla v2.8h, v0.8h, v31.8h \n" // 9 3 3 1 (2, odd)
-@@ -887,8 +887,8 @@ void ScaleUVRowUp2_Bilinear_NEON(const uint8_t* src_ptr,
- "umlal v4.8h, v1.8b, v31.8b \n" // 3*near+far (2, odd)
- "umlal v5.8h, v0.8b, v31.8b \n" // 3*near+far (2, even)
-
-- "mov v0.8h, v4.8h \n"
-- "mov v1.8h, v5.8h \n"
-+ "mov v0.16b, v4.16b \n"
-+ "mov v1.16b, v5.16b \n"
- "mla v4.8h, v2.8h, v30.8h \n" // 9 3 3 1 (1, odd)
- "mla v5.8h, v3.8h, v30.8h \n" // 9 3 3 1 (1, even)
- "mla v2.8h, v0.8h, v30.8h \n" // 9 3 3 1 (2, odd)
diff --git a/www-client/chromium/files/chromium-92-ClassPropertyCaster-namespace.patch b/www-client/chromium/files/chromium-92-ClassPropertyCaster-namespace.patch
deleted file mode 100644
index 08d7416..0000000
--- a/www-client/chromium/files/chromium-92-ClassPropertyCaster-namespace.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 546b72d3b31e5d42e4d6cb783def2c89c977c5a6 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 7 May 2021 14:34:29 +0000
-Subject: [PATCH] GCC: drop anonymous namespace from ClassPropertyCaster
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Explicit template specialization is done for ui::ElementIdentifier
-in another header. GCC fails to compile this with:
-
-../../ui/base/interaction/element_identifier.h:208:7: error:
- explicit specialization of ‘template<class T>
- class ui::{anonymous}::ClassPropertyCaster’ outside its
- namespace must use a nested-name-specifier
-
-This is a known GCC bug (https://gcc.gnu.org/PR92598).
----
- ui/base/class_property.h | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/ui/base/class_property.h b/ui/base/class_property.h
-index 4af52ae..25c00e7 100644
---- a/ui/base/class_property.h
-+++ b/ui/base/class_property.h
-@@ -137,8 +137,6 @@ class COMPONENT_EXPORT(UI_BASE) PropertyHandler {
- std::map<const void*, Value> prop_map_;
- };
-
--namespace {
--
- // No single new-style cast works for every conversion to/from int64_t, so we
- // need this helper class.
- template<typename T>
-@@ -162,8 +160,6 @@ class ClassPropertyCaster<base::TimeDelta> {
- }
- };
-
--} // namespace
--
- namespace subtle {
-
- class COMPONENT_EXPORT(UI_BASE) PropertyHelper {
---
-2.26.3
-
diff --git a/www-client/chromium/files/chromium-92-base_atomic_include.patch b/www-client/chromium/files/chromium-92-base_atomic_include.patch
deleted file mode 100644
index e6faf77..0000000
--- a/www-client/chromium/files/chromium-92-base_atomic_include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/base/threading/platform_thread.cc b/base/threading/platform_thread.cc
-index 3dc218163..f167af4ff 100644
---- a/base/threading/platform_thread.cc
-+++ b/base/threading/platform_thread.cc
-@@ -4,6 +4,7 @@
-
- #include "base/threading/platform_thread.h"
-
-+#include <atomic>
- #include <memory>
-
- #include "base/feature_list.h"
diff --git a/www-client/chromium/files/chromium-92-glibc-2.33.patch b/www-client/chromium/files/chromium-92-glibc-2.33.patch
deleted file mode 100644
index 3b2ec6b..0000000
--- a/www-client/chromium/files/chromium-92-glibc-2.33.patch
+++ /dev/null
@@ -1,146 +0,0 @@
-diff --git a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-index 05c39f0f5..3a9d6f359 100644
---- a/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/baseline_policy.cc
-@@ -280,6 +280,18 @@ ResultExpr EvaluateSyscallImpl(int fs_denied_errno,
- return RestrictKillTarget(current_pid, sysno);
- }
-
-+#if defined(__NR_newfstatat)
-+ if (sysno == __NR_newfstatat) {
-+ return RewriteFstatatSIGSYS();
-+ }
-+#endif
-+
-+#if defined(__NR_fstatat64)
-+ if (sysno == __NR_fstatat64) {
-+ return RewriteFstatatSIGSYS();
-+ }
-+#endif
-+
- // memfd_create is considered a file system syscall which below will be denied
- // with fs_denied_errno, we need memfd_create for Mojo shared memory channels.
- if (sysno == __NR_memfd_create) {
-diff --git a/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc b/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
-index 76eb32493..09aa3f0b1 100644
---- a/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
-+++ b/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.cc
-@@ -6,6 +6,8 @@
-
- #include "sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h"
-
-+#include <errno.h>
-+#include <fcntl.h>
- #include <stddef.h>
- #include <stdint.h>
- #include <string.h>
-@@ -355,6 +357,35 @@ intptr_t SIGSYSSchedHandler(const struct arch_seccomp_data& args,
- return -ENOSYS;
- }
-
-+intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
-+ void* aux) {
-+ switch (args.nr) {
-+#if defined(__NR_newfstatat)
-+ case __NR_newfstatat:
-+#endif
-+#if defined(__NR_fstatat64)
-+ case __NR_fstatat64:
-+#endif
-+#if defined(__NR_newfstatat) || defined(__NR_fstatat64)
-+ if (*reinterpret_cast<const char *>(args.args[1]) == '\0'
-+ && args.args[3] == static_cast<uint64_t>(AT_EMPTY_PATH)) {
-+ return sandbox::sys_fstat64(static_cast<int>(args.args[0]),
-+ reinterpret_cast<struct stat64 *>(args.args[2]));
-+ } else {
-+ errno = EACCES;
-+ return -1;
-+ }
-+ break;
-+#endif
-+ }
-+
-+ CrashSIGSYS_Handler(args, aux);
-+
-+ // Should never be reached.
-+ RAW_CHECK(false);
-+ return -ENOSYS;
-+}
-+
- bpf_dsl::ResultExpr CrashSIGSYS() {
- return bpf_dsl::Trap(CrashSIGSYS_Handler, NULL);
- }
-@@ -387,6 +418,10 @@ bpf_dsl::ResultExpr RewriteSchedSIGSYS() {
- return bpf_dsl::Trap(SIGSYSSchedHandler, NULL);
- }
-
-+bpf_dsl::ResultExpr RewriteFstatatSIGSYS() {
-+ return bpf_dsl::Trap(SIGSYSFstatatHandler, NULL);
-+}
-+
- void AllocateCrashKeys() {
- #if !defined(OS_NACL_NONSFI)
- if (seccomp_crash_key)
-diff --git a/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h b/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
-index 7a958b93b..d0bfab74b 100644
---- a/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
-+++ b/sandbox/linux/seccomp-bpf-helpers/sigsys_handlers.h
-@@ -62,6 +62,10 @@ SANDBOX_EXPORT intptr_t SIGSYSPtraceFailure(const arch_seccomp_data& args,
- // sched_setparam(), sched_setscheduler()
- SANDBOX_EXPORT intptr_t SIGSYSSchedHandler(const arch_seccomp_data& args,
- void* aux);
-+// If the fstatat syscall is actually a disguised fstat, calls the regular fstat
-+// syscall, otherwise, crashes in the same way as CrashSIGSYS_Handler.
-+SANDBOX_EXPORT intptr_t SIGSYSFstatatHandler(const struct arch_seccomp_data& args,
-+ void* aux);
-
- // Variants of the above functions for use with bpf_dsl.
- SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYS();
-@@ -72,6 +76,7 @@ SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSKill();
- SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSFutex();
- SANDBOX_EXPORT bpf_dsl::ResultExpr CrashSIGSYSPtrace();
- SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteSchedSIGSYS();
-+SANDBOX_EXPORT bpf_dsl::ResultExpr RewriteFstatatSIGSYS();
-
- // Allocates a crash key so that Seccomp information can be recorded.
- void AllocateCrashKeys();
-diff --git a/sandbox/linux/services/syscall_wrappers.cc b/sandbox/linux/services/syscall_wrappers.cc
-index fcfd2aa12..5396b36da 100644
---- a/sandbox/linux/services/syscall_wrappers.cc
-+++ b/sandbox/linux/services/syscall_wrappers.cc
-@@ -261,4 +261,13 @@ int sys_sigaction(int signum,
-
- #endif // defined(MEMORY_SANITIZER)
-
-+SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf)
-+{
-+#if defined(__NR_fstat64)
-+ return syscall(__NR_fstat64, fd, buf);
-+#else
-+ return syscall(__NR_fstat, fd, buf);
-+#endif
-+}
-+
- } // namespace sandbox
-diff --git a/sandbox/linux/services/syscall_wrappers.h b/sandbox/linux/services/syscall_wrappers.h
-index 1975bfbd8..ed7ee5a1c 100644
---- a/sandbox/linux/services/syscall_wrappers.h
-+++ b/sandbox/linux/services/syscall_wrappers.h
-@@ -17,6 +17,7 @@ struct sock_fprog;
- struct rlimit64;
- struct cap_hdr;
- struct cap_data;
-+struct stat64;
-
- namespace sandbox {
-
-@@ -84,6 +85,9 @@ SANDBOX_EXPORT int sys_sigaction(int signum,
- const struct sigaction* act,
- struct sigaction* oldact);
-
-+// Recent glibc rewrites fstat to fstatat.
-+SANDBOX_EXPORT int sys_fstat64(int fd, struct stat64 *buf);
-+
- } // namespace sandbox
-
- #endif // SANDBOX_LINUX_SERVICES_SYSCALL_WRAPPERS_H_
diff --git a/www-client/chromium/files/chromium-92-platform_thread-include.patch b/www-client/chromium/files/chromium-92-platform_thread-include.patch
deleted file mode 100644
index 881a2a0..0000000
--- a/www-client/chromium/files/chromium-92-platform_thread-include.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 49c9ab14152b52edc9f0d8f1245039792f270315 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 7 May 2021 09:53:18 +0000
-Subject: [PATCH] IWYU: include atomic for std::atomic
-
----
- base/threading/platform_thread.cc | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/base/threading/platform_thread.cc b/base/threading/platform_thread.cc
-index 3dc2181..f167af4 100644
---- a/base/threading/platform_thread.cc
-+++ b/base/threading/platform_thread.cc
-@@ -4,6 +4,7 @@
-
- #include "base/threading/platform_thread.h"
-
-+#include <atomic>
- #include <memory>
-
- #include "base/feature_list.h"
---
-2.26.3
-
diff --git a/www-client/chromium/files/chromium-92-sql-cursor.patch b/www-client/chromium/files/chromium-92-sql-cursor.patch
deleted file mode 100644
index a4864ba..0000000
--- a/www-client/chromium/files/chromium-92-sql-cursor.patch
+++ /dev/null
@@ -1,231 +0,0 @@
-From 80368f8ba7a8bab13440463a254888311efe3986 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Tue, 04 May 2021 15:00:19 +0000
-Subject: [PATCH] sql: make VirtualCursor standard layout type
-
-sql::recover::VirtualCursor needs to be a standard layout type, but
-has members of type std::unique_ptr. However, std::unique_ptr is not
-guaranteed to be standard layout. Compiling with clang combined with
-gcc-11 libstdc++ fails because of this. Replace std::unique_ptr with
-raw pointers.
-
-Bug: 1189788
-Change-Id: Ia6dc388cc5ef1c0f2afc75f8ca45b9f12687ca9c
----
-
-diff --git a/sql/recover_module/btree.cc b/sql/recover_module/btree.cc
-index 9ecaafe..839318a 100644
---- a/sql/recover_module/btree.cc
-+++ b/sql/recover_module/btree.cc
-@@ -135,16 +135,25 @@
- "Move the destructor to the .cc file if it's non-trival");
- #endif // !DCHECK_IS_ON()
-
--LeafPageDecoder::LeafPageDecoder(DatabasePageReader* db_reader) noexcept
-- : page_id_(db_reader->page_id()),
-- db_reader_(db_reader),
-- cell_count_(ComputeCellCount(db_reader)),
-- next_read_index_(0),
-- last_record_size_(0) {
-+void LeafPageDecoder::Initialize(DatabasePageReader* db_reader) {
-+ DCHECK(db_reader);
- DCHECK(IsOnValidPage(db_reader));
-+ page_id_ = db_reader->page_id();
-+ db_reader_ = db_reader;
-+ cell_count_ = ComputeCellCount(db_reader);
-+ next_read_index_ = 0;
-+ last_record_size_ = 0;
- DCHECK(DatabasePageReader::IsValidPageId(page_id_));
- }
-
-+void LeafPageDecoder::Reset() {
-+ db_reader_ = nullptr;
-+ page_id_ = 0;
-+ cell_count_ = 0;
-+ next_read_index_ = 0;
-+ last_record_size_ = 0;
-+}
-+
- bool LeafPageDecoder::TryAdvance() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(CanAdvance());
-diff --git a/sql/recover_module/btree.h b/sql/recover_module/btree.h
-index d76d076..33114b0 100644
---- a/sql/recover_module/btree.h
-+++ b/sql/recover_module/btree.h
-@@ -102,7 +102,7 @@
- //
- // |db_reader| must have been used to read an inner page of a table B-tree.
- // |db_reader| must outlive this instance.
-- explicit LeafPageDecoder(DatabasePageReader* db_reader) noexcept;
-+ explicit LeafPageDecoder() noexcept = default;
- ~LeafPageDecoder() noexcept = default;
-
- LeafPageDecoder(const LeafPageDecoder&) = delete;
-@@ -150,6 +150,15 @@
- // read as long as CanAdvance() returns true.
- bool TryAdvance();
-
-+ // Initialize with DatabasePageReader
-+ void Initialize(DatabasePageReader* db_reader);
-+
-+ // Reset internal DatabasePageReader
-+ void Reset();
-+
-+ // True if DatabasePageReader is valid
-+ bool IsValid() { return (db_reader_ != nullptr); }
-+
- // True if the given reader may point to an inner page in a table B-tree.
- //
- // The last ReadPage() call on |db_reader| must have succeeded.
-@@ -163,14 +172,14 @@
- static int ComputeCellCount(DatabasePageReader* db_reader);
-
- // The number of the B-tree page this reader is reading.
-- const int64_t page_id_;
-+ int64_t page_id_;
- // Used to read the tree page.
- //
- // Raw pointer usage is acceptable because this instance's owner is expected
- // to ensure that the DatabasePageReader outlives this.
-- DatabasePageReader* const db_reader_;
-+ DatabasePageReader* db_reader_;
- // Caches the ComputeCellCount() value for this reader's page.
-- const int cell_count_ = ComputeCellCount(db_reader_);
-+ int cell_count_;
-
- // The reader's cursor state.
- //
-diff --git a/sql/recover_module/cursor.cc b/sql/recover_module/cursor.cc
-index 0029ff9..42548bc 100644
---- a/sql/recover_module/cursor.cc
-+++ b/sql/recover_module/cursor.cc
-@@ -26,7 +26,7 @@
- int VirtualCursor::First() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- inner_decoders_.clear();
-- leaf_decoder_ = nullptr;
-+ leaf_decoder_.Reset();
-
- AppendPageDecoder(table_->root_page_id());
- return Next();
-@@ -36,18 +36,18 @@
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- record_reader_.Reset();
-
-- while (!inner_decoders_.empty() || leaf_decoder_.get()) {
-- if (leaf_decoder_.get()) {
-- if (!leaf_decoder_->CanAdvance()) {
-+ while (!inner_decoders_.empty() || leaf_decoder_.IsValid()) {
-+ if (leaf_decoder_.IsValid()) {
-+ if (!leaf_decoder_.CanAdvance()) {
- // The leaf has been exhausted. Remove it from the DFS stack.
-- leaf_decoder_ = nullptr;
-+ leaf_decoder_.Reset();
- continue;
- }
-- if (!leaf_decoder_->TryAdvance())
-+ if (!leaf_decoder_.TryAdvance())
- continue;
-
-- if (!payload_reader_.Initialize(leaf_decoder_->last_record_size(),
-- leaf_decoder_->last_record_offset())) {
-+ if (!payload_reader_.Initialize(leaf_decoder_.last_record_size(),
-+ leaf_decoder_.last_record_offset())) {
- continue;
- }
- if (!record_reader_.Initialize())
-@@ -99,13 +99,13 @@
- int64_t VirtualCursor::RowId() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(record_reader_.IsInitialized());
-- DCHECK(leaf_decoder_.get());
-- return leaf_decoder_->last_record_rowid();
-+ DCHECK(leaf_decoder_.IsValid());
-+ return leaf_decoder_.last_record_rowid();
- }
-
- void VirtualCursor::AppendPageDecoder(int page_id) {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-- DCHECK(leaf_decoder_.get() == nullptr)
-+ DCHECK(!leaf_decoder_.IsValid())
- << __func__
- << " must only be called when the current path has no leaf decoder";
-
-@@ -113,7 +113,7 @@
- return;
-
- if (LeafPageDecoder::IsOnValidPage(&db_reader_)) {
-- leaf_decoder_ = std::make_unique<LeafPageDecoder>(&db_reader_);
-+ leaf_decoder_.Initialize(&db_reader_);
- return;
- }
-
-diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
-index afcd690..b15c31d 100644
---- a/sql/recover_module/cursor.h
-+++ b/sql/recover_module/cursor.h
-@@ -129,7 +129,7 @@
- std::vector<std::unique_ptr<InnerPageDecoder>> inner_decoders_;
-
- // Decodes the leaf page containing records.
-- std::unique_ptr<LeafPageDecoder> leaf_decoder_;
-+ LeafPageDecoder leaf_decoder_;
-
- SEQUENCE_CHECKER(sequence_checker_);
- };
-diff --git a/sql/recover_module/pager.cc b/sql/recover_module/pager.cc
-index 58e75de..5fe9620 100644
---- a/sql/recover_module/pager.cc
-+++ b/sql/recover_module/pager.cc
-@@ -23,8 +23,7 @@
- "ints are not appropriate for representing page IDs");
-
- DatabasePageReader::DatabasePageReader(VirtualTable* table)
-- : page_data_(std::make_unique<uint8_t[]>(table->page_size())),
-- table_(table) {
-+ : page_data_(), table_(table) {
- DCHECK(table != nullptr);
- DCHECK(IsValidPageSize(table->page_size()));
- }
-@@ -57,8 +56,8 @@
- std::numeric_limits<int64_t>::max(),
- "The |read_offset| computation above may overflow");
-
-- int sqlite_status =
-- RawRead(sqlite_file, read_size, read_offset, page_data_.get());
-+ int sqlite_status = RawRead(sqlite_file, read_size, read_offset,
-+ const_cast<uint8_t*>(page_data_.data()));
-
- // |page_id_| needs to be set to kInvalidPageId if the read failed.
- // Otherwise, future ReadPage() calls with the previous |page_id_| value
-diff --git a/sql/recover_module/pager.h b/sql/recover_module/pager.h
-index 0e388ddc..99314e3 100644
---- a/sql/recover_module/pager.h
-+++ b/sql/recover_module/pager.h
-@@ -5,6 +5,7 @@
- #ifndef SQL_RECOVER_MODULE_PAGER_H_
- #define SQL_RECOVER_MODULE_PAGER_H_
-
-+#include <array>
- #include <cstdint>
- #include <memory>
-
-@@ -70,7 +71,7 @@
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK_NE(page_id_, kInvalidPageId)
- << "Successful ReadPage() required before accessing pager state";
-- return page_data_.get();
-+ return page_data_.data();
- }
-
- // The number of bytes in the page read by the last ReadPage() call.
-@@ -137,7 +138,7 @@
- int page_id_ = kInvalidPageId;
- // Stores the bytes of the last page successfully read by ReadPage().
- // The content is undefined if the last call to ReadPage() did not succeed.
-- const std::unique_ptr<uint8_t[]> page_data_;
-+ const std::array<uint8_t, kMaxPageSize> page_data_;
- // Raw pointer usage is acceptable because this instance's owner is expected
- // to ensure that the VirtualTable outlives this.
- VirtualTable* const table_;
diff --git a/www-client/chromium/files/chromium-93-AXPropertyNode-private.patch b/www-client/chromium/files/chromium-93-AXPropertyNode-private.patch
deleted file mode 100644
index f184af6..0000000
--- a/www-client/chromium/files/chromium-93-AXPropertyNode-private.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-From 0cdb42df76598037785ca33eb66bdc9ac2c16fd9 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sat, 5 Jun 2021 11:16:29 +0000
-Subject: [PATCH] libstdc++: make constructors public in AXPropertyNode
-
-Making std::allocator<AXPropertyNode> friend of AXPropertyNode is
-useless, because std::allocator is free to delegate the task of
-construction to a free function or class which is not friend of
-AXPropertyNode. libstdc++ uses __gnu_cxx::new_allocator<T> for
-construction and fails if constructors of AXPropertyNode are
-private.
----
- ui/accessibility/platform/inspect/ax_property_node.h | 4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-diff --git a/ui/accessibility/platform/inspect/ax_property_node.h b/ui/accessibility/platform/inspect/ax_property_node.h
-index 35b8309..78bafa5 100644
---- a/ui/accessibility/platform/inspect/ax_property_node.h
-+++ b/ui/accessibility/platform/inspect/ax_property_node.h
-@@ -93,7 +93,6 @@ class AX_EXPORT AXPropertyNode final {
- // Returns a tree-like string representation of the node.
- std::string ToTreeString(const std::string& indent = "") const;
-
-- private:
- using iterator = std::string::const_iterator;
-
- explicit AXPropertyNode(iterator key_begin,
-@@ -105,11 +104,10 @@ class AX_EXPORT AXPropertyNode final {
- iterator value_begin,
- iterator value_end);
-
-+ private:
- // Builds a property node struct for a string of NAME(ARG1, ..., ARGN) format,
- // where each ARG is a scalar value or a string of the same format.
- static iterator Parse(AXPropertyNode* node, iterator begin, iterator end);
--
-- friend class std::allocator<AXPropertyNode>;
- };
-
- } // namespace ui
---
-2.31.1
-
diff --git a/www-client/chromium/files/chromium-93-EnumTable-crash.patch b/www-client/chromium/files/chromium-93-EnumTable-crash.patch
deleted file mode 100644
index a5c2def..0000000
--- a/www-client/chromium/files/chromium-93-EnumTable-crash.patch
+++ /dev/null
@@ -1,79 +0,0 @@
-diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
-index a63ae86..83ada65 100644
---- a/components/cast_channel/enum_table.h
-+++ b/components/cast_channel/enum_table.h
-@@ -8,6 +8,7 @@
- #include <cstdint>
- #include <cstring>
- #include <ostream>
-+#include <vector>
-
- #include "base/check_op.h"
- #include "base/macros.h"
-@@ -213,7 +214,7 @@ class
-
- template <typename E>
- friend class EnumTable;
-- DISALLOW_COPY_AND_ASSIGN(GenericEnumTableEntry);
-+ DISALLOW_ASSIGN(GenericEnumTableEntry);
- };
-
- // Yes, these constructors really needs to be inlined. Even though they look
-@@ -251,8 +252,7 @@ class EnumTable {
- // Constructor for regular entries.
- constexpr Entry(E value, base::StringPiece str)
- : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
--
-- DISALLOW_COPY_AND_ASSIGN(Entry);
-+ DISALLOW_ASSIGN(Entry);
- };
-
- static_assert(sizeof(E) <= sizeof(int32_t),
-@@ -307,15 +307,14 @@ class EnumTable {
- if (is_sorted_) {
- const std::size_t index = static_cast<std::size_t>(value);
- if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-- const auto& entry = data_.begin()[index];
-+ const auto& entry = data_[index];
- if (ANALYZER_ASSUME_TRUE(entry.has_str()))
- return entry.str();
- }
- return absl::nullopt;
- }
- return GenericEnumTableEntry::FindByValue(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), static_cast<int32_t>(value));
-+ &data_[0], data_.size(), static_cast<int32_t>(value));
- }
-
- // This overload of GetString is designed for cases where the argument is a
-@@ -343,8 +342,7 @@ class EnumTable {
- // enum value directly.
- absl::optional<E> GetEnum(base::StringPiece str) const {
- auto* entry = GenericEnumTableEntry::FindByString(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), str);
-+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : absl::optional<E>();
- }
-
-@@ -359,7 +357,7 @@ class EnumTable {
- // Align the data on a cache line boundary.
- alignas(64)
- #endif
-- std::initializer_list<Entry> data_;
-+ const std::vector<Entry> data_;
- bool is_sorted_;
-
- constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
-@@ -371,8 +369,8 @@ class EnumTable {
-
- for (std::size_t i = 0; i < data.size(); i++) {
- for (std::size_t j = i + 1; j < data.size(); j++) {
-- const Entry& ei = data.begin()[i];
-- const Entry& ej = data.begin()[j];
-+ const Entry& ei = data[i];
-+ const Entry& ej = data[j];
- DCHECK(ei.value != ej.value)
- << "Found duplicate enum values at indices " << i << " and " << j;
- DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-93-cart-include.patch b/www-client/chromium/files/chromium-93-cart-include.patch
deleted file mode 100644
index 82ca038..0000000
--- a/www-client/chromium/files/chromium-93-cart-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/cart/cart_db.h b/chrome/browser/cart/cart_db.h
-index 82b2a56c3..0f8472f3e 100644
---- a/chrome/browser/cart/cart_db.h
-+++ b/chrome/browser/cart/cart_db.h
-@@ -5,6 +5,8 @@
- #ifndef CHROME_BROWSER_CART_CART_DB_H_
- #define CHROME_BROWSER_CART_CART_DB_H_
-
-+#include <vector>
-+
- #include "base/callback_helpers.h"
- #include "base/memory/weak_ptr.h"
-
diff --git a/www-client/chromium/files/chromium-93-devtools-msg-dispatcher-include.patch b/www-client/chromium/files/chromium-93-devtools-msg-dispatcher-include.patch
deleted file mode 100644
index ddb94cf..0000000
--- a/www-client/chromium/files/chromium-93-devtools-msg-dispatcher-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/chrome/browser/devtools/devtools_embedder_message_dispatcher.h b/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
-index 12f8500b7..4007112f3 100644
---- a/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
-+++ b/chrome/browser/devtools/devtools_embedder_message_dispatcher.h
-@@ -8,6 +8,7 @@
- #include <map>
- #include <memory>
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
- #include "ui/gfx/geometry/insets.h"
diff --git a/www-client/chromium/files/chromium-93-dnsprefetch-include.patch b/www-client/chromium/files/chromium-93-dnsprefetch-include.patch
deleted file mode 100644
index c8d63b6..0000000
--- a/www-client/chromium/files/chromium-93-dnsprefetch-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/network_hints/renderer/renderer_dns_prefetch.h b/components/network_hints/renderer/renderer_dns_prefetch.h
-index 87f1bb1bb..3ead6b3a6 100644
---- a/components/network_hints/renderer/renderer_dns_prefetch.h
-+++ b/components/network_hints/renderer/renderer_dns_prefetch.h
-@@ -25,6 +25,7 @@
-
- #include <map>
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
- #include "base/macros.h"
diff --git a/www-client/chromium/files/chromium-93-ext-autoconfirm-include.patch b/www-client/chromium/files/chromium-93-ext-autoconfirm-include.patch
deleted file mode 100644
index 6bf4fcf..0000000
--- a/www-client/chromium/files/chromium-93-ext-autoconfirm-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/extensions/browser/extension_dialog_auto_confirm.cc b/extensions/browser/extension_dialog_auto_confirm.cc
-index adb4ac3f9..be8b161bc 100644
---- a/extensions/browser/extension_dialog_auto_confirm.cc
-+++ b/extensions/browser/extension_dialog_auto_confirm.cc
-@@ -4,6 +4,7 @@
-
- #include "extensions/browser/extension_dialog_auto_confirm.h"
-
-+#include <cstring>
- #include <utility>
-
- #include "base/check.h"
diff --git a/www-client/chromium/files/chromium-93-gpu-ipc-include.patch b/www-client/chromium/files/chromium-93-gpu-ipc-include.patch
deleted file mode 100644
index 24793fa..0000000
--- a/www-client/chromium/files/chromium-93-gpu-ipc-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/gpu/ipc/gpu_task_scheduler_helper.h b/gpu/ipc/gpu_task_scheduler_helper.h
-index 4315277b2..01c9c8ed9 100644
---- a/gpu/ipc/gpu_task_scheduler_helper.h
-+++ b/gpu/ipc/gpu_task_scheduler_helper.h
-@@ -5,6 +5,8 @@
- #ifndef GPU_IPC_GPU_TASK_SCHEDULER_HELPER_H_
- #define GPU_IPC_GPU_TASK_SCHEDULER_HELPER_H_
-
-+#include <vector>
-+
- #include "base/callback.h"
- #include "gpu/command_buffer/common/sync_token.h"
- #include "gpu/command_buffer/service/sequence_id.h"
diff --git a/www-client/chromium/files/chromium-93-hid-chooser-include.patch b/www-client/chromium/files/chromium-93-hid-chooser-include.patch
deleted file mode 100644
index 7ae8938..0000000
--- a/www-client/chromium/files/chromium-93-hid-chooser-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/content/public/browser/hid_chooser.h b/content/public/browser/hid_chooser.h
-index d40cf59be..b2b9613cf 100644
---- a/content/public/browser/hid_chooser.h
-+++ b/content/public/browser/hid_chooser.h
-@@ -5,6 +5,8 @@
- #ifndef CONTENT_PUBLIC_BROWSER_HID_CHOOSER_H_
- #define CONTENT_PUBLIC_BROWSER_HID_CHOOSER_H_
-
-+#include <vector>
-+
- #include "base/callback_forward.h"
- #include "base/macros.h"
- #include "content/common/content_export.h"
diff --git a/www-client/chromium/files/chromium-93-lang-prefs-include.patch b/www-client/chromium/files/chromium-93-lang-prefs-include.patch
deleted file mode 100644
index 7b1829d..0000000
--- a/www-client/chromium/files/chromium-93-lang-prefs-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/language/core/browser/language_prefs.h b/components/language/core/browser/language_prefs.h
-index 28c89546c..617d1ed91 100644
---- a/components/language/core/browser/language_prefs.h
-+++ b/components/language/core/browser/language_prefs.h
-@@ -7,6 +7,7 @@
-
- #include <set>
- #include <string>
-+#include <vector>
-
- #include "base/macros.h"
- #include "base/strings/string_piece.h"
diff --git a/www-client/chromium/files/chromium-93-login-detection-include.patch b/www-client/chromium/files/chromium-93-login-detection-include.patch
deleted file mode 100644
index e2a6aa3..0000000
--- a/www-client/chromium/files/chromium-93-login-detection-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/chrome/browser/login_detection/oauth_login_detector.h b/chrome/browser/login_detection/oauth_login_detector.h
-index 6844529c7..c0c3b185f 100644
---- a/chrome/browser/login_detection/oauth_login_detector.h
-+++ b/chrome/browser/login_detection/oauth_login_detector.h
-@@ -7,6 +7,7 @@
-
- #include <set>
- #include <string>
-+#include <vector>
-
- #include "third_party/abseil-cpp/absl/types/optional.h"
- #include "url/gurl.h"
diff --git a/www-client/chromium/files/chromium-93-media-ffmpeg-type.patch b/www-client/chromium/files/chromium-93-media-ffmpeg-type.patch
deleted file mode 100644
index ca8b98f..0000000
--- a/www-client/chromium/files/chromium-93-media-ffmpeg-type.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc
-index ac4713b07..492a9a37d 100644
---- a/media/filters/ffmpeg_demuxer.cc
-+++ b/media/filters/ffmpeg_demuxer.cc
-@@ -427,11 +427,11 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
- scoped_refptr<DecoderBuffer> buffer;
-
- if (type() == DemuxerStream::TEXT) {
-- size_t id_size = 0;
-+ int id_size = 0;
- uint8_t* id_data = av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_WEBVTT_IDENTIFIER, &id_size);
-
-- size_t settings_size = 0;
-+ int settings_size = 0;
- uint8_t* settings_data = av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_WEBVTT_SETTINGS, &settings_size);
-
-@@ -443,7 +443,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
- buffer = DecoderBuffer::CopyFrom(packet->data, packet->size,
- side_data.data(), side_data.size());
- } else {
-- size_t side_data_size = 0;
-+ int side_data_size = 0;
- uint8_t* side_data = av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_MATROSKA_BLOCKADDITIONAL, &side_data_size);
-
-@@ -504,7 +504,7 @@ void FFmpegDemuxerStream::EnqueuePacket(ScopedAVPacket packet) {
- packet->size - data_offset);
- }
-
-- size_t skip_samples_size = 0;
-+ int skip_samples_size = 0;
- const uint32_t* skip_samples_ptr =
- reinterpret_cast<const uint32_t*>(av_packet_get_side_data(
- packet.get(), AV_PKT_DATA_SKIP_SAMPLES, &skip_samples_size));
diff --git a/www-client/chromium/files/chromium-93-media-history-include.patch b/www-client/chromium/files/chromium-93-media-history-include.patch
deleted file mode 100644
index 4253fd7..0000000
--- a/www-client/chromium/files/chromium-93-media-history-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/chrome/browser/media/history/media_history_origin_table.h b/chrome/browser/media/history/media_history_origin_table.h
-index c28d5e3a8..32e1757de 100644
---- a/chrome/browser/media/history/media_history_origin_table.h
-+++ b/chrome/browser/media/history/media_history_origin_table.h
-@@ -6,6 +6,7 @@
- #define CHROME_BROWSER_MEDIA_HISTORY_MEDIA_HISTORY_ORIGIN_TABLE_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/updateable_sequenced_task_runner.h"
- #include "chrome/browser/media/history/media_history_table_base.h"
diff --git a/www-client/chromium/files/chromium-93-net-http-include.patch b/www-client/chromium/files/chromium-93-net-http-include.patch
deleted file mode 100644
index fe64bb7..0000000
--- a/www-client/chromium/files/chromium-93-net-http-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/net/http/http_basic_state.h b/net/http/http_basic_state.h
-index 5fd1ee514..06c46df6b 100644
---- a/net/http/http_basic_state.h
-+++ b/net/http/http_basic_state.h
-@@ -10,6 +10,7 @@
-
- #include <memory>
- #include <string>
-+#include <vector>
-
- #include "base/macros.h"
- #include "base/memory/ref_counted.h"
diff --git a/www-client/chromium/files/chromium-93-payment-include.patch b/www-client/chromium/files/chromium-93-payment-include.patch
deleted file mode 100644
index 588931f..0000000
--- a/www-client/chromium/files/chromium-93-payment-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/payments/core/journey_logger.h b/components/payments/core/journey_logger.h
-index 026b38e7e..e63673de3 100644
---- a/components/payments/core/journey_logger.h
-+++ b/components/payments/core/journey_logger.h
-@@ -6,6 +6,7 @@
- #define COMPONENTS_PAYMENTS_CORE_JOURNEY_LOGGER_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/macros.h"
- #include "base/time/time.h"
diff --git a/www-client/chromium/files/chromium-93-pdfium-include.patch b/www-client/chromium/files/chromium-93-pdfium-include.patch
deleted file mode 100644
index 2f601ed..0000000
--- a/www-client/chromium/files/chromium-93-pdfium-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp b/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
-index c66985a7f..83a9ba132 100644
---- a/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
-+++ b/third_party/pdfium/core/fxcodec/jpx/cjpx_decoder.cpp
-@@ -6,6 +6,7 @@
-
- #include "core/fxcodec/jpx/cjpx_decoder.h"
-
-+#include <cstring>
- #include <algorithm>
- #include <limits>
- #include <utility>
diff --git a/www-client/chromium/files/chromium-93-phishing-classifier-include.patch b/www-client/chromium/files/chromium-93-phishing-classifier-include.patch
deleted file mode 100644
index 64a95fe..0000000
--- a/www-client/chromium/files/chromium-93-phishing-classifier-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/safe_browsing/content/renderer/phishing_classifier/phishing_classifier.h b/components/safe_browsing/content/renderer/phishing_classifier/phishing_classifier.h
-index e86d14e8d..b3e74406c 100644
---- a/components/safe_browsing/content/renderer/phishing_classifier/phishing_classifier.h
-+++ b/components/safe_browsing/content/renderer/phishing_classifier/phishing_classifier.h
-@@ -23,6 +23,7 @@
- #include <memory>
- #include <set>
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
- #include "base/macros.h"
diff --git a/www-client/chromium/files/chromium-93-pwdmgr-include-r1.patch b/www-client/chromium/files/chromium-93-pwdmgr-include-r1.patch
deleted file mode 100644
index 6721b8b..0000000
--- a/www-client/chromium/files/chromium-93-pwdmgr-include-r1.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/password_manager/core/browser/hash_password_manager.h b/components/password_manager/core/browser/hash_password_manager.h
-index c762c5a8c..85e656edc 100644
---- a/components/password_manager/core/browser/hash_password_manager.h
-+++ b/components/password_manager/core/browser/hash_password_manager.h
-@@ -6,6 +6,7 @@
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_HASH_PASSWORD_MANAGER_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
- #include "base/callback_list.h"
diff --git a/www-client/chromium/files/chromium-93-pwdmgr-include.patch b/www-client/chromium/files/chromium-93-pwdmgr-include.patch
deleted file mode 100644
index 041be9f..0000000
--- a/www-client/chromium/files/chromium-93-pwdmgr-include.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/components/password_manager/core/browser/field_info_table.h b/components/password_manager/core/browser/field_info_table.h
-index fb6d84005..e4c88aab3 100644
---- a/components/password_manager/core/browser/field_info_table.h
-+++ b/components/password_manager/core/browser/field_info_table.h
-@@ -5,6 +5,8 @@
- #ifndef COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_FIELD_INFO_TABLE_H_
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_FIELD_INFO_TABLE_H_
-
-+#include <vector>
-+
- #include "base/macros.h"
- #include "base/time/time.h"
- #include "components/autofill/core/browser/field_types.h"
-diff --git a/components/password_manager/core/browser/hash_password_manager.h b/components/password_manager/core/browser/hash_password_manager.h
-index c762c5a8c..85e656edc 100644
---- a/components/password_manager/core/browser/hash_password_manager.h
-+++ b/components/password_manager/core/browser/hash_password_manager.h
-@@ -6,6 +6,7 @@
- #define COMPONENTS_PASSWORD_MANAGER_CORE_BROWSER_HASH_PASSWORD_MANAGER_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
- #include "base/callback_list.h"
diff --git a/www-client/chromium/files/chromium-93-quiche-logging-include.patch b/www-client/chromium/files/chromium-93-quiche-logging-include.patch
deleted file mode 100644
index 405a6ae..0000000
--- a/www-client/chromium/files/chromium-93-quiche-logging-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/net/third_party/quiche/overrides/quiche_platform_impl/quiche_logging_impl.h b/net/third_party/quiche/overrides/quiche_platform_impl/quiche_logging_impl.h
-index 8ff5e27f8..326ed9307 100644
---- a/net/third_party/quiche/overrides/quiche_platform_impl/quiche_logging_impl.h
-+++ b/net/third_party/quiche/overrides/quiche_platform_impl/quiche_logging_impl.h
-@@ -5,6 +5,8 @@
- #ifndef NET_THIRD_PARTY_QUICHE_OVERRIDES_QUICHE_PLATFORM_IMPL_QUICHE_LOGGING_IMPL_H_
- #define NET_THIRD_PARTY_QUICHE_OVERRIDES_QUICHE_PLATFORM_IMPL_QUICHE_LOGGING_IMPL_H_
-
-+#include <vector>
-+
- #include "base/check_op.h"
- #include "base/logging.h"
- #include "base/notreached.h"
diff --git a/www-client/chromium/files/chromium-93-site_settings_helper-initialzation.patch b/www-client/chromium/files/chromium-93-site_settings_helper-initialzation.patch
deleted file mode 100644
index 6551b31..0000000
--- a/www-client/chromium/files/chromium-93-site_settings_helper-initialzation.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 7ef6d4ad7ddc7f0c4124bc538c4bd3a8efdd37cd Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 4 Jun 2021 06:52:30 +0000
-Subject: [PATCH] GCC: fix brace-initialization with NoDestructor
-
-GCC requires brace-initialization for NoDestructor and
-std::vector<T> for base_types. Therefore change to double
-brace-initialzation.
----
- chrome/browser/ui/webui/settings/site_settings_helper.cc | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/chrome/browser/ui/webui/settings/site_settings_helper.cc b/chrome/browser/ui/webui/settings/site_settings_helper.cc
-index 7831684..4478800 100644
---- a/chrome/browser/ui/webui/settings/site_settings_helper.cc
-+++ b/chrome/browser/ui/webui/settings/site_settings_helper.cc
-@@ -410,7 +410,7 @@ const std::vector<ContentSettingsType>& GetVisiblePermissionCategories() {
- // First build the list of permissions that will be shown regardless of
- // `origin`. Some categories such as COOKIES store their data in a custom way,
- // so are not included here.
-- static base::NoDestructor<std::vector<ContentSettingsType>> base_types({
-+ static base::NoDestructor<std::vector<ContentSettingsType>> base_types{{
- ContentSettingsType::AR, ContentSettingsType::AUTOMATIC_DOWNLOADS,
- ContentSettingsType::BACKGROUND_SYNC,
- ContentSettingsType::CLIPBOARD_READ_WRITE,
-@@ -429,7 +429,7 @@ const std::vector<ContentSettingsType>& GetVisiblePermissionCategories() {
- ContentSettingsType::SENSORS, ContentSettingsType::SERIAL_GUARD,
- ContentSettingsType::SOUND, ContentSettingsType::USB_GUARD,
- ContentSettingsType::VR,
-- });
-+ }};
- static bool initialized = false;
- if (!initialized) {
- // The permission categories in this block are only shown when running with
---
-2.31.1
-
diff --git a/www-client/chromium/files/chromium-93-sms-fetcher-include.patch b/www-client/chromium/files/chromium-93-sms-fetcher-include.patch
deleted file mode 100644
index 91d92de..0000000
--- a/www-client/chromium/files/chromium-93-sms-fetcher-include.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/chrome/browser/sharing/sms/sms_remote_fetcher.h b/chrome/browser/sharing/sms/sms_remote_fetcher.h
-index 2cbe6acdd..678c1b2e5 100644
---- a/chrome/browser/sharing/sms/sms_remote_fetcher.h
-+++ b/chrome/browser/sharing/sms/sms_remote_fetcher.h
-@@ -6,6 +6,7 @@
- #define CHROME_BROWSER_SHARING_SMS_SMS_REMOTE_FETCHER_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
- #include "third_party/abseil-cpp/absl/types/optional.h"
-diff --git a/content/public/browser/sms_fetcher.h b/content/public/browser/sms_fetcher.h
-index 13f683243..983d81891 100644
---- a/content/public/browser/sms_fetcher.h
-+++ b/content/public/browser/sms_fetcher.h
-@@ -6,6 +6,7 @@
- #define CONTENT_PUBLIC_BROWSER_SMS_FETCHER_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/observer_list_types.h"
- #include "content/common/content_export.h"
diff --git a/www-client/chromium/files/chromium-93-sql-virtual-cursor.patch b/www-client/chromium/files/chromium-93-sql-virtual-cursor.patch
deleted file mode 100644
index a4864ba..0000000
--- a/www-client/chromium/files/chromium-93-sql-virtual-cursor.patch
+++ /dev/null
@@ -1,231 +0,0 @@
-From 80368f8ba7a8bab13440463a254888311efe3986 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Tue, 04 May 2021 15:00:19 +0000
-Subject: [PATCH] sql: make VirtualCursor standard layout type
-
-sql::recover::VirtualCursor needs to be a standard layout type, but
-has members of type std::unique_ptr. However, std::unique_ptr is not
-guaranteed to be standard layout. Compiling with clang combined with
-gcc-11 libstdc++ fails because of this. Replace std::unique_ptr with
-raw pointers.
-
-Bug: 1189788
-Change-Id: Ia6dc388cc5ef1c0f2afc75f8ca45b9f12687ca9c
----
-
-diff --git a/sql/recover_module/btree.cc b/sql/recover_module/btree.cc
-index 9ecaafe..839318a 100644
---- a/sql/recover_module/btree.cc
-+++ b/sql/recover_module/btree.cc
-@@ -135,16 +135,25 @@
- "Move the destructor to the .cc file if it's non-trival");
- #endif // !DCHECK_IS_ON()
-
--LeafPageDecoder::LeafPageDecoder(DatabasePageReader* db_reader) noexcept
-- : page_id_(db_reader->page_id()),
-- db_reader_(db_reader),
-- cell_count_(ComputeCellCount(db_reader)),
-- next_read_index_(0),
-- last_record_size_(0) {
-+void LeafPageDecoder::Initialize(DatabasePageReader* db_reader) {
-+ DCHECK(db_reader);
- DCHECK(IsOnValidPage(db_reader));
-+ page_id_ = db_reader->page_id();
-+ db_reader_ = db_reader;
-+ cell_count_ = ComputeCellCount(db_reader);
-+ next_read_index_ = 0;
-+ last_record_size_ = 0;
- DCHECK(DatabasePageReader::IsValidPageId(page_id_));
- }
-
-+void LeafPageDecoder::Reset() {
-+ db_reader_ = nullptr;
-+ page_id_ = 0;
-+ cell_count_ = 0;
-+ next_read_index_ = 0;
-+ last_record_size_ = 0;
-+}
-+
- bool LeafPageDecoder::TryAdvance() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(CanAdvance());
-diff --git a/sql/recover_module/btree.h b/sql/recover_module/btree.h
-index d76d076..33114b0 100644
---- a/sql/recover_module/btree.h
-+++ b/sql/recover_module/btree.h
-@@ -102,7 +102,7 @@
- //
- // |db_reader| must have been used to read an inner page of a table B-tree.
- // |db_reader| must outlive this instance.
-- explicit LeafPageDecoder(DatabasePageReader* db_reader) noexcept;
-+ explicit LeafPageDecoder() noexcept = default;
- ~LeafPageDecoder() noexcept = default;
-
- LeafPageDecoder(const LeafPageDecoder&) = delete;
-@@ -150,6 +150,15 @@
- // read as long as CanAdvance() returns true.
- bool TryAdvance();
-
-+ // Initialize with DatabasePageReader
-+ void Initialize(DatabasePageReader* db_reader);
-+
-+ // Reset internal DatabasePageReader
-+ void Reset();
-+
-+ // True if DatabasePageReader is valid
-+ bool IsValid() { return (db_reader_ != nullptr); }
-+
- // True if the given reader may point to an inner page in a table B-tree.
- //
- // The last ReadPage() call on |db_reader| must have succeeded.
-@@ -163,14 +172,14 @@
- static int ComputeCellCount(DatabasePageReader* db_reader);
-
- // The number of the B-tree page this reader is reading.
-- const int64_t page_id_;
-+ int64_t page_id_;
- // Used to read the tree page.
- //
- // Raw pointer usage is acceptable because this instance's owner is expected
- // to ensure that the DatabasePageReader outlives this.
-- DatabasePageReader* const db_reader_;
-+ DatabasePageReader* db_reader_;
- // Caches the ComputeCellCount() value for this reader's page.
-- const int cell_count_ = ComputeCellCount(db_reader_);
-+ int cell_count_;
-
- // The reader's cursor state.
- //
-diff --git a/sql/recover_module/cursor.cc b/sql/recover_module/cursor.cc
-index 0029ff9..42548bc 100644
---- a/sql/recover_module/cursor.cc
-+++ b/sql/recover_module/cursor.cc
-@@ -26,7 +26,7 @@
- int VirtualCursor::First() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- inner_decoders_.clear();
-- leaf_decoder_ = nullptr;
-+ leaf_decoder_.Reset();
-
- AppendPageDecoder(table_->root_page_id());
- return Next();
-@@ -36,18 +36,18 @@
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- record_reader_.Reset();
-
-- while (!inner_decoders_.empty() || leaf_decoder_.get()) {
-- if (leaf_decoder_.get()) {
-- if (!leaf_decoder_->CanAdvance()) {
-+ while (!inner_decoders_.empty() || leaf_decoder_.IsValid()) {
-+ if (leaf_decoder_.IsValid()) {
-+ if (!leaf_decoder_.CanAdvance()) {
- // The leaf has been exhausted. Remove it from the DFS stack.
-- leaf_decoder_ = nullptr;
-+ leaf_decoder_.Reset();
- continue;
- }
-- if (!leaf_decoder_->TryAdvance())
-+ if (!leaf_decoder_.TryAdvance())
- continue;
-
-- if (!payload_reader_.Initialize(leaf_decoder_->last_record_size(),
-- leaf_decoder_->last_record_offset())) {
-+ if (!payload_reader_.Initialize(leaf_decoder_.last_record_size(),
-+ leaf_decoder_.last_record_offset())) {
- continue;
- }
- if (!record_reader_.Initialize())
-@@ -99,13 +99,13 @@
- int64_t VirtualCursor::RowId() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(record_reader_.IsInitialized());
-- DCHECK(leaf_decoder_.get());
-- return leaf_decoder_->last_record_rowid();
-+ DCHECK(leaf_decoder_.IsValid());
-+ return leaf_decoder_.last_record_rowid();
- }
-
- void VirtualCursor::AppendPageDecoder(int page_id) {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-- DCHECK(leaf_decoder_.get() == nullptr)
-+ DCHECK(!leaf_decoder_.IsValid())
- << __func__
- << " must only be called when the current path has no leaf decoder";
-
-@@ -113,7 +113,7 @@
- return;
-
- if (LeafPageDecoder::IsOnValidPage(&db_reader_)) {
-- leaf_decoder_ = std::make_unique<LeafPageDecoder>(&db_reader_);
-+ leaf_decoder_.Initialize(&db_reader_);
- return;
- }
-
-diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
-index afcd690..b15c31d 100644
---- a/sql/recover_module/cursor.h
-+++ b/sql/recover_module/cursor.h
-@@ -129,7 +129,7 @@
- std::vector<std::unique_ptr<InnerPageDecoder>> inner_decoders_;
-
- // Decodes the leaf page containing records.
-- std::unique_ptr<LeafPageDecoder> leaf_decoder_;
-+ LeafPageDecoder leaf_decoder_;
-
- SEQUENCE_CHECKER(sequence_checker_);
- };
-diff --git a/sql/recover_module/pager.cc b/sql/recover_module/pager.cc
-index 58e75de..5fe9620 100644
---- a/sql/recover_module/pager.cc
-+++ b/sql/recover_module/pager.cc
-@@ -23,8 +23,7 @@
- "ints are not appropriate for representing page IDs");
-
- DatabasePageReader::DatabasePageReader(VirtualTable* table)
-- : page_data_(std::make_unique<uint8_t[]>(table->page_size())),
-- table_(table) {
-+ : page_data_(), table_(table) {
- DCHECK(table != nullptr);
- DCHECK(IsValidPageSize(table->page_size()));
- }
-@@ -57,8 +56,8 @@
- std::numeric_limits<int64_t>::max(),
- "The |read_offset| computation above may overflow");
-
-- int sqlite_status =
-- RawRead(sqlite_file, read_size, read_offset, page_data_.get());
-+ int sqlite_status = RawRead(sqlite_file, read_size, read_offset,
-+ const_cast<uint8_t*>(page_data_.data()));
-
- // |page_id_| needs to be set to kInvalidPageId if the read failed.
- // Otherwise, future ReadPage() calls with the previous |page_id_| value
-diff --git a/sql/recover_module/pager.h b/sql/recover_module/pager.h
-index 0e388ddc..99314e3 100644
---- a/sql/recover_module/pager.h
-+++ b/sql/recover_module/pager.h
-@@ -5,6 +5,7 @@
- #ifndef SQL_RECOVER_MODULE_PAGER_H_
- #define SQL_RECOVER_MODULE_PAGER_H_
-
-+#include <array>
- #include <cstdint>
- #include <memory>
-
-@@ -70,7 +71,7 @@
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK_NE(page_id_, kInvalidPageId)
- << "Successful ReadPage() required before accessing pager state";
-- return page_data_.get();
-+ return page_data_.data();
- }
-
- // The number of bytes in the page read by the last ReadPage() call.
-@@ -137,7 +138,7 @@
- int page_id_ = kInvalidPageId;
- // Stores the bytes of the last page successfully read by ReadPage().
- // The content is undefined if the last call to ReadPage() did not succeed.
-- const std::unique_ptr<uint8_t[]> page_data_;
-+ const std::array<uint8_t, kMaxPageSize> page_data_;
- // Raw pointer usage is acceptable because this instance's owner is expected
- // to ensure that the VirtualTable outlives this.
- VirtualTable* const table_;
diff --git a/www-client/chromium/files/chromium-93-tint-include.patch b/www-client/chromium/files/chromium-93-tint-include.patch
deleted file mode 100644
index 4bfd448..0000000
--- a/www-client/chromium/files/chromium-93-tint-include.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 014e1fb4c7d05f853a24bfa4b4188b99ba9f3907 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 4 Jun 2021 21:11:05 +0000
-Subject: [PATCH] IWYU: add cstddef for size_t
-
----
- third_party/dawn/third_party/tint/src/sem/block_statement.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/dawn/third_party/tint/src/sem/block_statement.h b/third_party/dawn/third_party/tint/src/sem/block_statement.h
-index f8c8113..9cbd64d 100644
---- a/third_party/dawn/third_party/tint/src/sem/block_statement.h
-+++ b/third_party/dawn/third_party/tint/src/sem/block_statement.h
-@@ -15,6 +15,7 @@
- #ifndef SRC_SEM_BLOCK_STATEMENT_H_
- #define SRC_SEM_BLOCK_STATEMENT_H_
-
-+#include <cstddef>
- #include <vector>
-
- #include "src/sem/statement.h"
---
-2.31.1
-
diff --git a/www-client/chromium/files/chromium-93-ui-event-include.patch b/www-client/chromium/files/chromium-93-ui-event-include.patch
deleted file mode 100644
index 8431b6b..0000000
--- a/www-client/chromium/files/chromium-93-ui-event-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/ui/events/event_handler.h b/ui/events/event_handler.h
-index 3870be355..81ebc0e7f 100644
---- a/ui/events/event_handler.h
-+++ b/ui/events/event_handler.h
-@@ -5,6 +5,8 @@
- #ifndef UI_EVENTS_EVENT_HANDLER_H_
- #define UI_EVENTS_EVENT_HANDLER_H_
-
-+#include <vector>
-+
- #include "base/containers/stack.h"
- #include "base/strings/string_piece.h"
- #include "ui/events/events_export.h"
diff --git a/www-client/chromium/files/chromium-93-url-loader-throttles-include.patch b/www-client/chromium/files/chromium-93-url-loader-throttles-include.patch
deleted file mode 100644
index d4be13f..0000000
--- a/www-client/chromium/files/chromium-93-url-loader-throttles-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/content/public/browser/url_loader_throttles.h b/content/public/browser/url_loader_throttles.h
-index 0e67d38f7..aa0290118 100644
---- a/content/public/browser/url_loader_throttles.h
-+++ b/content/public/browser/url_loader_throttles.h
-@@ -5,6 +5,8 @@
- #ifndef CONTENT_PUBLIC_BROWSER_URL_LOADER_THROTTLES_H_
- #define CONTENT_PUBLIC_BROWSER_URL_LOADER_THROTTLES_H_
-
-+#include <vector>
-+
- #include "base/callback.h"
- #include "content/common/content_export.h"
-
diff --git a/www-client/chromium/files/chromium-93-webapp-include.patch b/www-client/chromium/files/chromium-93-webapp-include.patch
deleted file mode 100644
index 39f6058..0000000
--- a/www-client/chromium/files/chromium-93-webapp-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/chrome/browser/web_applications/components/web_app_shortcut_linux.h b/chrome/browser/web_applications/components/web_app_shortcut_linux.h
-index 4f1e5b93e..3d28e8b52 100644
---- a/chrome/browser/web_applications/components/web_app_shortcut_linux.h
-+++ b/chrome/browser/web_applications/components/web_app_shortcut_linux.h
-@@ -6,6 +6,7 @@
- #define CHROME_BROWSER_WEB_APPLICATIONS_COMPONENTS_WEB_APP_SHORTCUT_LINUX_H_
-
- #include <string>
-+#include <vector>
-
- #include "base/callback.h"
-
diff --git a/www-client/chromium/files/chromium-93-worksp-ext-include.patch b/www-client/chromium/files/chromium-93-worksp-ext-include.patch
deleted file mode 100644
index c91b9b2..0000000
--- a/www-client/chromium/files/chromium-93-worksp-ext-include.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-diff --git a/device/bluetooth/bluetooth_low_energy_scan_filter.h b/device/bluetooth/bluetooth_low_energy_scan_filter.h
-index 0af0b3108..cfec68cb1 100644
---- a/device/bluetooth/bluetooth_low_energy_scan_filter.h
-+++ b/device/bluetooth/bluetooth_low_energy_scan_filter.h
-@@ -7,6 +7,7 @@
-
- #include <stddef.h>
- #include <stdint.h>
-+#include <memory>
- #include <vector>
-
- #include "base/time/time.h"
-diff --git a/ui/base/class_property.h b/ui/base/class_property.h
-index f7b2f5598..88b49386a 100644
---- a/ui/base/class_property.h
-+++ b/ui/base/class_property.h
-@@ -8,6 +8,7 @@
- #include <stdint.h>
-
- #include <map>
-+#include <memory>
- #include <set>
- #include <type_traits>
-
-diff --git a/ui/platform_window/extensions/workspace_extension.cc b/ui/platform_window/extensions/workspace_extension.cc
-index b4e21e0f2..78b5d6562 100644
---- a/ui/platform_window/extensions/workspace_extension.cc
-+++ b/ui/platform_window/extensions/workspace_extension.cc
-@@ -4,6 +4,8 @@
-
- #include "ui/platform_window/extensions/workspace_extension.h"
-
-+#include <memory>
-+
- #include "ui/base/class_property.h"
- #include "ui/platform_window/platform_window.h"
-
diff --git a/www-client/chromium/files/chromium-94-ConversionStorageSql-lambda.patch b/www-client/chromium/files/chromium-94-ConversionStorageSql-lambda.patch
deleted file mode 100644
index 6746fec..0000000
--- a/www-client/chromium/files/chromium-94-ConversionStorageSql-lambda.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 45bea088d3771c7ff9f77173e451422452c031b3 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Mon, 02 Aug 2021 16:57:05 +0000
-Subject: [PATCH] GCC: drop WARN_USED_RESULT in lambda in ConversionStorageSql
-
-GCC 9.3 only allows GNU attributes between [] and () in lambda
-expressions. See https://gcc.gnu.org/PR90333 for details. However,
-clang only allows attributes after () only. Seems not strictly
-necessary to enforce the attribute here.
-
-Bug: 819294
-Change-Id: I342deb25239837dea0f6f5e7709b1467789e342b
----
-
-diff --git a/content/browser/conversions/conversion_storage_sql.cc b/content/browser/conversions/conversion_storage_sql.cc
-index 84bc897..b6fc4e9 100644
---- a/content/browser/conversions/conversion_storage_sql.cc
-+++ b/content/browser/conversions/conversion_storage_sql.cc
-@@ -688,9 +688,11 @@
- bool ConversionStorageSql::DeleteExpiredImpressions() {
- const int kMaxDeletesPerBatch = 100;
-
-+ // GCC accepts attribute between [] and () only
-+ // clang accepts attribute after () only
- auto delete_impressions_from_paged_select =
- [this](sql::Statement& statement)
-- VALID_CONTEXT_REQUIRED(sequence_checker_) WARN_UNUSED_RESULT -> bool {
-+ VALID_CONTEXT_REQUIRED(sequence_checker_) -> bool {
- while (true) {
- std::vector<int64_t> impression_ids;
- while (statement.Step()) {
diff --git a/www-client/chromium/files/chromium-94-CustomSpaces-include.patch b/www-client/chromium/files/chromium-94-CustomSpaces-include.patch
deleted file mode 100644
index 0175775..0000000
--- a/www-client/chromium/files/chromium-94-CustomSpaces-include.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 4eeacdaa57b29a079fe09315eb22557c06aa522e Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 13 Aug 2021 12:57:42 +0000
-Subject: [PATCH] IWYU: add memory for std::unique_ptr in blink::CustomSpaces
-
----
- .../blink/renderer/platform/heap/v8_wrapper/custom_spaces.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
-index df0465a..640cb33 100644
---- a/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
-+++ b/third_party/blink/renderer/platform/heap/v8_wrapper/custom_spaces.h
-@@ -5,6 +5,7 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_
- #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_HEAP_V8_WRAPPER_CUSTOM_SPACES_H_
-
-+#include <memory>
- #include <vector>
-
- #include "third_party/blink/renderer/platform/platform_export.h"
---
-2.31.1
-
diff --git a/www-client/chromium/files/chromium-94-compiler.patch b/www-client/chromium/files/chromium-94-compiler.patch
deleted file mode 100644
index 2b63b3b..0000000
--- a/www-client/chromium/files/chromium-94-compiler.patch
+++ /dev/null
@@ -1,218 +0,0 @@
-From f4d0b0eb899005b4b8b6388e1d8bb82cc0018fc8 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Sun, 8 Aug 2021 08:50:00 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 105 ++++++---------------------------
- 1 file changed, 17 insertions(+), 88 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 0bb155a..e95c023 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -291,8 +291,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -530,31 +528,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
--
-- # TODO(crbug.com/1235145): Investigate why/if this should be needed.
-- if (is_win) {
-- cflags += [ "/clang:-ffp-contract=off" ]
-- } else {
-- cflags += [ "-ffp-contract=off" ]
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1216,45 +1189,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1658,7 +1592,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1667,10 +1601,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1679,15 +1609,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2077,7 +1998,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2112,7 +2034,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2152,7 +2075,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2184,7 +2108,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2209,7 +2134,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2328,7 +2254,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2431,7 +2358,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2496,7 +2424,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.31.1
diff --git a/www-client/chromium/files/chromium-94-sql-virtual-cursor.patch b/www-client/chromium/files/chromium-94-sql-virtual-cursor.patch
deleted file mode 100644
index 47b276d..0000000
--- a/www-client/chromium/files/chromium-94-sql-virtual-cursor.patch
+++ /dev/null
@@ -1,216 +0,0 @@
-diff --git a/sql/recover_module/btree.cc b/sql/recover_module/btree.cc
-index cc9420e5c..62fcaaf79 100644
---- a/sql/recover_module/btree.cc
-+++ b/sql/recover_module/btree.cc
-@@ -136,16 +136,25 @@ static_assert(std::is_trivially_destructible<LeafPageDecoder>::value,
- "Move the destructor to the .cc file if it's non-trival");
- #endif // !DCHECK_IS_ON()
-
--LeafPageDecoder::LeafPageDecoder(DatabasePageReader* db_reader) noexcept
-- : page_id_(db_reader->page_id()),
-- db_reader_(db_reader),
-- cell_count_(ComputeCellCount(db_reader)),
-- next_read_index_(0),
-- last_record_size_(0) {
-+void LeafPageDecoder::Initialize(DatabasePageReader* db_reader) {
-+ DCHECK(db_reader);
- DCHECK(IsOnValidPage(db_reader));
-+ page_id_ = db_reader->page_id();
-+ db_reader_ = db_reader;
-+ cell_count_ = ComputeCellCount(db_reader);
-+ next_read_index_ = 0;
-+ last_record_size_ = 0;
- DCHECK(DatabasePageReader::IsValidPageId(page_id_));
- }
-
-+void LeafPageDecoder::Reset() {
-+ db_reader_ = nullptr;
-+ page_id_ = 0;
-+ cell_count_ = 0;
-+ next_read_index_ = 0;
-+ last_record_size_ = 0;
-+}
-+
- bool LeafPageDecoder::TryAdvance() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(CanAdvance());
-diff --git a/sql/recover_module/btree.h b/sql/recover_module/btree.h
-index eaa087a5c..78ce00e05 100644
---- a/sql/recover_module/btree.h
-+++ b/sql/recover_module/btree.h
-@@ -103,7 +103,7 @@ class LeafPageDecoder {
- //
- // |db_reader| must have been used to read an inner page of a table B-tree.
- // |db_reader| must outlive this instance.
-- explicit LeafPageDecoder(DatabasePageReader* db_reader) noexcept;
-+ explicit LeafPageDecoder() noexcept = default;
- ~LeafPageDecoder() noexcept = default;
-
- LeafPageDecoder(const LeafPageDecoder&) = delete;
-@@ -151,6 +151,15 @@ class LeafPageDecoder {
- // read as long as CanAdvance() returns true.
- bool TryAdvance();
-
-+ // Initialize with DatabasePageReader
-+ void Initialize(DatabasePageReader* db_reader);
-+
-+ // Reset internal DatabasePageReader
-+ void Reset();
-+
-+ // True if DatabasePageReader is valid
-+ bool IsValid() { return (db_reader_ != nullptr); }
-+
- // True if the given reader may point to an inner page in a table B-tree.
- //
- // The last ReadPage() call on |db_reader| must have succeeded.
-@@ -164,14 +173,14 @@ class LeafPageDecoder {
- static int ComputeCellCount(DatabasePageReader* db_reader);
-
- // The number of the B-tree page this reader is reading.
-- const int64_t page_id_;
-+ int64_t page_id_;
- // Used to read the tree page.
- //
- // Raw pointer usage is acceptable because this instance's owner is expected
- // to ensure that the DatabasePageReader outlives this.
-- DatabasePageReader* const db_reader_;
-+ DatabasePageReader* db_reader_;
- // Caches the ComputeCellCount() value for this reader's page.
-- const int cell_count_ = ComputeCellCount(db_reader_);
-+ int cell_count_;
-
- // The reader's cursor state.
- //
-diff --git a/sql/recover_module/cursor.cc b/sql/recover_module/cursor.cc
-index 4f827edf1..240de4999 100644
---- a/sql/recover_module/cursor.cc
-+++ b/sql/recover_module/cursor.cc
-@@ -28,7 +28,7 @@ VirtualCursor::~VirtualCursor() {
- int VirtualCursor::First() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- inner_decoders_.clear();
-- leaf_decoder_ = nullptr;
-+ leaf_decoder_.Reset();
-
- AppendPageDecoder(table_->root_page_id());
- return Next();
-@@ -38,18 +38,18 @@ int VirtualCursor::Next() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- record_reader_.Reset();
-
-- while (!inner_decoders_.empty() || leaf_decoder_.get()) {
-- if (leaf_decoder_.get()) {
-- if (!leaf_decoder_->CanAdvance()) {
-+ while (!inner_decoders_.empty() || leaf_decoder_.IsValid()) {
-+ if (leaf_decoder_.IsValid()) {
-+ if (!leaf_decoder_.CanAdvance()) {
- // The leaf has been exhausted. Remove it from the DFS stack.
-- leaf_decoder_ = nullptr;
-+ leaf_decoder_.Reset();
- continue;
- }
-- if (!leaf_decoder_->TryAdvance())
-+ if (!leaf_decoder_.TryAdvance())
- continue;
-
-- if (!payload_reader_.Initialize(leaf_decoder_->last_record_size(),
-- leaf_decoder_->last_record_offset())) {
-+ if (!payload_reader_.Initialize(leaf_decoder_.last_record_size(),
-+ leaf_decoder_.last_record_offset())) {
- continue;
- }
- if (!record_reader_.Initialize())
-@@ -101,13 +101,13 @@ int VirtualCursor::ReadColumn(int column_index,
- int64_t VirtualCursor::RowId() {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(record_reader_.IsInitialized());
-- DCHECK(leaf_decoder_.get());
-- return leaf_decoder_->last_record_rowid();
-+ DCHECK(leaf_decoder_.IsValid());
-+ return leaf_decoder_.last_record_rowid();
- }
-
- void VirtualCursor::AppendPageDecoder(int page_id) {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
-- DCHECK(leaf_decoder_.get() == nullptr)
-+ DCHECK(!leaf_decoder_.IsValid())
- << __func__
- << " must only be called when the current path has no leaf decoder";
-
-@@ -115,7 +115,7 @@ void VirtualCursor::AppendPageDecoder(int page_id) {
- return;
-
- if (LeafPageDecoder::IsOnValidPage(&db_reader_)) {
-- leaf_decoder_ = std::make_unique<LeafPageDecoder>(&db_reader_);
-+ leaf_decoder_.Initialize(&db_reader_);
- return;
- }
-
-diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
-index afcd6900e..b15c31d42 100644
---- a/sql/recover_module/cursor.h
-+++ b/sql/recover_module/cursor.h
-@@ -129,7 +129,7 @@ class VirtualCursor {
- std::vector<std::unique_ptr<InnerPageDecoder>> inner_decoders_;
-
- // Decodes the leaf page containing records.
-- std::unique_ptr<LeafPageDecoder> leaf_decoder_;
-+ LeafPageDecoder leaf_decoder_;
-
- SEQUENCE_CHECKER(sequence_checker_);
- };
-diff --git a/sql/recover_module/pager.cc b/sql/recover_module/pager.cc
-index 58e75de27..5fe96204e 100644
---- a/sql/recover_module/pager.cc
-+++ b/sql/recover_module/pager.cc
-@@ -23,8 +23,7 @@ static_assert(DatabasePageReader::kMaxPageId <= std::numeric_limits<int>::max(),
- "ints are not appropriate for representing page IDs");
-
- DatabasePageReader::DatabasePageReader(VirtualTable* table)
-- : page_data_(std::make_unique<uint8_t[]>(table->page_size())),
-- table_(table) {
-+ : page_data_(), table_(table) {
- DCHECK(table != nullptr);
- DCHECK(IsValidPageSize(table->page_size()));
- }
-@@ -57,8 +56,8 @@ int DatabasePageReader::ReadPage(int page_id) {
- std::numeric_limits<int64_t>::max(),
- "The |read_offset| computation above may overflow");
-
-- int sqlite_status =
-- RawRead(sqlite_file, read_size, read_offset, page_data_.get());
-+ int sqlite_status = RawRead(sqlite_file, read_size, read_offset,
-+ const_cast<uint8_t*>(page_data_.data()));
-
- // |page_id_| needs to be set to kInvalidPageId if the read failed.
- // Otherwise, future ReadPage() calls with the previous |page_id_| value
-diff --git a/sql/recover_module/pager.h b/sql/recover_module/pager.h
-index 5976d2167..8dcffa3f2 100644
---- a/sql/recover_module/pager.h
-+++ b/sql/recover_module/pager.h
-@@ -5,6 +5,7 @@
- #ifndef SQL_RECOVER_MODULE_PAGER_H_
- #define SQL_RECOVER_MODULE_PAGER_H_
-
-+#include <array>
- #include <cstdint>
- #include <memory>
- #include <ostream>
-@@ -71,7 +72,7 @@ class DatabasePageReader {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK_NE(page_id_, kInvalidPageId)
- << "Successful ReadPage() required before accessing pager state";
-- return page_data_.get();
-+ return page_data_.data();
- }
-
- // The number of bytes in the page read by the last ReadPage() call.
-@@ -138,7 +139,7 @@ class DatabasePageReader {
- int page_id_ = kInvalidPageId;
- // Stores the bytes of the last page successfully read by ReadPage().
- // The content is undefined if the last call to ReadPage() did not succeed.
-- const std::unique_ptr<uint8_t[]> page_data_;
-+ const std::array<uint8_t, kMaxPageSize> page_data_;
- // Raw pointer usage is acceptable because this instance's owner is expected
- // to ensure that the VirtualTable outlives this.
- VirtualTable* const table_;
diff --git a/www-client/chromium/files/chromium-94-translate.patch b/www-client/chromium/files/chromium-94-translate.patch
deleted file mode 100644
index 507e7c9..0000000
--- a/www-client/chromium/files/chromium-94-translate.patch
+++ /dev/null
@@ -1,98 +0,0 @@
-From 7cfc45880ce2b181c318fff2a336f655e294644f Mon Sep 17 00:00:00 2001
-From: mcrouse <mcrouse@google.com>
-Date: Fri, 20 Aug 2021 17:58:16 -0700
-Subject: [PATCH] [Translate] Fix migration of deprecated pref.
-
-This migrates old prefs to use a default time rather than a value.
-
-Bug: 1241228
-Change-Id: I07efec68aa0c06b0bbb13b51657a1c60b2bfcf7e
----
-
-diff --git a/components/translate/core/browser/translate_prefs.cc b/components/translate/core/browser/translate_prefs.cc
-index f599ec6..375f805 100644
---- a/components/translate/core/browser/translate_prefs.cc
-+++ b/components/translate/core/browser/translate_prefs.cc
-@@ -944,8 +944,7 @@
- // Migration should only be necessary once but there could still be old
- // Chrome instances that sync the old preference, so do it once per
- // startup.
-- static bool migrated = false;
-- if (migrated)
-+ if (migrated_)
- return;
- DictionaryPrefUpdate never_prompt_list_update(prefs_,
- kPrefNeverPromptSitesWithTime);
-@@ -954,11 +953,16 @@
- const base::Value* list = prefs_->GetList(kPrefNeverPromptSitesDeprecated);
- for (auto& site : list->GetList()) {
- if (!never_prompt_list->FindKey(site.GetString())) {
-- never_prompt_list->SetKey(site.GetString(), base::Value(0));
-+ never_prompt_list->SetKey(site.GetString(),
-+ base::TimeToValue(base::Time::Now()));
- }
- }
- }
-- migrated = true;
-+ migrated_ = true;
-+}
-+
-+void TranslatePrefs::ResetMigrationForTesting() {
-+ migrated_ = false;
- }
-
- bool TranslatePrefs::IsValueOnNeverPromptList(const char* pref_id,
-diff --git a/components/translate/core/browser/translate_prefs.h b/components/translate/core/browser/translate_prefs.h
-index b822bed..6d58fd7 100644
---- a/components/translate/core/browser/translate_prefs.h
-+++ b/components/translate/core/browser/translate_prefs.h
-@@ -339,6 +339,9 @@
-
- static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
-
-+ // Reset |migrated_| to enable testing of pref migrations.
-+ void ResetMigrationForTesting();
-+
- private:
- FRIEND_TEST_ALL_PREFIXES(TranslatePrefsTest,
- UpdateLanguageListFeatureEnabled);
-@@ -356,6 +359,7 @@
- FRIEND_TEST_ALL_PREFIXES(TranslatePrefsTest, MoveLanguageUp);
- FRIEND_TEST_ALL_PREFIXES(TranslatePrefsTest, MoveLanguageDown);
- FRIEND_TEST_ALL_PREFIXES(TranslatePrefsTest, ResetBlockedLanguagesToDefault);
-+ FRIEND_TEST_ALL_PREFIXES(TranslatePrefsTest, MigrateNeverPromptSites);
- friend class TranslatePrefsTest;
-
- void ClearNeverPromptSiteList();
-@@ -385,6 +389,9 @@
-
- std::unique_ptr<language::LanguagePrefs> language_prefs_;
-
-+ // Whether any deprecated prefs have been successfully migrated.
-+ bool migrated_ = false;
-+
- DISALLOW_COPY_AND_ASSIGN(TranslatePrefs);
- };
-
-diff --git a/components/translate/core/browser/translate_prefs_unittest.cc b/components/translate/core/browser/translate_prefs_unittest.cc
-index 601b834..3feb232c 100644
---- a/components/translate/core/browser/translate_prefs_unittest.cc
-+++ b/components/translate/core/browser/translate_prefs_unittest.cc
-@@ -931,6 +931,17 @@
- accept_languages_tester_->ExpectAcceptLanguagePrefs("en,it,es,zh,fr");
- }
-
-+TEST_F(TranslatePrefsTest, MigrateNeverPromptSites) {
-+ translate_prefs_->AddValueToNeverPromptList(
-+ TranslatePrefs::kPrefNeverPromptSitesDeprecated, "unmigrated.com");
-+ translate_prefs_->ResetMigrationForTesting();
-+ translate_prefs_->MigrateNeverPromptSites();
-+ EXPECT_EQ(
-+ std::vector<std::string>({"unmigrated.com"}),
-+ translate_prefs_->GetNeverPromptSitesBetween(
-+ base::Time::Now() - base::TimeDelta::FromDays(1), base::Time::Max()));
-+}
-+
- TEST_F(TranslatePrefsTest, SiteNeverPromptList) {
- translate_prefs_->AddSiteToNeverPromptList("a.com");
- base::Time t = base::Time::Now();
diff --git a/www-client/chromium/files/chromium-95-hash_traits-include.patch b/www-client/chromium/files/chromium-95-hash_traits-include.patch
deleted file mode 100644
index 62e559d..0000000
--- a/www-client/chromium/files/chromium-95-hash_traits-include.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 45441a733187d7462f30b433a663ef7403990d87 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 3 Sep 2021 16:19:32 +0000
-Subject: [PATCH] IWYU: add string.h for memset in hash_traits
-
----
- third_party/blink/renderer/platform/wtf/hash_traits.h | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/third_party/blink/renderer/platform/wtf/hash_traits.h b/third_party/blink/renderer/platform/wtf/hash_traits.h
-index ca5ed2a..67d1724 100644
---- a/third_party/blink/renderer/platform/wtf/hash_traits.h
-+++ b/third_party/blink/renderer/platform/wtf/hash_traits.h
-@@ -22,10 +22,13 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_HASH_TRAITS_H_
- #define THIRD_PARTY_BLINK_RENDERER_PLATFORM_WTF_HASH_TRAITS_H_
-
-+#include <string.h>
-+
- #include <limits>
- #include <memory>
- #include <type_traits>
- #include <utility>
-+
- #include "third_party/blink/renderer/platform/wtf/allocator/allocator.h"
- #include "third_party/blink/renderer/platform/wtf/forward.h"
- #include "third_party/blink/renderer/platform/wtf/hash_functions.h"
---
-2.32.0
-
diff --git a/www-client/chromium/files/chromium-95-libyuv-aarch64.patch b/www-client/chromium/files/chromium-95-libyuv-aarch64.patch
deleted file mode 100644
index 8efbaff..0000000
--- a/www-client/chromium/files/chromium-95-libyuv-aarch64.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/third_party/libyuv/source/row_neon64.cc b/third_party/libyuv/source/row_neon64.cc
-index 350c964..2aab413 100644
---- a/third_party/libyuv/source/row_neon64.cc
-+++ b/third_party/libyuv/source/row_neon64.cc
-@@ -1835,7 +1835,7 @@ void ARGBToAB64Row_NEON(const uint8_t* src_argb,
- : "+r"(src_argb), // %0
- "+r"(dst_ab64), // %1
- "+r"(width) // %2
-- : "m"(kShuffleARGBToABGR) // %3
-+ : "Q"(kShuffleARGBToABGR) // %3
- : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
- }
-
-@@ -1859,7 +1859,7 @@ void AR64ToARGBRow_NEON(const uint16_t* src_ar64,
- : "+r"(src_ar64), // %0
- "+r"(dst_argb), // %1
- "+r"(width) // %2
-- : "m"(kShuffleAR64ToARGB) // %3
-+ : "Q"(kShuffleAR64ToARGB) // %3
- : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
- }
-
-@@ -1883,7 +1883,7 @@ void AB64ToARGBRow_NEON(const uint16_t* src_ab64,
- : "+r"(src_ab64), // %0
- "+r"(dst_argb), // %1
- "+r"(width) // %2
-- : "m"(kShuffleAB64ToARGB) // %3
-+ : "Q"(kShuffleAB64ToARGB) // %3
- : "cc", "memory", "v0", "v1", "v2", "v3", "v4");
- }
-
diff --git a/www-client/chromium/files/chromium-95-libyuv-arm.patch b/www-client/chromium/files/chromium-95-libyuv-arm.patch
deleted file mode 100644
index 25a8cdb..0000000
--- a/www-client/chromium/files/chromium-95-libyuv-arm.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/libyuv/source/row_neon.cc b/third_party/libyuv/source/row_neon.cc
-index 6ef6f1c..e4a9e1e 100644
---- a/third_party/libyuv/source/row_neon.cc
-+++ b/third_party/libyuv/source/row_neon.cc
-@@ -2346,7 +2346,7 @@ void ARGBToAB64Row_NEON(const uint8_t* src_argb,
- uint16_t* dst_ab64,
- int width) {
- asm volatile(
-- "vld1.8 q4, %3 \n" // shuffler
-+ "vld1.8 {d8, d9}, %3 \n" // shuffler
- "1: \n"
- "vld1.8 {q0}, [%0]! \n"
- "vld1.8 {q2}, [%0]! \n"
diff --git a/www-client/chromium/files/chromium-95-text_fragments_utils-include.patch b/www-client/chromium/files/chromium-95-text_fragments_utils-include.patch
deleted file mode 100644
index e2d6160..0000000
--- a/www-client/chromium/files/chromium-95-text_fragments_utils-include.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From f48b39ee129132337b93e905c8f304c65766742a Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Tue, 31 Aug 2021 12:22:35 +0000
-Subject: [PATCH] IWYU: add string.h for strlen in text_fragments_utils
-
-Remove namespace std from strlen to avoid including cstring as well.
----
- .../shared_highlighting/core/common/text_fragments_utils.cc | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/components/shared_highlighting/core/common/text_fragments_utils.cc b/components/shared_highlighting/core/common/text_fragments_utils.cc
-index 9f39ce6..389c09c 100644
---- a/components/shared_highlighting/core/common/text_fragments_utils.cc
-+++ b/components/shared_highlighting/core/common/text_fragments_utils.cc
-@@ -4,6 +4,8 @@
-
- #include "components/shared_highlighting/core/common/text_fragments_utils.h"
-
-+#include <string.h>
-+
- #include <sstream>
-
- #include "base/json/json_writer.h"
-@@ -54,8 +56,8 @@ bool SplitUrlTextFragmentDirective(const std::string& full_url,
-
- // We only want to keep what's after the delimiter.
- *highlight_directive =
-- full_url.substr(pos + std::strlen(kFragmentsUrlDelimiter) +
-- std::strlen(kFragmentParameterName));
-+ full_url.substr(pos + strlen(kFragmentsUrlDelimiter) +
-+ strlen(kFragmentParameterName));
- return true;
- }
-
---
-2.31.1
-
diff --git a/www-client/chromium/files/chromium-96-AppliedTextDecoration-include.patch b/www-client/chromium/files/chromium-96-AppliedTextDecoration-include.patch
deleted file mode 100644
index 26b7d0b..0000000
--- a/www-client/chromium/files/chromium-96-AppliedTextDecoration-include.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 7387c3ccedb190a8d971762b89e1a75c2289537d Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Sat, 25 Sep 2021 20:52:05 +0000
-Subject: [PATCH] IWYU: add memory for std::unique_ptr in AppliedTextDecoration
-
----
- third_party/blink/renderer/core/style/applied_text_decoration.h | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/third_party/blink/renderer/core/style/applied_text_decoration.h b/third_party/blink/renderer/core/style/applied_text_decoration.h
-index b79dc4d..cc050ff 100644
---- a/third_party/blink/renderer/core/style/applied_text_decoration.h
-+++ b/third_party/blink/renderer/core/style/applied_text_decoration.h
-@@ -5,6 +5,8 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_STYLE_APPLIED_TEXT_DECORATION_H_
- #define THIRD_PARTY_BLINK_RENDERER_CORE_STYLE_APPLIED_TEXT_DECORATION_H_
-
-+#include <memory>
-+
- #include "third_party/blink/renderer/core/style/computed_style_constants.h"
- #include "third_party/blink/renderer/core/style/text_decoration_thickness.h"
- #include "third_party/blink/renderer/platform/geometry/length.h"
---
-2.32.0
-
diff --git a/www-client/chromium/files/chromium-96-EnumTable-crash.patch b/www-client/chromium/files/chromium-96-EnumTable-crash.patch
deleted file mode 100644
index 9736739..0000000
--- a/www-client/chromium/files/chromium-96-EnumTable-crash.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff --git a/components/cast_channel/enum_table.h b/components/cast_channel/enum_table.h
-index aad9e08..2f3fcad 100644
---- a/components/cast_channel/enum_table.h
-+++ b/components/cast_channel/enum_table.h
-@@ -8,6 +8,7 @@
- #include <cstdint>
- #include <cstring>
- #include <ostream>
-+#include <vector>
-
- #include "base/check_op.h"
- #include "base/macros.h"
-@@ -188,7 +189,6 @@ class
- inline constexpr GenericEnumTableEntry(int32_t value);
- inline constexpr GenericEnumTableEntry(int32_t value, base::StringPiece str);
-
-- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete;
- GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete;
-
- private:
-@@ -254,7 +254,6 @@ class EnumTable {
- constexpr Entry(E value, base::StringPiece str)
- : GenericEnumTableEntry(static_cast<int32_t>(value), str) {}
-
-- Entry(const Entry&) = delete;
- Entry& operator=(const Entry&) = delete;
- };
-
-@@ -313,15 +312,14 @@ class EnumTable {
- if (is_sorted_) {
- const std::size_t index = static_cast<std::size_t>(value);
- if (ANALYZER_ASSUME_TRUE(index < data_.size())) {
-- const auto& entry = data_.begin()[index];
-+ const auto& entry = data_[index];
- if (ANALYZER_ASSUME_TRUE(entry.has_str()))
- return entry.str();
- }
- return absl::nullopt;
- }
- return GenericEnumTableEntry::FindByValue(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), static_cast<int32_t>(value));
-+ &data_[0], data_.size(), static_cast<int32_t>(value));
- }
-
- // This overload of GetString is designed for cases where the argument is a
-@@ -349,8 +347,7 @@ class EnumTable {
- // enum value directly.
- absl::optional<E> GetEnum(base::StringPiece str) const {
- auto* entry = GenericEnumTableEntry::FindByString(
-- reinterpret_cast<const GenericEnumTableEntry*>(data_.begin()),
-- data_.size(), str);
-+ &data_[0], data_.size(), str);
- return entry ? static_cast<E>(entry->value) : absl::optional<E>();
- }
-
-@@ -365,7 +362,7 @@ class EnumTable {
- // Align the data on a cache line boundary.
- alignas(64)
- #endif
-- std::initializer_list<Entry> data_;
-+ const std::vector<Entry> data_;
- bool is_sorted_;
-
- constexpr EnumTable(std::initializer_list<Entry> data, bool is_sorted)
-@@ -377,8 +374,8 @@ class EnumTable {
-
- for (std::size_t i = 0; i < data.size(); i++) {
- for (std::size_t j = i + 1; j < data.size(); j++) {
-- const Entry& ei = data.begin()[i];
-- const Entry& ej = data.begin()[j];
-+ const Entry& ei = data[i];
-+ const Entry& ej = data[j];
- DCHECK(ei.value != ej.value)
- << "Found duplicate enum values at indices " << i << " and " << j;
- DCHECK(!(ei.has_str() && ej.has_str() && ei.str() == ej.str()))
diff --git a/www-client/chromium/files/chromium-96-ax_platform-list-init.patch b/www-client/chromium/files/chromium-96-ax_platform-list-init.patch
deleted file mode 100644
index 49adba4..0000000
--- a/www-client/chromium/files/chromium-96-ax_platform-list-init.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/ui/accessibility/platform/ax_platform_node_auralinux.cc b/ui/accessibility/platform/ax_platform_node_auralinux.cc
-index aff693dea..834c328d1 100644
---- a/ui/accessibility/platform/ax_platform_node_auralinux.cc
-+++ b/ui/accessibility/platform/ax_platform_node_auralinux.cc
-@@ -5136,8 +5136,8 @@ std::pair<int, int> AXPlatformNodeAuraLinux::GetSelectionOffsetsForAtk() {
- std::vector<ax::mojom::Action> AXPlatformNodeAuraLinux::GetSupportedActions()
- const {
- static const base::NoDestructor<std::vector<ax::mojom::Action>>
-- kActionsThatCanBeExposedViaAtkAction(
-- {ax::mojom::Action::kDecrement, ax::mojom::Action::kIncrement});
-+ kActionsThatCanBeExposedViaAtkAction{
-+ {ax::mojom::Action::kDecrement, ax::mojom::Action::kIncrement}};
-
- // The default action is always included and exposed at the first index.
- std::vector<ax::mojom::Action> supported_actions = {
diff --git a/www-client/chromium/files/chromium-96-command_line-include.patch b/www-client/chromium/files/chromium-96-command_line-include.patch
deleted file mode 100644
index 576943b..0000000
--- a/www-client/chromium/files/chromium-96-command_line-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/base/command_line.h b/base/command_line.h
-index 706726a73..ad0281283 100644
---- a/base/command_line.h
-+++ b/base/command_line.h
-@@ -19,6 +19,7 @@
- #include <stddef.h>
- #include <functional>
- #include <map>
-+#include <memory>
- #include <string>
- #include <vector>
-
diff --git a/www-client/chromium/files/chromium-96-compiler.patch b/www-client/chromium/files/chromium-96-compiler.patch
deleted file mode 100644
index 9b4b408..0000000
--- a/www-client/chromium/files/chromium-96-compiler.patch
+++ /dev/null
@@ -1,200 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 67b7097dd..f21f7435a 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -292,8 +292,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -532,24 +530,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1240,45 +1220,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1558,7 +1499,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1567,10 +1508,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1579,15 +1516,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1955,7 +1883,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -1995,7 +1924,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2035,7 +1965,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2068,7 +1999,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2094,7 +2026,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- rustflags = [ "-Copt-level=1" ]
- ldflags = common_optimize_on_ldflags
-@@ -2214,7 +2147,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2328,7 +2262,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2400,7 +2335,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-96-coupondb-include.patch b/www-client/chromium/files/chromium-96-coupondb-include.patch
deleted file mode 100644
index d0938d2..0000000
--- a/www-client/chromium/files/chromium-96-coupondb-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/commerce/coupons/coupon_db.h b/chrome/browser/commerce/coupons/coupon_db.h
-index f0758f43d..93e2dd3b5 100644
---- a/chrome/browser/commerce/coupons/coupon_db.h
-+++ b/chrome/browser/commerce/coupons/coupon_db.h
-@@ -5,6 +5,8 @@
- #ifndef CHROME_BROWSER_COMMERCE_COUPONS_COUPON_DB_H_
- #define CHROME_BROWSER_COMMERCE_COUPONS_COUPON_DB_H_
-
-+#include <vector>
-+
- #include "base/callback_helpers.h"
- #include "base/memory/weak_ptr.h"
- #include "url/gurl.h"
diff --git a/www-client/chromium/files/chromium-96-drm_render_node_path_finder-include.patch b/www-client/chromium/files/chromium-96-drm_render_node_path_finder-include.patch
deleted file mode 100644
index 2e94f33..0000000
--- a/www-client/chromium/files/chromium-96-drm_render_node_path_finder-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc b/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
-index 06776a7af..d5b7b71a5 100644
---- a/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
-+++ b/ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.cc
-@@ -5,6 +5,7 @@
- #include "ui/ozone/platform/wayland/gpu/drm_render_node_path_finder.h"
-
- #include <fcntl.h>
-+#include <string.h>
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
diff --git a/www-client/chromium/files/chromium-96-restricted_cookie_manager-pair.patch b/www-client/chromium/files/chromium-96-restricted_cookie_manager-pair.patch
deleted file mode 100644
index bd372e1..0000000
--- a/www-client/chromium/files/chromium-96-restricted_cookie_manager-pair.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/services/network/restricted_cookie_manager.cc b/services/network/restricted_cookie_manager.cc
-index 425426fd5..c8c10c65a 100644
---- a/services/network/restricted_cookie_manager.cc
-+++ b/services/network/restricted_cookie_manager.cc
-@@ -161,7 +161,7 @@ CookieAccesses* RestrictedCookieManager::GetCookieAccessesForURLAndSite(
- const GURL& url,
- const net::SiteForCookies& site_for_cookies) {
- std::unique_ptr<CookieAccesses>& entry =
-- recent_cookie_accesses_[std::tie(url, site_for_cookies)];
-+ recent_cookie_accesses_[std::make_pair(url, site_for_cookies)];
- if (!entry) {
- entry = std::make_unique<CookieAccesses>();
- }
diff --git a/www-client/chromium/files/chromium-96-template-friend.patch b/www-client/chromium/files/chromium-96-template-friend.patch
deleted file mode 100644
index 4b8a5e4..0000000
--- a/www-client/chromium/files/chromium-96-template-friend.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/base/memory/safe_ref.h b/base/memory/safe_ref.h
-index 7189f8786..162c6744f 100644
---- a/base/memory/safe_ref.h
-+++ b/base/memory/safe_ref.h
-@@ -88,9 +88,10 @@ class SafeRef {
- private:
- template <typename U>
- friend class SafeRef;
-- friend SafeRef internal::MakeSafeRefFromWeakPtrInternals(
-+ template <typename U>
-+ friend SafeRef<U> internal::MakeSafeRefFromWeakPtrInternals(
- const internal::WeakReference& ref,
-- T* ptr);
-+ U* ptr);
-
- // Construction from a from WeakPtr. Will CHECK() if the WeakPtr is already
- // invalid.
-diff --git a/base/memory/weak_ptr.h b/base/memory/weak_ptr.h
-index 17f7b8f87..d042ecff2 100644
---- a/base/memory/weak_ptr.h
-+++ b/base/memory/weak_ptr.h
-@@ -289,9 +289,10 @@ class WeakPtr : public internal::WeakPtrBase {
- template <typename U> friend class WeakPtr;
- friend class SupportsWeakPtr<T>;
- friend class WeakPtrFactory<T>;
-- friend SafeRef<T> internal::MakeSafeRefFromWeakPtrInternals(
-+ template <typename U>
-+ friend SafeRef<U> internal::MakeSafeRefFromWeakPtrInternals(
- const internal::WeakReference& ref,
-- T* ptr);
-+ U* ptr);
-
- WeakPtr(const internal::WeakReference& ref, T* ptr)
- : WeakPtrBase(ref, reinterpret_cast<uintptr_t>(ptr)) {}
diff --git a/www-client/chromium/files/chromium-97-ScrollView-reference.patch b/www-client/chromium/files/chromium-97-ScrollView-reference.patch
deleted file mode 100644
index 91354e4..0000000
--- a/www-client/chromium/files/chromium-97-ScrollView-reference.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From ce58517e546f3f3433931609683b5b4e455bbb7f Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Fri, 5 Nov 2021 15:48:05 +0000
-Subject: [PATCH] GCC: fix undefined reference to ScrollView::SetContents()
-
----
- ui/views/controls/scroll_view.h | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/ui/views/controls/scroll_view.h b/ui/views/controls/scroll_view.h
-index 3bd5a8bf..f850728c 100644
---- a/ui/views/controls/scroll_view.h
-+++ b/ui/views/controls/scroll_view.h
-@@ -386,6 +386,9 @@
- ScrollViewCallbackList on_contents_scroll_ended_;
- };
-
-+// Required for WebAppUrlHandlerIntentPickerView
-+template View* ScrollView::SetContents<View>(std::unique_ptr<View> a_view);
-+
- BEGIN_VIEW_BUILDER(VIEWS_EXPORT, ScrollView, View)
- VIEW_BUILDER_VIEW_TYPE_PROPERTY(View, Contents)
- VIEW_BUILDER_PROPERTY(ui::LayerType, ContentsLayerType)
diff --git a/www-client/chromium/files/chromium-97-arm-tflite-cast.patch b/www-client/chromium/files/chromium-97-arm-tflite-cast.patch
deleted file mode 100644
index 843a384..0000000
--- a/www-client/chromium/files/chromium-97-arm-tflite-cast.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-vreinterpret_s32_s8() casts int8x8_t to int32x2_t. However, third argument
-of vdotq_lane_s32() is of type int8x8_t.
-
---- a/third_party/tflite/src/tensorflow/lite/kernels/internal/optimized/depthwiseconv_3x3_filter_common.h
-+++ b/third_party/tflite/src/tensorflow/lite/kernels/internal/optimized/depthwiseconv_3x3_filter_common.h
-@@ -129,16 +129,14 @@ inline int32x4_t vdotq_four_lane_s32(int32x4_t acc, int8x16_t lhs,
- int8x16_t rhs, const int lane) {
- switch (lane) {
- case 0:
-- return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_low_s8(rhs)), 0);
-+ return vdotq_lane_s32(acc, lhs, vget_low_s8(rhs), 0);
- case 1:
-- return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_low_s8(rhs)), 1);
-+ return vdotq_lane_s32(acc, lhs, vget_low_s8(rhs), 1);
- case 2:
-- return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_high_s8(rhs)),
-- 0);
-+ return vdotq_lane_s32(acc, lhs, vget_high_s8(rhs), 0);
- case 3:
- default:
-- return vdotq_lane_s32(acc, lhs, vreinterpret_s32_s8(vget_high_s8(rhs)),
-- 1);
-+ return vdotq_lane_s32(acc, lhs, vget_high_s8(rhs), 1);
- }
- }
-
diff --git a/www-client/chromium/files/chromium-97-shared_element_res-include.patch b/www-client/chromium/files/chromium-97-shared_element_res-include.patch
deleted file mode 100644
index 1289f0b..0000000
--- a/www-client/chromium/files/chromium-97-shared_element_res-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/viz/common/shared_element_resource_id.h b/components/viz/common/shared_element_resource_id.h
-index 9fcab924e..2aba73ebc 100644
---- a/components/viz/common/shared_element_resource_id.h
-+++ b/components/viz/common/shared_element_resource_id.h
-@@ -5,6 +5,7 @@
- #ifndef COMPONENTS_VIZ_COMMON_SHARED_ELEMENT_RESOURCE_ID_H_
- #define COMPONENTS_VIZ_COMMON_SHARED_ELEMENT_RESOURCE_ID_H_
-
-+#include <string>
- #include <vector>
-
- #include "components/viz/common/viz_common_export.h"
diff --git a/www-client/chromium/files/chromium-98-MiraclePtr-gcc-ice.patch b/www-client/chromium/files/chromium-98-MiraclePtr-gcc-ice.patch
deleted file mode 100644
index c538bef..0000000
--- a/www-client/chromium/files/chromium-98-MiraclePtr-gcc-ice.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-Workaround GCC ICE with MiraclePtr, see https://gcc.gnu.org/PR103455
-
---- a/gpu/command_buffer/client/gl_helper.h
-+++ b/gpu/command_buffer/client/gl_helper.h
-@@ -34,7 +34,7 @@ class ScopedGLuint {
- GenFunc gen_func,
- DeleteFunc delete_func)
- : gl_(gl), id_(0u), delete_func_(delete_func) {
-- (gl_->*gen_func)(1, &id_);
-+ (gl_.get()->*gen_func)(1, &id_);
- }
-
- operator GLuint() const { return id_; }
-@@ -46,7 +46,7 @@ class ScopedGLuint {
-
- ~ScopedGLuint() {
- if (id_ != 0) {
-- (gl_->*delete_func_)(1, &id_);
-+ (gl_.get()->*delete_func_)(1, &id_);
- }
- }
-
-@@ -86,13 +86,13 @@ class ScopedBinder {
- typedef void (gles2::GLES2Interface::*BindFunc)(GLenum target, GLuint id);
- ScopedBinder(gles2::GLES2Interface* gl, GLuint id, BindFunc bind_func)
- : gl_(gl), bind_func_(bind_func) {
-- (gl_->*bind_func_)(Target, id);
-+ (gl_.get()->*bind_func_)(Target, id);
- }
-
- ScopedBinder(const ScopedBinder&) = delete;
- ScopedBinder& operator=(const ScopedBinder&) = delete;
-
-- virtual ~ScopedBinder() { (gl_->*bind_func_)(Target, 0); }
-+ virtual ~ScopedBinder() { (gl_.get()->*bind_func_)(Target, 0); }
-
- private:
- raw_ptr<gles2::GLES2Interface> gl_;
---- a/ui/accessibility/ax_node.h
-+++ b/ui/accessibility/ax_node.h
-@@ -822,10 +822,10 @@ AXNode::ChildIteratorBase<NodeType,
- // increment the iterator past the end, we remain at the past-the-end iterator
- // condition.
- if (child_ && parent_) {
-- if (child_ == (parent_->*LastChild)())
-+ if (child_ == (parent_.get()->*LastChild)())
- child_ = nullptr;
- else
-- child_ = (child_->*NextSibling)();
-+ child_ = (child_.get()->*NextSibling)();
- }
-
- return *this;
-@@ -850,12 +850,12 @@ AXNode::ChildIteratorBase<NodeType,
- // If the iterator is past the end, |child_=nullptr|, decrement the iterator
- // gives us the last iterator element.
- if (!child_)
-- child_ = (parent_->*LastChild)();
-+ child_ = (parent_.get()->*LastChild)();
- // Decrement the iterator gives us the previous element, except when the
- // iterator is at the beginning; in which case, decrementing the iterator
- // remains at the beginning.
-- else if (child_ != (parent_->*FirstChild)())
-- child_ = (child_->*PreviousSibling)();
-+ else if (child_ != (parent_.get()->*FirstChild)())
-+ child_ = (child_.get()->*PreviousSibling)();
- }
-
- return *this;
---- a/ui/views/layout/flex_layout_types.cc
-+++ b/ui/views/layout/flex_layout_types.cc
-@@ -59,7 +59,7 @@ class LazySize {
- const gfx::Size& operator*() const { return *get(); }
- const gfx::Size* get() const {
- if (!size_)
-- size_ = (view_->*size_func_)();
-+ size_ = (view_.get()->*size_func_)();
- return &size_.value();
- }
- LazyDimension width() const {
---- a/chrome/browser/ui/views/passwords/auto_signin_first_run_dialog_view.cc
-+++ b/chrome/browser/ui/views/passwords/auto_signin_first_run_dialog_view.cc
-@@ -37,7 +37,7 @@ AutoSigninFirstRunDialogView::AutoSigninFirstRunDialogView(
- auto call_controller = [](AutoSigninFirstRunDialogView* dialog,
- ControllerCallbackFn func) {
- if (dialog->controller_) {
-- (dialog->controller_->*func)();
-+ (dialog->controller_.get()->*func)();
- }
- };
- SetAcceptCallback(
diff --git a/www-client/chromium/files/chromium-98-breakpad-max.patch b/www-client/chromium/files/chromium-98-breakpad-max.patch
deleted file mode 100644
index 889632d..0000000
--- a/www-client/chromium/files/chromium-98-breakpad-max.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-index ca353c409..c0f20975d 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-@@ -138,7 +138,7 @@ void InstallAlternateStackLocked() {
- // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
- // the alternative stack. Ensure that the size of the alternative stack is
- // large enough.
-- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
-+ static const unsigned kSigStackSize = std::max((long)16384, SIGSTKSZ);
-
- // Only set an alternative stack if there isn't already one, or if the current
- // one is too small.
diff --git a/www-client/chromium/files/chromium-98-c++17-constexpr-1.patch b/www-client/chromium/files/chromium-98-c++17-constexpr-1.patch
deleted file mode 100644
index d368b36..0000000
--- a/www-client/chromium/files/chromium-98-c++17-constexpr-1.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-From a5935eff52dcc65b02a49fb89aa2c9ec5ad3e4a6 Mon Sep 17 00:00:00 2001
-From: Stephan Hartmann <stha09@googlemail.com>
-Date: Wed, 1 Dec 2021 08:47:30 +0000
-Subject: [PATCH] GCC: remove constexpr to fix linker error
-
----
- .../allocator_shim_default_dispatch_to_partition_alloc.cc | 2 +-
- components/services/app_service/public/cpp/icon_types.cc | 2 +-
- content/browser/web_package/signed_exchange_prologue.cc | 2 +-
- device/bluetooth/bluetooth_adapter.cc | 2 +-
- 4 files changed, 4 insertion(+), 4 deletion(-)
-
-diff --git a/base/allocator/allocator_shim_default_dispatch_to_partition_alloc.cc b/base/allocator/allocator_shim_default_dispatch_to_partition_alloc.cc
-index 80eb4b8..4707224 100644
---- a/base/allocator/allocator_shim_default_dispatch_to_partition_alloc.cc
-+++ b/base/allocator/allocator_shim_default_dispatch_to_partition_alloc.cc
-@@ -605,7 +605,7 @@ void ConfigurePartitionAlloc() {
- } // namespace allocator
- } // namespace base
-
--constexpr AllocatorDispatch AllocatorDispatch::default_dispatch = {
-+const AllocatorDispatch AllocatorDispatch::default_dispatch = {
- &base::internal::PartitionMalloc, // alloc_function
- &base::internal::PartitionMallocUnchecked, // alloc_unchecked_function
- &base::internal::PartitionCalloc, // alloc_zero_initialized_function
-diff --git a/components/services/app_service/public/cpp/icon_types.cc b/components/services/app_service/public/cpp/icon_types.cc
-index c857d15..292232e 100644
---- a/components/services/app_service/public/cpp/icon_types.cc
-+++ b/components/services/app_service/public/cpp/icon_types.cc
-@@ -21,7 +21,7 @@ bool IconKey::operator==(const IconKey& other) const {
- }
-
- constexpr uint64_t IconKey::kDoesNotChangeOverTime = 0;
--constexpr int32_t IconKey::kInvalidResourceId = 0;
-+const int32_t IconKey::kInvalidResourceId = 0;
-
- IconValue::IconValue() = default;
- IconValue::~IconValue() = default;
-diff --git a/content/browser/web_package/signed_exchange_prologue.cc b/content/browser/web_package/signed_exchange_prologue.cc
-index 9dfb4ac..a1f99eb 100644
---- a/content/browser/web_package/signed_exchange_prologue.cc
-+++ b/content/browser/web_package/signed_exchange_prologue.cc
-@@ -30,7 +30,7 @@ constexpr size_t kMaximumCBORHeaderLength = 512 * 1024;
-
- namespace signed_exchange_prologue {
-
--constexpr size_t BeforeFallbackUrl::kEncodedSizeInBytes =
-+const size_t BeforeFallbackUrl::kEncodedSizeInBytes =
- sizeof(kSignedExchangeMagic) + kFallbackUrlLengthFieldSizeInBytes;
-
- size_t Parse2BytesEncodedLength(base::span<const uint8_t> input) {
-diff --git a/device/bluetooth/bluetooth_adapter.cc b/device/bluetooth/bluetooth_adapter.cc
-index ddde285..9c794c9 100644
---- a/device/bluetooth/bluetooth_adapter.cc
-+++ b/device/bluetooth/bluetooth_adapter.cc
-@@ -674,6 +674,6 @@ void BluetoothAdapter::RemoveTimedOutDevices() {
- }
-
- // static
--constexpr base::TimeDelta BluetoothAdapter::timeoutSec = base::Seconds(180);
-+const base::TimeDelta BluetoothAdapter::timeoutSec = base::Seconds(180);
-
- } // namespace device
---
-2.32.0
diff --git a/www-client/chromium/files/chromium-98-compiler-r1.patch b/www-client/chromium/files/chromium-98-compiler-r1.patch
deleted file mode 100644
index 685638e..0000000
--- a/www-client/chromium/files/chromium-98-compiler-r1.patch
+++ /dev/null
@@ -1,208 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 8048ec5e8..85c58fd32 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -291,9 +291,7 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
- ":rustc_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -534,31 +532,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && current_os != "zos") {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
--
-- # TODO(crbug.com/1235145): Investigate why/if this should be needed.
-- if (is_win) {
-- cflags += [ "/clang:-ffp-contract=off" ]
-- } else {
-- cflags += [ "-ffp-contract=off" ]
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1231,45 +1204,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1556,7 +1490,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1565,10 +1499,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1577,15 +1507,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1988,7 +1909,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2026,7 +1948,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2066,7 +1989,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2099,7 +2023,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2125,7 +2050,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- rustflags = [ "-Copt-level=1" ]
- ldflags = common_optimize_on_ldflags
-@@ -2245,7 +2171,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2369,7 +2296,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2438,7 +2366,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-98-compiler.patch b/www-client/chromium/files/chromium-98-compiler.patch
deleted file mode 100644
index 49826bf..0000000
--- a/www-client/chromium/files/chromium-98-compiler.patch
+++ /dev/null
@@ -1,213 +0,0 @@
-From 307a0f63dd9b118f4b8470ed3d7567e81fdb7a6d Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Sun, 14 Nov 2021 09:03:47 +0000
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 98 ++++++----------------------------
- 1 file changed, 17 insertions(+), 81 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 46ab685..a60f0ff 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -291,9 +291,7 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
- ":rustc_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -534,24 +532,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && current_os != "zos") {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- cflags += [
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- if (!is_debug && use_thin_lto && is_a_target_toolchain) {
-- if (is_win) {
-- ldflags += [ "-mllvm:-instcombine-lower-dbg-declare=0" ]
-- } else {
-- ldflags += [ "-Wl,-mllvm,-instcombine-lower-dbg-declare=0" ]
-- }
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1221,45 +1201,6 @@ config("compiler_deterministic") {
- }
- }
-
-- # Makes builds independent of absolute file path.
-- if (is_clang && strip_absolute_paths_from_debug_symbols) {
-- # If debug option is given, clang includes $cwd in debug info by default.
-- # For such build, this flag generates reproducible obj files even we use
-- # different build directory like "out/feature_a" and "out/feature_b" if
-- # we build same files with same compile flag.
-- # Other paths are already given in relative, no need to normalize them.
-- if (is_nacl) {
-- # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here.
-- cflags += [
-- "-Xclang",
-- "-fdebug-compilation-dir",
-- "-Xclang",
-- ".",
-- ]
-- } else {
-- # -ffile-compilation-dir is an alias for both -fdebug-compilation-dir=
-- # and -fcoverage-compilation-dir=.
-- cflags += [ "-ffile-compilation-dir=." ]
-- }
-- if (!is_win) {
-- # We don't use clang -cc1as on Windows (yet? https://crbug.com/762167)
-- asmflags = [ "-Wa,-fdebug-compilation-dir,." ]
-- }
--
-- if (is_win && use_lld) {
-- if (symbol_level == 2 || (is_clang && using_sanitizer)) {
-- # Absolutize source file paths for PDB. Pass the real build directory
-- # if the pdb contains source-level debug information and if linker
-- # reproducibility is not critical.
-- ldflags += [ "/PDBSourcePath:" + rebase_path(root_build_dir) ]
-- } else {
-- # Use a fake fixed base directory for paths in the pdb to make the pdb
-- # output fully deterministic and independent of the build directory.
-- ldflags += [ "/PDBSourcePath:o:\fake\prefix" ]
-- }
-- }
-- }
--
- # Tells the compiler not to use absolute paths when passing the default
- # paths to the tools it invokes. We don't want this because we don't
- # really need it and it can mess up the goma cache entries.
-@@ -1546,7 +1487,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1555,10 +1496,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1567,15 +1504,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1943,7 +1871,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -1983,7 +1912,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2023,7 +1953,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2056,7 +1987,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2082,7 +2014,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- rustflags = [ "-Copt-level=1" ]
- ldflags = common_optimize_on_ldflags
-@@ -2202,7 +2135,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2326,7 +2260,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2395,7 +2330,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
---
-2.32.0
-
diff --git a/www-client/chromium/files/chromium-98-geometry-cubic_bezier-include.patch b/www-client/chromium/files/chromium-98-geometry-cubic_bezier-include.patch
deleted file mode 100644
index 2adf81f..0000000
--- a/www-client/chromium/files/chromium-98-geometry-cubic_bezier-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/ui/gfx/geometry/cubic_bezier.cc b/ui/gfx/geometry/cubic_bezier.cc
-index 8546aece6..3064548f1 100644
---- a/ui/gfx/geometry/cubic_bezier.cc
-+++ b/ui/gfx/geometry/cubic_bezier.cc
-@@ -6,6 +6,7 @@
-
- #include <algorithm>
- #include <cmath>
-+#include <limits>
-
- #include "base/check_op.h"
- #include "base/cxx17_backports.h"
diff --git a/www-client/chromium/files/chromium-98-system-libdrm.patch b/www-client/chromium/files/chromium-98-system-libdrm.patch
deleted file mode 100644
index f2f18be..0000000
--- a/www-client/chromium/files/chromium-98-system-libdrm.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/media/gpu/chromeos/BUILD.gn b/media/gpu/chromeos/BUILD.gn
-index a5c8945..d742d80 100644
---- a/media/gpu/chromeos/BUILD.gn
-+++ b/media/gpu/chromeos/BUILD.gn
-@@ -32,6 +32,7 @@ source_set("chromeos") {
-
- if (use_vaapi) {
- deps += [
-+ "//build/config/linux/libdrm",
- "//media/gpu/vaapi",
- "//media/gpu/vaapi:common",
- ]
-diff --git a/media/gpu/chromeos/video_decoder_pipeline.cc b/media/gpu/chromeos/video_decoder_pipeline.cc
-index 2d77cd9..1883fd4 100644
---- a/media/gpu/chromeos/video_decoder_pipeline.cc
-+++ b/media/gpu/chromeos/video_decoder_pipeline.cc
-@@ -4,6 +4,9 @@
-
- #include "media/gpu/chromeos/video_decoder_pipeline.h"
-
-+#if BUILDFLAG(USE_VAAPI)
-+#include <drm_fourcc.h>
-+#endif
- #include <memory>
-
- #include "base/bind.h"
-@@ -28,7 +31,6 @@
-
- #if BUILDFLAG(USE_VAAPI)
- #include "media/gpu/vaapi/vaapi_video_decoder.h"
--#include "third_party/libdrm/src/include/drm/drm_fourcc.h"
- #elif BUILDFLAG(USE_V4L2_CODEC)
- #include "media/gpu/v4l2/v4l2_video_decoder.h"
- #else
diff --git a/www-client/chromium/files/chromium-99-dnd-3381679.patch b/www-client/chromium/files/chromium-99-dnd-3381679.patch
deleted file mode 100644
index 06f1736..0000000
--- a/www-client/chromium/files/chromium-99-dnd-3381679.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/ui/platform_window/x11/x11_topmost_window_finder.cc b/ui/platform_window/x11/x11_topmost_window_finder.cc
-index e20bf0abf..c9c672c60 100644
---- a/ui/platform_window/x11/x11_topmost_window_finder.cc
-+++ b/ui/platform_window/x11/x11_topmost_window_finder.cc
-@@ -42,12 +42,12 @@ bool EnumerateChildren(ShouldStopIteratingCallback should_stop_iterating,
- // reverse-iterate the list to check the windows from top-to-bottom.
- std::vector<x11::Window>::reverse_iterator iter;
- for (iter = windows.rbegin(); iter != windows.rend(); iter++) {
-- if (IsWindowNamed(*iter) && should_stop_iterating.Run(*iter))
-- return true;
- if (depth < max_depth) {
- if (EnumerateChildren(should_stop_iterating, *iter, max_depth, depth + 1))
- return true;
- }
-+ if (IsWindowNamed(*iter) && should_stop_iterating.Run(*iter))
-+ return true;
- }
-
- return false;
diff --git a/www-client/chromium/files/chromium-99-dns_scoped_res_state-include.patch b/www-client/chromium/files/chromium-99-dns_scoped_res_state-include.patch
deleted file mode 100644
index e028877..0000000
--- a/www-client/chromium/files/chromium-99-dns_scoped_res_state-include.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/net/dns/public/scoped_res_state.cc b/net/dns/public/scoped_res_state.cc
-index f7dbb5e77..9706d18b0 100644
---- a/net/dns/public/scoped_res_state.cc
-+++ b/net/dns/public/scoped_res_state.cc
-@@ -4,6 +4,7 @@
-
- #include "net/dns/public/scoped_res_state.h"
-
-+#include <cstring>
- #include <memory>
-
- #include "base/check.h"
diff --git a/www-client/chromium/files/chromium-99-predction_common-include.patch b/www-client/chromium/files/chromium-99-predction_common-include.patch
deleted file mode 100644
index b8a8a9c..0000000
--- a/www-client/chromium/files/chromium-99-predction_common-include.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/components/permissions/prediction_service/prediction_common.cc b/components/permissions/prediction_service/prediction_common.cc
-index f670e82bd..d477678f4 100644
---- a/components/permissions/prediction_service/prediction_common.cc
-+++ b/components/permissions/prediction_service/prediction_common.cc
-@@ -4,6 +4,8 @@
-
- #include "components/permissions/prediction_service/prediction_common.h"
-
-+#include <cmath>
-+
- #include "base/json/json_reader.h"
- #include "base/json/json_writer.h"
- #include "base/notreached.h"
diff --git a/www-client/chromium/files/chromium-99-sandbox-glib234.patch b/www-client/chromium/files/chromium-99-sandbox-glib234.patch
deleted file mode 100644
index 0379084..0000000
--- a/www-client/chromium/files/chromium-99-sandbox-glib234.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index ca6b59547..4fb5adf88 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -11,6 +11,7 @@
- #include <stddef.h>
- #include <stdint.h>
- #include <stdio.h>
-+#include <string.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
- #include <sys/wait.h>
-@@ -100,7 +101,8 @@ bool ChrootToSafeEmptyDir() {
- // TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
- clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
-
-- char tls_buf[PTHREAD_STACK_MIN] = {0};
-+ char tls_buf[PTHREAD_STACK_MIN];
-+ memset(tls_buf, 0, PTHREAD_STACK_MIN * sizeof(char));
- tls = tls_buf;
- #endif
-
diff --git a/www-client/chromium/files/chromium-99-sqlcursor.patch b/www-client/chromium/files/chromium-99-sqlcursor.patch
deleted file mode 100644
index c7041cd..0000000
--- a/www-client/chromium/files/chromium-99-sqlcursor.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
-index 845b78526..cf39d8021 100644
---- a/sql/recover_module/cursor.h
-+++ b/sql/recover_module/cursor.h
-@@ -63,8 +63,9 @@ class VirtualCursor {
- // |sqlite_cursor| must have been returned by VirtualTable::SqliteCursor().
- static inline VirtualCursor* FromSqliteCursor(
- sqlite3_vtab_cursor* sqlite_cursor) {
-- static_assert(std::is_standard_layout<VirtualCursor>::value,
-- "needed for the reinterpret_cast below");
-+ //dont care
-+ //static_assert(std::is_standard_layout<VirtualCursor>::value,
-+ // "needed for the reinterpret_cast below");
- static_assert(offsetof(VirtualCursor, sqlite_cursor_) == 0,
- "sqlite_cursor_ must be the first member of the class");
- VirtualCursor* result = reinterpret_cast<VirtualCursor*>(sqlite_cursor);
diff --git a/www-client/chromium/files/chromium-angle-inline.patch b/www-client/chromium/files/chromium-angle-inline.patch
deleted file mode 100644
index e8975d7..0000000
--- a/www-client/chromium/files/chromium-angle-inline.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-From 4c0a23611b3906855db7b93da2f34aec57930cdf Mon Sep 17 00:00:00 2001
-From: Geoff Lang <geofflang@chromium.org>
-Date: Tue, 25 Jun 2019 10:56:29 -0400
-Subject: [PATCH] Update ValidateSamplerParameterBase to use const parameters.
-
-ValidateSamplerParameterBase is called with both const and non-const
-parameter pointers which caused our explicit template instantiations to
-not cover all cases resulting in link errors. Force the parameters to
-always be const so that our instantiations cover everything.
-
-BUG=angleproject:3555
-
-Change-Id: Ibf92572ba80a689c75dcdc70e5153d9941da76f3
-Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1676305
-Reviewed-by: Jonah Ryan-Davis <jonahr@google.com>
-Commit-Queue: Geoff Lang <geofflang@chromium.org>
----
-
-diff --git a/third_party/angle/src/libANGLE/validationES.cpp b/third_party/angle/src/libANGLE/validationES.cpp
-index 041803a..3f402f6 100644
---- a/third_party/angle/src/libANGLE/validationES.cpp
-+++ b/third_party/angle/src/libANGLE/validationES.cpp
-@@ -189,7 +189,9 @@
- }
-
- template <typename ParamType>
--bool ValidateTextureWrapModeValue(Context *context, ParamType *params, bool restrictedWrapModes)
-+bool ValidateTextureWrapModeValue(Context *context,
-+ const ParamType *params,
-+ bool restrictedWrapModes)
- {
- switch (ConvertToGLenum(params[0]))
- {
-@@ -223,7 +225,9 @@
- }
-
- template <typename ParamType>
--bool ValidateTextureMinFilterValue(Context *context, ParamType *params, bool restrictedMinFilter)
-+bool ValidateTextureMinFilterValue(Context *context,
-+ const ParamType *params,
-+ bool restrictedMinFilter)
- {
- switch (ConvertToGLenum(params[0]))
- {
-@@ -252,7 +256,7 @@
- }
-
- template <typename ParamType>
--bool ValidateTextureMagFilterValue(Context *context, ParamType *params)
-+bool ValidateTextureMagFilterValue(Context *context, const ParamType *params)
- {
- switch (ConvertToGLenum(params[0]))
- {
-@@ -269,7 +273,7 @@
- }
-
- template <typename ParamType>
--bool ValidateTextureCompareModeValue(Context *context, ParamType *params)
-+bool ValidateTextureCompareModeValue(Context *context, const ParamType *params)
- {
- // Acceptable mode parameters from GLES 3.0.2 spec, table 3.17
- switch (ConvertToGLenum(params[0]))
-@@ -287,7 +291,7 @@
- }
-
- template <typename ParamType>
--bool ValidateTextureCompareFuncValue(Context *context, ParamType *params)
-+bool ValidateTextureCompareFuncValue(Context *context, const ParamType *params)
- {
- // Acceptable function parameters from GLES 3.0.2 spec, table 3.17
- switch (ConvertToGLenum(params[0]))
-@@ -311,7 +315,7 @@
- }
-
- template <typename ParamType>
--bool ValidateTextureSRGBDecodeValue(Context *context, ParamType *params)
-+bool ValidateTextureSRGBDecodeValue(Context *context, const ParamType *params)
- {
- if (!context->getExtensions().textureSRGBDecode)
- {
-@@ -5996,7 +6000,7 @@
- GLenum pname,
- GLsizei bufSize,
- bool vectorParams,
-- ParamType *params)
-+ const ParamType *params)
- {
- if (context->getClientMajorVersion() < 3)
- {
-@@ -6099,8 +6103,13 @@
- return true;
- }
-
--template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, GLfloat *);
--template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, GLint *);
-+template bool ValidateSamplerParameterBase(Context *,
-+ GLuint,
-+ GLenum,
-+ GLsizei,
-+ bool,
-+ const GLfloat *);
-+template bool ValidateSamplerParameterBase(Context *, GLuint, GLenum, GLsizei, bool, const GLint *);
- template bool ValidateSamplerParameterBase(Context *,
- GLuint,
- GLenum,
-diff --git a/third_party/angle/src/libANGLE/validationES.h b/third_party/angle/src/libANGLE/validationES.h
-index c61bda6..4b06d28 100644
---- a/third_party/angle/src/libANGLE/validationES.h
-+++ b/third_party/angle/src/libANGLE/validationES.h
-@@ -584,7 +584,7 @@
- GLenum pname,
- GLsizei bufSize,
- bool vectorParams,
-- ParamType *params);
-+ const ParamType *params);
-
- bool ValidateGetInternalFormativBase(Context *context,
- GLenum target,
diff --git a/www-client/chromium/files/chromium-axobj-ancestoriter-cat-84.patch b/www-client/chromium/files/chromium-axobj-ancestoriter-cat-84.patch
deleted file mode 100644
index d554334..0000000
--- a/www-client/chromium/files/chromium-axobj-ancestoriter-cat-84.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-Make blink::AXObject::AncestorsIterator STL compatible.
-
-Commit 31e5188ffc9a04295997d22bfdb68fc367bef047, "Used some methods from
-AXRoleProperties in AXObject" started using std::any_of with this custom
-iterator type. Unfortunately this iterator does not provide traits
-mandated by the standard. This works fine for libcxx, but fails when
-compiling the code against libstdc++.
-
-Bug: 819294
-Change-Id: I78fe25475593d73ce255f1de955aa41e936dff86
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2207112
-Reviewed-by: Kentaro Hara <haraken@chromium.org>
-Commit-Queue: Piotr Tworek <ptworek@vewd.com>
-Cr-Commit-Position: refs/heads/master@{#769713}
-
-diff --git a/third_party/blink/renderer/modules/accessibility/ax_object.h b/third_party/blink/renderer/modules/accessibility/ax_object.h
-index 841715b..fbb87bf 100644
---- a/third_party/blink/renderer/modules/accessibility/ax_object.h
-+++ b/third_party/blink/renderer/modules/accessibility/ax_object.h
-@@ -274,6 +274,12 @@
- class MODULES_EXPORT AncestorsIterator final
- : public GarbageCollected<AncestorsIterator> {
- public:
-+ using iterator_category = std::forward_iterator_tag;
-+ using value_type = AXObject;
-+ using difference_type = ptrdiff_t;
-+ using pointer = value_type*;
-+ using reference = value_type&;
-+
- ~AncestorsIterator() = default;
-
- AncestorsIterator(const AncestorsIterator& other)
-
diff --git a/www-client/chromium/files/chromium-axtree-incomplete-type-83.patch b/www-client/chromium/files/chromium-axtree-incomplete-type-83.patch
deleted file mode 100644
index 7a8061a..0000000
--- a/www-client/chromium/files/chromium-axtree-incomplete-type-83.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-diff --git a/ui/accessibility/ax_tree.cc b/ui/accessibility/ax_tree.cc
-index e90256109..76fa091e2 100644
---- a/ui/accessibility/ax_tree.cc
-+++ b/ui/accessibility/ax_tree.cc
-@@ -567,15 +567,6 @@ struct AXTreeUpdateState {
- const AXTree& tree;
- };
-
--struct AXTree::NodeSetSizePosInSetInfo {
-- NodeSetSizePosInSetInfo() = default;
-- ~NodeSetSizePosInSetInfo() = default;
--
-- int32_t pos_in_set = 0;
-- int32_t set_size = 0;
-- base::Optional<int> lowest_hierarchical_level;
--};
--
- struct AXTree::OrderedSetContent {
- explicit OrderedSetContent(const AXNode* ordered_set = nullptr)
- : ordered_set_(ordered_set) {}
-diff --git a/ui/accessibility/ax_tree.h b/ui/accessibility/ax_tree.h
-index a51ca8de4..ef1633212 100644
---- a/ui/accessibility/ax_tree.h
-+++ b/ui/accessibility/ax_tree.h
-@@ -328,7 +328,15 @@ class AX_EXPORT AXTree : public AXNode::OwnerTree {
- bool enable_extra_mac_nodes_ = false;
-
- // Contains pos_in_set and set_size data for an AXNode.
-- struct NodeSetSizePosInSetInfo;
-+ struct NodeSetSizePosInSetInfo {
-+ NodeSetSizePosInSetInfo() = default;
-+ ~NodeSetSizePosInSetInfo() = default;
-+
-+ int32_t pos_in_set = 0;
-+ int32_t set_size = 0;
-+ base::Optional<int> lowest_hierarchical_level;
-+ };
-+
-
- // Represents the content of an ordered set which includes the ordered set
- // items and the ordered set container if it exists.
diff --git a/www-client/chromium/files/chromium-base-include-84-r1.patch b/www-client/chromium/files/chromium-base-include-84-r1.patch
deleted file mode 100644
index 1a17ed2..0000000
--- a/www-client/chromium/files/chromium-base-include-84-r1.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/base/check_op.h b/base/check_op.h
-index 0943d0cc2..c16df8705 100644
---- a/base/check_op.h
-+++ b/base/check_op.h
-@@ -6,6 +6,7 @@
- #define BASE_CHECK_OP_H_
-
- #include <cstddef>
-+#include <cstring>
- #include <type_traits>
-
- #include "base/check.h"
-diff --git a/base/debug/elf_reader.cc b/base/debug/elf_reader.cc
-index aea4f3b03..1cf7bf50d 100644
---- a/base/debug/elf_reader.cc
-+++ b/base/debug/elf_reader.cc
-@@ -4,6 +4,7 @@
-
- #include "base/debug/elf_reader.h"
-
-+#include <string.h>
- #include <arpa/inet.h>
- #include <elf.h>
-
diff --git a/www-client/chromium/files/chromium-base-include-84-r2.patch b/www-client/chromium/files/chromium-base-include-84-r2.patch
deleted file mode 100644
index 9ac745a..0000000
--- a/www-client/chromium/files/chromium-base-include-84-r2.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/base/check_op.h b/base/check_op.h
-index 4816df4e8..0087dfe40 100644
---- a/base/check_op.h
-+++ b/base/check_op.h
-@@ -6,6 +6,7 @@
- #define BASE_CHECK_OP_H_
-
- #include <cstddef>
-+#include <cstring>
- #include <type_traits>
-
- #include "base/check.h"
diff --git a/www-client/chromium/files/chromium-base-include-84.patch b/www-client/chromium/files/chromium-base-include-84.patch
deleted file mode 100644
index 9c5846b..0000000
--- a/www-client/chromium/files/chromium-base-include-84.patch
+++ /dev/null
@@ -1,281 +0,0 @@
-diff --git a/base/big_endian.cc b/base/big_endian.cc
-index 9e9e672e4..a706c4a4e 100644
---- a/base/big_endian.cc
-+++ b/base/big_endian.cc
-@@ -4,6 +4,8 @@
-
- #include "base/big_endian.h"
-
-+#include <string.h>
-+
- #include "base/numerics/checked_math.h"
- #include "base/strings/string_piece.h"
-
-diff --git a/base/check_op.cc b/base/check_op.cc
-index 7e0806464..fcdb8df16 100644
---- a/base/check_op.cc
-+++ b/base/check_op.cc
-@@ -12,6 +12,7 @@
- #endif
-
- #include <cstdio>
-+#include <cstring>
- #include <sstream>
-
- namespace logging {
-diff --git a/base/debug/elf_reader.cc b/base/debug/elf_reader.cc
-index aea4f3b03..1cf7bf50d 100644
---- a/base/debug/elf_reader.cc
-+++ b/base/debug/elf_reader.cc
-@@ -4,6 +4,7 @@
-
- #include "base/debug/elf_reader.h"
-
-+#include <string.h>
- #include <arpa/inet.h>
- #include <elf.h>
-
-diff --git a/base/files/dir_reader_linux.h b/base/files/dir_reader_linux.h
-index f12deeb2f..194cd92b0 100644
---- a/base/files/dir_reader_linux.h
-+++ b/base/files/dir_reader_linux.h
-@@ -7,6 +7,7 @@
-
- #include <errno.h>
- #include <fcntl.h>
-+#include <string.h>
- #include <stddef.h>
- #include <stdint.h>
- #include <sys/syscall.h>
-diff --git a/base/logging.h b/base/logging.h
-index 7644ec188..848718612 100644
---- a/base/logging.h
-+++ b/base/logging.h
-@@ -6,6 +6,7 @@
- #define BASE_LOGGING_H_
-
- #include <stddef.h>
-+#include <string.h>
-
- #include <cassert>
- #include <cstdint>
-diff --git a/base/metrics/metrics_hashes.cc b/base/metrics/metrics_hashes.cc
-index ef7072a4a..9cd2d5a93 100644
---- a/base/metrics/metrics_hashes.cc
-+++ b/base/metrics/metrics_hashes.cc
-@@ -4,6 +4,8 @@
-
- #include "base/metrics/metrics_hashes.h"
-
-+#include <string.h>
-+
- #include "base/hash/md5.h"
- #include "base/logging.h"
- #include "base/sys_byteorder.h"
-diff --git a/base/process/environment_internal.cc b/base/process/environment_internal.cc
-index 357140fa6..44f5c6603 100644
---- a/base/process/environment_internal.cc
-+++ b/base/process/environment_internal.cc
-@@ -5,6 +5,7 @@
- #include "base/process/environment_internal.h"
-
- #include <stddef.h>
-+#include <string.h>
-
- #include <vector>
-
-diff --git a/base/strings/string16.cc b/base/strings/string16.cc
-index 84962e671..b7df7e161 100644
---- a/base/strings/string16.cc
-+++ b/base/strings/string16.cc
-@@ -4,6 +4,8 @@
-
- #include "base/strings/string16.h"
-
-+#include <string.h>
-+
- #if defined(WCHAR_T_IS_UTF16) && !defined(_AIX)
-
- #error This file should not be used on 2-byte wchar_t systems
-diff --git a/base/strings/string_piece.cc b/base/strings/string_piece.cc
-index c789bc2a0..bfaf99db5 100644
---- a/base/strings/string_piece.cc
-+++ b/base/strings/string_piece.cc
-@@ -5,6 +5,7 @@
-
- #include "base/strings/string_piece.h"
-
-+#include <string.h>
- #include <limits.h>
-
- #include <algorithm>
-diff --git a/base/strings/sys_string_conversions_posix.cc b/base/strings/sys_string_conversions_posix.cc
-index ad794cae2..dad27eaa5 100644
---- a/base/strings/sys_string_conversions_posix.cc
-+++ b/base/strings/sys_string_conversions_posix.cc
-@@ -4,6 +4,7 @@
-
- #include "base/strings/sys_string_conversions.h"
-
-+#include <string.h>
- #include <stddef.h>
- #include <wchar.h>
-
-diff --git a/base/synchronization/lock_impl.h b/base/synchronization/lock_impl.h
-index 830b878e8..cdb66fdca 100644
---- a/base/synchronization/lock_impl.h
-+++ b/base/synchronization/lock_impl.h
-@@ -16,6 +16,7 @@
- #elif defined(OS_POSIX) || defined(OS_FUCHSIA)
- #include <errno.h>
- #include <pthread.h>
-+#include <string.h>
- #endif
-
- namespace base {
-diff --git a/base/trace_event/blame_context.cc b/base/trace_event/blame_context.cc
-index e7599efa8..4b82c5526 100644
---- a/base/trace_event/blame_context.cc
-+++ b/base/trace_event/blame_context.cc
-@@ -25,7 +25,7 @@ BlameContext::BlameContext(const char* category,
- parent_scope_(parent_context ? parent_context->scope() : nullptr),
- parent_id_(parent_context ? parent_context->id() : 0),
- category_group_enabled_(nullptr) {
-- DCHECK(!parent_context || !std::strcmp(name_, parent_context->name()))
-+ DCHECK(!parent_context || !strcmp(name_, parent_context->name()))
- << "Parent blame context must have the same name";
- }
-
-diff --git a/components/network_hints/renderer/dns_prefetch_queue.cc b/components/network_hints/renderer/dns_prefetch_queue.cc
-index af34d8df0..7905ad49d 100644
---- a/components/network_hints/renderer/dns_prefetch_queue.cc
-+++ b/components/network_hints/renderer/dns_prefetch_queue.cc
-@@ -6,8 +6,11 @@
-
- #include "components/network_hints/renderer/dns_prefetch_queue.h"
-
-+#include <cstring>
-+
- #include "base/logging.h"
-
-+
- namespace network_hints {
-
- DnsQueue::DnsQueue(BufferSize size)
-diff --git a/components/omnibox/browser/on_device_head_model.cc b/components/omnibox/browser/on_device_head_model.cc
-index 0fa2ff25e..ad5e9386f 100644
---- a/components/omnibox/browser/on_device_head_model.cc
-+++ b/components/omnibox/browser/on_device_head_model.cc
-@@ -4,6 +4,7 @@
-
- #include "components/omnibox/browser/on_device_head_model.h"
-
-+#include <cstring>
- #include <algorithm>
-
- #include "base/logging.h"
-diff --git a/google_apis/gcm/base/socket_stream.cc b/google_apis/gcm/base/socket_stream.cc
-index d9759e767..bc33dca40 100644
---- a/google_apis/gcm/base/socket_stream.cc
-+++ b/google_apis/gcm/base/socket_stream.cc
-@@ -177,7 +177,7 @@ void SocketInputStream::RebuildBuffer() {
- DVLOG(1) << "Have " << unread_data_size
- << " unread bytes remaining, shifting.";
- // Move any remaining unread data to the start of the buffer;
-- std::memmove(io_buffer_->data(), unread_data_ptr, unread_data_size);
-+ memmove(io_buffer_->data(), unread_data_ptr, unread_data_size);
- } else {
- DVLOG(1) << "Have " << unread_data_size << " unread bytes remaining.";
- }
-diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.h b/gpu/command_buffer/service/gles2_cmd_decoder.h
-index f4c3014d1..7491797e7 100644
---- a/gpu/command_buffer/service/gles2_cmd_decoder.h
-+++ b/gpu/command_buffer/service/gles2_cmd_decoder.h
-@@ -9,6 +9,7 @@
-
- #include <stdint.h>
-
-+#include <cstring>
- #include <string>
- #include <vector>
-
-diff --git a/gpu/vulkan/vulkan_device_queue.cc b/gpu/vulkan/vulkan_device_queue.cc
-index 4d95330b5..a6a130593 100644
---- a/gpu/vulkan/vulkan_device_queue.cc
-+++ b/gpu/vulkan/vulkan_device_queue.cc
-@@ -98,7 +98,7 @@ bool VulkanDeviceQueue::Initialize(
- std::find_if(physical_device_info.extensions.begin(),
- physical_device_info.extensions.end(),
- [extension](const VkExtensionProperties& p) {
-- return std::strcmp(extension, p.extensionName) == 0;
-+ return strcmp(extension, p.extensionName) == 0;
- });
- if (it == physical_device_info.extensions.end()) {
- // On Fuchsia, some device extensions are provided by layers.
-@@ -118,7 +118,7 @@ bool VulkanDeviceQueue::Initialize(
- std::find_if(physical_device_info.extensions.begin(),
- physical_device_info.extensions.end(),
- [extension](const VkExtensionProperties& p) {
-- return std::strcmp(extension, p.extensionName) == 0;
-+ return strcmp(extension, p.extensionName) == 0;
- });
- if (it == physical_device_info.extensions.end()) {
- DLOG(ERROR) << "Optional Vulkan extension " << extension
-@@ -255,4 +255,4 @@ std::unique_ptr<VulkanCommandPool> VulkanDeviceQueue::CreateCommandPool() {
- return command_pool;
- }
-
--} // namespace gpu
-\ No newline at end of file
-+} // namespace gpu
-diff --git a/jingle/glue/fake_ssl_client_socket.cc b/jingle/glue/fake_ssl_client_socket.cc
-index 54691d935..c61c6c8a1 100644
---- a/jingle/glue/fake_ssl_client_socket.cc
-+++ b/jingle/glue/fake_ssl_client_socket.cc
-@@ -7,6 +7,7 @@
- #include <stddef.h>
- #include <stdint.h>
- #include <cstdlib>
-+#include <cstring>
- #include <utility>
-
- #include "base/bind.h"
-diff --git a/net/base/datagram_buffer.cc b/net/base/datagram_buffer.cc
-index 922d8486e..b7f737405 100644
---- a/net/base/datagram_buffer.cc
-+++ b/net/base/datagram_buffer.cc
-@@ -42,7 +42,7 @@ DatagramBuffer::~DatagramBuffer() {}
-
- void DatagramBuffer::Set(const char* buffer, size_t buf_len) {
- length_ = buf_len;
-- std::memcpy(data_.get(), buffer, buf_len);
-+ memcpy(data_.get(), buffer, buf_len);
- }
-
- char* DatagramBuffer::data() const {
-diff --git a/net/reporting/reporting_header_parser.cc b/net/reporting/reporting_header_parser.cc
-index 3701d15bf..fc144ed63 100644
---- a/net/reporting/reporting_header_parser.cc
-+++ b/net/reporting/reporting_header_parser.cc
-@@ -81,7 +81,7 @@ HeaderEndpointOutcome ProcessEndpoint(
-
- GURL endpoint_url;
- // Support path-absolute-URL string
-- if (std::strspn(endpoint_url_string.c_str(), "/") == 1) {
-+ if (strspn(endpoint_url_string.c_str(), "/") == 1) {
- endpoint_url = group_key.origin.GetURL().Resolve(endpoint_url_string);
- } else {
- endpoint_url = GURL(endpoint_url_string);
-diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
-index fbfdfedff..3b9fd967e 100644
---- a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
-+++ b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
-@@ -891,7 +891,7 @@ void NGInlineNode::SegmentText(NGInlineNodeData* data) {
-
- // Segment NGInlineItem by script, Emoji, and orientation using RunSegmenter.
- void NGInlineNode::SegmentScriptRuns(NGInlineNodeData* data) {
-- DCHECK_EQ(data->segments, nullptr);
-+ DCHECK_EQ(data->segments.get(), nullptr);
-
- String& text_content = data->text_content;
- if (text_content.IsEmpty()) {
diff --git a/www-client/chromium/files/chromium-blink-include-bitset-84.patch b/www-client/chromium/files/chromium-blink-include-bitset-84.patch
deleted file mode 100644
index 95ed89c..0000000
--- a/www-client/chromium/files/chromium-blink-include-bitset-84.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/common/input/web_touch_event.cc b/third_party/blink/common/input/web_touch_event.cc
-index 7ef37fec6..b77be3bac 100644
---- a/third_party/blink/common/input/web_touch_event.cc
-+++ b/third_party/blink/common/input/web_touch_event.cc
-@@ -4,6 +4,8 @@
-
- #include "third_party/blink/public/common/input/web_touch_event.h"
-
-+#include <bitset>
-+
- namespace blink {
-
- namespace {
diff --git a/www-client/chromium/files/chromium-blink-include-limits-84.patch b/www-client/chromium/files/chromium-blink-include-limits-84.patch
deleted file mode 100644
index 4c6b972..0000000
--- a/www-client/chromium/files/chromium-blink-include-limits-84.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/platform/graphics/compositor_element_id.cc b/third_party/blink/renderer/platform/graphics/compositor_element_id.cc
-index 86486ca89..a92d89cf2 100644
---- a/third_party/blink/renderer/platform/graphics/compositor_element_id.cc
-+++ b/third_party/blink/renderer/platform/graphics/compositor_element_id.cc
-@@ -4,6 +4,8 @@
-
- #include "third_party/blink/renderer/platform/graphics/compositor_element_id.h"
-
-+#include <limits>
-+
- namespace blink {
-
- UniqueObjectId NewUniqueObjectId() {
diff --git a/www-client/chromium/files/chromium-blink-include-memory-83.patch b/www-client/chromium/files/chromium-blink-include-memory-83.patch
deleted file mode 100644
index b9a6929..0000000
--- a/www-client/chromium/files/chromium-blink-include-memory-83.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h b/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h
-index f5a7ab038..ef19cfaf6 100644
---- a/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h
-+++ b/third_party/blink/renderer/core/html/trust_token_attribute_parsing.h
-@@ -5,6 +5,8 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_HTML_TRUST_TOKEN_ATTRIBUTE_PARSING_H_
- #define THIRD_PARTY_BLINK_RENDERER_CORE_HTML_TRUST_TOKEN_ATTRIBUTE_PARSING_H_
-
-+#include <memory>
-+
- #include "base/optional.h"
- #include "services/network/public/mojom/trust_tokens.mojom-blink-forward.h"
- #include "third_party/blink/renderer/core/core_export.h"
diff --git a/www-client/chromium/files/chromium-blink-template.patch b/www-client/chromium/files/chromium-blink-template.patch
deleted file mode 100644
index edaf74b..0000000
--- a/www-client/chromium/files/chromium-blink-template.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
-index d9fa696c9..028f9f270 100644
---- a/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
-+++ b/third_party/blink/renderer/modules/canvas/canvas2d/base_rendering_context_2d.cc
-@@ -1773,8 +1773,9 @@ void BaseRenderingContext2D::putImageData(ImageData* data,
- data_length *= context_color_params.BytesPerPixel();
- if (!data_length.IsValid())
- return;
-+ size_t dl=data_length.ValueOrDie();
- std::unique_ptr<uint8_t[]> converted_pixels(
-- new uint8_t[data_length.ValueOrDie()]);
-+ new uint8_t[dl]);
- if (data->ImageDataInCanvasColorSettings(
- ColorParams().ColorSpace(), PixelFormat(), converted_pixels.get(),
- kRGBAColorType)) {
diff --git a/www-client/chromium/files/chromium-bluetooth-tuple-84.patch b/www-client/chromium/files/chromium-bluetooth-tuple-84.patch
deleted file mode 100644
index b01978c..0000000
--- a/www-client/chromium/files/chromium-bluetooth-tuple-84.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-From ded9cf966b7a9b1986bd420866f7cec74e3c2eff Mon Sep 17 00:00:00 2001
-From: David Lechner <david@pybricks.com>
-Date: Tue, 09 Jun 2020 11:15:09 -0500
-Subject: [PATCH] [bluetooth] fix compile error in dbus fake bluetooth device client
-
-This fixes a compile error that was accidentally introduced in
-https://crrev.com/2191232. For unknown reasons this does not cause a
-compile error with libc++, which is normally used with chromium, but
-does cause an error with stdlibc++.
-
-The API for preparing write requests was not changed in
-https://crrev.com/2191232, so the change that introduced this error
-was incorrect anyway. This reverts the change that introduced the
-error and adds the kTypeRequest argument to the call to WriteValue()
-since that was the API that was actually changed in the prior CL.
-
-Bug: 1092470
-Change-Id: I6f6fe90ab42aea3db8cac95b69aee5095ea33b31
----
-
-diff --git a/device/bluetooth/dbus/fake_bluetooth_device_client.cc b/device/bluetooth/dbus/fake_bluetooth_device_client.cc
-index f7136af..23c5fe3 100644
---- a/device/bluetooth/dbus/fake_bluetooth_device_client.cc
-+++ b/device/bluetooth/dbus/fake_bluetooth_device_client.cc
-@@ -649,10 +649,9 @@
- for (const auto& prepare_write_request : prepare_write_requests_) {
- bluez::BluezDBusManager::Get()
- ->GetBluetoothGattCharacteristicClient()
-- ->WriteValue(std::get<0>(prepare_write_request),
-- std::get<1>(prepare_write_request),
-- std::get<2>(prepare_write_request), base::DoNothing(),
-- base::DoNothing());
-+ ->WriteValue(prepare_write_request.first, prepare_write_request.second,
-+ bluetooth_gatt_characteristic::kTypeRequest,
-+ base::DoNothing(), base::DoNothing());
- }
- prepare_write_requests_.clear();
- std::move(callback).Run();
-diff --git a/device/bluetooth/dbus/fake_bluetooth_device_client.h b/device/bluetooth/dbus/fake_bluetooth_device_client.h
-index b46715b5..98a9676 100644
---- a/device/bluetooth/dbus/fake_bluetooth_device_client.h
-+++ b/device/bluetooth/dbus/fake_bluetooth_device_client.h
-@@ -384,7 +384,7 @@
- bool delay_start_discovery_;
-
- // Pending prepare write requests.
-- std::vector<std::tuple<dbus::ObjectPath, std::vector<uint8_t>, std::string>>
-+ std::vector<std::pair<dbus::ObjectPath, std::vector<uint8_t>>>
- prepare_write_requests_;
-
- bool should_leave_connections_pending_;
diff --git a/www-client/chromium/files/chromium-build-gn-83.patch b/www-client/chromium/files/chromium-build-gn-83.patch
deleted file mode 100644
index e70ced6..0000000
--- a/www-client/chromium/files/chromium-build-gn-83.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/BUILD.gn b/BUILD.gn
-index 4c1f89045..2bfac42ed 100644
---- a/BUILD.gn
-+++ b/BUILD.gn
-@@ -1375,17 +1375,17 @@ if (closure_compile) {
- # Because of the source assignment filter, many targets end up over-filtering
- # their sources if the output directory contains a platform name. Assert that
- # this doesn't happen. http://crbug.com/548283
--assert(
-- filter_exclude([ "$root_build_dir/foo" ],
-- # List copied from //build/config/BUILDCONFIG.gn.
-- [
-- "*\bandroid/*",
-- "*\bchromeos/*",
-- "*\bcocoa/*",
-- "*\bios/*",
-- "*\blinux/*",
-- "*\bmac/*",
-- "*\bposix/*",
-- "*\bwin/*",
-- ]) != [],
-- "Do not use a platform name in your output directory (found \"$root_build_dir\"). http://crbug.com/548283")
-+#assert(
-+# filter_exclude([ "$root_build_dir/foo" ],
-+# # List copied from //build/config/BUILDCONFIG.gn.
-+# [
-+# "*\bandroid/*",
-+# "*\bchromeos/*",
-+# "*\bcocoa/*",
-+# "*\bios/*",
-+# "*\blinux/*",
-+# "*\bmac/*",
-+# "*\bposix/*",
-+# "*\bwin/*",
-+# ]) != [],
-+# "Do not use a platform name in your output directory (found \"$root_build_dir\"). http://crbug.com/548283")
diff --git a/www-client/chromium/files/chromium-cc-matrics-include-84.patch b/www-client/chromium/files/chromium-cc-matrics-include-84.patch
deleted file mode 100644
index b1fa0c7..0000000
--- a/www-client/chromium/files/chromium-cc-matrics-include-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/cc/metrics/lcd_text_metrics_reporter.h b/cc/metrics/lcd_text_metrics_reporter.h
-index 921131797..b2aede915 100644
---- a/cc/metrics/lcd_text_metrics_reporter.h
-+++ b/cc/metrics/lcd_text_metrics_reporter.h
-@@ -6,6 +6,7 @@
- #define CC_METRICS_LCD_TEXT_METRICS_REPORTER_H_
-
- #include <cstdint>
-+#include <memory>
-
- #include "base/time/time.h"
- #include "cc/cc_export.h"
diff --git a/www-client/chromium/files/chromium-cert-share-encrypted-85.patch b/www-client/chromium/files/chromium-cert-share-encrypted-85.patch
deleted file mode 100644
index 1a393c4..0000000
--- a/www-client/chromium/files/chromium-cert-share-encrypted-85.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/nearby_sharing/certificates/nearby_share_encrypted_metadata_key.h b/chrome/browser/nearby_sharing/certificates/nearby_share_encrypted_metadata_key.h
-index 2893bdeef..6732a12a8 100644
---- a/chrome/browser/nearby_sharing/certificates/nearby_share_encrypted_metadata_key.h
-+++ b/chrome/browser/nearby_sharing/certificates/nearby_share_encrypted_metadata_key.h
-@@ -5,6 +5,8 @@
- #ifndef CHROME_BROWSER_NEARBY_SHARING_CERTIFICATES_NEARBY_SHARE_ENCRYPTED_METADATA_KEY_H_
- #define CHROME_BROWSER_NEARBY_SHARING_CERTIFICATES_NEARBY_SHARE_ENCRYPTED_METADATA_KEY_H_
-
-+#include <stdint.h>
-+
- #include <vector>
-
- // Holds the encrypted symmetric key--the key used to encrypt user/device
diff --git a/www-client/chromium/files/chromium-char-max-84.patch b/www-client/chromium/files/chromium-char-max-84.patch
deleted file mode 100644
index 0f9c654..0000000
--- a/www-client/chromium/files/chromium-char-max-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/prefs/pref_value_map.cc b/components/prefs/pref_value_map.cc
-index 8a203ac7a..18f160b6e 100644
---- a/components/prefs/pref_value_map.cc
-+++ b/components/prefs/pref_value_map.cc
-@@ -4,6 +4,7 @@
-
- #include "components/prefs/pref_value_map.h"
-
-+#include <climits>
- #include <map>
- #include <memory>
- #include <utility>
diff --git a/www-client/chromium/files/chromium-clang-format-path-82.patch b/www-client/chromium/files/chromium-clang-format-path-82.patch
deleted file mode 100644
index b250479..0000000
--- a/www-client/chromium/files/chromium-clang-format-path-82.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/bindings/scripts/bind_gen/style_format.py b/third_party/blink/renderer/bindings/scripts/bind_gen/style_format.py
-index dc3493cc3..6eeb34a93 100644
---- a/third_party/blink/renderer/bindings/scripts/bind_gen/style_format.py
-+++ b/third_party/blink/renderer/bindings/scripts/bind_gen/style_format.py
-@@ -36,7 +36,7 @@ def init(root_src_dir):
-
- # //buildtools/<platform>/clang-format
- _clang_format_command_path = os.path.join(
-- buildtools_platform_dir, "clang-format{}".format(exe_suffix))
-+ "/usr/lib/llvm/10/bin", "clang-format{}".format(exe_suffix))
-
- # //buildtools/<platform>/gn
- _gn_command_path = os.path.join(buildtools_platform_dir,
diff --git a/www-client/chromium/files/chromium-compiler-76.patch b/www-client/chromium/files/chromium-compiler-76.patch
deleted file mode 100644
index 66f80c0..0000000
--- a/www-client/chromium/files/chromium-compiler-76.patch
+++ /dev/null
@@ -1,160 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index f8a862a6b..41b30dd17 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -230,8 +230,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -471,20 +469,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1523,7 +1507,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1532,10 +1516,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1544,15 +1524,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1941,7 +1912,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1975,7 +1947,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -1998,7 +1971,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2026,7 +2000,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2073,7 +2048,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2111,7 +2087,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2213,7 +2190,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2323,7 +2301,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2380,7 +2359,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
diff --git a/www-client/chromium/files/chromium-compiler-77.patch b/www-client/chromium/files/chromium-compiler-77.patch
deleted file mode 100644
index c311e47..0000000
--- a/www-client/chromium/files/chromium-compiler-77.patch
+++ /dev/null
@@ -1,160 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 72cea8e47..1c59181f8 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -233,8 +233,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -474,20 +472,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1533,7 +1517,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1542,10 +1526,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1554,15 +1534,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1951,7 +1922,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1985,7 +1957,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -2008,7 +1981,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2036,7 +2010,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2083,7 +2058,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2121,7 +2097,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2223,7 +2200,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2333,7 +2311,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2388,7 +2367,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
diff --git a/www-client/chromium/files/chromium-compiler-78.patch b/www-client/chromium/files/chromium-compiler-78.patch
deleted file mode 100644
index 77a8f60..0000000
--- a/www-client/chromium/files/chromium-compiler-78.patch
+++ /dev/null
@@ -1,160 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index bd7245d9a..71d27bcf9 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -248,8 +248,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -489,20 +487,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1538,7 +1522,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1547,10 +1531,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1559,15 +1539,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1968,7 +1939,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1994,7 +1966,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -2017,7 +1990,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2045,7 +2019,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2084,7 +2059,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2114,7 +2090,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2216,7 +2193,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2326,7 +2304,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2381,7 +2360,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
diff --git a/www-client/chromium/files/chromium-compiler-82.patch b/www-client/chromium/files/chromium-compiler-82.patch
deleted file mode 100644
index 62ca00c..0000000
--- a/www-client/chromium/files/chromium-compiler-82.patch
+++ /dev/null
@@ -1,166 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index e40194e3f..b47385c34 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -260,8 +260,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -486,26 +484,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
--
-- if (target_os != "chromeos") {
-- # TODO(https://crbug.com/1049161): Remove '-DCLANG_SPAWN_CC1=ON' from build.py instead
-- # once this change has marinated a bit.
-- cflags += [ "-fintegrated-cc1" ]
-- }
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1577,7 +1555,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1586,10 +1564,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1598,15 +1572,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2010,7 +1975,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -2036,7 +2002,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -2059,7 +2026,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2093,7 +2061,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2132,7 +2101,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2162,7 +2132,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2278,7 +2249,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2388,7 +2360,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2443,7 +2416,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
diff --git a/www-client/chromium/files/chromium-compiler-83.patch b/www-client/chromium/files/chromium-compiler-83.patch
deleted file mode 100644
index cb3c343..0000000
--- a/www-client/chromium/files/chromium-compiler-83.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 6f096b953..0e84f4450 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -261,8 +261,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -485,20 +483,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1545,7 +1529,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1554,10 +1538,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1566,15 +1546,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1973,7 +1944,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags.
- # /O1 implies /Os and /GF.
-@@ -1994,7 +1966,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2028,7 +2001,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2060,7 +2034,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2085,7 +2060,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2201,7 +2177,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2307,7 +2284,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2364,7 +2342,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-compiler-84-r1.patch b/www-client/chromium/files/chromium-compiler-84-r1.patch
deleted file mode 100644
index 2ad6be7..0000000
--- a/www-client/chromium/files/chromium-compiler-84-r1.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 571d37f9d..fc7905808 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -265,8 +265,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -495,20 +493,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1543,7 +1527,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1552,10 +1536,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1564,15 +1544,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1970,7 +1941,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -1997,7 +1969,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2031,7 +2004,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2063,7 +2037,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2088,7 +2063,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2204,7 +2180,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2310,7 +2287,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2367,7 +2345,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-compiler-84.patch b/www-client/chromium/files/chromium-compiler-84.patch
deleted file mode 100644
index 76057d1..0000000
--- a/www-client/chromium/files/chromium-compiler-84.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 4c5e6779e..9280e746f 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -270,8 +270,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -500,20 +498,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1560,7 +1544,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1569,10 +1553,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1581,15 +1561,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1987,7 +1958,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags.
- # /O1 implies /Os and /GF.
-@@ -2008,7 +1980,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2042,7 +2015,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2074,7 +2048,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2099,7 +2074,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2215,7 +2191,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2321,7 +2298,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2378,7 +2356,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-compiler-86.patch b/www-client/chromium/files/chromium-compiler-86.patch
deleted file mode 100644
index a740297..0000000
--- a/www-client/chromium/files/chromium-compiler-86.patch
+++ /dev/null
@@ -1,162 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 3b3cdd898..ed4baae3f 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -253,8 +253,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -485,17 +483,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1061,14 +1048,6 @@ config("compiler_codegen") {
- ldflags += [ "-Wl,-mllvm,-enable-machine-outliner=never" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang && !is_chromeos_device) {
-- cflags += [
-- # TODO(thakis): Remove after next clang roll, see reviews.llvm.org/D82998
-- "-mllvm",
-- "-basic-aa-recphi=0",
-- ]
-- }
--
- # TODO(thakis): Remove `if (!is_win)` after next clang roll.
- if (!is_win) {
- asmflags = cflags
-@@ -1561,7 +1540,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1570,10 +1549,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1582,15 +1557,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1988,7 +1954,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2023,7 +1990,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2063,7 +2031,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2095,7 +2064,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2120,7 +2090,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2237,7 +2208,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2344,7 +2316,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2401,7 +2374,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-compiler-87.patch b/www-client/chromium/files/chromium-compiler-87.patch
deleted file mode 100644
index 5668bbb..0000000
--- a/www-client/chromium/files/chromium-compiler-87.patch
+++ /dev/null
@@ -1,147 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 16ee9ba..4dd19bd 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -258,8 +258,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -492,17 +490,6 @@ config("compiler") {
- ldflags += [ "-Wl,-z,keep-text-section-prefix" ]
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-mllvm",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) ||
-@@ -1573,7 +1560,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = [ ]
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1582,10 +1569,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1594,15 +1577,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -2000,7 +1974,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- if (chrome_pgo_phase != 2) {
- # Favor size over speed, /O1 must be before the common flags.
-@@ -2035,7 +2010,8 @@ config("optimize") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2075,7 +2051,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2107,7 +2084,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2132,7 +2110,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2249,7 +2228,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (is_clang) {
- cflags = [ "/Z7" ] # Debug information in the .obj files.
-@@ -2360,7 +2340,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Functions, files, and line tables only.
- cflags = []
-@@ -2413,7 +2394,8 @@ config("minimal_symbols") {
- # This configuration contains function names only. That is, the compiler is
- # told to not generate debug information and the linker then just puts function
- # names in the final debug information.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (is_win) {
- ldflags = [ "/DEBUG" ]
-
diff --git a/www-client/chromium/files/chromium-compiler-r10.patch b/www-client/chromium/files/chromium-compiler-r10.patch
deleted file mode 100644
index f2ecdc3..0000000
--- a/www-client/chromium/files/chromium-compiler-r10.patch
+++ /dev/null
@@ -1,185 +0,0 @@
-From a1207cc75454e653030716948d27ec27412f6fe8 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Sat, 16 Jun 2019 15:43:27 +0100
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 64 +++++++++++++---------------------
- 1 file changed, 25 insertions(+), 39 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index a3f21b7..0a7bec6 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -230,8 +230,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -471,20 +469,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # C11/C++11 compiler flags setup.
- # ---------------------------
- if (is_linux || is_android || (is_nacl && is_clang) || current_os == "aix") {
-@@ -1431,6 +1415,12 @@ config("default_warnings") {
- "-Wno-narrowing",
- ]
-
-+ # -Wno-class-memaccess warns about hash table and vector in blink.
-+ # But the violation is intentional.
-+ if (!is_nacl) {
-+ cflags_cc += [ "-Wno-class-memaccess" ]
-+ }
-+
- # -Wunused-local-typedefs is broken in gcc,
- # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63872
- cflags += [ "-Wno-unused-local-typedefs" ]
-@@ -1525,7 +1515,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1534,10 +1524,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1546,15 +1532,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1943,7 +1920,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1977,7 +1955,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -2000,7 +1979,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2028,7 +2008,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2075,7 +2056,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2113,7 +2095,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2215,7 +2198,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2325,7 +2309,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2382,7 +2367,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
---
-2.21.0
-
diff --git a/www-client/chromium/files/chromium-compiler-r4.patch b/www-client/chromium/files/chromium-compiler-r4.patch
deleted file mode 100644
index 3fe73ef..0000000
--- a/www-client/chromium/files/chromium-compiler-r4.patch
+++ /dev/null
@@ -1,168 +0,0 @@
-From 777d166eec22c1894108dce985498f75ac5931e8 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Wed, 25 Apr 2018 13:22:49 -0400
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 61 ++++++++++------------------------
- 1 file changed, 18 insertions(+), 43 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 6e38ad782d38..87bbd423f67f 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -225,8 +225,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ]
-
-@@ -488,18 +486,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
-- target_os != "chromeos") {
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # Print absolute paths in diagnostics. There is no precedent for doing this
- # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
- # Windows developers rely on it (crbug.com/636109) so only do this on Windows.
-@@ -1473,10 +1459,6 @@ config("default_warnings") {
- cflags += [
- # TODO(thakis): https://crbug.com/753973
- "-Wno-enum-compare-switch",
--
-- # Ignore warnings about MSVC optimization pragmas.
-- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314
-- "-Wno-ignored-pragma-optimize",
- ]
- }
- }
-@@ -1518,22 +1500,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer &&
-- (!is_linux || !is_clang || is_official_build) &&
-- current_cpu != "s390x" && current_cpu != "s390" &&
-- current_cpu != "ppc64" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # _FORTIFY_SOURCE isn't really supported by Clang now, see
-- # http://llvm.org/bugs/show_bug.cgi?id=16821.
-- # It seems to work fine with Ubuntu 12 headers though, so use it in
-- # official builds.
-- #
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac || is_ios) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1863,7 +1829,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1897,7 +1864,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -1920,7 +1888,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -1944,7 +1913,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -1991,7 +1961,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2029,7 +2000,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2115,7 +2087,8 @@ config("afdo") {
- # configs += [ "//build/config/compiler:symbols" ]
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2213,7 +2186,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2244,7 +2218,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
---
-2.18.0
-
diff --git a/www-client/chromium/files/chromium-compiler-r6.patch b/www-client/chromium/files/chromium-compiler-r6.patch
deleted file mode 100644
index db8d046..0000000
--- a/www-client/chromium/files/chromium-compiler-r6.patch
+++ /dev/null
@@ -1,170 +0,0 @@
-From cec10e55fdb150b33342ad462907fb6202de364e Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Wed, 25 Apr 2018 13:22:49 -0400
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 63 ++++++++++------------------------
- 1 file changed, 18 insertions(+), 45 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 0f7a6b48f7b2..c91b702147d4 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -236,8 +236,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ]
-
-@@ -502,17 +500,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # Print absolute paths in diagnostics. There is no precedent for doing this
- # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
- # Windows developers rely on it (crbug.com/636109) so only do this on Windows.
-@@ -1498,13 +1485,6 @@ config("default_warnings") {
- cflags += [
- # TODO(thakis): https://crbug.com/753973
- "-Wno-enum-compare-switch",
--
-- # Ignore warnings about MSVC optimization pragmas.
-- # TODO(thakis): Only for no_chromium_code? http://crbug.com/505314
-- "-Wno-ignored-pragma-optimize",
--
-- # TODO(hans): https://crbug.com/890307
-- "-Wno-defaulted-function-deleted",
- ]
- }
- }
-@@ -1546,22 +1526,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer &&
-- (!is_linux || !is_clang || is_official_build) &&
-- current_cpu != "s390x" && current_cpu != "s390" &&
-- current_cpu != "ppc64" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # _FORTIFY_SOURCE isn't really supported by Clang now, see
-- # http://llvm.org/bugs/show_bug.cgi?id=16821.
-- # It seems to work fine with Ubuntu 12 headers though, so use it in
-- # official builds.
-- #
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1931,7 +1895,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1965,7 +1930,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -1988,7 +1954,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2012,7 +1979,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2059,7 +2027,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2097,7 +2066,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2183,7 +2153,8 @@ config("afdo") {
- # configs += [ "//build/config/compiler:symbols" ]
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2281,7 +2252,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2321,7 +2293,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
---
-2.19.1
-
diff --git a/www-client/chromium/files/chromium-compiler-r7.patch b/www-client/chromium/files/chromium-compiler-r7.patch
deleted file mode 100644
index dcf40a8..0000000
--- a/www-client/chromium/files/chromium-compiler-r7.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From 6ba946c7116f4f1d0b35fc90716b6e940116b74b Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppym@gentoo.org>
-Date: Wed, 25 Apr 2018 13:22:49 -0400
-Subject: [PATCH] Disable various compiler configs
-
----
- build/config/compiler/BUILD.gn | 62 +++++++++++-----------------------
- 1 file changed, 19 insertions(+), 43 deletions(-)
-
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 677003ac646c..f38bc908622a 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -236,8 +236,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ]
-
-@@ -502,17 +500,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # Print absolute paths in diagnostics. There is no precedent for doing this
- # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
- # Windows developers rely on it (crbug.com/636109) so only do this on Windows.
-@@ -1512,7 +1499,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1521,10 +1508,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1533,22 +1516,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer &&
-- (!is_linux || !is_clang || is_official_build) &&
-- current_cpu != "s390x" && current_cpu != "s390" &&
-- current_cpu != "ppc64" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # _FORTIFY_SOURCE isn't really supported by Clang now, see
-- # http://llvm.org/bugs/show_bug.cgi?id=16821.
-- # It seems to work fine with Ubuntu 12 headers though, so use it in
-- # official builds.
-- #
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1925,7 +1892,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1959,7 +1927,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -1982,7 +1951,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2006,7 +1976,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2053,7 +2024,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2091,7 +2063,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2193,7 +2166,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2294,7 +2268,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2337,7 +2312,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
---
-2.19.1
-
diff --git a/www-client/chromium/files/chromium-compiler-r8.patch b/www-client/chromium/files/chromium-compiler-r8.patch
deleted file mode 100644
index 117d1e6..0000000
--- a/www-client/chromium/files/chromium-compiler-r8.patch
+++ /dev/null
@@ -1,164 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 2f01fbbf4..8b487ad77 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -236,8 +236,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ]
-
-@@ -501,17 +499,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # Print absolute paths in diagnostics. There is no precedent for doing this
- # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
- # Windows developers rely on it (crbug.com/636109) so only do this on Windows.
-@@ -1516,7 +1503,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1525,10 +1512,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1537,22 +1520,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer &&
-- (!is_linux || !is_clang || is_official_build) &&
-- current_cpu != "s390x" && current_cpu != "s390" &&
-- current_cpu != "ppc64" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # _FORTIFY_SOURCE isn't really supported by Clang now, see
-- # http://llvm.org/bugs/show_bug.cgi?id=16821.
-- # It seems to work fine with Ubuntu 12 headers though, so use it in
-- # official builds.
-- #
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1922,7 +1889,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1956,7 +1924,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -1979,7 +1948,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2007,7 +1977,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2054,7 +2025,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2092,7 +2064,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2194,7 +2167,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2304,7 +2278,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2356,7 +2331,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
diff --git a/www-client/chromium/files/chromium-compiler-r9.patch b/www-client/chromium/files/chromium-compiler-r9.patch
deleted file mode 100644
index 43cd93e..0000000
--- a/www-client/chromium/files/chromium-compiler-r9.patch
+++ /dev/null
@@ -1,160 +0,0 @@
-diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn
-index 7db66418e..ce3ba300a 100644
---- a/build/config/compiler/BUILD.gn
-+++ b/build/config/compiler/BUILD.gn
-@@ -230,8 +230,6 @@ config("compiler") {
-
- configs += [
- # See the definitions below.
-- ":clang_revision",
-- ":compiler_cpu_abi",
- ":compiler_codegen",
- ":compiler_deterministic",
- ]
-@@ -479,20 +477,6 @@ config("compiler") {
- }
- }
-
-- if (is_clang && !is_nacl && !use_xcode_clang) {
-- cflags += [ "-fcrash-diagnostics-dir=" +
-- rebase_path("//tools/clang/crashreports", root_build_dir) ]
--
-- cflags += [
-- # TODO(hans): Remove this once Clang generates better optimized debug info
-- # by default. https://crbug.com/765793
-- "-Xclang",
-- "-mllvm",
-- "-Xclang",
-- "-instcombine-lower-dbg-declare=0",
-- ]
-- }
--
- # Print absolute paths in diagnostics. There is no precedent for doing this
- # on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
- # Windows developers rely on it (crbug.com/636109) so only do this on Windows.
-@@ -1533,7 +1517,7 @@ config("chromium_code") {
- defines = [ "_HAS_NODISCARD" ]
- }
- } else {
-- cflags = [ "-Wall" ]
-+ cflags = []
- if (treat_warnings_as_errors) {
- cflags += [ "-Werror" ]
-
-@@ -1542,10 +1526,6 @@ config("chromium_code") {
- # well.
- ldflags = [ "-Werror" ]
- }
-- if (is_clang) {
-- # Enable extra warnings for chromium_code when we control the compiler.
-- cflags += [ "-Wextra" ]
-- }
-
- # In Chromium code, we define __STDC_foo_MACROS in order to get the
- # C99 macros on Mac and Linux.
-@@ -1554,15 +1534,6 @@ config("chromium_code") {
- "__STDC_FORMAT_MACROS",
- ]
-
-- if (!is_debug && !using_sanitizer && current_cpu != "s390x" &&
-- current_cpu != "s390" && current_cpu != "ppc64" &&
-- current_cpu != "mips" && current_cpu != "mips64") {
-- # Non-chromium code is not guaranteed to compile cleanly with
-- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are
-- # disabled, so only do that for Release build.
-- defines += [ "_FORTIFY_SOURCE=2" ]
-- }
--
- if (is_mac) {
- cflags_objc = [ "-Wobjc-missing-property-synthesis" ]
- cflags_objcc = [ "-Wobjc-missing-property-synthesis" ]
-@@ -1951,7 +1922,8 @@ config("default_stack_frames") {
- }
-
- # Default "optimization on" config.
--config("optimize") {
-+config("optimize") { }
-+config("xoptimize") {
- if (is_win) {
- # TODO(thakis): Remove is_clang here, https://crbug.com/598772
- if (is_official_build && full_wpo_on_official && !is_clang) {
-@@ -1985,7 +1957,8 @@ config("optimize") {
- }
-
- # Same config as 'optimize' but without the WPO flag.
--config("optimize_no_wpo") {
-+config("optimize_no_wpo") { }
-+config("xoptimize_no_wpo") {
- if (is_win) {
- # Favor size over speed, /O1 must be before the common flags. The GYP
- # build also specifies /Os and /GF but these are implied by /O1.
-@@ -2008,7 +1981,8 @@ config("optimize_no_wpo") {
- }
-
- # Turn off optimizations.
--config("no_optimize") {
-+config("no_optimize") { }
-+config("xno_optimize") {
- if (is_win) {
- cflags = [
- "/Od", # Disable optimization.
-@@ -2036,7 +2010,8 @@ config("no_optimize") {
- # Turns up the optimization level. On Windows, this implies whole program
- # optimization and link-time code generation which is very expensive and should
- # be used sparingly.
--config("optimize_max") {
-+config("optimize_max") { }
-+config("xoptimize_max") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2083,7 +2058,8 @@ config("optimize_max") {
- #
- # TODO(crbug.com/621335) - rework how all of these configs are related
- # so that we don't need this disclaimer.
--config("optimize_speed") {
-+config("optimize_speed") { }
-+config("xoptimize_speed") {
- if (is_nacl && is_nacl_irt) {
- # The NaCl IRT is a special case and always wants its own config.
- # Various components do:
-@@ -2121,7 +2097,8 @@ config("optimize_speed") {
- }
- }
-
--config("optimize_fuzzing") {
-+config("optimize_fuzzing") { }
-+config("xoptimize_fuzzing") {
- cflags = [ "-O1" ] + common_optimize_on_cflags
- ldflags = common_optimize_on_ldflags
- visibility = [ ":default_optimization" ]
-@@ -2223,7 +2200,8 @@ config("win_pdbaltpath") {
- }
-
- # Full symbols.
--config("symbols") {
-+config("symbols") { }
-+config("xsymbols") {
- if (is_win) {
- if (use_goma || is_clang) {
- # Note that with VC++ this requires is_win_fastlink, enforced elsewhere.
-@@ -2328,7 +2306,8 @@ config("symbols") {
- # Minimal symbols.
- # This config guarantees to hold symbol for stack trace which are shown to user
- # when crash happens in unittests running on buildbot.
--config("minimal_symbols") {
-+config("minimal_symbols") { }
-+config("xminimal_symbols") {
- if (is_win) {
- # Linker symbols for backtraces only.
- cflags = []
-@@ -2380,7 +2359,8 @@ config("minimal_symbols") {
- }
-
- # No symbols.
--config("no_symbols") {
-+config("no_symbols") { }
-+config("xno_symbols") {
- if (!is_win) {
- cflags = [ "-g0" ]
- asmflags = cflags
diff --git a/www-client/chromium/files/chromium-core-management-svc-84.patch b/www-client/chromium/files/chromium-core-management-svc-84.patch
deleted file mode 100644
index 89a5f1b..0000000
--- a/www-client/chromium/files/chromium-core-management-svc-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/components/policy/core/common/management/management_service.h b/components/policy/core/common/management/management_service.h
-index cf71a2379..f845bff5c 100644
---- a/components/policy/core/common/management/management_service.h
-+++ b/components/policy/core/common/management/management_service.h
-@@ -7,6 +7,7 @@
-
- #include "base/containers/flat_set.h"
- #include "components/policy/policy_export.h"
-+#include <memory>
-
- namespace policy {
-
diff --git a/www-client/chromium/files/chromium-crx-install-err-include-83.patch b/www-client/chromium/files/chromium-crx-install-err-include-83.patch
deleted file mode 100644
index fc42771..0000000
--- a/www-client/chromium/files/chromium-crx-install-err-include-83.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/extensions/browser/install/crx_install_error.cc b/extensions/browser/install/crx_install_error.cc
-index a9765bb0a..ab5870069 100644
---- a/extensions/browser/install/crx_install_error.cc
-+++ b/extensions/browser/install/crx_install_error.cc
-@@ -7,6 +7,8 @@
- #include "base/logging.h"
- #include "extensions/browser/install/sandboxed_unpacker_failure_reason.h"
-
-+#include <algorithm>
-+
- namespace extensions {
-
- CrxInstallError::CrxInstallError(CrxInstallErrorType type,
diff --git a/www-client/chromium/files/chromium-cursor-80.patch b/www-client/chromium/files/chromium-cursor-80.patch
deleted file mode 100644
index 4907452..0000000
--- a/www-client/chromium/files/chromium-cursor-80.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-diff --git a/chrome/browser/ui/libgtkui/gtk_ui.cc b/chrome/browser/ui/libgtkui/gtk_ui.cc
-index 1aea19a..cf38ee7 100644
---- a/chrome/browser/ui/libgtkui/gtk_ui.cc
-+++ b/chrome/browser/ui/libgtkui/gtk_ui.cc
-@@ -845,6 +845,8 @@
- void GtkUi::OnCursorThemeNameChanged(GtkSettings* settings,
- GtkParamSpec* param) {
- std::string cursor_theme_name = GetCursorThemeName();
-+ if (cursor_theme_name.empty())
-+ return;
- for (auto& observer : cursor_theme_observers())
- observer.OnCursorThemeNameChanged(cursor_theme_name);
- }
-@@ -852,6 +854,8 @@
- void GtkUi::OnCursorThemeSizeChanged(GtkSettings* settings,
- GtkParamSpec* param) {
- int cursor_theme_size = GetCursorThemeSize();
-+ if (!cursor_theme_size)
-+ return;
- for (auto& observer : cursor_theme_observers())
- observer.OnCursorThemeSizeChanged(cursor_theme_size);
- }
-diff --git a/ui/base/cursor/cursor_loader_x11.cc b/ui/base/cursor/cursor_loader_x11.cc
-index efc6351..52ab54a 100644
---- a/ui/base/cursor/cursor_loader_x11.cc
-+++ b/ui/base/cursor/cursor_loader_x11.cc
-@@ -83,11 +83,8 @@
- : display_(gfx::GetXDisplay()),
- invisible_cursor_(CreateInvisibleCursor(), gfx::GetXDisplay()) {
- auto* cursor_theme_manager = CursorThemeManagerLinux::GetInstance();
-- if (cursor_theme_manager) {
-+ if (cursor_theme_manager)
- cursor_theme_observer_.Add(cursor_theme_manager);
-- OnCursorThemeNameChanged(cursor_theme_manager->GetCursorThemeName());
-- OnCursorThemeSizeChanged(cursor_theme_manager->GetCursorThemeSize());
-- }
- }
-
- CursorLoaderX11::~CursorLoaderX11() {
-diff --git a/ui/base/cursor/cursor_theme_manager_linux.cc b/ui/base/cursor/cursor_theme_manager_linux.cc
-index fe8a97f..f825b74 100644
---- a/ui/base/cursor/cursor_theme_manager_linux.cc
-+++ b/ui/base/cursor/cursor_theme_manager_linux.cc
-@@ -26,6 +26,12 @@
- void CursorThemeManagerLinux::AddObserver(
- CursorThemeManagerLinuxObserver* observer) {
- cursor_theme_observers_.AddObserver(observer);
-+ std::string name = GetCursorThemeName();
-+ if (!name.empty())
-+ observer->OnCursorThemeNameChanged(name);
-+ int size = GetCursorThemeSize();
-+ if (size)
-+ observer->OnCursorThemeSizeChanged(size);
- }
-
- void CursorThemeManagerLinux::RemoveObserver(
-diff --git a/ui/base/cursor/cursor_theme_manager_linux.h b/ui/base/cursor/cursor_theme_manager_linux.h
-index 5304867..464d397 100644
---- a/ui/base/cursor/cursor_theme_manager_linux.h
-+++ b/ui/base/cursor/cursor_theme_manager_linux.h
-@@ -22,9 +22,10 @@
-
- static CursorThemeManagerLinux* GetInstance();
-
-- virtual std::string GetCursorThemeName() = 0;
-- virtual int GetCursorThemeSize() = 0;
-+ // Adds |observer| and makes initial OnCursorThemNameChanged() and/or
-+ // OnCursorThemeSizeChanged() calls if the respective settings were set.
- void AddObserver(CursorThemeManagerLinuxObserver* observer);
-+
- void RemoveObserver(CursorThemeManagerLinuxObserver* observer);
-
- protected:
-@@ -35,6 +36,9 @@
- return cursor_theme_observers_;
- }
-
-+ virtual std::string GetCursorThemeName() = 0;
-+ virtual int GetCursorThemeSize() = 0;
-+
- private:
- static CursorThemeManagerLinux* instance_;
-
-diff --git a/ui/base/cursor/cursor_theme_manager_linux_observer.h b/ui/base/cursor/cursor_theme_manager_linux_observer.h
-index 3d0c822..73a3b42 100644
---- a/ui/base/cursor/cursor_theme_manager_linux_observer.h
-+++ b/ui/base/cursor/cursor_theme_manager_linux_observer.h
-@@ -15,8 +15,11 @@
- class UI_BASE_EXPORT CursorThemeManagerLinuxObserver
- : public base::CheckedObserver {
- public:
-+ // |cursor_theme_name| will be nonempty.
- virtual void OnCursorThemeNameChanged(
- const std::string& cursor_theme_name) = 0;
-+
-+ // |cursor_theme_size| will be nonzero.
- virtual void OnCursorThemeSizeChanged(int cursor_theme_size) = 0;
-
- protected:
diff --git a/www-client/chromium/files/chromium-deque-constructor-82.patch b/www-client/chromium/files/chromium-deque-constructor-82.patch
deleted file mode 100644
index 5c9d237..0000000
--- a/www-client/chromium/files/chromium-deque-constructor-82.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/platform/wtf/deque.h b/third_party/blink/renderer/platform/wtf/deque.h
-index 29cce7c57..07233c4 100644
---- a/third_party/blink/renderer/platform/wtf/deque.h
-+++ b/third_party/blink/renderer/platform/wtf/deque.h
-
-@@ -236,6 +236,7 @@
- typedef T& reference;
- typedef std::bidirectional_iterator_tag iterator_category;
-
-+ DequeIterator() = default;
- DequeIterator(Deque<T, inlineCapacity, Allocator>* deque, wtf_size_t index)
- : Base(deque, index) {}
-
diff --git a/www-client/chromium/files/chromium-disable-mojovdec.patch b/www-client/chromium/files/chromium-disable-mojovdec.patch
deleted file mode 100644
index e694ad2..0000000
--- a/www-client/chromium/files/chromium-disable-mojovdec.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 477caecdb..e152cbddd 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -245,7 +245,12 @@ const base::Feature kMemoryPressureBasedSourceBufferGC{
-
- // Enable MojoVideoDecoder, replacing GpuVideoDecoder.
- const base::Feature kMojoVideoDecoder{"MojoVideoDecoder",
-- base::FEATURE_ENABLED_BY_DEFAULT};
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
-+ base::FEATURE_DISABLED_BY_DEFAULT
-+#else
-+ base::FEATURE_ENABLED_BY_DEFAULT
-+#endif
-+};
-
- // Enable The D3D11 Video decoder. Must also enable MojoVideoDecoder for
- // this to have any effect.
diff --git a/www-client/chromium/files/chromium-ext-no-vector-const-84.patch b/www-client/chromium/files/chromium-ext-no-vector-const-84.patch
deleted file mode 100644
index 7a02aba..0000000
--- a/www-client/chromium/files/chromium-ext-no-vector-const-84.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff --git a/extensions/common/features/feature_flags.cc b/extensions/common/features/feature_flags.cc
-index 5b63764e4..7efa308db 100644
---- a/extensions/common/features/feature_flags.cc
-+++ b/extensions/common/features/feature_flags.cc
-@@ -19,7 +19,7 @@ namespace {
- constexpr base::Feature kFeatureFlags[] = {
- {"DeclarativeNetRequest", base::FEATURE_ENABLED_BY_DEFAULT}};
-
--const std::vector<const base::Feature>* g_feature_flags_test_override = nullptr;
-+const std::vector<base::Feature>* g_feature_flags_test_override = nullptr;
-
- template <typename T>
- const base::Feature* GetFeature(T begin,
-@@ -52,8 +52,8 @@ bool IsFeatureFlagEnabled(const std::string& feature_flag) {
- }
-
- ScopedFeatureFlagsOverride CreateScopedFeatureFlagsOverrideForTesting(
-- const std::vector<const base::Feature>* features) {
-- return base::AutoReset<const std::vector<const base::Feature>*>(
-+ const std::vector<base::Feature>* features) {
-+ return base::AutoReset<const std::vector<base::Feature>*>(
- &g_feature_flags_test_override, features);
- }
-
-diff --git a/extensions/common/features/feature_flags.h b/extensions/common/features/feature_flags.h
-index d1a5dd372..b57740b25 100644
---- a/extensions/common/features/feature_flags.h
-+++ b/extensions/common/features/feature_flags.h
-@@ -25,9 +25,9 @@ bool IsFeatureFlagEnabled(const std::string& feature_flag);
- // in scope. Clients must ensure that |features| remains alive (non-dangling)
- // while the returned value is in scope.
- using ScopedFeatureFlagsOverride =
-- base::AutoReset<const std::vector<const base::Feature>*>;
-+ base::AutoReset<const std::vector<base::Feature>*>;
- ScopedFeatureFlagsOverride CreateScopedFeatureFlagsOverrideForTesting(
-- const std::vector<const base::Feature>* features);
-+ const std::vector<base::Feature>* features);
-
- } // namespace extensions
-
diff --git a/www-client/chromium/files/chromium-fix-char_traits.patch b/www-client/chromium/files/chromium-fix-char_traits.patch
deleted file mode 100644
index 4cb9503..0000000
--- a/www-client/chromium/files/chromium-fix-char_traits.patch
+++ /dev/null
@@ -1,14 +0,0 @@
---- a/base/strings/char_traits.h
-+++ b/base/strings/char_traits.h
-@@ -67,9 +67,9 @@
- return __builtin_memcmp(s1, s2, n);
- #else
- for (; n; --n, ++s1, ++s2) {
-- if (*s1 < *s2)
-+ if ((unsigned char)*s1 < (unsigned char)*s2)
- return -1;
-- if (*s1 > *s2)
-+ if ((unsigned char)*s1 > (unsigned char)*s2)
- return 1;
- }
- return 0;
diff --git a/www-client/chromium/files/chromium-gamepad-include-84.patch b/www-client/chromium/files/chromium-gamepad-include-84.patch
deleted file mode 100644
index 36eb40c..0000000
--- a/www-client/chromium/files/chromium-gamepad-include-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/device/gamepad/public/cpp/gamepad.h b/device/gamepad/public/cpp/gamepad.h
-index 67e793a23..c2ead1bd3 100644
---- a/device/gamepad/public/cpp/gamepad.h
-+++ b/device/gamepad/public/cpp/gamepad.h
-@@ -7,6 +7,7 @@
-
- #include <stddef.h>
- #include <cstdint>
-+#include <limits>
-
- #include "base/component_export.h"
- #include "base/strings/string16.h"
diff --git a/www-client/chromium/files/chromium-gcc-89311.patch b/www-client/chromium/files/chromium-gcc-89311.patch
deleted file mode 100644
index 40a0e73..0000000
--- a/www-client/chromium/files/chromium-gcc-89311.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-diff --git a/chrome/browser/ui/views/extensions/extension_popup.cc b/chrome/browser/ui/views/extensions/extension_popup.cc
-index 3f0985d..57d16ab 100644
---- a/chrome/browser/ui/views/extensions/extension_popup.cc
-+++ b/chrome/browser/ui/views/extensions/extension_popup.cc
-@@ -8,7 +8,6 @@
- #include "chrome/browser/devtools/devtools_window.h"
- #include "chrome/browser/extensions/extension_view_host.h"
- #include "chrome/browser/ui/browser.h"
--#include "chrome/browser/ui/tabs/tab_strip_model.h"
- #include "content/public/browser/devtools_agent_host.h"
- #include "content/public/browser/notification_details.h"
- #include "content/public/browser/notification_source.h"
-diff --git a/chrome/browser/ui/views/extensions/extension_popup.h b/chrome/browser/ui/views/extensions/extension_popup.h
-index 3661b5b..9018efa 100644
---- a/chrome/browser/ui/views/extensions/extension_popup.h
-+++ b/chrome/browser/ui/views/extensions/extension_popup.h
-@@ -9,6 +9,7 @@
- #include "base/compiler_specific.h"
- #include "base/macros.h"
- #include "base/scoped_observer.h"
-+#include "chrome/browser/ui/tabs/tab_strip_model.h"
- #include "chrome/browser/ui/tabs/tab_strip_model_observer.h"
- #include "chrome/browser/ui/views/extensions/extension_view_views.h"
- #include "content/public/browser/devtools_agent_host_observer.h"
-diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc
-index 7419243..441929a 100644
---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc
-+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.cc
-@@ -9,7 +9,6 @@
- #include "base/single_thread_task_runner.h"
- #include "base/threading/thread_task_runner_handle.h"
- #include "base/time/time.h"
--#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h"
- #include "chrome/browser/ui/views/frame/app_menu_button.h"
- #include "chrome/browser/ui/views/frame/browser_view.h"
- #include "chrome/browser/ui/views/toolbar/app_menu.h"
-diff --git a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h
-index 2a3ea8e..ac44a4f 100644
---- a/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h
-+++ b/chrome/browser/ui/views/toolbar/extension_toolbar_menu_view.h
-@@ -8,6 +8,7 @@
- #include "base/macros.h"
- #include "base/memory/weak_ptr.h"
- #include "base/scoped_observer.h"
-+#include "chrome/browser/ui/toolbar/toolbar_actions_bar.h"
- #include "chrome/browser/ui/toolbar/toolbar_actions_bar_observer.h"
- #include "chrome/browser/ui/views/frame/app_menu_button_observer.h"
- #include "ui/views/controls/scroll_view.h"
-@@ -16,7 +17,6 @@
- class AppMenuButton;
- class Browser;
- class BrowserActionsContainer;
--class ToolbarActionsBar;
-
- namespace views {
- class MenuItemView;
-diff --git a/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.cc b/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.cc
-index 342723e..acdc4b7 100644
---- a/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.cc
-+++ b/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.cc
-@@ -10,7 +10,6 @@
- #include "chrome/common/chrome_features.h"
- #include "chrome/common/extensions/api/url_handlers/url_handlers_parser.h"
- #include "content/public/browser/web_contents.h"
--#include "extensions/browser/extension_registry.h"
- #include "extensions/common/extension.h"
- #include "url/gurl.h"
-
-diff --git a/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.h b/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.h
-index 895e204..11dfdef 100644
---- a/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.h
-+++ b/chrome/browser/web_applications/extensions/bookmark_app_tab_helper.h
-@@ -8,6 +8,7 @@
- #include "base/macros.h"
- #include "base/scoped_observer.h"
- #include "chrome/browser/web_applications/components/web_app_tab_helper_base.h"
-+#include "extensions/browser/extension_registry.h"
- #include "extensions/browser/extension_registry_observer.h"
-
- namespace content {
-@@ -17,7 +18,6 @@
- namespace extensions {
-
- class Extension;
--class ExtensionRegistry;
-
- // Allows to associate a tab with bookmark app.
- class BookmarkAppTabHelper : public web_app::WebAppTabHelperBase,
diff --git a/www-client/chromium/files/chromium-gcc-initlist.patch b/www-client/chromium/files/chromium-gcc-initlist.patch
deleted file mode 100644
index 8658264..0000000
--- a/www-client/chromium/files/chromium-gcc-initlist.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/net/third_party/quic/platform/impl/quic_flags_impl.cc b/net/third_party/quic/platform/impl/quic_flags_impl.cc
-index 5e6962d1e..2456c80dd 100644
---- a/net/third_party/quic/platform/impl/quic_flags_impl.cc
-+++ b/net/third_party/quic/platform/impl/quic_flags_impl.cc
-@@ -153,9 +153,9 @@ std::string QuicFlagRegistry::GetHelp() const {
- template <>
- bool TypedQuicFlagHelper<bool>::SetFlag(const std::string& s) const {
- static const base::NoDestructor<std::set<std::string>> kTrueValues(
-- {"", "1", "t", "true", "y", "yes"});
-+ std::initializer_list<std::string>({"", "1", "t", "true", "y", "yes"}));
- static const base::NoDestructor<std::set<std::string>> kFalseValues(
-- {"0", "f", "false", "n", "no"});
-+ std::initializer_list<std::string>({"0", "f", "false", "n", "no"}));
- if (kTrueValues->find(base::ToLowerASCII(s)) != kTrueValues->end()) {
- *flag_ = true;
- return true;
diff --git a/www-client/chromium/files/chromium-glibc-2.34.patch b/www-client/chromium/files/chromium-glibc-2.34.patch
deleted file mode 100644
index 64c03a6..0000000
--- a/www-client/chromium/files/chromium-glibc-2.34.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From 600d63c2c59a9892dbc5423d7d8bb1565a9f91e7 Mon Sep 17 00:00:00 2001
-From: Michel Salim <michel@fb.com>
-Date: Thu, 04 Nov 2021 14:22:40 -0700
-Subject: [PATCH] Handle long SIGSTKSZ in glibc > 2.33
-
-`SIGSTKSZ` is no longer constant in glibc > 2.33 but a function
-returning a long. Cast before taking `max`.
-
-See https://sourceware.org/git/?p=glibc.git;a=blob;f=NEWS;h=85e84fe53699fe9e392edffa993612ce08b2954a;hb=HEAD
-
-Signed-off-by: Michel Salim <michel@fb.com>
-Change-Id: I197f8ff3053eede80d6aed096be4f0113dd43241
-(relocated to chromium repo, removed static)
----
-
-diff --git a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-index ca353c4..5cdabcf 100644
---- a/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-+++ b/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc
-@@ -138,7 +138,7 @@
- // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
- // the alternative stack. Ensure that the size of the alternative stack is
- // large enough.
-- static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
-+ const unsigned kSigStackSize = std::max(16384U, (unsigned)SIGSTKSZ);
-
- // Only set an alternative stack if there isn't already one, or if the current
- // one is too small.
-diff --git a/sandbox/linux/services/credentials.cc b/sandbox/linux/services/credentials.cc
-index ca6b595..1c1ee42 100644
---- a/sandbox/linux/services/credentials.cc
-+++ b/sandbox/linux/services/credentials.cc
-@@ -11,6 +11,7 @@
- #include <stddef.h>
- #include <stdint.h>
- #include <stdio.h>
-+#include <string.h>
- #include <sys/syscall.h>
- #include <sys/types.h>
- #include <sys/wait.h>
-@@ -100,7 +101,8 @@ bool ChrootToSafeEmptyDir() {
- // TODO(crbug.com/1247458) Broken in MSan builds after LLVM f1bb30a4956f.
- clone_flags |= CLONE_VM | CLONE_VFORK | CLONE_SETTLS;
-
-- char tls_buf[PTHREAD_STACK_MIN] = {0};
-+ char tls_buf[PTHREAD_STACK_MIN];
-+ memset(tls_buf, 0, PTHREAD_STACK_MIN);
- tls = tls_buf;
- #endif
-
diff --git a/www-client/chromium/files/chromium-gpu-vp9-include-84.patch b/www-client/chromium/files/chromium-gpu-vp9-include-84.patch
deleted file mode 100644
index ca95b4a..0000000
--- a/www-client/chromium/files/chromium-gpu-vp9-include-84.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/media/gpu/vp9_reference_frame_vector.cc b/media/gpu/vp9_reference_frame_vector.cc
-index dc279980e..d560c7295 100644
---- a/media/gpu/vp9_reference_frame_vector.cc
-+++ b/media/gpu/vp9_reference_frame_vector.cc
-@@ -6,6 +6,8 @@
-
- #include "media/gpu/vp9_picture.h"
-
-+#include <bitset>
-+
- namespace media {
-
- Vp9ReferenceFrameVector::Vp9ReferenceFrameVector() {
diff --git a/www-client/chromium/files/chromium-harfbuzz-r0.patch b/www-client/chromium/files/chromium-harfbuzz-r0.patch
deleted file mode 100644
index 2d5602d..0000000
--- a/www-client/chromium/files/chromium-harfbuzz-r0.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppymaster@gmail.com>
-Date: Sun, 21 Oct 2018 10:06:53 -0400
-Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t
- pointers
-
-This resolves a build failure against harfbuzz 2.0.
-
-Based on a patch by Alexandre Fierreira.
-
-Bug: https://bugs.gentoo.org/669034
----
- .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +-
- .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++--
- .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +-
- 3 files changed, 9 insertions(+), 4 deletions(-)
-
-diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
-index 8e7d91ca371f..e279a5876cb3 100644
---- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
-+++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
-@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font,
- static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font,
- void* font_data,
- unsigned count,
-- hb_codepoint_t* first_glyph,
-+ const hb_codepoint_t* first_glyph,
- unsigned int glyph_stride,
- hb_position_t* first_advance,
- unsigned int advance_stride,
-diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
-index 77ec6209fab9..9f9070921448 100644
---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
-+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
-@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) {
- return reinterpret_cast<T*>(reinterpret_cast<uint8_t*>(p) + byte_size);
- }
-
-+template <class T>
-+T* advance_by_byte_size_const(T* p, unsigned byte_size) {
-+ return reinterpret_cast<T*>(reinterpret_cast<const uint8_t*>(p) + byte_size);
-+}
-+
- } // namespace
-
- SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) {
-@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint,
- }
-
- void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count,
-- hb_codepoint_t* glyphs,
-+ const hb_codepoint_t* glyphs,
- unsigned glyph_stride,
- hb_position_t* advances,
- unsigned advance_stride) {
-@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count,
- // array that copy them to a regular array.
- Vector<Glyph, 256> glyph_array(count);
- for (unsigned i = 0; i < count;
-- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) {
-+ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) {
- glyph_array[i] = *glyphs;
- }
- Vector<SkScalar, 256> sk_width_array(count);
-diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
-index 787d8af0375a..3bc4407c641b 100644
---- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
-+++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
-@@ -19,7 +19,7 @@ class SkiaTextMetrics final {
-
- void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width);
- void GetGlyphWidthForHarfBuzz(unsigned count,
-- hb_codepoint_t* first_glyph,
-+ const hb_codepoint_t* first_glyph,
- unsigned glyph_stride,
- hb_position_t* first_advance,
- unsigned advance_stride);
---
-2.19.1
-
diff --git a/www-client/chromium/files/chromium-hashtable-iterator-cat-83.patch b/www-client/chromium/files/chromium-hashtable-iterator-cat-83.patch
deleted file mode 100644
index 777934c..0000000
--- a/www-client/chromium/files/chromium-hashtable-iterator-cat-83.patch
+++ /dev/null
@@ -1,65 +0,0 @@
-diff --git a/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h b/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h
-index bbf10ef31..e5b627780 100644
---- a/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h
-+++ b/third_party/blink/renderer/bindings/core/v8/serialization/serialized_script_value.h
-@@ -268,12 +268,14 @@ class CORE_EXPORT SerializedScriptValue
- MessagePortChannelArray& GetStreamChannels() { return stream_channels_; }
-
- bool IsLockedToAgentCluster() const {
-- return !wasm_modules_.IsEmpty() ||
-- !shared_array_buffers_contents_.IsEmpty() ||
-- std::any_of(attachments_.begin(), attachments_.end(),
-- [](const auto& entry) {
-- return entry.value->IsLockedToAgentCluster();
-- });
-+ bool ret = !wasm_modules_.IsEmpty() ||
-+ !shared_array_buffers_contents_.IsEmpty();
-+ if (ret) return true;
-+ for (const auto& entry : attachments_) {
-+ if (entry.value->IsLockedToAgentCluster())
-+ return true;
-+ };
-+ return false;
- }
-
- // Returns true after serializing script values that remote origins cannot
-diff --git a/third_party/blink/renderer/platform/wtf/hash_table.h b/third_party/blink/renderer/platform/wtf/hash_table.h
-index 1d195f121..1e65c08d8 100644
---- a/third_party/blink/renderer/platform/wtf/hash_table.h
-+++ b/third_party/blink/renderer/platform/wtf/hash_table.h
-@@ -272,7 +272,11 @@ class HashTableConstIterator final {
- Allocator>
- const_iterator;
- typedef Value ValueType;
-+ using iterator_category = std::bidirectional_iterator_tag;
- using value_type = ValueType;
-+ using reference = value_type&;
-+ using pointer = value_type*;
-+ using difference_type = ptrdiff_t;
- typedef typename Traits::IteratorConstGetType GetType;
- typedef const ValueType* PointerType;
-
-@@ -540,6 +544,11 @@ class HashTableIterator final {
- std::ostream& PrintTo(std::ostream& stream) const {
- return iterator_.PrintTo(stream);
- }
-+ using iterator_category = std::bidirectional_iterator_tag;
-+ using value_type = ValueType;
-+ using reference = value_type&;
-+ using pointer = value_type*;
-+ using difference_type = ptrdiff_t;
-
- private:
- const_iterator iterator_;
-@@ -2230,6 +2239,11 @@ struct HashTableConstIteratorAdapter {
- }
- // postfix -- intentionally omitted
- typename HashTableType::const_iterator impl_;
-+ using iterator_category = std::bidirectional_iterator_tag;
-+ using value_type = GetType*;
-+ using reference = value_type&;
-+ using pointer = value_type*;
-+ using difference_type = ptrdiff_t;
- };
-
- template <typename HashTable, typename Traits>
diff --git a/www-client/chromium/files/chromium-include-limits-83.patch b/www-client/chromium/files/chromium-include-limits-83.patch
deleted file mode 100644
index 840a212..0000000
--- a/www-client/chromium/files/chromium-include-limits-83.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc b/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
-index 6ab117bc4..43aa602f2 100644
---- a/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
-+++ b/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
-+#include <limits>
-+
- #include "chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.h"
- #include "base/logging.h"
-
diff --git a/www-client/chromium/files/chromium-include-limits-84.patch b/www-client/chromium/files/chromium-include-limits-84.patch
deleted file mode 100644
index d73b36d..0000000
--- a/www-client/chromium/files/chromium-include-limits-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc b/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
-index 4881c010b..4d5d7a4fb 100644
---- a/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
-+++ b/chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.cc
-@@ -4,6 +4,7 @@
-
- #include "chrome/browser/performance_manager/graph/policies/background_tab_loading_policy_helpers.h"
-
-+#include <limits>
- #include <math.h>
-
- #include "base/logging.h"
diff --git a/www-client/chromium/files/chromium-inline-node-ptr-84.patch b/www-client/chromium/files/chromium-inline-node-ptr-84.patch
deleted file mode 100644
index 58ded53..0000000
--- a/www-client/chromium/files/chromium-inline-node-ptr-84.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
-index 55ca9e3f7..ee691dfaf 100644
---- a/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
-+++ b/third_party/blink/renderer/core/layout/ng/inline/ng_inline_node.cc
-@@ -891,7 +891,7 @@ void NGInlineNode::SegmentText(NGInlineNodeData* data) {
-
- // Segment NGInlineItem by script, Emoji, and orientation using RunSegmenter.
- void NGInlineNode::SegmentScriptRuns(NGInlineNodeData* data) {
-- DCHECK_EQ(data->segments, nullptr);
-+ DCHECK_EQ(data->segments.get(), nullptr);
-
- String& text_content = data->text_content;
- if (text_content.IsEmpty()) {
diff --git a/www-client/chromium/files/chromium-launcher-r3.sh b/www-client/chromium/files/chromium-launcher-r3.sh
deleted file mode 100644
index a4fc1a9..0000000
--- a/www-client/chromium/files/chromium-launcher-r3.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/bash
-
-# Allow the user to override command-line flags, bug #357629.
-# This is based on Debian's chromium-browser package, and is intended
-# to be consistent with Debian.
-for f in /etc/chromium/*; do
- [[ -f ${f} ]] && source "${f}"
-done
-
-# Prefer user defined CHROMIUM_USER_FLAGS (from env) over system
-# default CHROMIUM_FLAGS (from /etc/chromium/default).
-CHROMIUM_FLAGS=${CHROMIUM_USER_FLAGS:-"$CHROMIUM_FLAGS"}
-
-# Let the wrapped binary know that it has been run through the wrapper
-export CHROME_WRAPPER=$(readlink -f "$0")
-
-PROGDIR=${CHROME_WRAPPER%/*}
-
-case ":$PATH:" in
- *:$PROGDIR:*)
- # $PATH already contains $PROGDIR
- ;;
- *)
- # Append $PROGDIR to $PATH
- export PATH="$PATH:$PROGDIR"
- ;;
-esac
-
-if [[ ${EUID} == 0 && -O ${XDG_CONFIG_HOME:-${HOME}} ]]; then
- # Running as root with HOME owned by root.
- # Pass --user-data-dir to work around upstream failsafe.
- CHROMIUM_FLAGS="--user-data-dir=${XDG_CONFIG_HOME:-${HOME}/.config}/chromium
- ${CHROMIUM_FLAGS}"
-fi
-
-# Set the .desktop file name
-export CHROME_DESKTOP="chromium-browser-chromium.desktop"
-
-exec -a "chromium-browser" "$PROGDIR/chrome" --extra-plugin-dir=/usr/lib/nsbrowser/plugins ${CHROMIUM_FLAGS} "$@"
diff --git a/www-client/chromium/files/chromium-launcher-r6.sh b/www-client/chromium/files/chromium-launcher-r6.sh
deleted file mode 100644
index 637cfd6..0000000
--- a/www-client/chromium/files/chromium-launcher-r6.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/bash
-
-# Allow the user to override command-line flags, bug #357629.
-# This is based on Debian's chromium-browser package, and is intended
-# to be consistent with Debian.
-for f in /etc/chromium/*; do
- [[ -f ${f} ]] && source "${f}"
-done
-
-# Prefer user defined CHROMIUM_USER_FLAGS (from env) over system
-# default CHROMIUM_FLAGS (from /etc/chromium/default).
-CHROMIUM_FLAGS=${CHROMIUM_USER_FLAGS:-"$CHROMIUM_FLAGS"}
-
-# Let the wrapped binary know that it has been run through the wrapper
-export CHROME_WRAPPER=$(readlink -f "$0")
-
-PROGDIR=${CHROME_WRAPPER%/*}
-
-case ":$PATH:" in
- *:$PROGDIR:*)
- # $PATH already contains $PROGDIR
- ;;
- *)
- # Append $PROGDIR to $PATH
- export PATH="$PATH:$PROGDIR"
- ;;
-esac
-
-if [[ ${EUID} == 0 && -O ${XDG_CONFIG_HOME:-${HOME}} ]]; then
- # Running as root with HOME owned by root.
- # Pass --user-data-dir to work around upstream failsafe.
- CHROMIUM_FLAGS="--user-data-dir=${XDG_CONFIG_HOME:-${HOME}/.config}/chromium
- ${CHROMIUM_FLAGS}"
-fi
-
-# Select session type and platform
-if @@FORCE_OZONE_PLATFORM@@; then
- CHROMIUM_FLAGS="--enable-features=UseOzonePlatform ${CHROMIUM_FLAGS}"
-elif @@OZONE_AUTO_SESSION@@ && ! ${DISABLE_OZONE_PLATFORM:-false}; then
- if [[ ${XDG_SESSION_TYPE} == wayland || -n ${WAYLAND_DISPLAY} && ${XDG_SESSION_TYPE} != x11 ]]; then
- CHROMIUM_FLAGS="--enable-features=UseOzonePlatform ${CHROMIUM_FLAGS}"
- fi
-fi
-
-# Set the .desktop file name
-export CHROME_DESKTOP="chromium-browser-chromium.desktop"
-
-exec -a "chromium-browser" "$PROGDIR/chrome" --extra-plugin-dir=/usr/lib/nsbrowser/plugins ${CHROMIUM_FLAGS} "$@"
diff --git a/www-client/chromium/files/chromium-layer_tree_impl-stlcompat.patch b/www-client/chromium/files/chromium-layer_tree_impl-stlcompat.patch
deleted file mode 100644
index 8fd9ff1..0000000
--- a/www-client/chromium/files/chromium-layer_tree_impl-stlcompat.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/cc/trees/layer_tree_impl.h b/cc/trees/layer_tree_impl.h
-index f74d18f65..7cdc29e44 100644
---- a/cc/trees/layer_tree_impl.h
-+++ b/cc/trees/layer_tree_impl.h
-@@ -194,7 +194,7 @@ class CC_EXPORT LayerTreeImpl {
- // Adapts an iterator of std::unique_ptr<LayerImpl> to an iterator of
- // LayerImpl*.
- template <typename Iterator>
-- class IteratorAdapter {
-+ class IteratorAdapter : public std::iterator<std::forward_iterator_tag, LayerImpl*> {
- public:
- explicit IteratorAdapter(Iterator it) : it_(it) {}
- bool operator==(IteratorAdapter o) const { return it_ == o.it_; }
diff --git a/www-client/chromium/files/chromium-link.patch b/www-client/chromium/files/chromium-link.patch
deleted file mode 100644
index d39bba0..0000000
--- a/www-client/chromium/files/chromium-link.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/device/bluetooth/bluetooth_device.cc b/device/bluetooth/bluetooth_device.cc
-index dc280146a..cdc2944f4 100644
---- a/device/bluetooth/bluetooth_device.cc
-+++ b/device/bluetooth/bluetooth_device.cc
-@@ -513,9 +513,9 @@ void BluetoothDevice::RemoveGattConnection(
- }
-
- void BluetoothDevice::SetAsExpiredForTesting() {
-- last_update_time_ =
-- base::Time::NowFromSystemTime() -
-- (BluetoothAdapter::timeoutSec + base::TimeDelta::FromSeconds(1));
-+ //last_update_time_ =
-+ // base::Time::NowFromSystemTime() -
-+ // (BluetoothAdapter::timeoutSec + base::TimeDelta::FromSeconds(1));
- }
-
- void BluetoothDevice::Pair(PairingDelegate* pairing_delegate,
diff --git a/www-client/chromium/files/chromium-math.h-r0.patch b/www-client/chromium/files/chromium-math.h-r0.patch
deleted file mode 100644
index 6c7c747..0000000
--- a/www-client/chromium/files/chromium-math.h-r0.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 9f63f94a11abc34d40ede8b8712fa15b5844a8c0 Mon Sep 17 00:00:00 2001
-From: Tom Anderson <thomasanderson@chromium.org>
-Date: Sat, 27 Jan 2018 20:03:37 +0000
-Subject: [PATCH] Fix build with glibc 2.27
-
-BUG=806340
-TBR=hamelphi@chromium.org
-
-Change-Id: Ib4e5091212d874d9ad88f3e9a1fdfee3ed7e0d5e
-Reviewed-on: https://chromium-review.googlesource.com/890059
-Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
-Reviewed-by: Philippe Hamel <hamelphi@chromium.org>
-Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#532249}
----
-
-diff --git a/components/assist_ranker/ranker_example_util.cc b/components/assist_ranker/ranker_example_util.cc
-index 54d4dbd..ceedd8f 100644
---- a/components/assist_ranker/ranker_example_util.cc
-+++ b/components/assist_ranker/ranker_example_util.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
-+#include <math.h>
-+
- #include "components/assist_ranker/ranker_example_util.h"
- #include "base/bit_cast.h"
- #include "base/format_macros.h"
diff --git a/www-client/chromium/files/chromium-media-alloc-84.patch b/www-client/chromium/files/chromium-media-alloc-84.patch
deleted file mode 100644
index cc9ca5d..0000000
--- a/www-client/chromium/files/chromium-media-alloc-84.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/media/base/media.cc b/media/base/media.cc
-index c282ee49a..3feece8a2 100644
---- a/media/base/media.cc
-+++ b/media/base/media.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
-+#include <limits>
-+
- #include "media/base/media.h"
-
- #include "base/allocator/buildflags.h"
-@@ -41,7 +43,7 @@ class MediaInitializer {
-
- #if BUILDFLAG(USE_ALLOCATOR_SHIM)
- // Remove allocation limit from ffmpeg, so calls go down to shim layer.
-- av_max_alloc(0);
-+ av_max_alloc(std::numeric_limits<size_t>::max());
- #endif // BUILDFLAG(USE_ALLOCATOR_SHIM)
-
- #endif // BUILDFLAG(ENABLE_FFMPEG)
diff --git a/www-client/chromium/files/chromium-memcpy-r0.patch b/www-client/chromium/files/chromium-memcpy-r0.patch
deleted file mode 100644
index dd2fd57..0000000
--- a/www-client/chromium/files/chromium-memcpy-r0.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 4942f56ceb6d60d6f54ebca8e6eba8ba01c278e8 Mon Sep 17 00:00:00 2001
-From: Tomas Popela <tomas.popela@gmail.com>
-Date: Thu, 7 Dec 2017 22:33:34 +0000
-Subject: [PATCH] memcpy used without including string.h
-
-Compiling Chromium with Clang 4.0.1 and using libstdc++ will fail on using
-memcpy without including string.h.
-
-Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel
-Change-Id: Idced1d5de3baf6b520d4a2d61774120642ead1a8
-Reviewed-on: https://chromium-review.googlesource.com/813737
-Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
-Reviewed-by: vmpstr <vmpstr@chromium.org>
-Commit-Queue: Thomas Anderson <thomasanderson@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#522579}
----
- cc/paint/raw_memory_transfer_cache_entry.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/cc/paint/raw_memory_transfer_cache_entry.cc b/cc/paint/raw_memory_transfer_cache_entry.cc
-index 9e4660c685ee..95ad50b1a338 100644
---- a/cc/paint/raw_memory_transfer_cache_entry.cc
-+++ b/cc/paint/raw_memory_transfer_cache_entry.cc
-@@ -4,6 +4,8 @@
-
- #include "cc/paint/raw_memory_transfer_cache_entry.h"
-
-+#include <string.h>
-+
- namespace cc {
-
- ClientRawMemoryTransferCacheEntry::ClientRawMemoryTransferCacheEntry(
---
-2.15.1
-
diff --git a/www-client/chromium/files/chromium-mojo-ltm-83.patch b/www-client/chromium/files/chromium-mojo-ltm-83.patch
deleted file mode 100644
index f7ab5ee..0000000
--- a/www-client/chromium/files/chromium-mojo-ltm-83.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From f47546873b1517d358815a26cebc6c4d51addbdb Mon Sep 17 00:00:00 2001
-From: Asa Karlsson <asaka@vewd.com>
-Date: Wed, 11 Mar 2020 10:51:08 +0100
-Subject: [PATCH] Fix lifetime management of URLLoaderClient::OnUpdateProgress callback.
-
-The mojo setup for network URLLoader is a 3-way connection:
- URLLoader <-> CorsURLLoader <-> URLLoaderClientImpl.
-
-The network::mojom::URLLoaderClient interface has one function with a
-callback defined: URLLoaderClient::OnUpdateProgress. Depending on
-timing, this callback may be in progress while the mojo connection is
-torn down. If the callback (originating in URLLoader) is in transfer
-from CorsURLLoader to URLLoaderClientImpl at that time, the callback
-would be dropped (destroyed) due to Receiver (URLLoaderClientImpl)
-being destroyed. Since the callback was successfully handed over to
-CorsURLLoader first, this will lead to a mojo DCHECK for "<callback>
-was destroyed without first either being run or its corresponding
-binding being closed".
-
-By storing the callback in CorsURLLoader and calling it on mojo
-disconnect, running the callback is ensured also at untimely
-disconnects.
-
-Bug: 1060502
-Change-Id: Iaedeac975508b3c0e5b4819d4f0b1a061f9c5460
----
-
-diff --git a/services/network/cors/cors_url_loader.cc b/services/network/cors/cors_url_loader.cc
-index c25dded..e51d916 100644
---- a/services/network/cors/cors_url_loader.cc
-+++ b/services/network/cors/cors_url_loader.cc
-@@ -383,8 +383,20 @@
- OnUploadProgressCallback ack_callback) {
- DCHECK(network_loader_);
- DCHECK(forwarding_client_);
-- forwarding_client_->OnUploadProgress(current_position, total_size,
-- std::move(ack_callback));
-+
-+ // We need to store the original callback here to allow us to call
-+ // it during mojo disconnect in the case the OnUploadProgress has
-+ // not reached the forwarding_client_ yet. Otherwise, the
-+ // un-triggered callback will generate a DCHECK when destroyed.
-+ pending_upoad_callback_ = std::move(ack_callback);
-+ forwarding_client_->OnUploadProgress(
-+ current_position, total_size,
-+ base::BindOnce(&CorsURLLoader::OnUploadProgressACK,
-+ weak_factory_.GetWeakPtr()));
-+}
-+
-+void CorsURLLoader::OnUploadProgressACK() {
-+ std::move(pending_upoad_callback_).Run();
- }
-
- void CorsURLLoader::OnReceiveCachedMetadata(mojo_base::BigBuffer data) {
-@@ -538,6 +550,8 @@
- }
-
- void CorsURLLoader::OnMojoDisconnect() {
-+ if (pending_upoad_callback_)
-+ std::move(pending_upoad_callback_).Run();
- HandleComplete(URLLoaderCompletionStatus(net::ERR_ABORTED));
- }
-
-diff --git a/services/network/cors/cors_url_loader.h b/services/network/cors/cors_url_loader.h
-index 3f47a81..6611c6e 100644
---- a/services/network/cors/cors_url_loader.h
-+++ b/services/network/cors/cors_url_loader.h
-@@ -108,6 +108,8 @@
- // Handles OnComplete() callback.
- void HandleComplete(const URLLoaderCompletionStatus& status);
-
-+ void OnUploadProgressACK();
-+
- void OnMojoDisconnect();
-
- void SetCorsFlagIfNeeded();
-@@ -124,6 +126,7 @@
- const std::string& header_name);
-
- mojo::Receiver<mojom::URLLoader> receiver_;
-+ OnUploadProgressCallback pending_upoad_callback_;
-
- // We need to save these for redirect, and DevTools.
- const int32_t process_id_;
diff --git a/www-client/chromium/files/chromium-nearby-inc-86.patch b/www-client/chromium/files/chromium-nearby-inc-86.patch
deleted file mode 100644
index 2fd2187..0000000
--- a/www-client/chromium/files/chromium-nearby-inc-86.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/third_party/nearby/src/cpp/platform_v2/base/byte_array.h 2020-07-31 09:49:49.073719408 +0800
-+++ b/third_party/nearby/src/cpp/platform_v2/base/byte_array.h 2020-07-31 09:50:00.025843476 +0800
-@@ -17,6 +17,7 @@
-
- #include <array>
- #include <cstdint>
-+#include <cstring>
- #include <string>
- #include <type_traits>
- #include <utility>
diff --git a/www-client/chromium/files/chromium-ngphyscontainer-iterator-cat-83.patch b/www-client/chromium/files/chromium-ngphyscontainer-iterator-cat-83.patch
deleted file mode 100644
index 1ab52d5..0000000
--- a/www-client/chromium/files/chromium-ngphyscontainer-iterator-cat-83.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.h b/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.h
-index b3c7624f4..6efe44a66 100644
---- a/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.h
-+++ b/third_party/blink/renderer/core/layout/ng/ng_physical_container_fragment.h
-@@ -51,6 +51,12 @@ class CORE_EXPORT NGPhysicalContainerFragment : public NGPhysicalFragment {
- return current_ != other.current_;
- }
-
-+ using iterator_category = std::forward_iterator_tag;
-+ using value_type = NGLink*;
-+ using reference = value_type&;
-+ using pointer = value_type*;
-+ using difference_type = ptrdiff_t;
-+
- private:
- const NGLink* PostLayoutOrCurrent() const {
- post_layout_.fragment = current_->fragment->PostLayout();
diff --git a/www-client/chromium/files/chromium-noexcept-2.patch b/www-client/chromium/files/chromium-noexcept-2.patch
deleted file mode 100644
index 16aa76b..0000000
--- a/www-client/chromium/files/chromium-noexcept-2.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc
-index 5c72abe4f..5e30c24d2 100644
---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.cc
-+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.cc
-@@ -803,7 +803,7 @@ CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(
- callback(std::move(callback)) {}
-
- CastActivityManager::DoLaunchSessionParams::DoLaunchSessionParams(
-- DoLaunchSessionParams&& other) noexcept = default;
-+ DoLaunchSessionParams&& other) = default;
-
- CastActivityManager::DoLaunchSessionParams::~DoLaunchSessionParams() = default;
-
-diff --git a/chrome/browser/media/router/providers/cast/cast_activity_manager.h b/chrome/browser/media/router/providers/cast/cast_activity_manager.h
-index 325bffc72..08fe0ccca 100644
---- a/chrome/browser/media/router/providers/cast/cast_activity_manager.h
-+++ b/chrome/browser/media/router/providers/cast/cast_activity_manager.h
-@@ -295,7 +295,7 @@ class CastActivityManager : public cast_channel::CastMessageHandler::Observer,
- const url::Origin& origin,
- int tab_id,
- mojom::MediaRouteProvider::CreateRouteCallback callback);
-- DoLaunchSessionParams(DoLaunchSessionParams&& other) noexcept;
-+ DoLaunchSessionParams(DoLaunchSessionParams&& other);
- ~DoLaunchSessionParams();
- DoLaunchSessionParams& operator=(DoLaunchSessionParams&&) = delete;
-
diff --git a/www-client/chromium/files/chromium-noexcept-3.patch b/www-client/chromium/files/chromium-noexcept-3.patch
deleted file mode 100644
index b5ca5a3..0000000
--- a/www-client/chromium/files/chromium-noexcept-3.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/storage/browser/fileapi/file_system_url.cc b/storage/browser/fileapi/file_system_url.cc
-index b90cf2904..e28b1f85d 100644
---- a/storage/browser/fileapi/file_system_url.cc
-+++ b/storage/browser/fileapi/file_system_url.cc
-@@ -26,7 +26,7 @@ FileSystemURL::FileSystemURL()
-
- FileSystemURL::FileSystemURL(const FileSystemURL& other) = default;
-
--FileSystemURL::FileSystemURL(FileSystemURL&& other) noexcept = default;
-+FileSystemURL::FileSystemURL(FileSystemURL&& other) = default;
-
- FileSystemURL& FileSystemURL::operator=(FileSystemURL&& rhs) = default;
-
-diff --git a/storage/browser/fileapi/file_system_url.h b/storage/browser/fileapi/file_system_url.h
-index 8220812d0..f6b8813e2 100644
---- a/storage/browser/fileapi/file_system_url.h
-+++ b/storage/browser/fileapi/file_system_url.h
-@@ -82,7 +82,7 @@ class COMPONENT_EXPORT(STORAGE_BROWSER) FileSystemURL {
- FileSystemURL(const FileSystemURL& other);
- // Constructs FileSystemURL with the contents of |other|, which is left in
- // valid but unspecified state.
-- FileSystemURL(FileSystemURL&& other) noexcept;
-+ FileSystemURL(FileSystemURL&& other);
- ~FileSystemURL();
-
- // Replaces the contents with those of |rhs|, which is left in valid but
diff --git a/www-client/chromium/files/chromium-noexcept.patch b/www-client/chromium/files/chromium-noexcept.patch
deleted file mode 100644
index 70948a8..0000000
--- a/www-client/chromium/files/chromium-noexcept.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/media/learning/common/labelled_example.cc b/media/learning/common/labelled_example.cc
-index 6c8cb7d34..370b6bb05 100644
---- a/media/learning/common/labelled_example.cc
-+++ b/media/learning/common/labelled_example.cc
-@@ -17,7 +17,7 @@ LabelledExample::LabelledExample(std::initializer_list<FeatureValue> init_list,
-
- LabelledExample::LabelledExample(const LabelledExample& rhs) = default;
-
--LabelledExample::LabelledExample(LabelledExample&& rhs) noexcept = default;
-+LabelledExample::LabelledExample(LabelledExample&& rhs) = default;
-
- LabelledExample::~LabelledExample() = default;
-
-diff --git a/media/learning/common/labelled_example.h b/media/learning/common/labelled_example.h
-index ee89586f5..b203a567c 100644
---- a/media/learning/common/labelled_example.h
-+++ b/media/learning/common/labelled_example.h
-@@ -31,7 +31,7 @@ struct COMPONENT_EXPORT(LEARNING_COMMON) LabelledExample {
- LabelledExample(std::initializer_list<FeatureValue> init_list,
- TargetValue target);
- LabelledExample(const LabelledExample& rhs);
-- LabelledExample(LabelledExample&& rhs) noexcept;
-+ LabelledExample(LabelledExample&& rhs);
- ~LabelledExample();
-
- // Comparisons ignore weight, because it's convenient.
diff --git a/www-client/chromium/files/chromium-ntp_backgrounds-include-84.patch b/www-client/chromium/files/chromium-ntp_backgrounds-include-84.patch
deleted file mode 100644
index bd98ef0..0000000
--- a/www-client/chromium/files/chromium-ntp_backgrounds-include-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/chrome/browser/search/background/ntp_backgrounds.h b/chrome/browser/search/background/ntp_backgrounds.h
-index 7afc0a230..6a6ad3b48 100644
---- a/chrome/browser/search/background/ntp_backgrounds.h
-+++ b/chrome/browser/search/background/ntp_backgrounds.h
-@@ -5,6 +5,7 @@
- #ifndef CHROME_BROWSER_SEARCH_BACKGROUND_NTP_BACKGROUNDS_H_
- #define CHROME_BROWSER_SEARCH_BACKGROUND_NTP_BACKGROUNDS_H_
-
-+#include <cstddef>
- #include <array>
-
- class GURL;
diff --git a/www-client/chromium/files/chromium-opencv-include-84.patch b/www-client/chromium/files/chromium-opencv-include-84.patch
deleted file mode 100644
index 4c7b328..0000000
--- a/www-client/chromium/files/chromium-opencv-include-84.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/third_party/opencv/src/emd.cpp b/third_party/opencv/src/emd.cpp
-index 30b19f676..834ebe9f4 100644
---- a/third_party/opencv/src/emd.cpp
-+++ b/third_party/opencv/src/emd.cpp
-@@ -59,6 +59,7 @@
- #ifdef CHROMIUM_OPENCV
- #include "emd_wrapper.h"
-
-+#include <algorithm>
- #include <vector>
- #include <cassert>
-
diff --git a/www-client/chromium/files/chromium-pa13.patch b/www-client/chromium/files/chromium-pa13.patch
deleted file mode 100644
index 892a318..0000000
--- a/www-client/chromium/files/chromium-pa13.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 7ac85fb4cc6f44a21761a591ac497ae3d6bf966d Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen@qt.io>
-Date: Mon, 23 Sep 2019 13:49:53 +0200
-Subject: [PATCH] Fix building with pulseaudio 13
-
-The function signature changed though the ABI stayed the same.
-
-(Modified to apply on chromium sources too)
-
-Change-Id: I86ca361b5e4f0c523e1031910df438c23beee876
-Fixes: QTBUG-77037
-Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
----
-
-diff --git a/media/audio/pulse/pulse.sigs b/media/audio/pulse/pulse.sigs
-index 8b58887..daaeb14 100644
---- a/media/audio/pulse/pulse.sigs
-+++ b/media/audio/pulse/pulse.sigs
-@@ -24,11 +24,11 @@
- pa_operation* pa_context_get_source_info_by_name(pa_context* c, const char* name, pa_source_info_cb_t cb, void *userdata);
- pa_operation* pa_context_get_source_info_list(pa_context* c, pa_source_info_cb_t cb, void* userdata);
- pa_operation* pa_context_get_sink_info_list(pa_context* c, pa_sink_info_cb_t cb, void* userdata);
--pa_context_state_t pa_context_get_state(pa_context* c);
-+pa_context_state_t pa_context_get_state(const_pa_context_ptr c);
- pa_context* pa_context_new(pa_mainloop_api* mainloop, const char* name);
- pa_operation* pa_context_set_source_volume_by_index(pa_context* c, uint32_t idx, const pa_cvolume* volume, pa_context_success_cb_t cb, void* userdata);
- void pa_context_set_state_callback(pa_context* c, pa_context_notify_cb_t cb, void* userdata);
--pa_operation_state_t pa_operation_get_state(pa_operation* o);
-+pa_operation_state_t pa_operation_get_state(const_pa_operation_ptr o);
- void pa_context_unref(pa_context* c);
- void pa_operation_unref(pa_operation* o);
- int pa_stream_begin_write(pa_stream* p, void** data, size_t* nbytes);
-@@ -38,23 +38,23 @@
- int pa_stream_disconnect(pa_stream* s);
- int pa_stream_drop(pa_stream *p);
- pa_operation* pa_stream_flush(pa_stream* s, pa_stream_success_cb_t cb, void* userdata);
--uint32_t pa_stream_get_device_index(pa_stream* s);
-+uint32_t pa_stream_get_device_index(const_pa_stream_ptr s);
- int pa_stream_get_latency(pa_stream* s, pa_usec_t* r_usec, int* negative);
--pa_stream_state_t pa_stream_get_state(pa_stream* p);
-+pa_stream_state_t pa_stream_get_state(const_pa_stream_ptr p);
- pa_stream* pa_stream_new(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map * map);
- pa_stream* pa_stream_new_with_proplist(pa_context* c, const char* name, const pa_sample_spec* ss, const pa_channel_map* map, pa_proplist* p);
- pa_proplist* pa_proplist_new(void);
--int pa_proplist_contains(pa_proplist* p, const char* key);
-+int pa_proplist_contains(const_pa_proplist_ptr p, const char* key);
- void pa_proplist_free(pa_proplist* p);
--const char* pa_proplist_gets(pa_proplist* p, const char* key);
-+const char* pa_proplist_gets(const_pa_proplist_ptr p, const char* key);
- int pa_proplist_sets(pa_proplist* p, const char* key, const char* value);
--size_t pa_stream_readable_size(pa_stream *p);
-+size_t pa_stream_readable_size(const_pa_stream_ptr p);
- int pa_stream_peek(pa_stream* p, const void** data, size_t* nbytes);
- void pa_stream_set_read_callback(pa_stream* p, pa_stream_request_cb_t cb, void* userdata);
- void pa_stream_set_state_callback(pa_stream* s, pa_stream_notify_cb_t cb, void* userdata);
- int pa_stream_write(pa_stream* p, const void* data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek);
- void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata);
- void pa_stream_unref(pa_stream* s);
--int pa_context_errno(pa_context *c);
-+int pa_context_errno(const_pa_context_ptr c);
- const char* pa_strerror(int error);
- pa_cvolume* pa_cvolume_set(pa_cvolume* a, unsigned channels, pa_volume_t v);
-diff --git a/chromium/media/audio/pulse/pulse_stub_header.fragment b/chromium/media/audio/pulse/pulse_stub_header.fragment
-index 2a2d3e7..cdaa841 100644
---- a/media/audio/pulse/pulse_stub_header.fragment
-+++ b/media/audio/pulse/pulse_stub_header.fragment
-@@ -5,4 +5,15 @@
-
- #include <pulse/pulseaudio.h>
-
-+#if PA_MAJOR > 12
-+typedef const pa_context* const_pa_context_ptr;
-+typedef const pa_operation* const_pa_operation_ptr;
-+typedef const pa_proplist* const_pa_proplist_ptr;
-+typedef const pa_stream* const_pa_stream_ptr;
-+#else
-+typedef pa_context* const_pa_context_ptr;
-+typedef pa_operation* const_pa_operation_ptr;
-+typedef pa_proplist* const_pa_proplist_ptr;
-+typedef pa_stream* const_pa_stream_ptr;
-+#endif
- }
diff --git a/www-client/chromium/files/chromium-pdfium-stdlib-r0.patch b/www-client/chromium/files/chromium-pdfium-stdlib-r0.patch
deleted file mode 100644
index 1cfa4c5..0000000
--- a/www-client/chromium/files/chromium-pdfium-stdlib-r0.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From e3ad3deb6a6e79284f3748fa7410311d87df91c5 Mon Sep 17 00:00:00 2001
-From: Henrique Nakashima <hnakashima@chromium.org>
-Date: Tue, 4 Sep 2018 16:49:51 +0000
-Subject: [PATCH] IWYU: stdint.h in pdfium_mem_buffer_file_write.h for uint8_t
-
-Bug: 879900
-Change-Id: I9c15d1c280a23c53d31f2d72c9d0d1db79eab886
-Reviewed-on: https://chromium-review.googlesource.com/1204410
-Reviewed-by: Lei Zhang <thestig@chromium.org>
-Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
-Cr-Commit-Position: refs/heads/master@{#588547}
----
- pdf/pdfium/pdfium_mem_buffer_file_write.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/pdf/pdfium/pdfium_mem_buffer_file_write.h b/pdf/pdfium/pdfium_mem_buffer_file_write.h
-index 03c54bb63800..82e82d23684d 100644
---- a/pdf/pdfium/pdfium_mem_buffer_file_write.h
-+++ b/pdf/pdfium/pdfium_mem_buffer_file_write.h
-@@ -6,6 +6,7 @@
- #define PDF_PDFIUM_PDFIUM_MEM_BUFFER_FILE_WRITE_H_
-
- #include <stddef.h>
-+#include <stdint.h>
-
- #include <vector>
-
---
-2.19.0
-
diff --git a/www-client/chromium/files/chromium-remove-no_check_targets-86.patch b/www-client/chromium/files/chromium-remove-no_check_targets-86.patch
deleted file mode 100644
index 7661b32..0000000
--- a/www-client/chromium/files/chromium-remove-no_check_targets-86.patch
+++ /dev/null
@@ -1,621 +0,0 @@
-diff --git a/.gn b/.gn
-index 3afb64ba2..b239e02c3 100644
---- a/.gn
-+++ b/.gn
-@@ -55,311 +55,311 @@ default_args = {
- # matching these patterns (see "gn help label_pattern" for format) will not have
- # their includes checked for proper dependencies when you run either
- # "gn check" or "gn gen --check".
--no_check_targets = [
-- # //chrome/*, https://crbug.com/949535
-- "//chrome/browser/devtools:*", # 114 errors
-- "//chrome/browser/media/router/discovery:*", # 26 errors
-- "//chrome/browser/media/router:*", # 225 errors
-- "//chrome/browser/paint_preview:*", # 4 errors
-- "//chrome/browser/profiling_host:*", # 13 errors
-- "//chrome/browser/resources/chromeos/zip_archiver/cpp:*", # 2 errors
-- "//chrome/browser/safe_browsing/android:*", # 3 errors
-- "//chrome/browser/safe_browsing:*", # 85 errors
-- "//chrome/browser/safety_check/android:*", # 3 errors
-- "//chrome/browser/storage_access_api:*", # 2 errors
-- "//chrome/browser/touch_to_fill/android:*", # 8 errors
-- "//chrome/browser/touch_to_fill:*", # 5 errors
-- "//chrome/browser/updates/announcement_notification:*", # 15 errors
-- "//chrome/browser/updates/internal:*", # 8 errors
-- "//chrome/browser/updates:*", # 21 errors
-- "//chrome/browser:*", # 780 errors
-- "//chrome/child:*", # 3 errors
-- "//chrome/credential_provider/gaiacp:*", # 1 error
-- "//chrome/gpu:*", # 2 errors
-- "//chrome/install_static:*", # 4 errors
-- "//chrome/notification_helper:*", # 4 errors
-- "//chrome/renderer:*", # 42 errors
-- "//chrome/services/cups_proxy/public/cpp:*", # 2 errors
-- "//chrome/services/cups_proxy:*", # 6 errors
-- "//chrome/services/file_util/public/cpp:*", # 13 errors
-- "//chrome/services/file_util:*", # 3 errors
-- "//chrome/services/ipp_parser:*", # 1 error
-- "//chrome/services/media_gallery_util/public/cpp:*", # 6 errors
-- "//chrome/services/media_gallery_util:*", # 3 errors
-- "//chrome/services/printing:*", # 3 errors
-- "//chrome/services/qrcode_generator:*", # 1 error
-- "//chrome/services/removable_storage_writer:*", # 1 error
-- "//chrome/services/sharing/public/cpp:*", # 2 errors
-- "//chrome/services/speech:*", # 5 errors
-- "//chrome/services/util_win:*", # 1 error
-- "//chrome/test/chromedriver:*", # 115 errors
-- "//chrome/test/data/nacl:*", # 350 errors
-- "//chrome/test/media_router:*", # 5 errors
-- "//chrome/test:*", # 2682 errors
-- "//chrome:*", # 7 errors
--
-- "//clank/third_party/gvr_shim:*", # 1 error
-- "//extensions/browser/api/alarms:*", # 2 errors
-- "//extensions/browser/api/app_current_window_internal:*", # 3 errors
-- "//extensions/browser/api/app_runtime:*", # 3 errors
-- "//extensions/browser/api/app_window:*", # 5 errors
-- "//extensions/browser/api/audio:*", # 3 errors
-- "//extensions/browser/api/automation_internal:*", # 37 errors
-- "//extensions/browser/api/bluetooth_low_energy:*", # 22 errors
-- "//extensions/browser/api/bluetooth_socket:*", # 12 errors
-- "//extensions/browser/api/cast_channel:*", # 3 errors
-- "//extensions/browser/api/cec_private:*", # 4 errors
-- "//extensions/browser/api/clipboard:*", # 3 errors
-- "//extensions/browser/api/crash_report_private:*", # 1 error
-- "//extensions/browser/api/declarative:*", # 20 errors
-- "//extensions/browser/api/declarative_content:*", # 2 errors
-- "//extensions/browser/api/declarative_net_request/filter_list_converter:*", # 1
-- # error
-- "//extensions/browser/api/declarative_net_request:*", # 18 errors
-- "//extensions/browser/api/declarative_webrequest:*", # 29 errors
-- "//extensions/browser/api/diagnostics:*", # 2 errors
-- "//extensions/browser/api/display_source:*", # 7 errors
-- "//extensions/browser/api/dns:*", # 3 errors
-- "//extensions/browser/api/document_scan:*", # 2 errors
-- "//extensions/browser/api/feedback_private:*", # 2 errors
-- "//extensions/browser/api/file_handlers:*", # 3 errors
-- "//extensions/browser/api/file_system:*", # 1 error
-- "//extensions/browser/api/hid:*", # 12 errors
-- "//extensions/browser/api/idle:*", # 4 errors
-- "//extensions/browser/api/management:*", # 19 errors
-- "//extensions/browser/api/messaging:*", # 1 error
-- "//extensions/browser/api/metrics_private:*", # 3 errors
-- "//extensions/browser/api/mime_handler_private:*", # 1 error
-- "//extensions/browser/api/networking_config:*", # 7 errors
-- "//extensions/browser/api/networking_private:*", # 14 errors
-- "//extensions/browser/api/power:*", # 3 errors
-- "//extensions/browser/api/printer_provider:*", # 7 errors
-- "//extensions/browser/api/printer_provider_internal:*", # 3 errors
-- "//extensions/browser/api/runtime:*", # 6 errors
-- "//extensions/browser/api/serial:*", # 10 errors
-- "//extensions/browser/api/socket:*", # 11 errors
-- "//extensions/browser/api/sockets_tcp:*", # 6 errors
-- "//extensions/browser/api/sockets_tcp_server:*", # 8 errors
-- "//extensions/browser/api/sockets_udp:*", # 9 errors
-- "//extensions/browser/api/storage:*", # 9 errors
-- "//extensions/browser/api/system_cpu:*", # 1 error
-- "//extensions/browser/api/system_display:*", # 3 errors
-- "//extensions/browser/api/system_info:*", # 8 errors
-- "//extensions/browser/api/system_memory:*", # 1 error
-- "//extensions/browser/api/system_network:*", # 2 errors
-- "//extensions/browser/api/system_power_source:*", # 2 errors
-- "//extensions/browser/api/system_storage:*", # 6 errors
-- "//extensions/browser/api/test:*", # 1 error
-- "//extensions/browser/api/usb:*", # 12 errors
-- "//extensions/browser/api/virtual_keyboard:*", # 1 error
-- "//extensions/browser/api/virtual_keyboard_private:*", # 2 errors
-- "//extensions/browser/api/vpn_provider:*", # 13 errors
-- "//extensions/browser/api/web_request:*", # 37 errors
-- "//extensions/browser/api/webcam_private:*", # 8 errors
-- "//extensions/browser/api:*", # 7 errors
-- "//extensions/browser/updater:*", # 31 errors
-- "//extensions/browser/value_store:*", # 5 errors
-- "//extensions/browser:*", # 20 errors
-- "//extensions:*", # 75 errors
-- "//headless:*", # 167 errors
-- "//jingle:*", # 4 errors
-- "//native_client/src/trusted/service_runtime:*", # 2 errors
-- "//ppapi/cpp/private:*", # 1 error
-- "//ppapi/host:*", # 1 error
-- "//ppapi/native_client/src/untrusted/pnacl_irt_shim:*", # 197 errors
-- "//ppapi/proxy:*", # 31 errors
-- "//ppapi/shared_impl:*", # 3 errors
-- "//ppapi/thunk:*", # 1071 errors
-- "//ppapi:*", # 3 errors
-- "//remoting/base/grpc_support:*", # 14 errors
-- "//remoting/base/grpc_test_support:*", # 1 error
-- "//remoting/base:*", # 6 errors
-- "//remoting/client/audio:*", # 7 errors
-- "//remoting/client/display:*", # 55 errors
-- "//remoting/client/input:*", # 17 errors
-- "//remoting/client/jni:*", # 8 errors
-- "//remoting/client/notification:*", # 12 errors
-- "//remoting/client/ui:*", # 13 errors
-- "//remoting/client:*", # 20 errors
-- "//remoting/codec:*", # 32 errors
-- "//remoting/host/chromeos:*", # 10 errors
-- "//remoting/host/file_transfer:*", # 43 errors
-- "//remoting/host/input_monitor:*", # 3 errors
-- "//remoting/host/installer/mac:*", # 1 error
-- "//remoting/host/it2me:*", # 18 errors
-- "//remoting/host/linux:*", # 64 errors
-- "//remoting/host/mac:*", # 49 errors
-- "//remoting/host/native_messaging:*", # 3 errors
-- "//remoting/host/security_key:*", # 68 errors
-- "//remoting/host/setup:*", # 9 errors
-- "//remoting/host/win:*", # 43 errors
-- "//remoting/host:*", # 164 errors
-- "//remoting/ios/app/settings:*", # 6 errors
-- "//remoting/ios/app:*", # 9 errors
-- "//remoting/ios/audio:*", # 5 errors
-- "//remoting/ios/domain:*", # 2 errors
-- "//remoting/ios/facade:*", # 8 errors
-- "//remoting/ios/persistence:*", # 10 errors
-- "//remoting/ios/session:*", # 7 errors
-- "//remoting/ios:*", # 2 errors
-- "//remoting/protocol:*", # 142 errors
-- "//remoting/signaling:*", # 30 errors
-- "//remoting/test:*", # 20 errors
-- "//remoting:*", # 27 errors
-- "//sandbox/linux:*", # 13 errors
-- "//sandbox/mac:*", # 14 errors
-- "//sandbox/win:*", # 7 errors
--
-- # //third_party/blink/*, https://crbug.com/800764
-- "//third_party/blink/common:*", # 9 errors
-- "//third_party/blink/renderer/bindings/core/v8:*", # 1 error
-- "//third_party/blink/renderer/controller:*", # 191 errors
-- "//third_party/blink/renderer/core/accessibility:*", # 27 errors
-- "//third_party/blink/renderer/core/animation:*", # 506 errors
-- "//third_party/blink/renderer/core/animation_frame:*", # 4 errors
-- "//third_party/blink/renderer/core/aom:*", # 23 errors
-- "//third_party/blink/renderer/core/clipboard:*", # 43 errors
-- "//third_party/blink/renderer/core/content_capture:*", # 12 errors
-- "//third_party/blink/renderer/core/context_features:*", # 3 errors
-- "//third_party/blink/renderer/core/css:*", # 835 errors
-- "//third_party/blink/renderer/core/display_lock:*", # 36 errors
-- "//third_party/blink/renderer/core/dom:*", # 706 errors
-- "//third_party/blink/renderer/core/editing:*", # 847 errors
-- "//third_party/blink/renderer/core/events:*", # 173 errors
-- "//third_party/blink/renderer/core/execution_context:*", # 48 errors
-- "//third_party/blink/renderer/core/exported:*", # 470 errors
-- "//third_party/blink/renderer/core/feature_policy:*", # 15 errors
-- "//third_party/blink/renderer/core/fetch:*", # 134 errors
-- "//third_party/blink/renderer/core/fileapi:*", # 55 errors
-- "//third_party/blink/renderer/core/frame:*", # 864 errors
-- "//third_party/blink/renderer/core/fullscreen:*", # 32 errors
-- "//third_party/blink/renderer/core/geometry:*", # 39 errors
-- "//third_party/blink/renderer/core/html/parser:*", # 133 errors
-- "//third_party/blink/renderer/core/html:*", # 1662 errors
-- "//third_party/blink/renderer/core/imagebitmap:*", # 34 errors
-- "//third_party/blink/renderer/core/input:*", # 240 errors
-- "//third_party/blink/renderer/core/inspector:*", # 594 errors
-- "//third_party/blink/renderer/core/intersection_observer:*", # 50 errors
-- "//third_party/blink/renderer/core/layout/svg:*", # 193 errors
-- "//third_party/blink/renderer/core/layout:*", # 920 errors
-- "//third_party/blink/renderer/core/loader:*", # 421 errors
-- "//third_party/blink/renderer/core/mathml:*", # 11 errors
-- "//third_party/blink/renderer/core/messaging:*", # 30 errors
-- "//third_party/blink/renderer/core/mojo:*", # 44 errors
-- "//third_party/blink/renderer/core/offscreencanvas:*", # 22 errors
-- "//third_party/blink/renderer/core/origin_trials:*", # 12 errors
-- "//third_party/blink/renderer/core/page:*", # 500 errors
-- "//third_party/blink/renderer/core/paint:*", # 788 errors
-- "//third_party/blink/renderer/core/probe:*", # 9 errors
-- "//third_party/blink/renderer/core/resize_observer:*", # 29 errors
-- "//third_party/blink/renderer/core/script:*", # 155 errors
-- "//third_party/blink/renderer/core/scroll:*", # 29 errors
-- "//third_party/blink/renderer/core/streams:*", # 75 errors
-- "//third_party/blink/renderer/core/style:*", # 86 errors
-- "//third_party/blink/renderer/core/svg:*", # 297 errors
-- "//third_party/blink/renderer/core/timezone:*", # 8 errors
-- "//third_party/blink/renderer/core/timing:*", # 170 errors
-- "//third_party/blink/renderer/core/trustedtypes:*", # 27 errors
-- "//third_party/blink/renderer/core/typed_arrays:*", # 24 errors
-- "//third_party/blink/renderer/core/url:*", # 7 errors
-- "//third_party/blink/renderer/core/workers:*", # 289 errors
-- "//third_party/blink/renderer/core/xml:*", # 119 errors
-- "//third_party/blink/renderer/core/xmlhttprequest:*", # 49 errors
-- "//third_party/blink/renderer/core:*", # 823 errors
-- "//third_party/blink/renderer/modules/accessibility:*", # 7 errors
-- "//third_party/blink/renderer/modules/animationworklet:*", # 1 error
-- "//third_party/blink/renderer/modules/background_fetch:*", # 4 errors
-- "//third_party/blink/renderer/modules/background_sync:*", # 6 errors
-- "//third_party/blink/renderer/modules/cache_storage:*", # 3 errors
-- "//third_party/blink/renderer/modules/canvas:*", # 1 error
-- "//third_party/blink/renderer/modules/clipboard:*", # 1 error
-- "//third_party/blink/renderer/modules/contacts_picker:*", # 1 error
-- "//third_party/blink/renderer/modules/content_index:*", # 3 errors
-- "//third_party/blink/renderer/modules/cookie_store:*", # 8 errors
-- "//third_party/blink/renderer/modules/credentialmanager:*", # 1 error
-- "//third_party/blink/renderer/modules/csspaint:*", # 2 errors
-- "//third_party/blink/renderer/modules/device_orientation:*", # 5 errors
-- "//third_party/blink/renderer/modules/encryptedmedia:*", # 3 errors
-- "//third_party/blink/renderer/modules/exported:*", # 16 errors
-- "//third_party/blink/renderer/modules/font_access:*", # 3 errors
-- "//third_party/blink/renderer/modules/gamepad:*", # 1 error
-- "//third_party/blink/renderer/modules/imagecapture:*", # 2 errors
-- "//third_party/blink/renderer/modules/installedapp:*", # 1 error
-- "//third_party/blink/renderer/modules/launch:*", # 3 errors
-- "//third_party/blink/renderer/modules/manifest:*", # 2 errors
-- "//third_party/blink/renderer/modules/media_capabilities:*", # 5 errors
-- "//third_party/blink/renderer/modules/media_controls:*", # 31 errors
-- "//third_party/blink/renderer/modules/mediacapturefromelement:*", # 14 errors
-- "//third_party/blink/renderer/modules/mediarecorder:*", # 1 error
-- "//third_party/blink/renderer/modules/mediastream:*", # 29 errors
-- "//third_party/blink/renderer/modules/native_file_system:*", # 2 errors
-- "//third_party/blink/renderer/modules/nfc:*", # 2 errors
-- "//third_party/blink/renderer/modules/notifications:*", # 5 errors
-- "//third_party/blink/renderer/modules/payments/goods:*", # 1 error
-- "//third_party/blink/renderer/modules/payments:*", # 22 errors
-- "//third_party/blink/renderer/modules/peerconnection:*", # 43 errors
-- "//third_party/blink/renderer/modules/push_messaging:*", # 12 errors
-- "//third_party/blink/renderer/modules/quota:*", # 1 error
-- "//third_party/blink/renderer/modules/remoteplayback:*", # 3 errors
-- "//third_party/blink/renderer/modules/serial:*", # 1 error
-- "//third_party/blink/renderer/modules/service_worker:*", # 23 errors
-- "//third_party/blink/renderer/modules/shapedetection:*", # 4 errors
-- "//third_party/blink/renderer/modules/srcobject:*", # 1 error
-- "//third_party/blink/renderer/modules/storage:*", # 3 errors
-- "//third_party/blink/renderer/modules/wake_lock:*", # 1 error
-- "//third_party/blink/renderer/modules/webaudio:*", # 5 errors
-- "//third_party/blink/renderer/modules/webcodecs:*", # 13 errors
-- "//third_party/blink/renderer/modules/webgl:*", # 3 errors
-- "//third_party/blink/renderer/modules/webgpu:*", # 6 errors
-- "//third_party/blink/renderer/modules/webmidi:*", # 1 error
-- "//third_party/blink/renderer/modules/webtransport:*", # 16 errors
-- "//third_party/blink/renderer/modules/worklet:*", # 2 errors
-- "//third_party/blink/renderer/modules/xr:*", # 13 errors
-- "//third_party/blink/renderer/modules:*", # 321 errors
-- "//third_party/blink/renderer/platform/blob:*", # 16 errors
-- "//third_party/blink/renderer/platform/heap:*", # 65 errors
-- "//third_party/blink/renderer/platform/instrumentation:*", # 13 errors
-- "//third_party/blink/renderer/platform/loader:*", # 180 errors
-- "//third_party/blink/renderer/platform/network:*", # 15 errors
-- "//third_party/blink/renderer/platform/scheduler:*", # 45 errors
-- "//third_party/blink/renderer/platform/wtf:*", # 2 errors
-- "//third_party/blink/renderer/platform:*", # 72 errors
--
-- "//third_party/breakpad:*", # 34 errors
-- "//third_party/ced/*",
-- "//third_party/crashpad/crashpad/client:*", # 1 error
-- "//third_party/crashpad/crashpad/compat:*", # 2 errors
-- "//third_party/crashpad/crashpad/snapshot:*", # 1 error
-- "//third_party/crashpad/crashpad/test:*", # 2 errors
-- "//third_party/crashpad/crashpad/util:*", # 2 errors
-- "//third_party/dav1d:*", # 95 errors
-- "//third_party/ffmpeg:*", # 1 error
-- "//third_party/icu/*",
-- "//third_party/libvpx:*", # 164 errors
-- "//third_party/libwebp:*", # 80 errors, https://crbug.com/800762
-- "//third_party/openscreen/src/cast/common:*", # 4 errors
-- "//third_party/openscreen/src/cast/receiver:*", # 1 error
-- "//third_party/openscreen/src/cast/streaming:*", # 66 errors
-- "//third_party/openscreen/src/discovery:*", # 36 errors
-- "//third_party/openscreen/src/osp/impl/quic:*", # 16 errors
-- "//third_party/openscreen/src/osp/msgs:*", # 5 errors
-- "//third_party/openscreen/src/osp/public:*", # 1 error
-- "//third_party/openscreen/src/osp:*", # 13 errors
-- "//third_party/openscreen/src/util:*", # 29 errors
-- "//third_party/pdfium/samples:*", # 1 error
-- "//third_party/pdfium/third_party:*", # 2 errors
-- "//third_party/pdfium:*", # 1 error
--
-- # //v8/*, https://crbug.com/v8/7330
-- "//v8/src/inspector:*", # 20 errors
-- "//v8/test/cctest:*", # 26 errors
-- "//v8/test/unittests:*", # 11 errors
-- "//v8/test/wasm-api-tests:*", # 13 errors
-- "//v8/third_party/inspector_protocol:*", # 2 errors
-- "//v8/tools/debug_helper:*", # 9 errors
-- "//v8/tools/v8windbg:*", # 2 errors
-- "//v8:*", # 1871 errors
--]
-+#no_check_targets = [
-+# # //chrome/*, https://crbug.com/949535
-+# "//chrome/browser/devtools:*", # 114 errors
-+# "//chrome/browser/media/router/discovery:*", # 26 errors
-+# "//chrome/browser/media/router:*", # 225 errors
-+# "//chrome/browser/paint_preview:*", # 4 errors
-+# "//chrome/browser/profiling_host:*", # 13 errors
-+# "//chrome/browser/resources/chromeos/zip_archiver/cpp:*", # 2 errors
-+# "//chrome/browser/safe_browsing/android:*", # 3 errors
-+# "//chrome/browser/safe_browsing:*", # 85 errors
-+# "//chrome/browser/safety_check/android:*", # 3 errors
-+# "//chrome/browser/storage_access_api:*", # 2 errors
-+# "//chrome/browser/touch_to_fill/android:*", # 8 errors
-+# "//chrome/browser/touch_to_fill:*", # 5 errors
-+# "//chrome/browser/updates/announcement_notification:*", # 15 errors
-+# "//chrome/browser/updates/internal:*", # 8 errors
-+# "//chrome/browser/updates:*", # 21 errors
-+# "//chrome/browser:*", # 780 errors
-+# "//chrome/child:*", # 3 errors
-+# "//chrome/credential_provider/gaiacp:*", # 1 error
-+# "//chrome/gpu:*", # 2 errors
-+# "//chrome/install_static:*", # 4 errors
-+# "//chrome/notification_helper:*", # 4 errors
-+# "//chrome/renderer:*", # 42 errors
-+# "//chrome/services/cups_proxy/public/cpp:*", # 2 errors
-+# "//chrome/services/cups_proxy:*", # 6 errors
-+# "//chrome/services/file_util/public/cpp:*", # 13 errors
-+# "//chrome/services/file_util:*", # 3 errors
-+# "//chrome/services/ipp_parser:*", # 1 error
-+# "//chrome/services/media_gallery_util/public/cpp:*", # 6 errors
-+# "//chrome/services/media_gallery_util:*", # 3 errors
-+# "//chrome/services/printing:*", # 3 errors
-+# "//chrome/services/qrcode_generator:*", # 1 error
-+# "//chrome/services/removable_storage_writer:*", # 1 error
-+# "//chrome/services/sharing/public/cpp:*", # 2 errors
-+# "//chrome/services/speech:*", # 5 errors
-+# "//chrome/services/util_win:*", # 1 error
-+# "//chrome/test/chromedriver:*", # 115 errors
-+# "//chrome/test/data/nacl:*", # 350 errors
-+# "//chrome/test/media_router:*", # 5 errors
-+# "//chrome/test:*", # 2682 errors
-+# "//chrome:*", # 7 errors
-+#
-+# "//clank/third_party/gvr_shim:*", # 1 error
-+# "//extensions/browser/api/alarms:*", # 2 errors
-+# "//extensions/browser/api/app_current_window_internal:*", # 3 errors
-+# "//extensions/browser/api/app_runtime:*", # 3 errors
-+# "//extensions/browser/api/app_window:*", # 5 errors
-+# "//extensions/browser/api/audio:*", # 3 errors
-+# "//extensions/browser/api/automation_internal:*", # 37 errors
-+# "//extensions/browser/api/bluetooth_low_energy:*", # 22 errors
-+# "//extensions/browser/api/bluetooth_socket:*", # 12 errors
-+# "//extensions/browser/api/cast_channel:*", # 3 errors
-+# "//extensions/browser/api/cec_private:*", # 4 errors
-+# "//extensions/browser/api/clipboard:*", # 3 errors
-+# "//extensions/browser/api/crash_report_private:*", # 1 error
-+# "//extensions/browser/api/declarative:*", # 20 errors
-+# "//extensions/browser/api/declarative_content:*", # 2 errors
-+# "//extensions/browser/api/declarative_net_request/filter_list_converter:*", # 1
-+# # error
-+# "//extensions/browser/api/declarative_net_request:*", # 18 errors
-+# "//extensions/browser/api/declarative_webrequest:*", # 29 errors
-+# "//extensions/browser/api/diagnostics:*", # 2 errors
-+# "//extensions/browser/api/display_source:*", # 7 errors
-+# "//extensions/browser/api/dns:*", # 3 errors
-+# "//extensions/browser/api/document_scan:*", # 2 errors
-+# "//extensions/browser/api/feedback_private:*", # 2 errors
-+# "//extensions/browser/api/file_handlers:*", # 3 errors
-+# "//extensions/browser/api/file_system:*", # 1 error
-+# "//extensions/browser/api/hid:*", # 12 errors
-+# "//extensions/browser/api/idle:*", # 4 errors
-+# "//extensions/browser/api/management:*", # 19 errors
-+# "//extensions/browser/api/messaging:*", # 1 error
-+# "//extensions/browser/api/metrics_private:*", # 3 errors
-+# "//extensions/browser/api/mime_handler_private:*", # 1 error
-+# "//extensions/browser/api/networking_config:*", # 7 errors
-+# "//extensions/browser/api/networking_private:*", # 14 errors
-+# "//extensions/browser/api/power:*", # 3 errors
-+# "//extensions/browser/api/printer_provider:*", # 7 errors
-+# "//extensions/browser/api/printer_provider_internal:*", # 3 errors
-+# "//extensions/browser/api/runtime:*", # 6 errors
-+# "//extensions/browser/api/serial:*", # 10 errors
-+# "//extensions/browser/api/socket:*", # 11 errors
-+# "//extensions/browser/api/sockets_tcp:*", # 6 errors
-+# "//extensions/browser/api/sockets_tcp_server:*", # 8 errors
-+# "//extensions/browser/api/sockets_udp:*", # 9 errors
-+# "//extensions/browser/api/storage:*", # 9 errors
-+# "//extensions/browser/api/system_cpu:*", # 1 error
-+# "//extensions/browser/api/system_display:*", # 3 errors
-+# "//extensions/browser/api/system_info:*", # 8 errors
-+# "//extensions/browser/api/system_memory:*", # 1 error
-+# "//extensions/browser/api/system_network:*", # 2 errors
-+# "//extensions/browser/api/system_power_source:*", # 2 errors
-+# "//extensions/browser/api/system_storage:*", # 6 errors
-+# "//extensions/browser/api/test:*", # 1 error
-+# "//extensions/browser/api/usb:*", # 12 errors
-+# "//extensions/browser/api/virtual_keyboard:*", # 1 error
-+# "//extensions/browser/api/virtual_keyboard_private:*", # 2 errors
-+# "//extensions/browser/api/vpn_provider:*", # 13 errors
-+# "//extensions/browser/api/web_request:*", # 37 errors
-+# "//extensions/browser/api/webcam_private:*", # 8 errors
-+# "//extensions/browser/api:*", # 7 errors
-+# "//extensions/browser/updater:*", # 31 errors
-+# "//extensions/browser/value_store:*", # 5 errors
-+# "//extensions/browser:*", # 20 errors
-+# "//extensions:*", # 75 errors
-+# "//headless:*", # 167 errors
-+# "//jingle:*", # 4 errors
-+# "//native_client/src/trusted/service_runtime:*", # 2 errors
-+# "//ppapi/cpp/private:*", # 1 error
-+# "//ppapi/host:*", # 1 error
-+# "//ppapi/native_client/src/untrusted/pnacl_irt_shim:*", # 197 errors
-+# "//ppapi/proxy:*", # 31 errors
-+# "//ppapi/shared_impl:*", # 3 errors
-+# "//ppapi/thunk:*", # 1071 errors
-+# "//ppapi:*", # 3 errors
-+# "//remoting/base/grpc_support:*", # 14 errors
-+# "//remoting/base/grpc_test_support:*", # 1 error
-+# "//remoting/base:*", # 6 errors
-+# "//remoting/client/audio:*", # 7 errors
-+# "//remoting/client/display:*", # 55 errors
-+# "//remoting/client/input:*", # 17 errors
-+# "//remoting/client/jni:*", # 8 errors
-+# "//remoting/client/notification:*", # 12 errors
-+# "//remoting/client/ui:*", # 13 errors
-+# "//remoting/client:*", # 20 errors
-+# "//remoting/codec:*", # 32 errors
-+# "//remoting/host/chromeos:*", # 10 errors
-+# "//remoting/host/file_transfer:*", # 43 errors
-+# "//remoting/host/input_monitor:*", # 3 errors
-+# "//remoting/host/installer/mac:*", # 1 error
-+# "//remoting/host/it2me:*", # 18 errors
-+# "//remoting/host/linux:*", # 64 errors
-+# "//remoting/host/mac:*", # 49 errors
-+# "//remoting/host/native_messaging:*", # 3 errors
-+# "//remoting/host/security_key:*", # 68 errors
-+# "//remoting/host/setup:*", # 9 errors
-+# "//remoting/host/win:*", # 43 errors
-+# "//remoting/host:*", # 164 errors
-+# "//remoting/ios/app/settings:*", # 6 errors
-+# "//remoting/ios/app:*", # 9 errors
-+# "//remoting/ios/audio:*", # 5 errors
-+# "//remoting/ios/domain:*", # 2 errors
-+# "//remoting/ios/facade:*", # 8 errors
-+# "//remoting/ios/persistence:*", # 10 errors
-+# "//remoting/ios/session:*", # 7 errors
-+# "//remoting/ios:*", # 2 errors
-+# "//remoting/protocol:*", # 142 errors
-+# "//remoting/signaling:*", # 30 errors
-+# "//remoting/test:*", # 20 errors
-+# "//remoting:*", # 27 errors
-+# "//sandbox/linux:*", # 13 errors
-+# "//sandbox/mac:*", # 14 errors
-+# "//sandbox/win:*", # 7 errors
-+#
-+# # //third_party/blink/*, https://crbug.com/800764
-+# "//third_party/blink/common:*", # 9 errors
-+# "//third_party/blink/renderer/bindings/core/v8:*", # 1 error
-+# "//third_party/blink/renderer/controller:*", # 191 errors
-+# "//third_party/blink/renderer/core/accessibility:*", # 27 errors
-+# "//third_party/blink/renderer/core/animation:*", # 506 errors
-+# "//third_party/blink/renderer/core/animation_frame:*", # 4 errors
-+# "//third_party/blink/renderer/core/aom:*", # 23 errors
-+# "//third_party/blink/renderer/core/clipboard:*", # 43 errors
-+# "//third_party/blink/renderer/core/content_capture:*", # 12 errors
-+# "//third_party/blink/renderer/core/context_features:*", # 3 errors
-+# "//third_party/blink/renderer/core/css:*", # 835 errors
-+# "//third_party/blink/renderer/core/display_lock:*", # 36 errors
-+# "//third_party/blink/renderer/core/dom:*", # 706 errors
-+# "//third_party/blink/renderer/core/editing:*", # 847 errors
-+# "//third_party/blink/renderer/core/events:*", # 173 errors
-+# "//third_party/blink/renderer/core/execution_context:*", # 48 errors
-+# "//third_party/blink/renderer/core/exported:*", # 470 errors
-+# "//third_party/blink/renderer/core/feature_policy:*", # 15 errors
-+# "//third_party/blink/renderer/core/fetch:*", # 134 errors
-+# "//third_party/blink/renderer/core/fileapi:*", # 55 errors
-+# "//third_party/blink/renderer/core/frame:*", # 864 errors
-+# "//third_party/blink/renderer/core/fullscreen:*", # 32 errors
-+# "//third_party/blink/renderer/core/geometry:*", # 39 errors
-+# "//third_party/blink/renderer/core/html/parser:*", # 133 errors
-+# "//third_party/blink/renderer/core/html:*", # 1662 errors
-+# "//third_party/blink/renderer/core/imagebitmap:*", # 34 errors
-+# "//third_party/blink/renderer/core/input:*", # 240 errors
-+# "//third_party/blink/renderer/core/inspector:*", # 594 errors
-+# "//third_party/blink/renderer/core/intersection_observer:*", # 50 errors
-+# "//third_party/blink/renderer/core/layout/svg:*", # 193 errors
-+# "//third_party/blink/renderer/core/layout:*", # 920 errors
-+# "//third_party/blink/renderer/core/loader:*", # 421 errors
-+# "//third_party/blink/renderer/core/mathml:*", # 11 errors
-+# "//third_party/blink/renderer/core/messaging:*", # 30 errors
-+# "//third_party/blink/renderer/core/mojo:*", # 44 errors
-+# "//third_party/blink/renderer/core/offscreencanvas:*", # 22 errors
-+# "//third_party/blink/renderer/core/origin_trials:*", # 12 errors
-+# "//third_party/blink/renderer/core/page:*", # 500 errors
-+# "//third_party/blink/renderer/core/paint:*", # 788 errors
-+# "//third_party/blink/renderer/core/probe:*", # 9 errors
-+# "//third_party/blink/renderer/core/resize_observer:*", # 29 errors
-+# "//third_party/blink/renderer/core/script:*", # 155 errors
-+# "//third_party/blink/renderer/core/scroll:*", # 29 errors
-+# "//third_party/blink/renderer/core/streams:*", # 75 errors
-+# "//third_party/blink/renderer/core/style:*", # 86 errors
-+# "//third_party/blink/renderer/core/svg:*", # 297 errors
-+# "//third_party/blink/renderer/core/timezone:*", # 8 errors
-+# "//third_party/blink/renderer/core/timing:*", # 170 errors
-+# "//third_party/blink/renderer/core/trustedtypes:*", # 27 errors
-+# "//third_party/blink/renderer/core/typed_arrays:*", # 24 errors
-+# "//third_party/blink/renderer/core/url:*", # 7 errors
-+# "//third_party/blink/renderer/core/workers:*", # 289 errors
-+# "//third_party/blink/renderer/core/xml:*", # 119 errors
-+# "//third_party/blink/renderer/core/xmlhttprequest:*", # 49 errors
-+# "//third_party/blink/renderer/core:*", # 823 errors
-+# "//third_party/blink/renderer/modules/accessibility:*", # 7 errors
-+# "//third_party/blink/renderer/modules/animationworklet:*", # 1 error
-+# "//third_party/blink/renderer/modules/background_fetch:*", # 4 errors
-+# "//third_party/blink/renderer/modules/background_sync:*", # 6 errors
-+# "//third_party/blink/renderer/modules/cache_storage:*", # 3 errors
-+# "//third_party/blink/renderer/modules/canvas:*", # 1 error
-+# "//third_party/blink/renderer/modules/clipboard:*", # 1 error
-+# "//third_party/blink/renderer/modules/contacts_picker:*", # 1 error
-+# "//third_party/blink/renderer/modules/content_index:*", # 3 errors
-+# "//third_party/blink/renderer/modules/cookie_store:*", # 8 errors
-+# "//third_party/blink/renderer/modules/credentialmanager:*", # 1 error
-+# "//third_party/blink/renderer/modules/csspaint:*", # 2 errors
-+# "//third_party/blink/renderer/modules/device_orientation:*", # 5 errors
-+# "//third_party/blink/renderer/modules/encryptedmedia:*", # 3 errors
-+# "//third_party/blink/renderer/modules/exported:*", # 16 errors
-+# "//third_party/blink/renderer/modules/font_access:*", # 3 errors
-+# "//third_party/blink/renderer/modules/gamepad:*", # 1 error
-+# "//third_party/blink/renderer/modules/imagecapture:*", # 2 errors
-+# "//third_party/blink/renderer/modules/installedapp:*", # 1 error
-+# "//third_party/blink/renderer/modules/launch:*", # 3 errors
-+# "//third_party/blink/renderer/modules/manifest:*", # 2 errors
-+# "//third_party/blink/renderer/modules/media_capabilities:*", # 5 errors
-+# "//third_party/blink/renderer/modules/media_controls:*", # 31 errors
-+# "//third_party/blink/renderer/modules/mediacapturefromelement:*", # 14 errors
-+# "//third_party/blink/renderer/modules/mediarecorder:*", # 1 error
-+# "//third_party/blink/renderer/modules/mediastream:*", # 29 errors
-+# "//third_party/blink/renderer/modules/native_file_system:*", # 2 errors
-+# "//third_party/blink/renderer/modules/nfc:*", # 2 errors
-+# "//third_party/blink/renderer/modules/notifications:*", # 5 errors
-+# "//third_party/blink/renderer/modules/payments/goods:*", # 1 error
-+# "//third_party/blink/renderer/modules/payments:*", # 22 errors
-+# "//third_party/blink/renderer/modules/peerconnection:*", # 43 errors
-+# "//third_party/blink/renderer/modules/push_messaging:*", # 12 errors
-+# "//third_party/blink/renderer/modules/quota:*", # 1 error
-+# "//third_party/blink/renderer/modules/remoteplayback:*", # 3 errors
-+# "//third_party/blink/renderer/modules/serial:*", # 1 error
-+# "//third_party/blink/renderer/modules/service_worker:*", # 23 errors
-+# "//third_party/blink/renderer/modules/shapedetection:*", # 4 errors
-+# "//third_party/blink/renderer/modules/srcobject:*", # 1 error
-+# "//third_party/blink/renderer/modules/storage:*", # 3 errors
-+# "//third_party/blink/renderer/modules/wake_lock:*", # 1 error
-+# "//third_party/blink/renderer/modules/webaudio:*", # 5 errors
-+# "//third_party/blink/renderer/modules/webcodecs:*", # 13 errors
-+# "//third_party/blink/renderer/modules/webgl:*", # 3 errors
-+# "//third_party/blink/renderer/modules/webgpu:*", # 6 errors
-+# "//third_party/blink/renderer/modules/webmidi:*", # 1 error
-+# "//third_party/blink/renderer/modules/webtransport:*", # 16 errors
-+# "//third_party/blink/renderer/modules/worklet:*", # 2 errors
-+# "//third_party/blink/renderer/modules/xr:*", # 13 errors
-+# "//third_party/blink/renderer/modules:*", # 321 errors
-+# "//third_party/blink/renderer/platform/blob:*", # 16 errors
-+# "//third_party/blink/renderer/platform/heap:*", # 65 errors
-+# "//third_party/blink/renderer/platform/instrumentation:*", # 13 errors
-+# "//third_party/blink/renderer/platform/loader:*", # 180 errors
-+# "//third_party/blink/renderer/platform/network:*", # 15 errors
-+# "//third_party/blink/renderer/platform/scheduler:*", # 45 errors
-+# "//third_party/blink/renderer/platform/wtf:*", # 2 errors
-+# "//third_party/blink/renderer/platform:*", # 72 errors
-+#
-+# "//third_party/breakpad:*", # 34 errors
-+# "//third_party/ced/*",
-+# "//third_party/crashpad/crashpad/client:*", # 1 error
-+# "//third_party/crashpad/crashpad/compat:*", # 2 errors
-+# "//third_party/crashpad/crashpad/snapshot:*", # 1 error
-+# "//third_party/crashpad/crashpad/test:*", # 2 errors
-+# "//third_party/crashpad/crashpad/util:*", # 2 errors
-+# "//third_party/dav1d:*", # 95 errors
-+# "//third_party/ffmpeg:*", # 1 error
-+# "//third_party/icu/*",
-+# "//third_party/libvpx:*", # 164 errors
-+# "//third_party/libwebp:*", # 80 errors, https://crbug.com/800762
-+# "//third_party/openscreen/src/cast/common:*", # 4 errors
-+# "//third_party/openscreen/src/cast/receiver:*", # 1 error
-+# "//third_party/openscreen/src/cast/streaming:*", # 66 errors
-+# "//third_party/openscreen/src/discovery:*", # 36 errors
-+# "//third_party/openscreen/src/osp/impl/quic:*", # 16 errors
-+# "//third_party/openscreen/src/osp/msgs:*", # 5 errors
-+# "//third_party/openscreen/src/osp/public:*", # 1 error
-+# "//third_party/openscreen/src/osp:*", # 13 errors
-+# "//third_party/openscreen/src/util:*", # 29 errors
-+# "//third_party/pdfium/samples:*", # 1 error
-+# "//third_party/pdfium/third_party:*", # 2 errors
-+# "//third_party/pdfium:*", # 1 error
-+#
-+# # //v8/*, https://crbug.com/v8/7330
-+# "//v8/src/inspector:*", # 20 errors
-+# "//v8/test/cctest:*", # 26 errors
-+# "//v8/test/unittests:*", # 11 errors
-+# "//v8/test/wasm-api-tests:*", # 13 errors
-+# "//v8/third_party/inspector_protocol:*", # 2 errors
-+# "//v8/tools/debug_helper:*", # 9 errors
-+# "//v8/tools/v8windbg:*", # 2 errors
-+# "//v8:*", # 1871 errors
-+#]
-
- # These are the list of GN files that run exec_script. This whitelist exists
- # to force additional review for new uses of exec_script, which is strongly
diff --git a/www-client/chromium/files/chromium-renderer-std-nullptr-83.patch b/www-client/chromium/files/chromium-renderer-std-nullptr-83.patch
deleted file mode 100644
index f95916e..0000000
--- a/www-client/chromium/files/chromium-renderer-std-nullptr-83.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/platform/bindings/v8_set_return_value.h b/third_party/blink/renderer/platform/bindings/v8_set_return_value.h
-index 07cae22f1..7871f557d 100644
---- a/third_party/blink/renderer/platform/bindings/v8_set_return_value.h
-+++ b/third_party/blink/renderer/platform/bindings/v8_set_return_value.h
-@@ -51,7 +51,7 @@ void V8SetReturnValue(const CallbackInfo& info, const v8::Local<S> value) {
-
- // nullptr
- template <typename CallbackInfo>
--void V8SetReturnValue(const CallbackInfo& info, nullptr_t) {
-+void V8SetReturnValue(const CallbackInfo& info, std::nullptr_t) {
- info.GetReturnValue().SetNull();
- }
-
diff --git a/www-client/chromium/files/chromium-revert-crrev-2147485-84.patch b/www-client/chromium/files/chromium-revert-crrev-2147485-84.patch
deleted file mode 100644
index 3c6e2b1..0000000
--- a/www-client/chromium/files/chromium-revert-crrev-2147485-84.patch
+++ /dev/null
@@ -1,369 +0,0 @@
-diff --git a/content/browser/devtools/protocol/page_handler.cc b/content/browser/devtools/protocol/page_handler.cc
-index b1821434b..929b63ab8 100644
---- a/content/browser/devtools/protocol/page_handler.cc
-+++ b/content/browser/devtools/protocol/page_handler.cc
-@@ -961,14 +961,14 @@ Response PageHandler::SetDownloadBehavior(const std::string& behavior,
-
- void PageHandler::GetAppManifest(
- std::unique_ptr<GetAppManifestCallback> callback) {
-- if (!host_) {
-+ WebContentsImpl* web_contents = GetWebContents();
-+ if (!web_contents || !web_contents->GetManifestManagerHost()) {
- callback->sendFailure(Response::ServerError("Cannot retrieve manifest"));
- return;
- }
-- ManifestManagerHost::GetOrCreateForCurrentDocument(host_->GetMainFrame())
-- ->RequestManifestDebugInfo(base::BindOnce(&PageHandler::GotManifest,
-- weak_factory_.GetWeakPtr(),
-- std::move(callback)));
-+ web_contents->GetManifestManagerHost()->RequestManifestDebugInfo(
-+ base::BindOnce(&PageHandler::GotManifest, weak_factory_.GetWeakPtr(),
-+ std::move(callback)));
- }
-
- WebContentsImpl* PageHandler::GetWebContents() {
-diff --git a/content/browser/frame_host/render_document_host_user_data_browsertest.cc b/content/browser/frame_host/render_document_host_user_data_browsertest.cc
-index 09dff7842..290e5509b 100644
---- a/content/browser/frame_host/render_document_host_user_data_browsertest.cc
-+++ b/content/browser/frame_host/render_document_host_user_data_browsertest.cc
-@@ -88,7 +88,7 @@ class RenderDocumentHostUserDataTest : public ContentBrowserTest {
-
- // Test basic functionality of RenderDocumentHostUserData.
- IN_PROC_BROWSER_TEST_F(RenderDocumentHostUserDataTest,
-- GetCreateAndDeleteForCurrentDocument) {
-+ GetAndCreateForCurrentDocument) {
- ASSERT_TRUE(embedded_test_server()->Start());
- GURL url_a(embedded_test_server()->GetURL("a.com", "/title1.html"));
-
-@@ -104,14 +104,8 @@ IN_PROC_BROWSER_TEST_F(RenderDocumentHostUserDataTest,
- // 3) Create Data and check that GetForCurrentDocument shouldn't return null
- // now.
- Data::CreateForCurrentDocument(rfh_a);
-- base::WeakPtr<Data> created_data =
-- Data::GetForCurrentDocument(rfh_a)->GetWeakPtr();
-- EXPECT_TRUE(created_data);
--
-- // 4) Delete Data and check that GetForCurrentDocument should return null.
-- Data::DeleteForCurrentDocument(rfh_a);
-- EXPECT_FALSE(created_data);
-- EXPECT_FALSE(Data::GetForCurrentDocument(rfh_a));
-+ data = Data::GetForCurrentDocument(rfh_a);
-+ EXPECT_TRUE(data);
- }
-
- // Tests that RenderDocumentHostUserData objects are different for each
-diff --git a/content/browser/frame_host/render_frame_host_impl.cc b/content/browser/frame_host/render_frame_host_impl.cc
-index 23bc92faa..e95952a01 100644
---- a/content/browser/frame_host/render_frame_host_impl.cc
-+++ b/content/browser/frame_host/render_frame_host_impl.cc
-@@ -75,7 +75,6 @@
- #include "content/browser/loader/navigation_url_loader_impl.h"
- #include "content/browser/loader/prefetch_url_loader_service.h"
- #include "content/browser/log_console_message.h"
--#include "content/browser/manifest/manifest_manager_host.h"
- #include "content/browser/media/capture/audio_mirroring_manager.h"
- #include "content/browser/media/media_interface_proxy.h"
- #include "content/browser/media/webaudio/audio_context_manager_impl.h"
-@@ -6146,15 +6145,6 @@ void RenderFrameHostImpl::SetUpMojoIfNeeded() {
- std::make_unique<ActiveURLMessageFilter>(impl));
- },
- base::Unretained(this)));
--
-- associated_registry_->AddInterface(base::BindRepeating(
-- [](RenderFrameHostImpl* impl,
-- mojo::PendingAssociatedReceiver<
-- blink::mojom::ManifestUrlChangeObserver> receiver) {
-- ManifestManagerHost::GetOrCreateForCurrentDocument(impl)
-- ->BindObserver(std::move(receiver));
-- },
-- base::Unretained(this)));
- }
-
- associated_registry_->AddInterface(base::BindRepeating(
-diff --git a/content/browser/frame_host/render_frame_host_impl.h b/content/browser/frame_host/render_frame_host_impl.h
-index bfd421386..2bba134e0 100644
---- a/content/browser/frame_host/render_frame_host_impl.h
-+++ b/content/browser/frame_host/render_frame_host_impl.h
-@@ -1595,10 +1595,6 @@ class CONTENT_EXPORT RenderFrameHostImpl
- document_associated_data_.SetUserData(key, std::move(data));
- }
-
-- void RemoveRenderDocumentHostUserData(const void* key) {
-- document_associated_data_.RemoveUserData(key);
-- }
--
- // Returns the child RenderFrameHostImpl if |child_frame_routing_id| is an
- // immediate child of this FrameTreeNode. |child_frame_routing_id| is
- // considered untrusted, so the renderer process is killed if it refers to a
-diff --git a/content/browser/manifest/manifest_manager_host.cc b/content/browser/manifest/manifest_manager_host.cc
-index 68ea016c6..b063e0d1e 100644
---- a/content/browser/manifest/manifest_manager_host.cc
-+++ b/content/browser/manifest/manifest_manager_host.cc
-@@ -9,34 +9,25 @@
- #include "base/bind.h"
- #include "content/browser/web_contents/web_contents_impl.h"
- #include "content/public/browser/render_frame_host.h"
-+#include "content/public/browser/web_contents.h"
- #include "services/service_manager/public/cpp/interface_provider.h"
- #include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h"
- #include "third_party/blink/public/common/manifest/manifest.h"
-
- namespace content {
-
--ManifestManagerHost::ManifestManagerHost(RenderFrameHost* render_frame_host)
-- : manifest_manager_frame_(render_frame_host) {
-- // Check that |manifest_manager_frame_| is a main frame.
-- DCHECK(!manifest_manager_frame_->GetParent());
--}
-+ManifestManagerHost::ManifestManagerHost(WebContents* web_contents)
-+ : WebContentsObserver(web_contents),
-+ manifest_url_change_observer_receivers_(web_contents, this) {}
-
- ManifestManagerHost::~ManifestManagerHost() {
- OnConnectionError();
- }
-
--void ManifestManagerHost::BindObserver(
-- mojo::PendingAssociatedReceiver<blink::mojom::ManifestUrlChangeObserver>
-- receiver) {
-- manifest_url_change_observer_receiver_.Bind(std::move(receiver));
--}
--
--ManifestManagerHost* ManifestManagerHost::GetOrCreateForCurrentDocument(
-- RenderFrameHostImpl* rfh) {
-- DCHECK(rfh->is_main_frame());
-- if (!GetForCurrentDocument(rfh))
-- CreateForCurrentDocument(rfh);
-- return GetForCurrentDocument(rfh);
-+void ManifestManagerHost::RenderFrameDeleted(
-+ RenderFrameHost* render_frame_host) {
-+ if (render_frame_host == manifest_manager_frame_)
-+ OnConnectionError();
- }
-
- void ManifestManagerHost::GetManifest(GetManifestCallback callback) {
-@@ -54,7 +45,11 @@ void ManifestManagerHost::RequestManifestDebugInfo(
- }
-
- blink::mojom::ManifestManager& ManifestManagerHost::GetManifestManager() {
-+ if (manifest_manager_frame_ != web_contents()->GetMainFrame())
-+ OnConnectionError();
-+
- if (!manifest_manager_) {
-+ manifest_manager_frame_ = web_contents()->GetMainFrame();
- manifest_manager_frame_->GetRemoteInterfaces()->GetInterface(
- manifest_manager_.BindNewPipeAndPassReceiver());
- manifest_manager_.set_disconnect_handler(base::BindOnce(
-@@ -64,6 +59,8 @@ blink::mojom::ManifestManager& ManifestManagerHost::GetManifestManager() {
- }
-
- void ManifestManagerHost::OnConnectionError() {
-+ manifest_manager_frame_ = nullptr;
-+ manifest_manager_.reset();
- std::vector<GetManifestCallback> callbacks;
- for (CallbackMap::iterator it(&callbacks_); !it.IsAtEnd(); it.Advance()) {
- callbacks.push_back(std::move(*it.GetCurrentValue()));
-@@ -71,10 +68,6 @@ void ManifestManagerHost::OnConnectionError() {
- callbacks_.Clear();
- for (auto& callback : callbacks)
- std::move(callback).Run(GURL(), blink::Manifest());
--
-- if (GetForCurrentDocument(manifest_manager_frame_)) {
-- DeleteForCurrentDocument(manifest_manager_frame_);
-- }
- }
-
- void ManifestManagerHost::OnRequestManifestResponse(
-@@ -88,16 +81,12 @@ void ManifestManagerHost::OnRequestManifestResponse(
-
- void ManifestManagerHost::ManifestUrlChanged(
- const base::Optional<GURL>& manifest_url) {
-- if (!manifest_manager_frame_->IsCurrent())
-+ if (manifest_url_change_observer_receivers_.GetCurrentTargetFrame() !=
-+ web_contents()->GetMainFrame()) {
- return;
--
-- // TODO(yuzus): |NotifyManifestUrlChanged| should start taking a
-- // |RenderFrameHost| parameter.
-- WebContents* web_contents =
-- WebContents::FromRenderFrameHost(manifest_manager_frame_);
-- static_cast<WebContentsImpl*>(web_contents)
-+ }
-+ static_cast<WebContentsImpl*>(web_contents())
- ->NotifyManifestUrlChanged(manifest_url);
- }
-
--RENDER_DOCUMENT_HOST_USER_DATA_KEY_IMPL(ManifestManagerHost)
- } // namespace content
-diff --git a/content/browser/manifest/manifest_manager_host.h b/content/browser/manifest/manifest_manager_host.h
-index 57f51dc9f..3dc0bbf6e 100644
---- a/content/browser/manifest/manifest_manager_host.h
-+++ b/content/browser/manifest/manifest_manager_host.h
-@@ -8,8 +8,8 @@
- #include "base/callback_forward.h"
- #include "base/containers/id_map.h"
- #include "base/macros.h"
--#include "content/public/browser/render_document_host_user_data.h"
--#include "mojo/public/cpp/bindings/associated_receiver.h"
-+#include "content/public/browser/web_contents_observer.h"
-+#include "content/public/browser/web_contents_receiver_set.h"
- #include "mojo/public/cpp/bindings/remote.h"
- #include "third_party/blink/public/mojom/manifest/manifest_manager.mojom.h"
- #include "third_party/blink/public/mojom/manifest/manifest_observer.mojom.h"
-@@ -21,16 +21,16 @@ struct Manifest;
- namespace content {
-
- class RenderFrameHost;
--class RenderFrameHostImpl;
-+class WebContents;
-
- // ManifestManagerHost is a helper class that allows callers to get the Manifest
- // associated with the main frame of the observed WebContents. It handles the
- // IPC messaging with the child process.
- // TODO(mlamouri): keep a cached version and a dirty bit here.
--class ManifestManagerHost
-- : public RenderDocumentHostUserData<ManifestManagerHost>,
-- public blink::mojom::ManifestUrlChangeObserver {
-+class ManifestManagerHost : public WebContentsObserver,
-+ public blink::mojom::ManifestUrlChangeObserver {
- public:
-+ explicit ManifestManagerHost(WebContents* web_contents);
- ~ManifestManagerHost() override;
-
- using GetManifestCallback =
-@@ -44,18 +44,10 @@ class ManifestManagerHost
- void RequestManifestDebugInfo(
- blink::mojom::ManifestManager::RequestManifestDebugInfoCallback callback);
-
-- void BindObserver(
-- mojo::PendingAssociatedReceiver<blink::mojom::ManifestUrlChangeObserver>
-- receiver);
--
-- static ManifestManagerHost* GetOrCreateForCurrentDocument(
-- RenderFrameHostImpl* rfh);
-+ // WebContentsObserver
-+ void RenderFrameDeleted(RenderFrameHost* render_frame_host) override;
-
- private:
-- explicit ManifestManagerHost(RenderFrameHost* render_frame_host);
--
-- friend class RenderDocumentHostUserData<ManifestManagerHost>;
--
- using CallbackMap = base::IDMap<std::unique_ptr<GetManifestCallback>>;
-
- blink::mojom::ManifestManager& GetManifestManager();
-@@ -68,14 +60,13 @@ class ManifestManagerHost
- // blink::mojom::ManifestUrlChangeObserver:
- void ManifestUrlChanged(const base::Optional<GURL>& manifest_url) override;
-
-- RenderFrameHost* manifest_manager_frame_;
-+ RenderFrameHost* manifest_manager_frame_ = nullptr;
- mojo::Remote<blink::mojom::ManifestManager> manifest_manager_;
- CallbackMap callbacks_;
-
-- mojo::AssociatedReceiver<blink::mojom::ManifestUrlChangeObserver>
-- manifest_url_change_observer_receiver_{this};
-+ WebContentsFrameReceiverSet<blink::mojom::ManifestUrlChangeObserver>
-+ manifest_url_change_observer_receivers_;
-
-- RENDER_DOCUMENT_HOST_USER_DATA_KEY_DECL();
- DISALLOW_COPY_AND_ASSIGN(ManifestManagerHost);
- };
-
-diff --git a/content/browser/web_contents/web_contents_impl.cc b/content/browser/web_contents/web_contents_impl.cc
-index 024415bb0..115f480ce 100644
---- a/content/browser/web_contents/web_contents_impl.cc
-+++ b/content/browser/web_contents/web_contents_impl.cc
-@@ -2122,6 +2122,8 @@ void WebContentsImpl::Init(const WebContents::CreateParams& params) {
-
- screen_orientation_provider_.reset(new ScreenOrientationProvider(this));
-
-+ manifest_manager_host_.reset(new ManifestManagerHost(this));
-+
- #if defined(OS_ANDROID)
- DateTimeChooserAndroid::CreateForWebContents(this);
- #endif
-@@ -4202,10 +4204,7 @@ bool WebContentsImpl::WasEverAudible() {
- }
-
- void WebContentsImpl::GetManifest(GetManifestCallback callback) {
-- // TODO(yuzus, 1061899): Move this function to RenderFrameHostImpl.
-- ManifestManagerHost* manifest_manager_host =
-- ManifestManagerHost::GetOrCreateForCurrentDocument(GetMainFrame());
-- manifest_manager_host->GetManifest(std::move(callback));
-+ manifest_manager_host_->GetManifest(std::move(callback));
- }
-
- void WebContentsImpl::ExitFullscreen(bool will_cause_resize) {
-diff --git a/content/browser/web_contents/web_contents_impl.h b/content/browser/web_contents/web_contents_impl.h
-index 59510b1f8..e86be96fc 100644
---- a/content/browser/web_contents/web_contents_impl.h
-+++ b/content/browser/web_contents/web_contents_impl.h
-@@ -102,6 +102,7 @@ class DisplayCutoutHostImpl;
- class FindRequestManager;
- class JavaScriptDialogManager;
- class JavaScriptDialogNavigationDeferrer;
-+class ManifestManagerHost;
- class MediaWebContentsObserver;
- class NFCHost;
- class PluginContentOriginAllowlist;
-@@ -311,6 +312,10 @@ class CONTENT_EXPORT WebContentsImpl : public WebContents,
-
- void NotifyManifestUrlChanged(const base::Optional<GURL>& manifest_url);
-
-+ ManifestManagerHost* GetManifestManagerHost() const {
-+ return manifest_manager_host_.get();
-+ }
-+
- #if defined(OS_ANDROID)
- void SetMainFrameImportance(ChildProcessImportance importance);
- #endif
-@@ -1897,6 +1902,8 @@ class CONTENT_EXPORT WebContentsImpl : public WebContents,
-
- std::unique_ptr<ScreenOrientationProvider> screen_orientation_provider_;
-
-+ std::unique_ptr<ManifestManagerHost> manifest_manager_host_;
-+
- // The accessibility mode for all frames. This is queried when each frame
- // is created, and broadcast to all frames when it changes.
- ui::AXMode accessibility_mode_;
-diff --git a/content/public/browser/render_document_host_user_data.cc b/content/public/browser/render_document_host_user_data.cc
-index 3b58bf8a3..b1b385455 100644
---- a/content/public/browser/render_document_host_user_data.cc
-+++ b/content/public/browser/render_document_host_user_data.cc
-@@ -23,8 +23,4 @@ void SetRenderDocumentHostUserData(
- key, std::move(data));
- }
-
--void RemoveRenderDocumentHostUserData(RenderFrameHost* rfh, const void* key) {
-- static_cast<RenderFrameHostImpl*>(rfh)->RemoveRenderDocumentHostUserData(key);
--}
--
- } // namespace content
-diff --git a/content/public/browser/render_document_host_user_data.h b/content/public/browser/render_document_host_user_data.h
-index a138fd60a..f55f24f60 100644
---- a/content/public/browser/render_document_host_user_data.h
-+++ b/content/public/browser/render_document_host_user_data.h
-@@ -22,9 +22,6 @@ CONTENT_EXPORT void SetRenderDocumentHostUserData(
- const void* key,
- std::unique_ptr<base::SupportsUserData::Data> data);
-
--CONTENT_EXPORT void RemoveRenderDocumentHostUserData(RenderFrameHost* rfh,
-- const void* key);
--
- // This class approximates the lifetime of a single blink::Document in the
- // browser process. At the moment RenderFrameHost can correspond to multiple
- // blink::Documents (when RenderFrameHost is reused for same-process
-@@ -85,12 +82,6 @@ class RenderDocumentHostUserData : public base::SupportsUserData::Data {
- return static_cast<T*>(GetRenderDocumentHostUserData(rfh, UserDataKey()));
- }
-
-- static void DeleteForCurrentDocument(RenderFrameHost* rfh) {
-- DCHECK(rfh);
-- DCHECK(GetForCurrentDocument(rfh));
-- RemoveRenderDocumentHostUserData(rfh, UserDataKey());
-- }
--
- static const void* UserDataKey() { return &T::kUserDataKey; }
- };
-
diff --git a/www-client/chromium/files/chromium-revert-e7963c4-78.patch b/www-client/chromium/files/chromium-revert-e7963c4-78.patch
deleted file mode 100644
index fe7e1a6..0000000
--- a/www-client/chromium/files/chromium-revert-e7963c4-78.patch
+++ /dev/null
@@ -1,335 +0,0 @@
-diff --git a/chrome/test/chromedriver/client/chromedriver.py b/chrome/test/chromedriver/client/chromedriver.py
-index 74b780e5f..8bd1cc004 100644
---- a/chrome/test/chromedriver/client/chromedriver.py
-+++ b/chrome/test/chromedriver/client/chromedriver.py
-@@ -653,7 +653,3 @@ class ChromeDriver(object):
- if signCount is not None:
- options['signCount'] = signCount
- return self.ExecuteCommand(Command.ADD_CREDENTIAL, options)
--
-- def GetCredentials(self, authenticatorId):
-- params = {'authenticatorId': authenticatorId}
-- return self.ExecuteCommand(Command.GET_CREDENTIALS, params)
-diff --git a/chrome/test/chromedriver/client/command_executor.py b/chrome/test/chromedriver/client/command_executor.py
-index 2286d839f..de27e1a3c 100644
---- a/chrome/test/chromedriver/client/command_executor.py
-+++ b/chrome/test/chromedriver/client/command_executor.py
-@@ -176,9 +176,6 @@ class Command(object):
- ADD_CREDENTIAL = (
- _Method.POST,
- '/session/:sessionId/webauthn/authenticator/:authenticatorId/credential')
-- GET_CREDENTIALS = (
-- _Method.GET,
-- '/session/:sessionId/webauthn/authenticator/:authenticatorId/credentials')
-
- # Custom Chrome commands.
- IS_LOADING = (_Method.GET, '/session/:sessionId/is_loading')
-diff --git a/chrome/test/chromedriver/server/http_handler.cc b/chrome/test/chromedriver/server/http_handler.cc
-index 737e34dce..0c9a00119 100644
---- a/chrome/test/chromedriver/server/http_handler.cc
-+++ b/chrome/test/chromedriver/server/http_handler.cc
-@@ -764,14 +764,6 @@ HttpHandler::HttpHandler(
- "AddCredential",
- base::BindRepeating(&ExecuteWebAuthnCommand,
- base::BindRepeating(&ExecuteAddCredential)))),
-- CommandMapping(
-- kGet,
-- "session/:sessionId/webauthn/authenticator/:authenticatorId/"
-- "credentials",
-- WrapToCommand("GetCredentials",
-- base::BindRepeating(
-- &ExecuteWebAuthnCommand,
-- base::BindRepeating(&ExecuteGetCredentials)))),
-
- //
- // Non-standard extension commands
-diff --git a/chrome/test/chromedriver/test/run_py_tests.py b/chrome/test/chromedriver/test/run_py_tests.py
-index 15e986899..d59650004 100755
---- a/chrome/test/chromedriver/test/run_py_tests.py
-+++ b/chrome/test/chromedriver/test/run_py_tests.py
-@@ -226,7 +226,6 @@ _ANDROID_NEGATIVE_FILTER['chrome'] = (
- 'ChromeDriverSecureContextTest.testAddVirtualAuthenticator',
- 'ChromeDriverSecureContextTest.testRemoveVirtualAuthenticator',
- 'ChromeDriverSecureContextTest.testAddCredential',
-- 'ChromeDriverSecureContextTest.testGetCredentials',
- ]
- )
- _ANDROID_NEGATIVE_FILTER['chrome_stable'] = (
-@@ -2018,11 +2017,6 @@ class ChromeDriverTest(ChromeDriverBaseTestWithWebServer):
-
- # Tests that require a secure context.
- class ChromeDriverSecureContextTest(ChromeDriverBaseTest):
-- # The example attestation private key from the U2F spec at
-- # https://fidoalliance.org/specs/fido-u2f-v1.2-ps-20170411/fido-u2f-raw-message-formats-v1.2-ps-20170411.html#registration-example
-- # PKCS.8 encoded without encryption, as a base64url string.
-- privateKey = "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg8_zMDQDYAxlU-Qhk1Dwkf0v18GZca1DMF3SaJ9HPdmShRANCAASNYX5lyVCOZLzFZzrIKmeZ2jwURmgsJYxGP__fWN_S-j5sN4tT15XEpN_7QZnt14YvI6uvAgO0uJEboFaZlOEB"
--
- @staticmethod
- def GlobalSetUp():
- cert_path = os.path.join(chrome_paths.GetTestData(),
-@@ -2039,21 +2033,6 @@ class ChromeDriverSecureContextTest(ChromeDriverBaseTest):
- return ChromeDriverSecureContextTest._https_server.GetUrl(
- host) + file_path
-
-- # Encodes a string in URL-safe base64 with no padding.
-- @staticmethod
-- def URLSafeBase64Encode(string):
-- encoded = base64.urlsafe_b64encode(string)
-- while encoded[-1] == "=":
-- encoded = encoded[0:-1]
-- return encoded
--
-- # Decodes a base64 string with no padding.
-- @staticmethod
-- def UrlSafeBase64Decode(string):
-- string = string.encode("utf-8")
-- string += "=" * (4 - len(string) % 4)
-- return base64.urlsafe_b64decode(string)
--
- def setUp(self):
- self._driver = self.CreateDriver(
- chrome_switches=['host-resolver-rules=MAP * 127.0.0.1'])
-@@ -2101,6 +2080,10 @@ class ChromeDriverSecureContextTest(ChromeDriverBaseTest):
- self._driver.RemoveVirtualAuthenticator, response['authenticatorId'])
-
- def testAddCredential(self):
-+ # The example attestation private key from the U2F spec at
-+ # https://fidoalliance.org/specs/fido-u2f-v1.2-ps-20170411/fido-u2f-raw-message-formats-v1.2-ps-20170411.html#registration-example
-+ # PKCS.8 encoded without encryption.
-+ privateKey = "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg8/zMDQDYAxlU+Qhk1Dwkf0v18GZca1DMF3SaJ9HPdmShRANCAASNYX5lyVCOZLzFZzrIKmeZ2jwURmgsJYxGP//fWN/S+j5sN4tT15XEpN/7QZnt14YvI6uvAgO0uJEboFaZlOEB"
-
- script = """
- let done = arguments[0];
-@@ -2123,78 +2106,16 @@ class ChromeDriverSecureContextTest(ChromeDriverBaseTest):
- # Register a credential and try authenticating with it.
- self._driver.AddCredential(
- authenticatorId = authenticatorId,
-- credentialId = self.URLSafeBase64Encode("cred-1"),
-+ credentialId = base64.b64encode("cred-1"),
- isResidentCredential=False,
- rpId="chromedriver.test",
-- privateKey=self.privateKey,
-+ privateKey=privateKey,
- signCount=1,
- )
-
- result = self._driver.ExecuteAsyncScript(script)
- self.assertEquals('OK', result['status'])
-
-- def testAddCredentialBase64Errors(self):
-- # Test that AddCredential checks UrlBase64 parameteres.
-- self._driver.Load(self.GetHttpsUrlForFile(
-- '/chromedriver/webauthn_test.html', 'chromedriver.test'))
--
-- authenticatorId = self._driver.AddVirtualAuthenticator(
-- protocol = 'ctap2',
-- transport = 'usb',
-- hasResidentKey = False,
-- hasUserVerification = False,
-- )['authenticatorId']
--
-- # Try adding a credentialId that is encoded in vanilla base64.
-- self.assertRaisesRegexp(
-- chromedriver.InvalidArgument,
-- 'credentialId must be a base64url encoded string',
-- self._driver.AddCredential, authenticatorId, '_0n+wWqg=',
-- False, "chromedriver.test", self.privateKey, None, 1,
-- )
--
-- # Try adding a credentialId that is not a string.
-- self.assertRaisesRegexp(
-- chromedriver.InvalidArgument,
-- 'credentialId must be a base64url encoded string',
-- self._driver.AddCredential, authenticatorId, 1,
-- False, "chromedriver.test", self.privateKey, None, 1,
-- )
--
-- def testGetCredentials(self):
-- script = """
-- let done = arguments[0];
-- registerCredential({
-- authenticatorSelection: {
-- requireResidentKey: true,
-- },
-- }).then(done);
-- """
-- self._driver.Load(self.GetHttpsUrlForFile(
-- '/chromedriver/webauthn_test.html', 'chromedriver.test'))
-- authenticatorId = self._driver.AddVirtualAuthenticator(
-- protocol = 'ctap2',
-- transport = 'usb',
-- hasResidentKey = True,
-- hasUserVerification = True,
-- )['authenticatorId']
--
-- # Register a credential via the webauthn API.
-- result = self._driver.ExecuteAsyncScript(script)
-- self.assertEquals('OK', result['status'])
-- credentialId = result['credential']['id']
--
-- # GetCredentials should return the credential that was just created.
-- credentials = self._driver.GetCredentials(authenticatorId)['credentials']
-- self.assertEquals(1, len(credentials))
-- self.assertEquals(credentialId, credentials[0]['credentialId'])
-- self.assertEquals(True, credentials[0]['isResidentCredential'])
-- self.assertEquals('chromedriver.test', credentials[0]['rpId'])
-- self.assertEquals(chr(1),
-- self.UrlSafeBase64Decode(credentials[0]['userHandle']))
-- self.assertEquals(1, credentials[0]['signCount'])
-- self.assertTrue(credentials[0]['privateKey'])
--
- # Tests in the following class are expected to be moved to ChromeDriverTest
- # class when we no longer support the legacy mode.
- class ChromeDriverW3cTest(ChromeDriverBaseTestWithWebServer):
-diff --git a/chrome/test/chromedriver/webauthn_commands.cc b/chrome/test/chromedriver/webauthn_commands.cc
-index b0d4d62bc..32c8a4a61 100644
---- a/chrome/test/chromedriver/webauthn_commands.cc
-+++ b/chrome/test/chromedriver/webauthn_commands.cc
-@@ -6,8 +6,6 @@
-
- #include <utility>
-
--#include "base/base64.h"
--#include "base/base64url.h"
- #include "base/callback.h"
- #include "base/containers/flat_map.h"
- #include "base/values.h"
-@@ -17,8 +15,6 @@
-
- namespace {
-
--static constexpr char kBase64UrlError[] = " must be a base64url encoded string";
--
- // Creates a base::DictionaryValue by cloning the parameters specified by
- // |mapping| from |params|.
- base::DictionaryValue MapParams(
-@@ -33,48 +29,6 @@ base::DictionaryValue MapParams(
- return options;
- }
-
--// Converts the string |keys| in |params| from base64url to base64. Returns a
--// status error if conversion of one of the keys failed.
--Status ConvertBase64UrlToBase64(base::Value* params,
-- const std::vector<const std::string> keys) {
-- for (const std::string key : keys) {
-- base::Value* maybe_value = params->FindKey(key);
-- if (!maybe_value)
-- continue;
--
-- if (!maybe_value->is_string())
-- return Status(kInvalidArgument, key + kBase64UrlError);
--
-- std::string& value = maybe_value->GetString();
-- std::string temp;
-- if (!Base64UrlDecode(value, base::Base64UrlDecodePolicy::IGNORE_PADDING,
-- &temp)) {
-- return Status(kInvalidArgument, key + kBase64UrlError);
-- }
--
-- base::Base64Encode(temp, &value);
-- }
--
-- return Status(kOk);
--}
--
--// Converts the string |keys| in |params| from base64 to base64url.
--void ConvertBase64ToBase64Url(base::Value* params,
-- const std::vector<const std::string> keys) {
-- for (const std::string key : keys) {
-- std::string* maybe_value = params->FindStringKey(key);
-- if (!maybe_value)
-- continue;
--
-- std::string temp;
-- bool result = base::Base64Decode(*maybe_value, &temp);
-- DCHECK(result);
--
-- base::Base64UrlEncode(temp, base::Base64UrlEncodePolicy::OMIT_PADDING,
-- maybe_value);
-- }
--}
--
- } // namespace
-
- Status ExecuteWebAuthnCommand(const WebAuthnCommand& command,
-@@ -125,40 +79,18 @@ Status ExecuteRemoveVirtualAuthenticator(WebView* web_view,
- Status ExecuteAddCredential(WebView* web_view,
- const base::Value& params,
- std::unique_ptr<base::Value>* value) {
-- base::DictionaryValue mapped_params = MapParams(
-- {
-- {"authenticatorId", "authenticatorId"},
-- {"credential.credentialId", "credentialId"},
-- {"credential.isResidentCredential", "isResidentCredential"},
-- {"credential.rpId", "rpId"},
-- {"credential.privateKey", "privateKey"},
-- {"credential.userHandle", "userHandle"},
-- {"credential.signCount", "signCount"},
-- },
-- params);
-- Status status =
-- ConvertBase64UrlToBase64(mapped_params.FindKey("credential"),
-- {"credentialId", "privateKey", "userHandle"});
-- if (status.IsError())
-- return status;
--
-- return web_view->SendCommandAndGetResult("WebAuthn.addCredential",
-- std::move(mapped_params), value);
--}
--
--Status ExecuteGetCredentials(WebView* web_view,
-- const base::Value& params,
-- std::unique_ptr<base::Value>* value) {
-- Status status = web_view->SendCommandAndGetResult(
-- "WebAuthn.getCredentials",
-- MapParams({{"authenticatorId", "authenticatorId"}}, params), value);
-- if (status.IsError())
-- return status;
--
-- for (base::Value& credential : (*value)->FindKey("credentials")->GetList()) {
-- ConvertBase64ToBase64Url(&credential,
-- {"credentialId", "privateKey", "userHandle"});
-- }
--
-- return status;
-+ return web_view->SendCommandAndGetResult(
-+ "WebAuthn.addCredential",
-+ MapParams(
-+ {
-+ {"authenticatorId", "authenticatorId"},
-+ {"credential.credentialId", "credentialId"},
-+ {"credential.isResidentCredential", "isResidentCredential"},
-+ {"credential.rpId", "rpId"},
-+ {"credential.privateKey", "privateKey"},
-+ {"credential.userHandle", "userHandle"},
-+ {"credential.signCount", "signCount"},
-+ },
-+ params),
-+ value);
- }
-diff --git a/chrome/test/chromedriver/webauthn_commands.h b/chrome/test/chromedriver/webauthn_commands.h
-index dcc278428..fd75ecfed 100644
---- a/chrome/test/chromedriver/webauthn_commands.h
-+++ b/chrome/test/chromedriver/webauthn_commands.h
-@@ -44,9 +44,4 @@ Status ExecuteAddCredential(WebView* web_view,
- const base::Value& params,
- std::unique_ptr<base::Value>* value);
-
--// Retrieve all the credentials stored in an authenticator.
--Status ExecuteGetCredentials(WebView* web_view,
-- const base::Value& params,
-- std::unique_ptr<base::Value>* value);
--
- #endif // CHROME_TEST_CHROMEDRIVER_WEBAUTHN_COMMANDS_H_
-diff --git a/device/fido/virtual_ctap2_device.cc b/device/fido/virtual_ctap2_device.cc
-index 672b61cb5..843bd0f4e 100644
---- a/device/fido/virtual_ctap2_device.cc
-+++ b/device/fido/virtual_ctap2_device.cc
-@@ -864,7 +864,6 @@ base::Optional<CtapDeviceResponseCode> VirtualCtap2Device::OnMakeCredential(
-
- registration.is_resident = true;
- registration.user = request.user;
-- registration.rp = request.rp;
- }
-
- if (request.cred_protect) {
diff --git a/www-client/chromium/files/chromium-serviceworker-83.patch b/www-client/chromium/files/chromium-serviceworker-83.patch
deleted file mode 100644
index a836e7f..0000000
--- a/www-client/chromium/files/chromium-serviceworker-83.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 0914a38252f205fc04fa50e858b24fa5f535ab11 Mon Sep 17 00:00:00 2001
-From: Hiroki Nakagawa <nhiroki@chromium.org>
-Date: Wed, 29 Apr 2020 11:46:54 +0900
-Subject: [PATCH] ServiceWorker: Avoid double destruction of ServiceWorkerObjectHost on connection error
-
-This CL avoids the case where ServiceWorkerObjectHost is destroyed twice
-on ServiceWorkerObjectHost::OnConnectionError() when Chromium is built
-with the GCC build toolchain.
-
-> How does the issue happen?
-
-ServiceWorkerObjectHost has a cyclic reference like this:
-
-ServiceWorkerObjectHost
- --([1] scoped_refptr)--> ServiceWorkerVersion
- --([2] std::unique_ptr)--> ServiceWorkerProviderHost
- --([3] std::unique_ptr)--> ServiceWorkerContainerHost
- --([4] std::unique_ptr)--> ServiceWorkerObjectHost
-
-Note that ServiceWorkerContainerHost manages ServiceWorkerObjectHost in
-map<int64_t version_id, std::unique_ptr<ServiceWorkerObjectHost>>.
-
-When ServiceWorkerObjectHost::OnConnectionError() is called, the
-function removes the reference [4] from the map, and destroys
-ServiceWorkerObjectHost. If the object host has the last reference [1]
-to ServiceWorkerVersion, the destruction also cuts off the references
-[2] and [3], and destroys ServiceWorkerProviderHost and
-ServiceWorkerContainerHost.
-
-This seems to work well on the Chromium's default toolchain, but not
-work on the GCC toolchain. According to the report, destruction of
-ServiceWorkerContainerHost happens while the map owned by the container
-host is erasing the ServiceWorkerObjectHost, and this results in crash
-due to double destruction of the object host.
-
-I don't know the reason why this happens only on the GCC toolchain, but
-I suspect the order of object destruction on std::map::erase() could be
-different depending on the toolchains.
-
-> How does this CL fix this?
-
-The ideal fix is to redesign the ownership model of
-ServiceWorkerVersion, but it's not feasible in the short term.
-
-Instead, this CL avoids destruction of ServiceWorkerObjectHost on
-std::map::erase(). The new code takes the ownership of the object host
-from the map first, and then erases the entry from the map. This
-separates timings to erase the map entry and to destroy the object host,
-so the crash should no longer happen.
-
-Bug: 1056598
-Change-Id: Id30654cb575bc557c42044d6f0c6f1f9bfaed613
----
-
-diff --git a/content/browser/service_worker/service_worker_container_host.cc b/content/browser/service_worker/service_worker_container_host.cc
-index c631bcd..ff917f8 100644
---- a/content/browser/service_worker/service_worker_container_host.cc
-+++ b/content/browser/service_worker/service_worker_container_host.cc
-@@ -717,6 +717,16 @@
- int64_t version_id) {
- DCHECK_CURRENTLY_ON(ServiceWorkerContext::GetCoreThreadId());
- DCHECK(base::Contains(service_worker_object_hosts_, version_id));
-+
-+ // ServiceWorkerObjectHost to be deleted may have the last reference to
-+ // ServiceWorkerVersion that indirectly owns this ServiceWorkerContainerHost.
-+ // If we erase the object host directly from the map, |this| could be deleted
-+ // during the map operation and may crash. To avoid the case, we take the
-+ // ownership of the object host from the map first, and then erase the entry
-+ // from the map. See https://crbug.com/1056598 for details.
-+ std::unique_ptr<ServiceWorkerObjectHost> to_be_deleted =
-+ std::move(service_worker_object_hosts_[version_id]);
-+ DCHECK(to_be_deleted);
- service_worker_object_hosts_.erase(version_id);
- }
-
-diff --git a/content/browser/service_worker/service_worker_object_host_unittest.cc b/content/browser/service_worker/service_worker_object_host_unittest.cc
-index 238cb8b..f60c7a2 100644
---- a/content/browser/service_worker/service_worker_object_host_unittest.cc
-+++ b/content/browser/service_worker/service_worker_object_host_unittest.cc
-@@ -200,6 +200,19 @@
- return registration_info;
- }
-
-+ void CallOnConnectionError(ServiceWorkerContainerHost* container_host,
-+ int64_t version_id) {
-+ // ServiceWorkerObjectHost has the last reference to the version.
-+ ServiceWorkerObjectHost* object_host =
-+ GetServiceWorkerObjectHost(container_host, version_id);
-+ EXPECT_TRUE(object_host->version_->HasOneRef());
-+
-+ // Make sure that OnConnectionError induces destruction of the version and
-+ // the object host.
-+ object_host->receivers_.Clear();
-+ object_host->OnConnectionError();
-+ }
-+
- BrowserTaskEnvironment task_environment_;
- std::unique_ptr<EmbeddedWorkerTestHelper> helper_;
- scoped_refptr<ServiceWorkerRegistration> registration_;
-@@ -409,5 +422,30 @@
- events[0]->source_info_for_client->client_type);
- }
-
-+// This is a regression test for https://crbug.com/1056598.
-+TEST_F(ServiceWorkerObjectHostTest, OnConnectionError) {
-+ const GURL scope("https://www.example.com/");
-+ const GURL script_url("https://www.example.com/service_worker.js");
-+ Initialize(std::make_unique<EmbeddedWorkerTestHelper>(base::FilePath()));
-+ SetUpRegistration(scope, script_url);
-+
-+ // Create the provider host.
-+ ASSERT_EQ(blink::ServiceWorkerStatusCode::kOk,
-+ StartServiceWorker(version_.get()));
-+
-+ // Set up the case where the last reference to the version is owned by the
-+ // service worker object host.
-+ ServiceWorkerContainerHost* container_host =
-+ version_->provider_host()->container_host();
-+ ServiceWorkerVersion* version_rawptr = version_.get();
-+ version_ = nullptr;
-+ ASSERT_TRUE(version_rawptr->HasOneRef());
-+
-+ // Simulate the connection error that induces the object host destruction.
-+ // This shouldn't crash.
-+ CallOnConnectionError(container_host, version_rawptr->version_id());
-+ base::RunLoop().RunUntilIdle();
-+}
-+
- } // namespace service_worker_object_host_unittest
- } // namespace content
diff --git a/www-client/chromium/files/chromium-simhash-include-84.patch b/www-client/chromium/files/chromium-simhash-include-84.patch
deleted file mode 100644
index eb77921..0000000
--- a/www-client/chromium/files/chromium-simhash-include-84.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/components/federated_learning/sim_hash.cc b/components/federated_learning/sim_hash.cc
-index 3624459f3..9287dbe72 100644
---- a/components/federated_learning/sim_hash.cc
-+++ b/components/federated_learning/sim_hash.cc
-@@ -6,6 +6,7 @@
-
- #include "base/hash/legacy_hash.h"
-
-+#include <cmath>
- #include <algorithm>
-
- namespace federated_learning {
-diff --git a/components/federated_learning/sim_hash.h b/components/federated_learning/sim_hash.h
-index 55030d9d2..26087e74e 100644
---- a/components/federated_learning/sim_hash.h
-+++ b/components/federated_learning/sim_hash.h
-@@ -5,7 +5,9 @@
- #ifndef COMPONENTS_FEDERATED_LEARNING_SIM_HASH_H_
- #define COMPONENTS_FEDERATED_LEARNING_SIM_HASH_H_
-
-+#include <stdint.h>
- #include <set>
-+#include <string>
- #include <unordered_set>
-
- namespace federated_learning {
diff --git a/www-client/chromium/files/chromium-simhash-include-85.patch b/www-client/chromium/files/chromium-simhash-include-85.patch
deleted file mode 100644
index 4075548..0000000
--- a/www-client/chromium/files/chromium-simhash-include-85.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff --git a/components/federated_learning/sim_hash.h b/components/federated_learning/sim_hash.h
-index 55030d9d2..ab7e57132 100644
---- a/components/federated_learning/sim_hash.h
-+++ b/components/federated_learning/sim_hash.h
-@@ -5,7 +5,10 @@
- #ifndef COMPONENTS_FEDERATED_LEARNING_SIM_HASH_H_
- #define COMPONENTS_FEDERATED_LEARNING_SIM_HASH_H_
-
-+#include <stdint.h>
-+
- #include <set>
-+#include <string>
- #include <unordered_set>
-
- namespace federated_learning {
diff --git a/www-client/chromium/files/chromium-sqrt.patch b/www-client/chromium/files/chromium-sqrt.patch
deleted file mode 100644
index 4e391fd..0000000
--- a/www-client/chromium/files/chromium-sqrt.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/ui/gfx/color_utils.cc b/ui/gfx/color_utils.cc
-index c868cd54b..ed33c5c18 100644
---- a/ui/gfx/color_utils.cc
-+++ b/ui/gfx/color_utils.cc
-@@ -431,7 +431,7 @@ SkColor SetDarkestColorForTesting(SkColor color) {
- // GetContrastRatio(kWhiteLuminance, g_luminance_midpoint). The formula below
- // can be verified by plugging it into how GetContrastRatio() operates.
- g_luminance_midpoint =
-- std::sqrtf((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f;
-+ (float)std::sqrt((dark_luminance + 0.05f) * (kWhiteLuminance + 0.05f)) - 0.05f;
-
- return previous_darkest_color;
- }
diff --git a/www-client/chromium/files/chromium-std-nullptr-83.patch b/www-client/chromium/files/chromium-std-nullptr-83.patch
deleted file mode 100644
index a2efc76..0000000
--- a/www-client/chromium/files/chromium-std-nullptr-83.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/third_party/blink/renderer/core/typed_arrays/array_buffer_view_helpers.h b/third_party/blink/renderer/core/typed_arrays/array_buffer_view_helpers.h
-index a6b8547f5..5fa03cb35 100644
---- a/third_party/blink/renderer/core/typed_arrays/array_buffer_view_helpers.h
-+++ b/third_party/blink/renderer/core/typed_arrays/array_buffer_view_helpers.h
-@@ -36,7 +36,7 @@ class NotShared {
- template <typename U, std::enable_if_t<std::is_base_of<T, U>::value, int> = 0>
- NotShared(const NotShared<U>& other) : typed_array_(other.Get()) {}
-
-- explicit NotShared(nullptr_t) {}
-+ explicit NotShared(std::nullptr_t) {}
- explicit NotShared(T* typed_array) : typed_array_(typed_array) {
- DCHECK(!typed_array || !typed_array->IsShared());
- }
-@@ -95,7 +95,7 @@ class MaybeShared {
- template <typename U, std::enable_if_t<std::is_base_of<T, U>::value, int> = 0>
- MaybeShared(const MaybeShared<U>& other) : typed_array_(other.Get()) {}
-
-- explicit MaybeShared(nullptr_t) {}
-+ explicit MaybeShared(std::nullptr_t) {}
- // [AllowShared] array buffer view may be a view of non-shared array buffer,
- // so we don't check if the buffer is SharedArrayBuffer or not.
- // https://heycam.github.io/webidl/#AllowShared
diff --git a/www-client/chromium/files/chromium-stdint.patch b/www-client/chromium/files/chromium-stdint.patch
deleted file mode 100644
index 8774439..0000000
--- a/www-client/chromium/files/chromium-stdint.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-From 0235c2b657d936f3cdb09053776e5929fc84704b Mon Sep 17 00:00:00 2001
-From: Tomas Popela <tomas.popela@gmail.com>
-Date: Wed, 31 Jan 2018 18:57:07 +0000
-Subject: [PATCH] Add missing stdint include
-
-diff --git a/chrome/browser/vr/sample_queue.cc b/chrome/browser/vr/sample_queue.cc
-index c2ca777ce90c..53cb3aab1576 100644
---- a/chrome/browser/vr/sample_queue.cc
-+++ b/chrome/browser/vr/sample_queue.cc
-@@ -2,6 +2,8 @@
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
-
-+#include <stdint.h>
-+
- #include "chrome/browser/vr/sample_queue.h"
-
- namespace vr {
---
-2.16.2
-
diff --git a/www-client/chromium/files/chromium-stdset.patch b/www-client/chromium/files/chromium-stdset.patch
deleted file mode 100644
index 6ac0346..0000000
--- a/www-client/chromium/files/chromium-stdset.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/components/language/core/browser/language_prefs.cc b/components/language/core/browser/language_prefs.cc
-index 317aa1d82..df258ca62 100644
---- a/components/language/core/browser/language_prefs.cc
-+++ b/components/language/core/browser/language_prefs.cc
-@@ -85,7 +85,7 @@ void LanguagePrefs::ResetEmptyFluentLanguagesToDefault() {
- }
-
- base::Value LanguagePrefs::GetDefaultFluentLanguages() {
-- std::set<const std::string> languages;
-+ std::set<std::string> languages;
- #if defined(OS_CHROMEOS)
- // Preferred languages.
- std::string language = language::kFallbackInputMethodLocale;
diff --git a/www-client/chromium/files/chromium-string_view-79.patch b/www-client/chromium/files/chromium-string_view-79.patch
deleted file mode 100644
index 11ad56d..0000000
--- a/www-client/chromium/files/chromium-string_view-79.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-diff --git a/components/safe_browsing/browser/threat_details.cc b/components/safe_browsing/browser/threat_details.cc
-index 05bcd3ff3..5149e911d 100644
---- a/components/safe_browsing/browser/threat_details.cc
-+++ b/components/safe_browsing/browser/threat_details.cc
-@@ -8,7 +8,6 @@
-
- #include <stddef.h>
- #include <stdint.h>
--#include <string_view>
- #include <unordered_set>
- #include <utility>
- #include <vector>
-@@ -18,6 +17,7 @@
- #include "base/lazy_instance.h"
- #include "base/metrics/histogram_macros.h"
- #include "base/stl_util.h"
-+#include "base/strings/string_piece.h"
- #include "base/strings/string_util.h"
- #include "base/task/post_task.h"
- #include "components/history/core/browser/history_service.h"
-@@ -312,7 +312,7 @@ void TrimElements(const std::set<int> target_ids,
- }
-
- void DisableBackForwardCache(content::RenderFrameHost* rfh,
-- std::string_view reason) {
-+ base::StringPiece reason) {
- content::WebContents::FromRenderFrameHost(rfh)
- ->GetController()
- .GetBackForwardCache()
-diff --git a/content/browser/frame_host/back_forward_cache_impl.cc b/content/browser/frame_host/back_forward_cache_impl.cc
-index a7c06949b..3c72b7e9e 100644
---- a/content/browser/frame_host/back_forward_cache_impl.cc
-+++ b/content/browser/frame_host/back_forward_cache_impl.cc
-@@ -360,7 +360,7 @@ void BackForwardCacheImpl::PostTaskToDestroyEvictedFrames() {
- }
-
- void BackForwardCacheImpl::DisableForRenderFrameHost(GlobalFrameRoutingId id,
-- std::string_view reason) {
-+ base::StringPiece reason) {
- DCHECK_CURRENTLY_ON(BrowserThread::UI);
- auto* rfh = RenderFrameHostImpl::FromID(id);
- if (rfh)
-diff --git a/content/browser/frame_host/back_forward_cache_impl.h b/content/browser/frame_host/back_forward_cache_impl.h
-index 712594a3d..6ed6931a3 100644
---- a/content/browser/frame_host/back_forward_cache_impl.h
-+++ b/content/browser/frame_host/back_forward_cache_impl.h
-@@ -175,7 +175,7 @@ class CONTENT_EXPORT BackForwardCacheImpl : public BackForwardCache {
-
- // BackForwardCache:
- void DisableForRenderFrameHost(GlobalFrameRoutingId id,
-- std::string_view reason) override;
-+ base::StringPiece reason) override;
-
- private:
- // Destroys all evicted frames in the BackForwardCache.
-diff --git a/content/public/browser/back_forward_cache.h b/content/public/browser/back_forward_cache.h
-index f7abe8bec..bb7298651 100644
---- a/content/public/browser/back_forward_cache.h
-+++ b/content/public/browser/back_forward_cache.h
-@@ -5,8 +5,7 @@
- #ifndef CONTENT_PUBLIC_BROWSER_BACK_FORWARD_CACHE_H_
- #define CONTENT_PUBLIC_BROWSER_BACK_FORWARD_CACHE_H_
-
--#include <string_view>
--
-+#include "base/strings/string_piece.h"
- #include "content/common/content_export.h"
- #include "content/public/browser/global_routing_id.h"
-
-@@ -43,7 +42,7 @@ class CONTENT_EXPORT BackForwardCache {
- // |id|: If no RenderFrameHost can be found for the given id nothing happens.
- // |reason|: Free form string to be used in logging and metrics.
- virtual void DisableForRenderFrameHost(GlobalFrameRoutingId id,
-- std::string_view reason) = 0;
-+ base::StringPiece reason) = 0;
-
- protected:
- BackForwardCache() = default;
diff --git a/www-client/chromium/files/chromium-swiftshader-77.patch b/www-client/chromium/files/chromium-swiftshader-77.patch
deleted file mode 100644
index 34d5032..0000000
--- a/www-client/chromium/files/chromium-swiftshader-77.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff --git a/third_party/swiftshader/src/OpenGL/libEGL/BUILD.gn b/third_party/swiftshader/src/OpenGL/libEGL/BUILD.gn
-index f4c826d..993ca6a 100644
---- a/third_party/swiftshader/src/OpenGL/libEGL/BUILD.gn
-+++ b/third_party/swiftshader/src/OpenGL/libEGL/BUILD.gn
-@@ -78,6 +78,9 @@
- if (use_x11) {
- sources += [ "../../Main/libX11.cpp" ]
- }
-+ inputs = [
-+ "libEGL.lds",
-+ ]
- ldflags =
- [ "-Wl,--version-script=" + rebase_path("libEGL.lds", root_build_dir) ]
- }
-diff --git a/third_party/swiftshader/src/OpenGL/libGLESv2/BUILD.gn b/third_party/swiftshader/src/OpenGL/libGLESv2/BUILD.gn
-index 571b08a..d7037ca 100644
---- a/third_party/swiftshader/src/OpenGL/libGLESv2/BUILD.gn
-+++ b/third_party/swiftshader/src/OpenGL/libGLESv2/BUILD.gn
-@@ -127,6 +127,9 @@
- if (is_mac) {
- ldflags = [ "-Wl,-install_name,@rpath/libswiftshader_libGLESv2.dylib" ]
- } else if (is_linux) {
-+ inputs = [
-+ "libGLESv2.lds",
-+ ]
- ldflags = [ "-Wl,--version-script=" +
- rebase_path("libGLESv2.lds", root_build_dir) ]
- }
-diff --git a/third_party/swiftshader/src/Vulkan/BUILD.gn b/third_party/swiftshader/src/Vulkan/BUILD.gn
-index 2627f03..6aeaec8 100644
---- a/third_party/swiftshader/src/Vulkan/BUILD.gn
-+++ b/third_party/swiftshader/src/Vulkan/BUILD.gn
-@@ -99,7 +99,6 @@
- "VulkanPlatform.h",
- "libVulkan.cpp",
- "libvk_swiftshader.def",
-- "libvk_swiftshader.lds",
- "main.cpp",
- "resource.h",
- ]
-@@ -109,8 +108,10 @@
- output_name = "libvulkan"
- output_dir = "$root_out_dir/swiftshader"
-
-- if (is_linux)
-- {
-+ if (is_linux) {
-+ inputs = [
-+ "libvk_swiftshader.lds",
-+ ]
- ldflags = [ "-Wl,--version-script=" +
- rebase_path("libvk_swiftshader.lds", root_build_dir) ]
- }
diff --git a/www-client/chromium/files/chromium-unbundle-zlib.patch b/www-client/chromium/files/chromium-unbundle-zlib.patch
deleted file mode 100644
index d6c45ad..0000000
--- a/www-client/chromium/files/chromium-unbundle-zlib.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From e1bbdec720a333937bd1b990ae0f7ee97db0d3b0 Mon Sep 17 00:00:00 2001
-From: Your Name <you@example.com>
-Date: Fri, 28 Jun 2019 15:56:23 +0000
-Subject: [PATCH] update zlib
-
----
- third_party/perfetto/gn/BUILD.gn | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/third_party/perfetto/gn/BUILD.gn b/third_party/perfetto/gn/BUILD.gn
-index c951f5f..297eee3 100644
---- a/third_party/perfetto/gn/BUILD.gn
-+++ b/third_party/perfetto/gn/BUILD.gn
-@@ -200,7 +200,7 @@ group("zlib") {
- "//buildtools:zlib",
- ]
- } else if (build_with_chromium) {
-- public_configs = [ "//third_party/zlib:zlib_config" ]
-+ public_configs = [ "//third_party/zlib:system_zlib" ]
- public_deps = [
- "//third_party/zlib",
- ]
---
-2.21.0
-
diff --git a/www-client/chromium/files/chromium-union.patch b/www-client/chromium/files/chromium-union.patch
deleted file mode 100644
index be41f6d..0000000
--- a/www-client/chromium/files/chromium-union.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-diff --git a/base/values.h b/base/values.h
-index 6f2cd3cc3..7f148d259 100644
---- a/base/values.h
-+++ b/base/values.h
-@@ -415,42 +415,13 @@ class BASE_EXPORT Value {
- // of 24, without losing any information. Results are unchanged for x86,
- // x86_64 and arm64 (16, 32 and 32 bytes respectively).
- union {
-- struct {
-- // TODO(crbug.com/646113): Make these private once DictionaryValue and
-- // ListValue are properly inlined.
-- Type type_ : 8;
-- };
-- struct {
-- Type bool_type_ : 8;
-- bool bool_value_;
-- };
-- struct {
-- Type int_type_ : 8;
-- int int_value_;
-- };
-- struct {
-- Type double_type_ : 8;
-- // Subtle: On architectures that require it, the compiler will ensure
-- // that |double_value_|'s offset is a multiple of 8 (e.g. 32-bit ARM).
-- // See technical note above to understand why it is important.
-- double double_value_;
-- };
-- struct {
-- Type string_type_ : 8;
-- std::string string_value_;
-- };
-- struct {
-- Type binary_type_ : 8;
-- BlobStorage binary_value_;
-- };
-- struct {
-- Type dict_type_ : 8;
-- DictStorage dict_;
-- };
-- struct {
-- Type list_type_ : 8;
-- ListStorage list_;
-- };
-+ bool bool_value_;
-+ int int_value_;
-+ double double_value_;
-+ std::string string_value_;
-+ BlobStorage binary_value_;
-+ DictStorage dict_;
-+ ListStorage list_;
- };
-
- private:
diff --git a/www-client/chromium/files/chromium-unique_ptr-80-r1.patch b/www-client/chromium/files/chromium-unique_ptr-80-r1.patch
deleted file mode 100644
index fb377db..0000000
--- a/www-client/chromium/files/chromium-unique_ptr-80-r1.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/renderer/core/core_initializer.h b/third_party/blink/renderer/core/core_initializer.h
-index 5e67f468f..3f6d8de03 100644
---- a/third_party/blink/renderer/core/core_initializer.h
-+++ b/third_party/blink/renderer/core/core_initializer.h
-@@ -31,6 +31,8 @@
- #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_CORE_INITIALIZER_H_
- #define THIRD_PARTY_BLINK_RENDERER_CORE_CORE_INITIALIZER_H_
-
-+#include <memory>
-+
- #include "base/macros.h"
- #include "third_party/blink/public/common/dom_storage/session_storage_namespace_id.h"
- #include "third_party/blink/renderer/core/core_export.h"
diff --git a/www-client/chromium/files/chromium-unique_ptr-80.patch b/www-client/chromium/files/chromium-unique_ptr-80.patch
deleted file mode 100644
index 4da5f0b..0000000
--- a/www-client/chromium/files/chromium-unique_ptr-80.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/net/dns/address_info.h b/net/dns/address_info.h
-index 782898535..95bc277c3 100644
---- a/net/dns/address_info.h
-+++ b/net/dns/address_info.h
-@@ -5,6 +5,7 @@
- #ifndef NET_DNS_ADDRESS_INFO_H_
- #define NET_DNS_ADDRESS_INFO_H_
-
-+#include <memory>
- #include <string>
- #include <tuple>
-
diff --git a/www-client/chromium/files/chromium-vaapi-76-r1.patch b/www-client/chromium/files/chromium-vaapi-76-r1.patch
deleted file mode 100644
index 6080901..0000000
--- a/www-client/chromium/files/chromium-vaapi-76-r1.patch
+++ /dev/null
@@ -1,213 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index f3759b099..11c0982ab 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1314,7 +1314,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- #if defined(OS_CHROMEOS)
-@@ -1768,12 +1768,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
- flag_descriptions::kV8CacheOptionsDescription, kOsAll,
- MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index d05bc47f4..5d5c77b5e 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2760,13 +2760,22 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+#endif // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID)
-+
-+#if defined(OS_CHROMEOS)
-
- const char kAppServiceAshName[] = "App Service Ash";
- const char kAppServiceAshDescription[] =
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index aef7105e3..149c5c034 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1650,11 +1650,17 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
-
-diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc
-index 53292ae76..d5007860c 100644
---- a/components/viz/service/main/viz_main_impl.cc
-+++ b/components/viz/service/main/viz_main_impl.cc
-@@ -36,7 +36,7 @@ std::unique_ptr<base::Thread> CreateAndStartIOThread() {
- // It should be possible to use |main_task_runner_| for doing IO tasks.
- base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0);
- thread_options.priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // TODO(reveman): Remove this in favor of setting it explicitly for each
- // type of process.
- thread_options.priority = base::ThreadPriority::DISPLAY;
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 2b1165264..fec963bd9 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -127,4 +128,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
-index a838f0ccf..4c891fb92 100644
---- a/content/gpu/gpu_main.cc
-+++ b/content/gpu/gpu_main.cc
-@@ -288,7 +288,7 @@ int GpuMain(const MainFunctionParams& parameters) {
-
- base::PlatformThread::SetName("CrGpuMain");
-
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // Set thread priority before sandbox initialization.
- base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
- #endif
-@@ -321,7 +321,7 @@ int GpuMain(const MainFunctionParams& parameters) {
- GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
-
- base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- io_thread_priority = base::ThreadPriority::DISPLAY;
- #endif
-
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 0042a3457..efe1b3f4d 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -369,17 +369,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 2e364d0cf..728cab164 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -520,7 +520,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index 1324da986..b4d235f50 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -207,7 +208,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 2020a4c23..af61e3e75 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -499,9 +499,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media:test_support" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-76.patch b/www-client/chromium/files/chromium-vaapi-76.patch
deleted file mode 100644
index 6b9c372..0000000
--- a/www-client/chromium/files/chromium-vaapi-76.patch
+++ /dev/null
@@ -1,218 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index e727a7633..321ec6374 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1344,7 +1344,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- #if defined(OS_WIN)
-@@ -1840,12 +1840,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"v8-cache-options", flag_descriptions::kV8CacheOptionsName,
- flag_descriptions::kV8CacheOptionsDescription, kOsAll,
- MULTI_VALUE_TYPE(kV8CacheOptionsChoices)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index e935e0fd6..3225adb3b 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2873,13 +2873,22 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+#endif // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID)
-+
-+#if defined(OS_CHROMEOS)
-
- const char kAppServiceAshName[] = "App Service Ash";
- const char kAppServiceAshDescription[] =
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index 8450a5b76..80b68b724 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1723,11 +1723,17 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
-
-diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc
-index a5a38f8ec..7a110c4f9 100644
---- a/components/viz/service/main/viz_main_impl.cc
-+++ b/components/viz/service/main/viz_main_impl.cc
-@@ -36,7 +36,7 @@ std::unique_ptr<base::Thread> CreateAndStartIOThread() {
- // It should be possible to use |main_task_runner_| for doing IO tasks.
- base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0);
- thread_options.priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // TODO(reveman): Remove this in favor of setting it explicitly for each
- // type of process.
- thread_options.priority = base::ThreadPriority::DISPLAY;
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 2b1165264..fec963bd9 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -127,4 +128,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
-index a838f0ccf..4c891fb92 100644
---- a/content/gpu/gpu_main.cc
-+++ b/content/gpu/gpu_main.cc
-@@ -288,7 +288,7 @@ int GpuMain(const MainFunctionParams& parameters) {
-
- base::PlatformThread::SetName("CrGpuMain");
-
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // Set thread priority before sandbox initialization.
- base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
- #endif
-@@ -321,7 +321,7 @@ int GpuMain(const MainFunctionParams& parameters) {
- GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
-
- base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- io_thread_priority = base::ThreadPriority::DISPLAY;
- #endif
-
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index d4c3b4364..935fdeb86 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -369,17 +369,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index a8b11a3b9..a6ac202f9 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -509,7 +509,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index 4fac91144..7086ada95 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -211,7 +212,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 6eed6db69..ffd81b968 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -510,6 +510,13 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
-+
- if (use_v4l2_codec || use_vaapi) {
- test("jpeg_encode_accelerator_unittest") {
- deps = [
-@@ -580,6 +587,7 @@ if (is_chromeos || is_linux) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
diff --git a/www-client/chromium/files/chromium-vaapi-77.patch b/www-client/chromium/files/chromium-vaapi-77.patch
deleted file mode 100644
index 01ad8c5..0000000
--- a/www-client/chromium/files/chromium-vaapi-77.patch
+++ /dev/null
@@ -1,213 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index b6747f0d7..5c8a4d3e1 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1420,7 +1420,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -1867,12 +1867,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // ENABLE_ISOLATED_XR_SERVICE
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 8573fb58f..ece9a30ea 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2791,13 +2791,22 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+#endif // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID)
-+
-+#if defined(OS_CHROMEOS)
-
- const char kAppServiceAshName[] = "App Service Ash";
- const char kAppServiceAshDescription[] =
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index f21e223fc..f9527ea64 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1661,11 +1661,17 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
-
-diff --git a/components/viz/service/main/viz_main_impl.cc b/components/viz/service/main/viz_main_impl.cc
-index 53292ae76..d5007860c 100644
---- a/components/viz/service/main/viz_main_impl.cc
-+++ b/components/viz/service/main/viz_main_impl.cc
-@@ -36,7 +36,7 @@ std::unique_ptr<base::Thread> CreateAndStartIOThread() {
- // It should be possible to use |main_task_runner_| for doing IO tasks.
- base::Thread::Options thread_options(base::MessageLoop::TYPE_IO, 0);
- thread_options.priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // TODO(reveman): Remove this in favor of setting it explicitly for each
- // type of process.
- thread_options.priority = base::ThreadPriority::DISPLAY;
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 29e78fec4..0ab429013 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -128,4 +129,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
-index bf47f4738..73a8b2daa 100644
---- a/content/gpu/gpu_main.cc
-+++ b/content/gpu/gpu_main.cc
-@@ -294,7 +294,7 @@ int GpuMain(const MainFunctionParams& parameters) {
-
- base::PlatformThread::SetName("CrGpuMain");
-
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- // Set thread priority before sandbox initialization.
- base::PlatformThread::SetCurrentThreadPriority(base::ThreadPriority::DISPLAY);
- #endif
-@@ -327,7 +327,7 @@ int GpuMain(const MainFunctionParams& parameters) {
- GetContentClient()->SetGpuInfo(gpu_init->gpu_info());
-
- base::ThreadPriority io_thread_priority = base::ThreadPriority::NORMAL;
--#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE)
-+#if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(USE_OZONE) || defined(OS_LINUX)
- io_thread_priority = base::ThreadPriority::DISPLAY;
- #endif
-
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 03e251547..9eb0f1148 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -368,17 +368,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 4652a24f4..4e5259a9e 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -528,7 +528,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index 13d433354..8d89253fb 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -196,7 +197,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index b3f43cd64..1d4a432fd 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -521,9 +521,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media:test_support" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-78-r1.patch b/www-client/chromium/files/chromium-vaapi-78-r1.patch
deleted file mode 100644
index 8e9aeb4..0000000
--- a/www-client/chromium/files/chromium-vaapi-78-r1.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index ce15485ef..097b757dd 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1704,7 +1704,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2184,12 +2184,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // !defined(OS_ANDROID)
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 87d4934a5..2f4842e2e 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -3049,7 +3049,7 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3057,6 +3057,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-@@ -3577,17 +3592,6 @@ const char kUsbguardDescription[] =
- " until Chrome OS is unlocked to protect against malicious USB devices."
- " Already connected USB devices will continue to function.";
-
--const char kVaapiJpegImageDecodeAccelerationName[] =
-- "VA-API JPEG decode acceleration for images";
--const char kVaapiJpegImageDecodeAccelerationDescription[] =
-- "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-- " captures) using the VA-API.";
--
--const char kVaapiWebPImageDecodeAccelerationName[] =
-- "VA-API WebP decode acceleration for images";
--const char kVaapiWebPImageDecodeAccelerationDescription[] =
-- "Enable or disable decode acceleration of WebP images using the VA-API.";
--
- const char kVirtualKeyboardName[] = "Virtual Keyboard";
- const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
-
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index 1b73f5985..61d965e7d 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1812,11 +1812,21 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-@@ -2144,12 +2154,6 @@ extern const char kUsbguardDescription[];
- extern const char kUseMonitorColorSpaceName[];
- extern const char kUseMonitorColorSpaceDescription[];
-
--extern const char kVaapiJpegImageDecodeAccelerationName[];
--extern const char kVaapiJpegImageDecodeAccelerationDescription[];
--
--extern const char kVaapiWebPImageDecodeAccelerationName[];
--extern const char kVaapiWebPImageDecodeAccelerationDescription[];
--
- extern const char kVirtualKeyboardName[];
- extern const char kVirtualKeyboardDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 0939d25cc..69f31c724 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -128,4 +129,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index ea1294e4c..5ba052ec6 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -332,17 +332,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 08c606b39..0ac5dce80 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -582,7 +582,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index ac554920d..e10321d88 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -196,7 +197,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 85cb6c363..95ae2bb1e 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -525,9 +525,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media:test_support" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-78.patch b/www-client/chromium/files/chromium-vaapi-78.patch
deleted file mode 100644
index 8525792..0000000
--- a/www-client/chromium/files/chromium-vaapi-78.patch
+++ /dev/null
@@ -1,178 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 1f68539de..e739ed7e0 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1605,7 +1605,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2075,12 +2075,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // !defined(OS_ANDROID)
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 81b32eb3e..0b3396198 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2919,13 +2919,22 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
- const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+#endif // defined(OS_CHROMEOS) defined(OS_LINUX) and !defined(OS_ANDROID)
-+
-+#if defined(OS_CHROMEOS)
-
- const char kAppServiceAshName[] = "App Service Ash";
- const char kAppServiceAshDescription[] =
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index e079d7aa2..761d28974 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1733,11 +1733,17 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
- extern const char kAppServiceAshName[];
- extern const char kAppServiceAshDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 0939d25cc..69f31c724 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -128,4 +129,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 9def82b55..1f5a03ea0 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -368,17 +368,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 37f1a2380..d21c59439 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -550,7 +550,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index f33ca5866..70736d7fc 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -196,7 +197,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index eec3b7fc7..aa27959b1 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -533,9 +533,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media:test_support" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-79.patch b/www-client/chromium/files/chromium-vaapi-79.patch
deleted file mode 100644
index dc2c1ee..0000000
--- a/www-client/chromium/files/chromium-vaapi-79.patch
+++ /dev/null
@@ -1,220 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 2a4ca2365..a657df74d 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1747,7 +1747,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2219,12 +2219,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // !defined(OS_ANDROID)
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 929544e4f..be0884a73 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -3080,7 +3080,7 @@ const char kMacSystemMediaPermissionsInfoUiDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3088,6 +3088,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-@@ -3618,17 +3633,6 @@ const char kUsbguardDescription[] =
- " until Chrome OS is unlocked to protect against malicious USB devices."
- " Already connected USB devices will continue to function.";
-
--const char kVaapiJpegImageDecodeAccelerationName[] =
-- "VA-API JPEG decode acceleration for images";
--const char kVaapiJpegImageDecodeAccelerationDescription[] =
-- "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-- " captures) using the VA-API.";
--
--const char kVaapiWebPImageDecodeAccelerationName[] =
-- "VA-API WebP decode acceleration for images";
--const char kVaapiWebPImageDecodeAccelerationDescription[] =
-- "Enable or disable decode acceleration of WebP images using the VA-API.";
--
- const char kVirtualKeyboardName[] = "Virtual Keyboard";
- const char kVirtualKeyboardDescription[] = "Enable virtual keyboard support.";
-
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index dc9450374..93fc6f14f 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1822,11 +1822,21 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-@@ -2160,12 +2170,6 @@ extern const char kUseFakeDeviceForMediaStreamDescription[];
- extern const char kUseMonitorColorSpaceName[];
- extern const char kUseMonitorColorSpaceDescription[];
-
--extern const char kVaapiJpegImageDecodeAccelerationName[];
--extern const char kVaapiJpegImageDecodeAccelerationDescription[];
--
--extern const char kVaapiWebPImageDecodeAccelerationName[];
--extern const char kVaapiWebPImageDecodeAccelerationDescription[];
--
- extern const char kVirtualKeyboardName[];
- extern const char kVirtualKeyboardDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 0939d25cc..69f31c724 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -128,4 +129,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index ea1294e4c..5ba052ec6 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -332,17 +332,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index e7b6efa18..2a3ad90ae 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -612,7 +612,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/filters/BUILD.gn b/media/filters/BUILD.gn
-index 481216a18..bde7319e6 100644
---- a/media/filters/BUILD.gn
-+++ b/media/filters/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/jumbo.gni")
- import("//media/media_options.gni")
- import("//third_party/libaom/options.gni")
-+import("//media/gpu/args.gni")
-
- jumbo_source_set("filters") {
- # Do not expand the visibility here without double-checking with OWNERS, this
-@@ -196,7 +197,7 @@ jumbo_source_set("filters") {
- deps += [ "//media/base/android" ]
- }
-
-- if (current_cpu != "arm" && is_linux) {
-+ if (use_vaapi && is_linux) {
- sources += [
- "h264_bitstream_buffer.cc",
- "h264_bitstream_buffer.h",
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index c290ec2ef..1c06865b8 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -530,9 +530,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media/gpu/*" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-80.patch b/www-client/chromium/files/chromium-vaapi-80.patch
deleted file mode 100644
index d9982dd..0000000
--- a/www-client/chromium/files/chromium-vaapi-80.patch
+++ /dev/null
@@ -1,168 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index f9ddeca39..a581bca3d 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1754,7 +1754,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2228,12 +2228,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // !defined(OS_ANDROID)
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 90a193991..87d1eedac 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -3132,7 +3132,7 @@ const char kMetalDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3140,6 +3140,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index 4d7349337..ea4838826 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1847,11 +1847,21 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index fde557cc3..b150ccbad 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -129,4 +130,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index c1da1d8b7..bd83de134 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -332,17 +332,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 981cb7a08..33f3e8312 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -632,7 +632,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 875c3515a..db52819f9 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -456,9 +456,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media/gpu/*" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-81.patch b/www-client/chromium/files/chromium-vaapi-81.patch
deleted file mode 100644
index aac31c0..0000000
--- a/www-client/chromium/files/chromium-vaapi-81.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 54c97b37d..8a72db3ab 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1846,7 +1846,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2307,12 +2307,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // !defined(OS_ANDROID)
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 5c2b3f3fa..67edf526e 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -3172,7 +3172,7 @@ const char kMetalDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3180,6 +3180,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index 384a7bed3..719b1fce5 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1872,11 +1872,21 @@ extern const char kPermissionPromptPersistenceToggleDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index d777b767b..34df35560 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -134,4 +135,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 837bb8dd2..36c79fe83 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -332,17 +332,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247],
-- "os": {
-- "type": "linux"
-- },
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index d089b3975..2c8c2b885 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -653,7 +653,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 76514826b..080a1d2ee 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -455,9 +455,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media/gpu/*" ]
- testonly = true
-diff --git a/media/gpu/test/BUILD.gn b/media/gpu/test/BUILD.gn
-index 21ff52759..9f3232a1b 100644
---- a/media/gpu/test/BUILD.gn
-+++ b/media/gpu/test/BUILD.gn
-@@ -158,7 +158,7 @@ if (use_vaapi || use_v4l2_codec) {
- }
- }
-
--if (is_chromeos) {
-+if (is_chromeos || is_linux) {
- static_library("local_gpu_memory_buffer_manager") {
- testonly = true
- sources = [
diff --git a/www-client/chromium/files/chromium-vaapi-82.patch b/www-client/chromium/files/chromium-vaapi-82.patch
deleted file mode 100644
index 18115e3..0000000
--- a/www-client/chromium/files/chromium-vaapi-82.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 77785e7a8..303f8c9f7 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -1957,7 +1957,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2390,12 +2390,12 @@ const FeatureEntry kFeatureEntries[] = {
- FEATURE_VALUE_TYPE(service_manager::features::kXRSandbox)},
- #endif // !defined(OS_ANDROID)
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 3a5ea1399..f92d626fa 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2995,7 +2995,7 @@ const char kMetalDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3003,6 +3003,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index a3c3bf194..8e0730dbd 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1724,11 +1724,21 @@ extern const char kMetalDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 088c791f0..464cf018c 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -131,4 +132,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 22712bdbf..a06dd19a5 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -335,22 +335,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247, 1032907],
-- "os": {
-- "type": "linux"
-- },
-- "exceptions": [
-- {
-- "machine_model_name": ["Chromecast"]
-- }
-- ],
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index 4b271023c..94b0d8c79 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -693,7 +693,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index 13443f3d3..195208fed 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -451,9 +451,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media/gpu/*" ]
- testonly = true
-diff --git a/media/gpu/test/BUILD.gn b/media/gpu/test/BUILD.gn
-index 8d1275a43..71e5c9dca 100644
---- a/media/gpu/test/BUILD.gn
-+++ b/media/gpu/test/BUILD.gn
-@@ -152,7 +152,7 @@ if (use_vaapi || use_v4l2_codec) {
- }
- }
-
--if (is_chromeos) {
-+if (is_chromeos || is_linux) {
- static_library("local_gpu_memory_buffer_manager") {
- testonly = true
- sources = [
diff --git a/www-client/chromium/files/chromium-vaapi-83.patch b/www-client/chromium/files/chromium-vaapi-83.patch
deleted file mode 100644
index d614b94..0000000
--- a/www-client/chromium/files/chromium-vaapi-83.patch
+++ /dev/null
@@ -1,186 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 0524711d0..0477b7bbd 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -2092,7 +2092,7 @@ const FeatureEntry kFeatureEntries[] = {
- "disable-accelerated-video-decode",
- flag_descriptions::kAcceleratedVideoDecodeName,
- flag_descriptions::kAcceleratedVideoDecodeDescription,
-- kOsMac | kOsWin | kOsCrOS | kOsAndroid,
-+ kOsMac | kOsWin | kOsCrOS | kOsAndroid | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedVideoDecode),
- },
- {
-@@ -2514,12 +2514,12 @@ const FeatureEntry kFeatureEntries[] = {
- flag_descriptions::kWebXrForceRuntimeDescription, kOsDesktop,
- MULTI_VALUE_TYPE(kWebXrForceRuntimeChoices)},
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index 834232048..a77b963af 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -2954,7 +2954,7 @@ const char kMetalDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -2962,6 +2962,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index f497d6197..5762ce62e 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -1696,11 +1696,21 @@ extern const char kMetalDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 64ebb18c5..682b4ffeb 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -6,6 +6,7 @@ import("//build/config/jumbo.gni")
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -133,4 +134,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/gpu/config/software_rendering_list.json b/gpu/config/software_rendering_list.json
-index 7eefd9966..747971b46 100644
---- a/gpu/config/software_rendering_list.json
-+++ b/gpu/config/software_rendering_list.json
-@@ -335,22 +335,6 @@
- "all"
- ]
- },
-- {
-- "id": 48,
-- "description": "Accelerated video decode is unavailable on Linux",
-- "cr_bugs": [137247, 1032907],
-- "os": {
-- "type": "linux"
-- },
-- "exceptions": [
-- {
-- "machine_model_name": ["Chromecast"]
-- }
-- ],
-- "features": [
-- "accelerated_video_decode"
-- ]
-- },
- {
- "id": 50,
- "description": "Disable VMware software renderer on older Mesa",
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index bc7f518ae..eed869232 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -714,7 +714,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index be9406674..95782e01a 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -457,9 +457,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media/gpu/*" ]
- testonly = true
-diff --git a/media/gpu/test/BUILD.gn b/media/gpu/test/BUILD.gn
-index 5dd95ec1f..3dd7a1a20 100644
---- a/media/gpu/test/BUILD.gn
-+++ b/media/gpu/test/BUILD.gn
-@@ -182,7 +182,7 @@ if (use_vaapi || use_v4l2_codec) {
- }
- }
-
--if (is_chromeos) {
-+if (is_chromeos || is_linux) {
- static_library("local_gpu_memory_buffer_manager") {
- testonly = true
- sources = [
diff --git a/www-client/chromium/files/chromium-vaapi-87.patch b/www-client/chromium/files/chromium-vaapi-87.patch
deleted file mode 100644
index 508a2f4..0000000
--- a/www-client/chromium/files/chromium-vaapi-87.patch
+++ /dev/null
@@ -1,137 +0,0 @@
-diff --git a/chrome/browser/about_flags.cc b/chrome/browser/about_flags.cc
-index 78eedbcbf..eda2d0c48 100644
---- a/chrome/browser/about_flags.cc
-+++ b/chrome/browser/about_flags.cc
-@@ -3150,12 +3150,12 @@ const FeatureEntry kFeatureEntries[] = {
- flag_descriptions::kWebXrForceRuntimeDescription, kOsDesktop,
- MULTI_VALUE_TYPE(kWebXrForceRuntimeChoices)},
- #endif // ENABLE_VR
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- {"disable-accelerated-mjpeg-decode",
- flag_descriptions::kAcceleratedMjpegDecodeName,
-- flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS,
-+ flag_descriptions::kAcceleratedMjpegDecodeDescription, kOsCrOS | kOsLinux,
- SINGLE_DISABLE_VALUE_TYPE(switches::kDisableAcceleratedMjpegDecode)},
--#endif // OS_CHROMEOS
-+#endif // OS_CHROMEOS OS_LINUX
- {"system-keyboard-lock", flag_descriptions::kSystemKeyboardLockName,
- flag_descriptions::kSystemKeyboardLockDescription, kOsDesktop,
- FEATURE_VALUE_TYPE(features::kSystemKeyboardLock)},
-diff --git a/chrome/browser/flag_descriptions.cc b/chrome/browser/flag_descriptions.cc
-index e4f4cf856..d448035db 100644
---- a/chrome/browser/flag_descriptions.cc
-+++ b/chrome/browser/flag_descriptions.cc
-@@ -3542,7 +3542,7 @@ const char kVideoToolboxVp9DecodingDescription[] =
-
- // Chrome OS -------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- const char kAcceleratedMjpegDecodeName[] =
- "Hardware-accelerated mjpeg decode for captured frame";
-@@ -3550,6 +3550,21 @@ const char kAcceleratedMjpegDecodeDescription[] =
- "Enable hardware-accelerated mjpeg decode for captured frame where "
- "available.";
-
-+const char kVaapiJpegImageDecodeAccelerationName[] =
-+ "VA-API JPEG decode acceleration for images";
-+const char kVaapiJpegImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of JPEG images (as opposed to camera"
-+ " captures) using the VA-API.";
-+
-+const char kVaapiWebPImageDecodeAccelerationName[] =
-+ "VA-API WebP decode acceleration for images";
-+const char kVaapiWebPImageDecodeAccelerationDescription[] =
-+ "Enable or disable decode acceleration of WebP images using the VA-API.";
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- const char kAggregatedMlAppRankingName[] = "Rank suggested apps with ML.";
- const char kAggregatedMlAppRankingDescription[] =
- "Use the aggregated ML model to rank the suggested apps.";
-diff --git a/chrome/browser/flag_descriptions.h b/chrome/browser/flag_descriptions.h
-index a8a80f118..beddafe6f 100644
---- a/chrome/browser/flag_descriptions.h
-+++ b/chrome/browser/flag_descriptions.h
-@@ -2041,11 +2041,21 @@ extern const char kVideoToolboxVp9DecodingDescription[];
-
- // Chrome OS ------------------------------------------------------------------
-
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || (defined(OS_LINUX) && !defined(OS_ANDROID))
-
- extern const char kAcceleratedMjpegDecodeName[];
- extern const char kAcceleratedMjpegDecodeDescription[];
-
-+extern const char kVaapiJpegImageDecodeAccelerationName[];
-+extern const char kVaapiJpegImageDecodeAccelerationDescription[];
-+
-+extern const char kVaapiWebPImageDecodeAccelerationName[];
-+extern const char kVaapiWebPImageDecodeAccelerationDescription[];
-+
-+#endif
-+
-+#if defined(OS_CHROMEOS)
-+
- extern const char kAggregatedMlAppRankingName[];
- extern const char kAggregatedMlAppRankingDescription[];
-
-diff --git a/content/gpu/BUILD.gn b/content/gpu/BUILD.gn
-index 747df62b1..eb973a881 100644
---- a/content/gpu/BUILD.gn
-+++ b/content/gpu/BUILD.gn
-@@ -5,6 +5,7 @@
- import("//build/config/ui.gni")
- import("//gpu/vulkan/features.gni")
- import("//media/media_options.gni")
-+import("//media/gpu/args.gni")
- import("//ui/ozone/ozone.gni")
-
- # See //content/BUILD.gn for how this works.
-@@ -128,4 +129,8 @@ target(link_target_type, "gpu_sources") {
- (!is_chromecast || is_cast_desktop_build)) {
- configs += [ "//build/config/linux/dri" ]
- }
-+ # Use vaapi on desktop Linux builds when use_vaapi is set
-+ if (is_desktop_linux && use_vaapi) {
-+ public_configs = [ "//media/gpu:libva_config" ]
-+ }
- }
-diff --git a/media/base/media_switches.cc b/media/base/media_switches.cc
-index d9cf7349d..03d6ba73f 100644
---- a/media/base/media_switches.cc
-+++ b/media/base/media_switches.cc
-@@ -792,7 +792,7 @@ bool IsVideoCaptureAcceleratedJpegDecodingEnabled() {
- switches::kUseFakeMjpegDecodeAccelerator)) {
- return true;
- }
--#if defined(OS_CHROMEOS)
-+#if defined(OS_CHROMEOS) || defined(OS_LINUX)
- return true;
- #endif
- return false;
-diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
-index e3d961939..4e2963f9f 100644
---- a/media/gpu/BUILD.gn
-+++ b/media/gpu/BUILD.gn
-@@ -462,9 +462,16 @@ if (use_v4l2_codec || use_vaapi || is_mac || is_win) {
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
- }
-+ public_configs = [ ":libva_config" ]
- }
- }
-
-+import("//build/config/linux/pkg_config.gni")
-+
-+pkg_config("libva_config") {
-+ packages = [ "libva" ]
-+}
-+
- static_library("test_support") {
- visibility = [ "//media/gpu/*" ]
- testonly = true
diff --git a/www-client/chromium/files/chromium-vaapi-fix-87.patch b/www-client/chromium/files/chromium-vaapi-fix-87.patch
deleted file mode 100644
index 231434b..0000000
--- a/www-client/chromium/files/chromium-vaapi-fix-87.patch
+++ /dev/null
@@ -1,200 +0,0 @@
-diff --git a/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc b/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc
-index 843cf226e..af0389503 100644
---- a/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc
-+++ b/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.cc
-@@ -7,6 +7,8 @@
- #include "media/gpu/vaapi/va_surface.h"
- #include "media/gpu/vaapi/vaapi_wrapper.h"
- #include "ui/base/ui_base_features.h"
-+#include "ui/gfx/x/connection.h"
-+#include "ui/gfx/x/xproto.h"
- #include "ui/gl/gl_bindings.h"
- #include "ui/gl/gl_image_egl_pixmap.h"
- #include "ui/gl/scoped_binders.h"
-@@ -15,25 +17,31 @@ namespace media {
-
- namespace {
-
--inline Pixmap CreatePixmap(const gfx::Size& size) {
-- auto* display = gfx::GetXDisplay();
-- if (!display)
-- return 0;
-+inline ::Pixmap CreatePixmap(const gfx::Size& size) {
-+ auto* connection = x11::Connection::Get();
-+ if (!connection->Ready())
-+ return base::strict_cast<::Pixmap>(x11::Pixmap::None);
-
-- int screen = DefaultScreen(display);
-- auto root = XRootWindow(display, screen);
-- if (root == BadValue)
-- return 0;
-+ auto root = connection->default_root();
-
-- XWindowAttributes win_attr = {};
-- // returns 0 on failure, see:
-- // https://tronche.com/gui/x/xlib/introduction/errors.html#Status
-- if (!XGetWindowAttributes(display, root, &win_attr))
-- return 0;
-+ uint8_t depth = 0;
-+ if (auto reply = connection->GetGeometry({root}).Sync())
-+ depth = reply->depth;
-+ else
-+ return base::strict_cast<::Pixmap>(x11::Pixmap::None);
-
- // TODO(tmathmeyer) should we use the depth from libva instead of root window?
-- return XCreatePixmap(display, root, size.width(), size.height(),
-- win_attr.depth);
-+ auto pixmap = connection->GenerateId<x11::Pixmap>();
-+ uint16_t pixmap_width, pixmap_height;
-+ if (!base::CheckedNumeric<int>(size.width()).AssignIfValid(&pixmap_width) ||
-+ !base::CheckedNumeric<int>(size.height()).AssignIfValid(&pixmap_height)) {
-+ return base::strict_cast<::Pixmap>(x11::Pixmap::None);
-+ }
-+ auto req = connection->CreatePixmap(
-+ {depth, pixmap, root, pixmap_width, pixmap_height});
-+ if (req.Sync().error)
-+ pixmap = x11::Pixmap::None;
-+ return base::strict_cast<::Pixmap>(pixmap);
- }
-
- } // namespace
-@@ -71,11 +79,8 @@ VaapiPictureNativePixmapAngle::~VaapiPictureNativePixmapAngle() {
- DCHECK_EQ(glGetError(), static_cast<GLenum>(GL_NO_ERROR));
- }
-
-- if (x_pixmap_) {
-- if (auto* display = gfx::GetXDisplay()) {
-- XFreePixmap(display, x_pixmap_);
-- }
-- }
-+ if (x_pixmap_)
-+ x11::Connection::Get()->FreePixmap({static_cast<x11::Pixmap>(x_pixmap_)});
- }
-
- Status VaapiPictureNativePixmapAngle::Allocate(gfx::BufferFormat format) {
-diff --git a/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.h b/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.h
-index de4698abe..41f52376d 100644
---- a/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.h
-+++ b/media/gpu/vaapi/vaapi_picture_native_pixmap_angle.h
-@@ -46,7 +46,7 @@ class VaapiPictureNativePixmapAngle : public VaapiPictureNativePixmap {
- VASurfaceID va_surface_id() const override;
-
- private:
-- Pixmap x_pixmap_ = 0;
-+ ::Pixmap x_pixmap_ = 0;
-
- DISALLOW_COPY_AND_ASSIGN(VaapiPictureNativePixmapAngle);
- };
-diff --git a/media/gpu/vaapi/vaapi_picture_tfp.cc b/media/gpu/vaapi/vaapi_picture_tfp.cc
-index 9ff0372fa..a571b4b2b 100644
---- a/media/gpu/vaapi/vaapi_picture_tfp.cc
-+++ b/media/gpu/vaapi/vaapi_picture_tfp.cc
-@@ -7,6 +7,7 @@
- #include "media/gpu/vaapi/va_surface.h"
- #include "media/gpu/vaapi/vaapi_wrapper.h"
- #include "ui/base/ui_base_features.h"
-+#include "ui/gfx/x/connection.h"
- #include "ui/gfx/x/x11_types.h"
- #include "ui/gl/gl_bindings.h"
- #include "ui/gl/gl_image_glx.h"
-@@ -33,7 +34,7 @@ VaapiTFPPicture::VaapiTFPPicture(
- texture_id,
- client_texture_id,
- texture_target),
-- x_display_(gfx::GetXDisplay()),
-+ connection_(x11::Connection::Get()),
- x_pixmap_(0) {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- DCHECK(!features::IsUsingOzonePlatform());
-@@ -49,7 +50,7 @@ VaapiTFPPicture::~VaapiTFPPicture() {
- }
-
- if (x_pixmap_)
-- XFreePixmap(x_display_, x_pixmap_);
-+ connection_->FreePixmap({static_cast<x11::Pixmap>(x_pixmap_)});
- }
-
- Status VaapiTFPPicture::Initialize() {
-@@ -84,16 +85,33 @@ Status VaapiTFPPicture::Allocate(gfx::BufferFormat format) {
- return StatusCode::kVaapiUnsupportedFormat;
- }
-
-- XWindowAttributes win_attr;
-- int screen = DefaultScreen(x_display_);
-- XGetWindowAttributes(x_display_, XRootWindow(x_display_, screen), &win_attr);
-+ if (!connection_->Ready())
-+ return StatusCode::kVaapiNoPixmap;
-+
-+ auto root = connection_->default_root();
-+
-+ uint8_t depth = 0;
-+ if (auto reply = connection_->GetGeometry({root}).Sync())
-+ depth = reply->depth;
-+ else
-+ return StatusCode::kVaapiNoPixmap;
-+
- // TODO(posciak): pass the depth required by libva, not the RootWindow's
- // depth
-- x_pixmap_ = XCreatePixmap(x_display_, XRootWindow(x_display_, screen),
-- size_.width(), size_.height(), win_attr.depth);
-- if (!x_pixmap_) {
-+ auto pixmap = connection_->GenerateId<x11::Pixmap>();
-+ uint16_t pixmap_width, pixmap_height;
-+ if (!base::CheckedNumeric<int>(size_.width()).AssignIfValid(&pixmap_width) ||
-+ !base::CheckedNumeric<int>(size_.height())
-+ .AssignIfValid(&pixmap_height)) {
-+ return StatusCode::kVaapiNoPixmap;
-+ }
-+ auto req = connection_->CreatePixmap(
-+ {depth, pixmap, root, pixmap_width, pixmap_height});
-+ if (req.Sync().error) {
- DLOG(ERROR) << "Failed creating an X Pixmap for TFP";
- return StatusCode::kVaapiNoPixmap;
-+ } else {
-+ x_pixmap_ = base::strict_cast<::Pixmap>(pixmap);
- }
-
- return Initialize();
-diff --git a/media/gpu/vaapi/vaapi_picture_tfp.h b/media/gpu/vaapi/vaapi_picture_tfp.h
-index c4eb2c1b5..8da323717 100644
---- a/media/gpu/vaapi/vaapi_picture_tfp.h
-+++ b/media/gpu/vaapi/vaapi_picture_tfp.h
-@@ -11,6 +11,7 @@
- #include "base/memory/ref_counted.h"
- #include "media/gpu/vaapi/vaapi_picture.h"
- #include "ui/gfx/geometry/size.h"
-+#include "ui/gfx/x/connection.h"
- #include "ui/gl/gl_bindings.h"
-
- namespace gl {
-@@ -47,9 +48,9 @@ class VaapiTFPPicture : public VaapiPicture {
- private:
- Status Initialize();
-
-- Display* x_display_;
-+ x11::Connection* const connection_;
-
-- Pixmap x_pixmap_;
-+ ::Pixmap x_pixmap_;
- scoped_refptr<gl::GLImageGLX> glx_image_;
-
- DISALLOW_COPY_AND_ASSIGN(VaapiTFPPicture);
-diff --git a/media/gpu/vaapi/vaapi_wrapper.cc b/media/gpu/vaapi/vaapi_wrapper.cc
-index 2ad0b997e..a98823343 100644
---- a/media/gpu/vaapi/vaapi_wrapper.cc
-+++ b/media/gpu/vaapi/vaapi_wrapper.cc
-@@ -57,8 +57,13 @@
- #include "ui/gl/gl_implementation.h"
-
- #if defined(USE_X11)
--#include <va/va_x11.h>
- #include "ui/gfx/x/x11_types.h" // nogncheck
-+
-+typedef XID Drawable;
-+
-+extern "C" {
-+#include "media/gpu/vaapi/va_x11.sigs"
-+}
- #endif
-
- #if defined(USE_OZONE)
diff --git a/www-client/chromium/files/chromium-vaapi-signature.patch b/www-client/chromium/files/chromium-vaapi-signature.patch
deleted file mode 100644
index c84cc37..0000000
--- a/www-client/chromium/files/chromium-vaapi-signature.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git a/media/gpu/vaapi/vaapi_picture_tfp.cc b/media/gpu/vaapi/vaapi_picture_tfp.cc
-index dca5b5c46..f65d580da 100644
---- a/media/gpu/vaapi/vaapi_picture_tfp.cc
-+++ b/media/gpu/vaapi/vaapi_picture_tfp.cc
-@@ -97,7 +97,7 @@ bool VaapiTFPPicture::Allocate(gfx::BufferFormat format) {
-
- bool VaapiTFPPicture::ImportGpuMemoryBufferHandle(
- gfx::BufferFormat format,
-- const gfx::GpuMemoryBufferHandle& gpu_memory_buffer_handle) {
-+ gfx::GpuMemoryBufferHandle gpu_memory_buffer_handle) {
- DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
- NOTIMPLEMENTED() << "GpuMemoryBufferHandle import not implemented";
- return false;
-diff --git a/media/gpu/vaapi/vaapi_picture_tfp.h b/media/gpu/vaapi/vaapi_picture_tfp.h
-index a9ba8a1c5..9fb27a5cd 100644
---- a/media/gpu/vaapi/vaapi_picture_tfp.h
-+++ b/media/gpu/vaapi/vaapi_picture_tfp.h
-@@ -40,7 +40,7 @@ class VaapiTFPPicture : public VaapiPicture {
- bool Allocate(gfx::BufferFormat format) override;
- bool ImportGpuMemoryBufferHandle(
- gfx::BufferFormat format,
-- const gfx::GpuMemoryBufferHandle& gpu_memory_buffer_handle) override;
-+ gfx::GpuMemoryBufferHandle gpu_memory_buffer_handle) override;
- bool DownloadFromSurface(const scoped_refptr<VASurface>& va_surface) override;
-
- private:
diff --git a/www-client/chromium/files/chromium-vector-include-81.patch b/www-client/chromium/files/chromium-vector-include-81.patch
deleted file mode 100644
index 21c0bb1..0000000
--- a/www-client/chromium/files/chromium-vector-include-81.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/ui/autofill/payments/virtual_card_selection_dialog_controller.h b/chrome/browser/ui/autofill/payments/virtual_card_selection_dialog_controller.h
-index 401717c18..952bbad4a 100644
---- a/chrome/browser/ui/autofill/payments/virtual_card_selection_dialog_controller.h
-+++ b/chrome/browser/ui/autofill/payments/virtual_card_selection_dialog_controller.h
-@@ -5,6 +5,8 @@
- #ifndef CHROME_BROWSER_UI_AUTOFILL_PAYMENTS_VIRTUAL_CARD_SELECTION_DIALOG_CONTROLLER_H_
- #define CHROME_BROWSER_UI_AUTOFILL_PAYMENTS_VIRTUAL_CARD_SELECTION_DIALOG_CONTROLLER_H_
-
-+#include <vector>
-+
- #include "base/macros.h"
- #include "base/strings/string16.h"
-
diff --git a/www-client/chromium/files/chromium-vector-init.patch b/www-client/chromium/files/chromium-vector-init.patch
deleted file mode 100644
index ba8a18f..0000000
--- a/www-client/chromium/files/chromium-vector-init.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/ui/tabs/tab_strip_model_observer.h b/chrome/browser/ui/tabs/tab_strip_model_observer.h
-index 8dacb579e..495e31bc5 100644
---- a/chrome/browser/ui/tabs/tab_strip_model_observer.h
-+++ b/chrome/browser/ui/tabs/tab_strip_model_observer.h
-@@ -125,7 +125,7 @@ class TabStripModelChange {
-
- private:
- const Type type_ = kSelectionOnly;
-- const std::vector<Delta> deltas_;
-+ const std::vector<Delta> deltas_ = {};
-
- DISALLOW_COPY_AND_ASSIGN(TabStripModelChange);
- };
diff --git a/www-client/chromium/files/chromium-vk.patch b/www-client/chromium/files/chromium-vk.patch
deleted file mode 100644
index c170c9c..0000000
--- a/www-client/chromium/files/chromium-vk.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/third_party/skia/src/gpu/vk/GrVkVulkan.h b/third_party/skia/src/gpu/vk/GrVkVulkan.h
-index 1b78dc766..3bea44b20 100644
---- a/third_party/skia/src/gpu/vk/GrVkVulkan.h
-+++ b/third_party/skia/src/gpu/vk/GrVkVulkan.h
-@@ -14,14 +14,14 @@
- #error "Skia's private vulkan header must be included before any other vulkan header."
- #endif
-
--#include "../../../include/third_party/vulkan/vulkan/vulkan_core.h"
-+#include "vulkan/vulkan_core.h"
-
- #ifdef SK_BUILD_FOR_ANDROID
- #ifdef VULKAN_ANDROID_H_
- #error "Skia's private vulkan android header must be included before any other vulkan header."
- #endif
- // This is needed to get android extensions for external memory
--#include "../../../include/third_party/vulkan/vulkan/vulkan_android.h"
-+#include "vulkan/vulkan_android.h"
- #endif
-
- #endif
diff --git a/www-client/chromium/files/chromium-vr.patch b/www-client/chromium/files/chromium-vr.patch
deleted file mode 100644
index 00230bb..0000000
--- a/www-client/chromium/files/chromium-vr.patch
+++ /dev/null
@@ -1,47 +0,0 @@
-diff --git a/tools/perf/contrib/vr_benchmarks/BUILD.gn b/tools/perf/contrib/vr_benchmarks/BUILD.gn
-index fef976f5c..14547d8e7 100644
---- a/tools/perf/contrib/vr_benchmarks/BUILD.gn
-+++ b/tools/perf/contrib/vr_benchmarks/BUILD.gn
-@@ -56,22 +56,23 @@ group("vr_perf_tests") {
-
- # Copies files to the gen/ directory and creates a manifest so that the VR
- # assets component can be used during Telemetry tests.
--action("generate_vr_assets_profile") {
-- script = "generate_vr_assets_profile.py"
--
-- # We should re-run anytime the version or any related files change.
-- inputs = [
-- "//chrome/browser/resources/vr/assets/google_chrome",
-- "//chrome/browser/resources/vr/assets/VERSION",
-- "//chrome/browser/resources/vr/assets/vr_assets_component_files.json",
-- ]
-- outputs = [
-- "$target_gen_dir/vr_assets_profile/",
-- ]
-- args = [
-- "--output",
-- rebase_path(target_gen_dir, root_build_dir),
-- "--asset-dir",
-- rebase_path("//chrome/browser/resources/vr/assets", root_build_dir),
-- ]
--}
-+#action("generate_vr_assets_profile") {
-+# script = "generate_vr_assets_profile.py"
-+#
-+# # We should re-run anytime the version or any related files change.
-+# inputs = [
-+# "//chrome/browser/resources/vr/assets/google_chrome",
-+# "//chrome/browser/resources/vr/assets/VERSION",
-+# "//chrome/browser/resources/vr/assets/vr_assets_component_files.json",
-+# ]
-+# outputs = [
-+# "$target_gen_dir/vr_assets_profile/",
-+# ]
-+# args = [
-+# "--output",
-+# rebase_path(target_gen_dir, root_build_dir),
-+# "--asset-dir",
-+# rebase_path("//chrome/browser/resources/vr/assets", root_build_dir),
-+# ]
-+#}
-+#
diff --git a/www-client/chromium/files/chromium-webrtc-include-84.patch b/www-client/chromium/files/chromium-webrtc-include-84.patch
deleted file mode 100644
index 48ea179..0000000
--- a/www-client/chromium/files/chromium-webrtc-include-84.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-05-22 15:16:41.083666290 +0800
-+++ b/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h 2020-05-22 15:16:05.620205159 +0800
-@@ -11,6 +11,7 @@
- #ifndef MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
- #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
-
-+#include <cstddef>
- #include <array>
-
- namespace webrtc {
diff --git a/www-client/chromium/files/chromium-webrtc-r0.patch b/www-client/chromium/files/chromium-webrtc-r0.patch
deleted file mode 100644
index e14b185..0000000
--- a/www-client/chromium/files/chromium-webrtc-r0.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 7f90e2cceda0458cf56026eb6ccffb961a47804b Mon Sep 17 00:00:00 2001
-From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
-Date: Fri, 13 Oct 2017 15:49:32 +0200
-Subject: [PATCH] IWYU: Include math.h for round(3).
-
-math.h was being implicitly included, which can break the build with
-alternative libc implementations.
-
-Bug: None
-Change-Id: I969b320b65d0f44abb33d3e1036cfbcb859a4952
-Reviewed-on: https://webrtc-review.googlesource.com/9384
-Reviewed-by: Tommi <tommi@webrtc.org>
-Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
-Cr-Commit-Position: refs/heads/master@{#20292}
----
- p2p/base/port.cc | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/p2p/base/port.cc b/p2p/base/port.cc
-index a1b478d11..81aa0aadb 100644
---- a/third_party/webrtc/p2p/base/port.cc
-+++ b/third_party/webrtc/p2p/base/port.cc
-@@ -10,6 +10,8 @@
-
- #include "p2p/base/port.h"
-
-+#include <math.h>
-+
- #include <algorithm>
- #include <vector>
-
---
-2.15.0.rc2
-
diff --git a/www-client/chromium/files/chromium-webrtc.patch b/www-client/chromium/files/chromium-webrtc.patch
deleted file mode 100644
index 07b770b..0000000
--- a/www-client/chromium/files/chromium-webrtc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/webrtc/api/ice_transport_factory.cc b/third_party/webrtc/api/ice_transport_factory.cc
-index b632f0913..6cc399aef 100644
---- a/third_party/webrtc/api/ice_transport_factory.cc
-+++ b/third_party/webrtc/api/ice_transport_factory.cc
-@@ -42,7 +42,7 @@ class IceTransportWithTransportChannel : public IceTransportInterface {
- }
-
- private:
-- const rtc::ThreadChecker thread_checker_;
-+ const rtc::ThreadChecker thread_checker_{};
- const std::unique_ptr<cricket::IceTransportInternal> internal_
- RTC_GUARDED_BY(thread_checker_);
- };
diff --git a/www-client/chromium/files/chromium-widevine-80.patch b/www-client/chromium/files/chromium-widevine-80.patch
deleted file mode 100644
index ac03150..0000000
--- a/www-client/chromium/files/chromium-widevine-80.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff --git a/third_party/widevine/cdm/widevine_cdm_version.h b/third_party/widevine/cdm/widevine_cdm_version.h
-index dd6efed02..eaa017197 100644
---- a/third_party/widevine/cdm/widevine_cdm_version.h
-+++ b/third_party/widevine/cdm/widevine_cdm_version.h
-@@ -11,5 +11,6 @@
- // If the Widevine CDM is available define the following:
- // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
- // as a string, e.g., "1.0.123.456").
-+#define WIDEVINE_CDM_VERSION_STRING "unknown"
-
- #endif // WIDEVINE_CDM_VERSION_H_
diff --git a/www-client/chromium/files/chromium-widevine-r2.patch b/www-client/chromium/files/chromium-widevine-r2.patch
deleted file mode 100644
index 5527f7f..0000000
--- a/www-client/chromium/files/chromium-widevine-r2.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Minimal patch to get chromium to compile with widevine support.
-
-Exactly the same as -r1, but we now need to patch
-ninja to pretty please not terminate our build.
-
-caveat emptor: it's in no way clear that building chromium this
-way is safer, from a security perspective, than whatever Google
-Chrome does.
-
-Upstream appears to be cooking up a code-signing trust-chain
-which may protect users against malicious cdm blobs; I doubt
-we benefit from these using this kludge. Ideally, someone
-would look into this more carefully than I have ... tbh as
-soon as I got my "stories" back, I pretty much lost interest :)
-
--gmt
-
---
---- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
-+++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
-@@ -10,6 +10,7 @@
-
- #include "third_party/widevine/cdm/widevine_cdm_common.h"
-
-+#define WIDEVINE_CDM_VERSION_STRING "unknown"
- #define WIDEVINE_CDM_AVAILABLE
-
- #endif // WIDEVINE_CDM_VERSION_H_
---- a/third_party/widevine/cdm/BUILD.gn
-+++ b/third_party/widevine/cdm/BUILD.gn
-@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev
- # Internal Cast builds set enable_widevine=true to bring in Widevine support.
- # TODO(xhwang): Support component updated CDM on other platforms and remove this
- # assert.
--assert(!enable_widevine || is_win || is_mac || is_chromecast,
-+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux,
- "Component updated CDM only supported on Windows and Mac for now.")
-
- widevine_arch = current_cpu
diff --git a/www-client/chromium/files/chromium-widevine-r3.patch b/www-client/chromium/files/chromium-widevine-r3.patch
deleted file mode 100644
index a126084..0000000
--- a/www-client/chromium/files/chromium-widevine-r3.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 5818fdbef3d399fe1bfbb56f81e59184e1a8e467 Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppymaster@gmail.com>
-Date: Sun, 14 Oct 2018 20:04:03 -0400
-Subject: [PATCH] Define WIDEVINE_CDM_VERSION_STRING
-
----
- third_party/widevine/cdm/widevine_cdm_version.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/third_party/widevine/cdm/widevine_cdm_version.h b/third_party/widevine/cdm/widevine_cdm_version.h
-index dd6efed02646..eaa017197e61 100644
---- a/third_party/widevine/cdm/widevine_cdm_version.h
-+++ b/third_party/widevine/cdm/widevine_cdm_version.h
-@@ -11,5 +11,6 @@
- // If the Widevine CDM is available define the following:
- // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
- // as a string, e.g., "1.0.123.456").
-+#define WIDEVINE_CDM_VERSION_STRING "unknown"
-
- #endif // WIDEVINE_CDM_VERSION_H_
---
-2.19.1
-
diff --git a/www-client/chromium/files/chromium-widevine-r4.patch b/www-client/chromium/files/chromium-widevine-r4.patch
deleted file mode 100644
index d5a3be8..0000000
--- a/www-client/chromium/files/chromium-widevine-r4.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Define WIDEVINE_CDM_VERSION_STRING && re-re-re-patch for latest ninja
-
-Stolen from Arch basically.
-
-gmt
-
---- a/chrome/common/chrome_content_client.cc
-+++ b/chrome/common/chrome_content_client.cc
-@@ -99,7 +99,7 @@
- // Registers Widevine CDM if Widevine is enabled, the Widevine CDM is
- // bundled and not a component. When the Widevine CDM is a component, it is
- // registered in widevine_cdm_component_installer.cc.
--#if BUILDFLAG(BUNDLE_WIDEVINE_CDM) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
-+#if BUILDFLAG(ENABLE_WIDEVINE) && !BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT)
- #define REGISTER_BUNDLED_WIDEVINE_CDM
- #include "third_party/widevine/cdm/widevine_cdm_common.h" // nogncheck
- // TODO(crbug.com/663554): Needed for WIDEVINE_CDM_VERSION_STRING. Support
---- a/third_party/widevine/cdm/widevine_cdm_version.h
-+++ b/third_party/widevine/cdm/widevine_cdm_version.h
-@@ -11,5 +11,6 @@
- // If the Widevine CDM is available define the following:
- // - WIDEVINE_CDM_VERSION_STRING (with the version of the CDM that's available
- // as a string, e.g., "1.0.123.456").
-+#define WIDEVINE_CDM_VERSION_STRING "unknown"
-
- #endif // WIDEVINE_CDM_VERSION_H_
diff --git a/www-client/chromium/files/chromium-wpt-gn-78.patch b/www-client/chromium/files/chromium-wpt-gn-78.patch
deleted file mode 100644
index fc750e8..0000000
--- a/www-client/chromium/files/chromium-wpt-gn-78.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/third_party/blink/tools/BUILD.gn b/third_party/blink/tools/BUILD.gn
-index d3004ee7b..ef293e3bf 100644
---- a/third_party/blink/tools/BUILD.gn
-+++ b/third_party/blink/tools/BUILD.gn
-@@ -13,7 +13,7 @@ action("build_wpt_metadata") {
- "../../third_party/blink/web_tests/WPTOverrideExpectations",
- ]
- outputs = [
-- "$root_out_dir/wpt_expectations_metadata/",
-+ "$root_out_dir/wpt_expectations_metadata",
- ]
- data = [
- # Include the blinkpy tools to access expectations data
diff --git a/www-client/chromium/files/chromium-zlib-78.patch b/www-client/chromium/files/chromium-zlib-78.patch
deleted file mode 100644
index a1da45f..0000000
--- a/www-client/chromium/files/chromium-zlib-78.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/third_party/perfetto/gn/BUILD.gn 2019-09-06 23:54:00.697132348 +0800
-+++ b/third_party/perfetto/gn/BUILD.gn 2019-09-06 23:54:41.235747858 +0800
-@@ -276,7 +276,7 @@
- "//buildtools:zlib",
- ]
- } else {
-- public_configs = [ "//third_party/zlib:zlib_config" ]
-+ public_configs = [ "//third_party/zlib:system_zlib" ]
- public_deps = [
- "//third_party/zlib",
- ]
diff --git a/www-client/chromium/files/chromium-zlib-82.patch b/www-client/chromium/files/chromium-zlib-82.patch
deleted file mode 100644
index 1585445..0000000
--- a/www-client/chromium/files/chromium-zlib-82.patch
+++ /dev/null
@@ -1,9 +0,0 @@
---- a/third_party/perfetto/gn/BUILD.gn 2019-09-06 23:54:00.697132348 +0800
-+++ b/third_party/perfetto/gn/BUILD.gn 2019-09-06 23:54:41.235747858 +0800
-@@ -299,4 +299,4 @@
- public_deps = [ "//buildtools:zlib" ]
- } else {
-- public_configs = [ "//third_party/zlib:zlib_config" ]
-+ public_configs = [ "//third_party/zlib:system_zlib" ]
- public_deps = [ "//third_party/zlib" ]
-