diff options
Diffstat (limited to 'www-client/chromium/files')
23 files changed, 466 insertions, 3159 deletions
diff --git a/www-client/chromium/files/chromium-105-protobuf-RepeatedPtrField-export.patch b/www-client/chromium/files/chromium-105-protobuf-RepeatedPtrField-export.patch deleted file mode 100644 index e20bc22..0000000 --- a/www-client/chromium/files/chromium-105-protobuf-RepeatedPtrField-export.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h b/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h -index e81b2c7e4..df3811563 100644 ---- a/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h -+++ b/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h -@@ -847,7 +847,7 @@ class StringTypeHandler { - // RepeatedPtrField is like RepeatedField, but used for repeated strings or - // Messages. - template <typename Element> --class RepeatedPtrField final : private internal::RepeatedPtrFieldBase { -+class PROTOBUF_EXPORT RepeatedPtrField final : private internal::RepeatedPtrFieldBase { - - public: - constexpr RepeatedPtrField(); diff --git a/www-client/chromium/files/chromium-109-minizip.patch b/www-client/chromium/files/chromium-109-minizip.patch deleted file mode 100644 index f24595c..0000000 --- a/www-client/chromium/files/chromium-109-minizip.patch +++ /dev/null @@ -1,147 +0,0 @@ -diff --git a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_extractor.cc b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_extractor.cc -index 1b01755e1..65550e8fd 100644 ---- a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_extractor.cc -+++ b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_extractor.cc -@@ -27,8 +27,8 @@ limitations under the License. - #include "tensorflow_lite_support/cc/port/status_macros.h" - #include "tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.h" - #include "tensorflow_lite_support/metadata/metadata_schema_generated.h" --#include "third_party/zlib/contrib/minizip/ioapi.h" --#include "third_party/zlib/contrib/minizip/unzip.h" -+#include "minizip/ioapi.h" -+#include "minizip/unzip.h" - - namespace tflite { - namespace metadata { -diff --git a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_populator.cc b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_populator.cc -index 01c68515a..7a53974f2 100644 ---- a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_populator.cc -+++ b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/metadata_populator.cc -@@ -26,8 +26,8 @@ limitations under the License. - #include "tensorflow_lite_support/cc/port/statusor.h" - #include "tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.h" - #include "tensorflow_lite_support/metadata/metadata_schema_generated.h" --#include "third_party/zlib/contrib/minizip/ioapi.h" --#include "third_party/zlib/contrib/minizip/unzip.h" -+#include "minizip/ioapi.h" -+#include "minizip/unzip.h" - - namespace tflite { - namespace metadata { -diff --git a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.cc b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.cc -index 525ae4a2b..80ad84900 100644 ---- a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.cc -+++ b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.cc -@@ -19,7 +19,7 @@ limitations under the License. - #include <cstdio> - - #include "absl/strings/string_view.h" // from @com_google_absl --#include "third_party/zlib/contrib/minizip/ioapi.h" -+#include "minizip/ioapi.h" - - namespace tflite { - namespace metadata { -diff --git a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.h b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.h -index 72413a0a5..38c9278da 100644 ---- a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.h -+++ b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_readonly_mem_file.h -@@ -19,7 +19,7 @@ limitations under the License. - #include <cstdlib> - - #include "absl/strings/string_view.h" // from @com_google_absl --#include "third_party/zlib/contrib/minizip/ioapi.h" -+#include "minizip/ioapi.h" - - namespace tflite { - namespace metadata { -diff --git a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.cc b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.cc -index 3ba91b5e2..646822093 100644 ---- a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.cc -+++ b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.cc -@@ -19,7 +19,7 @@ limitations under the License. - #include <cstdio> - - #include "absl/strings/string_view.h" // from @com_google_absl --#include "third_party/zlib/contrib/minizip/ioapi.h" -+#include "minizip/ioapi.h" - - namespace tflite { - namespace metadata { -diff --git a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.h b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.h -index 3d329925d..da6ff5ad8 100644 ---- a/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.h -+++ b/third_party/tflite_support/src/tensorflow_lite_support/metadata/cc/utils/zip_writable_mem_file.h -@@ -19,7 +19,7 @@ limitations under the License. - #include <cstdlib> - - #include "absl/strings/string_view.h" // from @com_google_absl --#include "third_party/zlib/contrib/minizip/ioapi.h" -+#include "minizip/ioapi.h" - - namespace tflite { - namespace metadata { -diff --git a/third_party/zlib/google/zip_internal.cc b/third_party/zlib/google/zip_internal.cc -index e65d7ce6b..1f89d931a 100644 ---- a/third_party/zlib/google/zip_internal.cc -+++ b/third_party/zlib/google/zip_internal.cc -@@ -17,7 +17,7 @@ - #include "base/strings/string_util.h" - #include "base/strings/utf_string_conversions.h" - --#if defined(USE_SYSTEM_MINIZIP) -+#if 1//defined(USE_SYSTEM_MINIZIP) - #include <minizip/ioapi.h> - #include <minizip/unzip.h> - #include <minizip/zip.h> -diff --git a/third_party/zlib/google/zip_internal.h b/third_party/zlib/google/zip_internal.h -index f107d7fe8..28ef2f636 100644 ---- a/third_party/zlib/google/zip_internal.h -+++ b/third_party/zlib/google/zip_internal.h -@@ -14,7 +14,7 @@ - #include <windows.h> - #endif - --#if defined(USE_SYSTEM_MINIZIP) -+#if 1//defined(USE_SYSTEM_MINIZIP) - #include <minizip/unzip.h> - #include <minizip/zip.h> - #else -diff --git a/third_party/zlib/google/zip_reader.cc b/third_party/zlib/google/zip_reader.cc -index e97027a0b..d6f02b1e0 100644 ---- a/third_party/zlib/google/zip_reader.cc -+++ b/third_party/zlib/google/zip_reader.cc -@@ -23,7 +23,7 @@ - #include "third_party/zlib/google/redact.h" - #include "third_party/zlib/google/zip_internal.h" - --#if defined(USE_SYSTEM_MINIZIP) -+#if 1//defined(USE_SYSTEM_MINIZIP) - #include <minizip/unzip.h> - #else - #include "third_party/zlib/contrib/minizip/unzip.h" -diff --git a/third_party/zlib/google/zip_reader.h b/third_party/zlib/google/zip_reader.h -index 48244c823..a5c0234fe 100644 ---- a/third_party/zlib/google/zip_reader.h -+++ b/third_party/zlib/google/zip_reader.h -@@ -18,7 +18,7 @@ - #include "base/numerics/safe_conversions.h" - #include "base/time/time.h" - --#if defined(USE_SYSTEM_MINIZIP) -+#if 1//defined(USE_SYSTEM_MINIZIP) - #include <minizip/unzip.h> - #else - #include "third_party/zlib/contrib/minizip/unzip.h" -diff --git a/third_party/zlib/google/zip_writer.h b/third_party/zlib/google/zip_writer.h -index dd109293d..edb1542b7 100644 ---- a/third_party/zlib/google/zip_writer.h -+++ b/third_party/zlib/google/zip_writer.h -@@ -13,7 +13,7 @@ - #include "build/build_config.h" - #include "third_party/zlib/google/zip.h" - --#if defined(USE_SYSTEM_MINIZIP) -+#if 1//defined(USE_SYSTEM_MINIZIP) - #include <minizip/unzip.h> - #include <minizip/zip.h> - #else diff --git a/www-client/chromium/files/chromium-122-VirtualCursor-std-layout.patch b/www-client/chromium/files/chromium-122-VirtualCursor-std-layout.patch deleted file mode 100644 index 5b06407..0000000 --- a/www-client/chromium/files/chromium-122-VirtualCursor-std-layout.patch +++ /dev/null @@ -1,219 +0,0 @@ -diff --git a/sql/recover_module/btree.cc b/sql/recover_module/btree.cc -index ad985a3d7c..a013c4df17 100644 ---- a/sql/recover_module/btree.cc -+++ b/sql/recover_module/btree.cc -@@ -136,16 +136,22 @@ 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) { -+LeafPageDecoder::LeafPageDecoder() noexcept = default; -+ -+void LeafPageDecoder::Initialize(DatabasePageReader* 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(IsOnValidPage(db_reader)); - DCHECK(DatabasePageReader::IsValidPageId(page_id_)); - } - -+void LeafPageDecoder::Reset() { -+ db_reader_ = nullptr; -+} -+ - 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 155be1ef17..ed27107804 100644 ---- a/sql/recover_module/btree.h -+++ b/sql/recover_module/btree.h -@@ -104,9 +104,7 @@ class LeafPageDecoder { - public: - // Creates a decoder for a DatabasePageReader's last read page. - // -- // |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; -+ LeafPageDecoder() noexcept; - ~LeafPageDecoder() noexcept = default; - - LeafPageDecoder(const LeafPageDecoder&) = delete; -@@ -154,6 +152,17 @@ class LeafPageDecoder { - // read as long as CanAdvance() returns true. - bool TryAdvance(); - -+ // Initialize with DatabasePageReader -+ // |db_reader| must have been used to read an inner page of a table B-tree. -+ // |db_reader| must outlive this instance. -+ 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. -@@ -167,16 +176,16 @@ 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. - // This field is not a raw_ptr<> because it caused a - // std::is_trivially_destructible static_assert failure. -- RAW_PTR_EXCLUSION DatabasePageReader* const db_reader_; -+ RAW_PTR_EXCLUSION 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 8983af57e5..de5157c5a8 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()) -@@ -102,13 +102,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"; - -@@ -116,7 +116,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 4cb0655700..4be15393e3 100644 ---- a/sql/recover_module/cursor.h -+++ b/sql/recover_module/cursor.h -@@ -128,7 +128,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 7f5b368e51..cb7e2fda21 100644 ---- a/sql/recover_module/pager.cc -+++ b/sql/recover_module/pager.cc -@@ -24,8 +24,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->page_size()), table_(table) { - CHECK(table != nullptr); - CHECK(IsValidPageSize(table->page_size())); - } -@@ -59,7 +58,7 @@ int DatabasePageReader::ReadPage(int page_id) { - "The |read_offset| computation above may overflow"); - - int sqlite_status = -- RawRead(sqlite_file, read_size, read_offset, page_data_.get()); -+ RawRead(sqlite_file, read_size, read_offset, page_data_.data()); - - // |page_id_| needs to be set to kHighestInvalidPageId 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 d60c5a4f07..f39ce84d74 100644 ---- a/sql/recover_module/pager.h -+++ b/sql/recover_module/pager.h -@@ -6,8 +6,8 @@ - #define SQL_RECOVER_MODULE_PAGER_H_ - - #include <cstdint> --#include <memory> - #include <ostream> -+#include <vector> - - #include "base/check_op.h" - #include "base/memory/raw_ptr.h" -@@ -73,7 +73,7 @@ class DatabasePageReader { - DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); - CHECK(IsValidPageId(page_id_)) - << "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. -@@ -140,7 +140,7 @@ class DatabasePageReader { - int page_id_ = kHighestInvalidPageId; - // 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_; -+ std::vector<uint8_t> page_data_; - // Raw pointer usage is acceptable because this instance's owner is expected - // to ensure that the VirtualTable outlives this. - const raw_ptr<VirtualTable> table_; diff --git a/www-client/chromium/files/chromium-123-EnumTable-crash.patch b/www-client/chromium/files/chromium-123-EnumTable-crash.patch deleted file mode 100644 index 3c64789..0000000 --- a/www-client/chromium/files/chromium-123-EnumTable-crash.patch +++ /dev/null @@ -1,76 +0,0 @@ -diff --git a/components/media_router/common/providers/cast/channel/enum_table.h b/components/media_router/common/providers/cast/channel/enum_table.h -index dd58e6cfea..a0fa270bf2 100644 ---- a/components/media_router/common/providers/cast/channel/enum_table.h -+++ b/components/media_router/common/providers/cast/channel/enum_table.h -@@ -9,6 +9,7 @@ - #include <cstring> - #include <optional> - #include <ostream> -+#include <vector> - - #include "base/check_op.h" - #include "base/notreached.h" -@@ -187,7 +188,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: -@@ -253,7 +253,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; - }; - -@@ -312,15 +311,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 std::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 -@@ -348,8 +346,7 @@ class EnumTable { - // enum value directly. - std::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) : std::optional<E>(); - } - -@@ -364,7 +361,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) -@@ -376,8 +373,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-123-compiler.patch b/www-client/chromium/files/chromium-123-compiler.patch deleted file mode 100644 index 6faf9b7..0000000 --- a/www-client/chromium/files/chromium-123-compiler.patch +++ /dev/null @@ -1,317 +0,0 @@ -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index a91928eeac..afc87ad613 100644 ---- a/build/config/compiler/BUILD.gn -+++ b/build/config/compiler/BUILD.gn -@@ -322,9 +322,6 @@ config("compiler") { - - configs += [ - # See the definitions below. -- ":clang_revision", -- ":rustc_revision", -- ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -507,6 +504,9 @@ config("compiler") { - ldflags += [ "-fPIC" ] - rustflags += [ "-Crelocation-model=pic" ] - -+ extra_rustflags = getenv("RUSTFLAGS") -+ rustflags += [ extra_rustflags ] -+ - if (!is_clang) { - # Use pipes for communicating between sub-processes. Faster. - # (This flag doesn't do anything with Clang.) -@@ -598,55 +598,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 ] -- if (save_reproducers_on_lld_crash && use_lld) { -- ldflags += [ -- "-fcrash-diagnostics=all", -- "-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/1488374): This causes binary size growth and potentially -- # other problems. -- # TODO(crbug.com/1491036): This isn't supported by Cronet's mainline llvm version. -- if (default_toolchain != "//build/toolchain/cros:target" && -- !llvm_android_mainline) { -- cflags += [ -- "-mllvm", -- "-split-threshold-for-reg-with-hint=0", -- ] -- if (use_thin_lto && is_a_target_toolchain) { -- if (is_win) { -- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ] -- } else { -- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=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) || -@@ -1013,17 +964,6 @@ config("compiler") { - # `-nodefaultlibs` from the linker invocation from Rust, which would be used - # to compile dylibs on Android, such as for constructing unit test APKs. - "-Cdefault-linker-libraries", -- -- # To make Rust .d files compatible with ninja -- "-Zdep-info-omit-d-target", -- -- # If a macro panics during compilation, show which macro and where it is -- # defined. -- "-Zmacro-backtrace", -- -- # For deterministic builds, keep the local machine's current working -- # directory from appearing in build outputs. -- "-Zremap-cwd-prefix=.", - ] - - if (!is_win || force_rustc_color_output) { -@@ -1520,46 +1460,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=." ] -- swiftflags += [ "-file-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. -@@ -1578,39 +1478,6 @@ config("compiler_deterministic") { - } - } - --config("clang_revision") { -- if (is_clang && clang_base_path == default_clang_base_path) { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] -- if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] -- } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") -- -- # This is here so that all files get recompiled after a clang roll and -- # when turning clang on or off. (defines are passed via the command line, -- # and build system rebuild things when their commandline changes). Nothing -- # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -- } --} -- --config("rustc_revision") { -- if (rustc_revision != "") { -- # Similar to the above config, this is here so that all files get recompiled -- # after a rustc roll. Nothing should ever read this cfg. This will not be -- # set if a custom toolchain is used. -- rustflags = [ -- "--cfg", -- "cr_rustc_revision=\"$rustc_revision\"", -- ] -- } --} -- - config("compiler_arm_fpu") { - if (current_cpu == "arm" && !is_ios && !is_nacl) { - cflags = [ "-mfpu=$arm_fpu" ] -@@ -1964,11 +1831,7 @@ config("chromium_code") { - defines = [ "_HAS_NODISCARD" ] - } - } else { -- cflags = [ "-Wall" ] -- if (is_clang) { -- # Enable extra warnings for chromium_code when we control the compiler. -- cflags += [ "-Wextra" ] -- } -+ cflags = [ ] - - # In Chromium code, we define __STDC_foo_MACROS in order to get the - # C99 macros on Mac and Linux. -@@ -1977,24 +1840,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" && -- current_cpu != "riscv64" && current_cpu != "loong64") { -- # 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. -- fortify_level = "2" -- -- # ChromeOS's toolchain supports a high-quality _FORTIFY_SOURCE=3 -- # implementation with a few custom glibc patches. Use that if it's -- # available. -- if (is_chromeos_device && !lacros_use_chromium_toolchain) { -- fortify_level = "3" -- } -- defines += [ "_FORTIFY_SOURCE=" + fortify_level ] -- } -- - if (is_apple) { - cflags_objc = [ "-Wimplicit-retain-self" ] - cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2373,7 +2218,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. -@@ -2432,7 +2278,8 @@ config("optimize") { - } - - # Turn off optimizations. --config("no_optimize") { -+config("no_optimize") { } -+config("xno_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2472,7 +2319,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: -@@ -2505,7 +2353,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: -@@ -2531,7 +2380,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 -@@ -2664,7 +2514,8 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { -+config("symbols") { } -+config("xsymbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2813,7 +2664,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") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2898,7 +2750,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/build/config/rust.gni b/build/config/rust.gni -index 9b0ee754ba..a438ed231c 100644 ---- a/build/config/rust.gni -+++ b/build/config/rust.gni -@@ -75,7 +75,8 @@ declare_args() { - # - # TODO(https://crbug.com/1482525): Re-enable ThinLTO for Rust on LaCrOS - # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome -- toolchain_supports_rust_thin_lto = !is_chromeos -+ # toolchain_supports_rust_thin_lto = !is_chromeos -+ toolchain_supports_rust_thin_lto = false - - # Any extra std rlibs in your Rust toolchain, relative to the standard - # Rust toolchain. Typically used with 'rust_sysroot_absolute' diff --git a/www-client/chromium/files/chromium-125-compiler.patch b/www-client/chromium/files/chromium-125-compiler.patch deleted file mode 100644 index f656fcf..0000000 --- a/www-client/chromium/files/chromium-125-compiler.patch +++ /dev/null @@ -1,317 +0,0 @@ -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index 2ac26091c0..75abd9a935 100644 ---- a/build/config/compiler/BUILD.gn -+++ b/build/config/compiler/BUILD.gn -@@ -319,9 +319,6 @@ config("compiler") { - - configs += [ - # See the definitions below. -- ":clang_revision", -- ":rustc_revision", -- ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -496,6 +493,9 @@ config("compiler") { - ldflags += [ "-fPIC" ] - rustflags += [ "-Crelocation-model=pic" ] - -+ extra_rustflags = getenv("RUSTFLAGS") -+ rustflags += [ extra_rustflags ] -+ - if (!is_clang) { - # Use pipes for communicating between sub-processes. Faster. - # (This flag doesn't do anything with Clang.) -@@ -587,55 +587,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 ] -- if (save_reproducers_on_lld_crash && use_lld) { -- ldflags += [ -- "-fcrash-diagnostics=all", -- "-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/1488374): This causes binary size growth and potentially -- # other problems. -- # TODO(crbug.com/1491036): This isn't supported by Cronet's mainline llvm version. -- if (default_toolchain != "//build/toolchain/cros:target" && -- !llvm_android_mainline) { -- cflags += [ -- "-mllvm", -- "-split-threshold-for-reg-with-hint=0", -- ] -- if (use_thin_lto && is_a_target_toolchain) { -- if (is_win) { -- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ] -- } else { -- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=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) || -@@ -1000,17 +951,6 @@ config("compiler") { - # `-nodefaultlibs` from the linker invocation from Rust, which would be used - # to compile dylibs on Android, such as for constructing unit test APKs. - "-Cdefault-linker-libraries", -- -- # To make Rust .d files compatible with ninja -- "-Zdep-info-omit-d-target", -- -- # If a macro panics during compilation, show which macro and where it is -- # defined. -- "-Zmacro-backtrace", -- -- # For deterministic builds, keep the local machine's current working -- # directory from appearing in build outputs. -- "-Zremap-cwd-prefix=.", - ] - - if (!is_win || force_rustc_color_output) { -@@ -1518,46 +1458,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=." ] -- swiftflags += [ "-file-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 RBE cache entries. -@@ -1576,39 +1476,6 @@ config("compiler_deterministic") { - } - } - --config("clang_revision") { -- if (is_clang && clang_base_path == default_clang_base_path) { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] -- if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] -- } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") -- -- # This is here so that all files get recompiled after a clang roll and -- # when turning clang on or off. (defines are passed via the command line, -- # and build system rebuild things when their commandline changes). Nothing -- # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -- } --} -- --config("rustc_revision") { -- if (rustc_revision != "") { -- # Similar to the above config, this is here so that all files get recompiled -- # after a rustc roll. Nothing should ever read this cfg. This will not be -- # set if a custom toolchain is used. -- rustflags = [ -- "--cfg", -- "cr_rustc_revision=\"$rustc_revision\"", -- ] -- } --} -- - config("compiler_arm_fpu") { - if (current_cpu == "arm" && !is_ios && !is_nacl) { - cflags = [ "-mfpu=$arm_fpu" ] -@@ -1981,11 +1848,7 @@ config("chromium_code") { - defines = [ "_HAS_NODISCARD" ] - } - } else { -- cflags = [ "-Wall" ] -- if (is_clang) { -- # Enable extra warnings for chromium_code when we control the compiler. -- cflags += [ "-Wextra" ] -- } -+ cflags = [ ] - - # In Chromium code, we define __STDC_foo_MACROS in order to get the - # C99 macros on Mac and Linux. -@@ -1994,24 +1857,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" && -- current_cpu != "riscv64" && current_cpu != "loong64") { -- # 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. -- fortify_level = "2" -- -- # ChromeOS's toolchain supports a high-quality _FORTIFY_SOURCE=3 -- # implementation with a few custom glibc patches. Use that if it's -- # available. -- if (is_chromeos_device && !lacros_use_chromium_toolchain) { -- fortify_level = "3" -- } -- defines += [ "_FORTIFY_SOURCE=" + fortify_level ] -- } -- - if (is_apple) { - cflags_objc = [ "-Wimplicit-retain-self" ] - cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2387,7 +2232,8 @@ config("default_stack_frames") { - } - - # Default "optimization on" config. --config("optimize") { -+config("optimize") { } -+config("xoptimize") { - if (is_win) { - cflags = [ "/O2" ] + common_optimize_on_cflags - -@@ -2428,7 +2274,8 @@ config("optimize") { - } - - # Turn off optimizations. --config("no_optimize") { -+config("no_optimize") { } -+config("xno_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2468,7 +2315,8 @@ config("no_optimize") { - # Turns up the optimization level. Used to explicitly enable -O2 instead of - # -Os for select targets on platforms that use optimize_for_size. No-op - # elsewhere. --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: -@@ -2501,7 +2349,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: -@@ -2530,7 +2379,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 -@@ -2663,7 +2513,8 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { -+config("symbols") { } -+config("xsymbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2812,7 +2663,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") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2897,7 +2749,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/build/config/rust.gni b/build/config/rust.gni -index 59fa14463b..ca780602b4 100644 ---- a/build/config/rust.gni -+++ b/build/config/rust.gni -@@ -75,7 +75,8 @@ declare_args() { - # - # TODO(https://crbug.com/1482525): Re-enable ThinLTO for Rust on LaCrOS - # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome -- toolchain_supports_rust_thin_lto = !is_chromeos -+ # toolchain_supports_rust_thin_lto = !is_chromeos -+ toolchain_supports_rust_thin_lto = false - - # Any extra std rlibs in your Rust toolchain, relative to the standard - # Rust toolchain. Typically used with 'rust_sysroot_absolute' diff --git a/www-client/chromium/files/chromium-125-revert-8a3bec6.patch b/www-client/chromium/files/chromium-125-revert-8a3bec6.patch deleted file mode 100644 index 0f19d49..0000000 --- a/www-client/chromium/files/chromium-125-revert-8a3bec6.patch +++ /dev/null @@ -1,450 +0,0 @@ -diff --git a/third_party/blink/renderer/platform/BUILD.gn b/third_party/blink/renderer/platform/BUILD.gn -index 2c079c06c5..34a844659b 100644 ---- a/third_party/blink/renderer/platform/BUILD.gn -+++ b/third_party/blink/renderer/platform/BUILD.gn -@@ -118,10 +118,7 @@ blink_python_runner("color_data") { - - compiled_action("character_data") { - tool = ":character_data_generator" -- outputs = [ -- "$blink_platform_output_dir/character_property_data.cc", -- "$blink_platform_output_dir/text/break_iterator_data_inline_header.h", -- ] -+ outputs = [ "$blink_platform_output_dir/character_property_data.cc" ] - args = rebase_path(outputs, root_build_dir) - } - -diff --git a/third_party/blink/renderer/platform/runtime_enabled_features.json5 b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -index 28d34020f7..45942f4e89 100644 ---- a/third_party/blink/renderer/platform/runtime_enabled_features.json5 -+++ b/third_party/blink/renderer/platform/runtime_enabled_features.json5 -@@ -509,11 +509,6 @@ - public: true, - status: "experimental", - }, -- { -- // crbug.com/41485013 -- name: "BreakIteratorDataGenerator", -- status: "stable", -- }, - { - name: "BrowserVerifiedUserActivationKeyboard", - base_feature: "none", -diff --git a/third_party/blink/renderer/platform/text/character_property_data_generator.cc b/third_party/blink/renderer/platform/text/character_property_data_generator.cc -index 70101dbf76..27e6852647 100644 ---- a/third_party/blink/renderer/platform/text/character_property_data_generator.cc -+++ b/third_party/blink/renderer/platform/text/character_property_data_generator.cc -@@ -5,19 +5,13 @@ - #include "third_party/blink/renderer/platform/text/character_property_data.h" - - #include <stdio.h> --#include <unicode/brkiter.h> --#include <unicode/locid.h> - #include <unicode/ucptrie.h> --#include <unicode/udata.h> --#include <unicode/ulocdata.h> - #include <unicode/umutablecptrie.h> - #include <unicode/uniset.h> - #include <unicode/unistr.h> - - #include <cassert> - #include <cstring> --#include <filesystem> --#include <fstream> - #include <iterator> - #include <memory> - -@@ -31,36 +25,6 @@ - namespace blink { - namespace { - --#define CHECK_U_ERROR(error, name) \ -- CHECK(U_SUCCESS(error)) << name << ": (" << error << ")" << u_errorName(error) -- --// --// Load the ICU data file and set it to the ICU. --// --void InitializeIcu(const char* exec_path) { -- // ICU can't load the data file by itself because ICU tries to load the -- // versioned data file (e.g., "icudt73l.dat"), while the Chromium build system -- // creates the unversioned data file (e.g., "icudtl.dat"). -- std::filesystem::path path{exec_path}; -- path = path.parent_path() / "icudt" U_ICUDATA_TYPE_LETTER ".dat"; -- -- std::ifstream data_ifstream(path, std::ios_base::binary); -- CHECK(data_ifstream.is_open()); -- static std::vector<uint8_t> icu_data; -- CHECK(icu_data.empty()); -- std::copy(std::istreambuf_iterator<char>(data_ifstream), -- std::istreambuf_iterator<char>(), std::back_inserter(icu_data)); -- UErrorCode error = U_ZERO_ERROR; -- udata_setCommonData(icu_data.data(), &error); -- CHECK_U_ERROR(error, "udata_setCommonData"); -- -- // Check ICU functions that need the data resources are working. -- // https://unicode-org.github.io/icu/userguide/icu/design.html#icu4c-initialization-and-termination -- UVersionInfo version; -- ulocdata_getCLDRVersion(version, &error); -- CHECK_U_ERROR(error, "ulocdata_getCLDRVersion"); --} -- - class CharacterPropertyValues { - public: - constexpr static UChar32 kMaxCodepoint = 0x10FFFF; -@@ -255,201 +219,18 @@ static void GenerateCharacterPropertyData(FILE* fp) { - GenerateUTrieSerialized(fp, serialized_size, serialized); - } - --// --// Generate a line break pair table in `break_iterator_data_inline_header.h`. --// --// See [UAX14](https://unicode.org/reports/tr14/). --// --class LineBreakData { -- public: -- LineBreakData() = default; -- -- static void Generate(FILE* fp) { -- LineBreakData data; -- data.FillFromIcu(); -- data.FillAscii(); -- data.Print(fp); -- } -- -- private: -- // Fill the pair table from the ICU BreakIterator. -- void FillFromIcu() { -- UErrorCode status = U_ZERO_ERROR; -- const icu::Locale locale("en"); -- icu::BreakIterator* break_iterator = -- icu::BreakIterator::createLineInstance(locale, status); -- CHECK_U_ERROR(status, "createLineInstance"); -- -- for (UChar ch = kMinChar; ch <= kMaxChar; ++ch) { -- const icu::UnicodeString ch_str(ch); -- for (UChar ch_next = kMinChar; ch_next <= kMaxChar; ++ch_next) { -- const icu::UnicodeString ch_next_str(ch_next); -- const icu::UnicodeString str = ch_str + ch_next_str; -- break_iterator->setText(str); -- SetPairValue(ch, ch_next, break_iterator->isBoundary(1)); -- } -- } -- } -- -- // Line breaking table for printable ASCII characters. Line breaking -- // opportunities in this table are as below: -- // - before opening punctuations such as '(', '<', '[', '{' after certain -- // characters (compatible with Firefox 3.6); -- // - after '-' and '?' (backward-compatible, and compatible with Internet -- // Explorer). -- // Please refer to <https://bugs.webkit.org/show_bug.cgi?id=37698> for line -- // breaking matrixes of different browsers and the ICU standard. -- void FillAscii() { --#define ALL_CHAR '!', 0x7F -- SetPairValue(ALL_CHAR, ALL_CHAR, false); -- SetPairValue(ALL_CHAR, '(', '(', true); -- SetPairValue(ALL_CHAR, '<', '<', true); -- SetPairValue(ALL_CHAR, '[', '[', true); -- SetPairValue(ALL_CHAR, '{', '{', true); -- SetPairValue('-', '-', ALL_CHAR, true); -- SetPairValue('?', '?', ALL_CHAR, true); -- SetPairValue('-', '-', '$', '$', false); -- SetPairValue(ALL_CHAR, '!', '!', false); -- SetPairValue('?', '?', '"', '"', false); -- SetPairValue('?', '?', '\'', '\'', false); -- SetPairValue(ALL_CHAR, ')', ')', false); -- SetPairValue(ALL_CHAR, ',', ',', false); -- SetPairValue(ALL_CHAR, '.', '.', false); -- SetPairValue(ALL_CHAR, '/', '/', false); -- // Note: Between '-' and '[0-9]' is hard-coded in `ShouldBreakFast()`. -- SetPairValue('-', '-', '0', '9', false); -- SetPairValue(ALL_CHAR, ':', ':', false); -- SetPairValue(ALL_CHAR, ';', ';', false); -- SetPairValue(ALL_CHAR, '?', '?', false); -- SetPairValue(ALL_CHAR, ']', ']', false); -- SetPairValue(ALL_CHAR, '}', '}', false); -- SetPairValue('$', '$', ALL_CHAR, false); -- SetPairValue('\'', '\'', ALL_CHAR, false); -- SetPairValue('(', '(', ALL_CHAR, false); -- SetPairValue('/', '/', ALL_CHAR, false); -- SetPairValue('0', '9', ALL_CHAR, false); -- SetPairValue('<', '<', ALL_CHAR, false); -- SetPairValue('@', '@', ALL_CHAR, false); -- SetPairValue('A', 'Z', ALL_CHAR, false); -- SetPairValue('[', '[', ALL_CHAR, false); -- SetPairValue('^', '`', ALL_CHAR, false); -- SetPairValue('a', 'z', ALL_CHAR, false); -- SetPairValue('{', '{', ALL_CHAR, false); -- SetPairValue(0x7F, 0x7F, ALL_CHAR, false); --#undef ALL_CHAR -- } -- -- // Print the C++ source code. -- void Print(FILE* fp) { -- // Print file headers. -- fprintf(fp, -- "#include <cstdint>\n" -- "#include " -- "\"third_party/blink/renderer/platform/wtf/text/wtf_uchar.h\"\n" -- "\nnamespace {\n\n"); -- -- fprintf(fp, "constexpr UChar kFastLineBreakMinChar = 0x%02X;\n", kMinChar); -- fprintf(fp, "constexpr UChar kFastLineBreakMaxChar = 0x%02X;\n", kMaxChar); -- -- // Define macros. -- fprintf(fp, -- "\n#define B(a, b, c, d, e, f, g, h)" -- " ((a) | ((b) << 1) | ((c) << 2) | ((d) << 3) |" -- " ((e) << 4) | ((f) << 5) | ((g) << 6) | ((h) << 7))\n\n"); -- -- fprintf(fp, "const uint8_t kFastLineBreakTable[%d][%d] = {\n", kNumChars, -- kNumCharsRoundUp8 / 8); -- -- // Print the column comment. -- fprintf(fp, " /*"); -- for (UChar ch = kMinChar; ch <= kMaxChar; ++ch) { -- if (ch != kMinChar && (ch - kMinChar) % 8 == 0) { -- fprintf(fp, " "); -- } -- fprintf(fp, ch < 0x7F ? " %c" : "%02X", ch); -- } -- fprintf(fp, " */\n"); -- -- // Print the data array. -- for (int y = 0; y < kNumChars; ++y) { -- const UChar ch = y + kMinChar; -- fprintf(fp, "/* %02X %c */ {B(", ch, ch < 0x7F ? ch : ' '); -- const char* prefix = ""; -- for (int x = 0; x < kNumCharsRoundUp8; ++x) { -- fprintf(fp, "%s%d", prefix, pair_[y][x]); -- prefix = (x % 8 == 7) ? "),B(" : ","; -- } -- fprintf(fp, ")},\n"); -- } -- fprintf(fp, -- "};\n\n" -- "#undef B\n\n" -- "template <typename T>\n" -- "inline uint8_t GetFastLineBreak(T ch1, T ch2) {\n" -- " const T i2 = ch2 - kFastLineBreakMinChar;\n" -- " return kFastLineBreakTable[ch1 - kFastLineBreakMinChar]" -- "[i2 / 8] & (1 << (i2 %% 8));\n" -- "}\n\n" -- "} // namespace\n"); -- } -- -- void SetPairValue(UChar ch1_min, -- UChar ch1_max, -- UChar ch2_min, -- UChar ch2_max, -- bool value) { -- for (UChar ch1 = ch1_min; ch1 <= ch1_max; ++ch1) { -- for (UChar ch2 = ch2_min; ch2 <= ch2_max; ++ch2) { -- SetPairValue(ch1, ch2, value); -- } -- } -- } -- -- // Set the breakability between `ch1` and `ch2`. -- void SetPairValue(UChar ch1, UChar ch2, bool value) { -- CHECK_GE(ch1, kMinChar); -- CHECK_LE(ch1, kMaxChar); -- CHECK_GE(ch2, kMinChar); -- CHECK_LE(ch2, kMaxChar); -- pair_[ch1 - kMinChar][ch2 - kMinChar] = value; -- } -- -- constexpr static UChar kMinChar = '!'; -- constexpr static UChar kMaxChar = 0xFF; -- constexpr static int kNumChars = kMaxChar - kMinChar + 1; -- constexpr static int kNumCharsRoundUp8 = (kNumChars + 7) / 8 * 8; -- bool pair_[kNumChars][kNumCharsRoundUp8]{}; --}; -- --void InvokeGenerator(int index, -- int argc, -- char** argv, -- void (*generator)(FILE*)) { -- if (index >= argc) { -- return; -- } -- const char* path = argv[index]; -- if (!*path) { -- return; -- } -- -- if (strcmp(path, "-") == 0) { -- (*generator)(stdout); -- return; -- } -- -- FILE* fp = fopen(path, "wb"); -- (*generator)(fp); -- fclose(fp); --} -- - } // namespace - } // namespace blink - - int main(int argc, char** argv) { -- blink::InitializeIcu(argv[0]); -- blink::InvokeGenerator(1, argc, argv, blink::GenerateCharacterPropertyData); -- blink::InvokeGenerator(2, argc, argv, blink::LineBreakData::Generate); -+ // Write the serialized array to the source file. -+ if (argc <= 1) { -+ blink::GenerateCharacterPropertyData(stdout); -+ } else { -+ FILE* fp = fopen(argv[1], "wb"); -+ blink::GenerateCharacterPropertyData(fp); -+ fclose(fp); -+ } - - return 0; - } -diff --git a/third_party/blink/renderer/platform/text/text_break_iterator.cc b/third_party/blink/renderer/platform/text/text_break_iterator.cc -index 650eb760b2..14de47d9fe 100644 ---- a/third_party/blink/renderer/platform/text/text_break_iterator.cc -+++ b/third_party/blink/renderer/platform/text/text_break_iterator.cc -@@ -26,8 +26,6 @@ - #include <unicode/uchar.h> - #include <unicode/uvernum.h> - --#include "third_party/blink/renderer/platform/runtime_enabled_features.h" --#include "third_party/blink/renderer/platform/text/break_iterator_data_inline_header.h" - #include "third_party/blink/renderer/platform/wtf/std_lib_extras.h" - #include "third_party/blink/renderer/platform/wtf/text/ascii_ctype.h" - #include "third_party/blink/renderer/platform/wtf/text/character_names.h" -@@ -113,9 +111,6 @@ static const UChar kAsciiLineBreakTableLastChar = 127; - - #define F 0xFF - --// Check if the generated table match the `kAsciiLineBreakTable` table. --#define CHECK_ASCII_LINE_BRAEK_TABLE 0 -- - // Line breaking table for printable ASCII characters. Line breaking - // opportunities in this table are as below: - // - before opening punctuations such as '(', '<', '[', '{' after certain -@@ -166,24 +161,6 @@ static const unsigned char kAsciiLineBreakTable[][(kAsciiLineBreakTableLastChar - }; - // clang-format on - --#if CHECK_ASCII_LINE_BRAEK_TABLE --void CheckAsciiLineBreakTable() { -- for (UChar ch2 = kAsciiLineBreakTableFirstChar; -- ch2 <= kAsciiLineBreakTableLastChar; ++ch2) { -- for (UChar ch1 = kAsciiLineBreakTableFirstChar; -- ch1 <= kAsciiLineBreakTableLastChar; ++ch1) { -- const UChar i2 = ch2 - kAsciiLineBreakTableFirstChar; -- const bool ascii = -- kAsciiLineBreakTable[ch1 - kAsciiLineBreakTableFirstChar][i2 / 8] & -- (1 << (i2 % 8)); -- const bool fast = GetFastLineBreak(ch1, ch2); -- CHECK_EQ(ascii, fast) -- << String::Format("%02X/%02X (%c/%c)", ch1, ch2, ch1, ch2); -- } -- } --} --#endif // CHECK_ASCII_LINE_BRAEK_TABLE -- - #define BA_LB_COUNT U_LB_COUNT - // Line breaking table for CSS word-break: break-all. This table differs from - // asciiLineBreakTable in: -@@ -298,13 +275,7 @@ static inline bool ShouldKeepAfterKeepAll(UChar last_ch, - } - - inline bool NeedsLineBreakIterator(UChar ch) { -- if (UNLIKELY(!RuntimeEnabledFeatures::BreakIteratorDataGeneratorEnabled())) { -- return ch > kAsciiLineBreakTableLastChar && ch != kNoBreakSpaceCharacter; -- } -- static_assert(kFastLineBreakMaxChar >= kAsciiLineBreakTableLastChar); -- static_assert(kNoBreakSpaceCharacter <= kFastLineBreakMaxChar, -- "Include NBSP for the performance."); -- return ch > kFastLineBreakMaxChar; -+ return ch > kAsciiLineBreakTableLastChar && ch != kNoBreakSpaceCharacter; - } - - template <typename CharacterType> -@@ -349,61 +320,31 @@ struct LazyLineBreakIterator::Context { - last = current; - } - -- bool ShouldBreakFast(bool disable_soft_hyphen) const { --#if CHECK_ASCII_LINE_BRAEK_TABLE -- DEFINE_STATIC_LOCAL(bool, is_check_done, (false)); -- if (!is_check_done) { -- is_check_done = true; -- CheckAsciiLineBreakTable(); -- LOG(INFO) << "CheckAsciiLineBreakTable() completed."; -- } --#endif // CHECK_ASCII_LINE_BRAEK_TABLE -- -+ bool ShouldBreakFast() const { - const UChar last_ch = last.ch; - const UChar ch = current.ch; -- static_assert(kFastLineBreakMinChar == kAsciiLineBreakTableFirstChar); -- if (UNLIKELY(last_ch < kFastLineBreakMinChar || -- ch < kFastLineBreakMinChar)) { -+ if (UNLIKELY(last_ch < kAsciiLineBreakTableFirstChar || -+ ch < kAsciiLineBreakTableFirstChar)) { - return false; - } - - // Don't allow line breaking between '-' and a digit if the '-' may mean a - // minus sign in the context, while allow breaking in 'ABCD-1234' and - // '1234-5678' which may be in long URLs. -- static_assert('-' >= kFastLineBreakMinChar); -+ static_assert('-' >= kAsciiLineBreakTableFirstChar); - if (last_ch == '-' && IsASCIIDigit(ch)) { - return IsASCIIAlphanumeric(last_last_ch); - } - -- if (UNLIKELY( -- !RuntimeEnabledFeatures::BreakIteratorDataGeneratorEnabled())) { -- // If both `last_ch` and `ch` are ASCII characters, use a lookup table for -- // enhanced speed and for compatibility with other browsers (see comments -- // for asciiLineBreakTable for details). -- if (last_ch <= kAsciiLineBreakTableLastChar && -- ch <= kAsciiLineBreakTableLastChar) { -- const unsigned char* table_row = -- kAsciiLineBreakTable[last_ch - kAsciiLineBreakTableFirstChar]; -- int ch_index = ch - kAsciiLineBreakTableFirstChar; -- return table_row[ch_index / 8] & (1 << (ch_index % 8)); -- } -- -- // Otherwise defer to the Unicode algorithm by returning false. -- return false; -- } -- -- // If both characters are in the fast line break table, use it for enhanced -- // speed. For ASCII characters, it is also for compatibility. The table is -- // generated at the build time, see the `LineBreakData` class. -- if (last_ch <= kFastLineBreakMaxChar && ch <= kFastLineBreakMaxChar) { -- if (!GetFastLineBreak(last_ch, ch)) { -- return false; -- } -- static_assert(kSoftHyphenCharacter <= kFastLineBreakMaxChar); -- if (UNLIKELY(disable_soft_hyphen && last_ch == kSoftHyphenCharacter)) { -- return false; -- } -- return true; -+ // If both `last_ch` and `ch` are ASCII characters, use a lookup table for -+ // enhanced speed and for compatibility with other browsers (see comments -+ // for asciiLineBreakTable for details). -+ if (last_ch <= kAsciiLineBreakTableLastChar && -+ ch <= kAsciiLineBreakTableLastChar) { -+ const unsigned char* table_row = -+ kAsciiLineBreakTable[last_ch - kAsciiLineBreakTableFirstChar]; -+ int ch_index = ch - kAsciiLineBreakTableFirstChar; -+ return table_row[ch_index / 8] & (1 << (ch_index % 8)); - } - - // Otherwise defer to the Unicode algorithm by returning false. -@@ -452,7 +393,7 @@ inline int LazyLineBreakIterator::NextBreakablePosition( - break; - } - -- if (context.ShouldBreakFast(disable_soft_hyphen_)) { -+ if (context.ShouldBreakFast()) { - return i; - } - diff --git a/www-client/chromium/files/chromium-126-EnumTable-crash.patch b/www-client/chromium/files/chromium-126-EnumTable-crash.patch deleted file mode 100644 index 468cbf0..0000000 --- a/www-client/chromium/files/chromium-126-EnumTable-crash.patch +++ /dev/null @@ -1,76 +0,0 @@ -diff --git a/components/media_router/common/providers/cast/channel/enum_table.h b/components/media_router/common/providers/cast/channel/enum_table.h -index 3f2ec76729..4e9c562113 100644 ---- a/components/media_router/common/providers/cast/channel/enum_table.h -+++ b/components/media_router/common/providers/cast/channel/enum_table.h -@@ -10,6 +10,7 @@ - #include <optional> - #include <ostream> - #include <string_view> -+#include <vector> - - #include "base/check_op.h" - #include "base/notreached.h" -@@ -187,7 +188,6 @@ class - inline constexpr GenericEnumTableEntry(int32_t value); - inline constexpr GenericEnumTableEntry(int32_t value, std::string_view str); - -- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete; - GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete; - - private: -@@ -253,7 +253,6 @@ class EnumTable { - constexpr Entry(E value, std::string_view str) - : GenericEnumTableEntry(static_cast<int32_t>(value), str) {} - -- Entry(const Entry&) = delete; - Entry& operator=(const Entry&) = delete; - }; - -@@ -312,15 +311,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 std::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 -@@ -348,8 +346,7 @@ class EnumTable { - // enum value directly. - std::optional<E> GetEnum(std::string_view 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) : std::optional<E>(); - } - -@@ -364,7 +361,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) -@@ -376,8 +373,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-126-compiler-r1.patch b/www-client/chromium/files/chromium-126-compiler-r1.patch deleted file mode 100644 index 6140453..0000000 --- a/www-client/chromium/files/chromium-126-compiler-r1.patch +++ /dev/null @@ -1,317 +0,0 @@ -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index d39de9bc56..4b37db6c59 100644 ---- a/build/config/compiler/BUILD.gn -+++ b/build/config/compiler/BUILD.gn -@@ -305,9 +305,6 @@ config("compiler") { - - configs += [ - # See the definitions below. -- ":clang_revision", -- ":rustc_revision", -- ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -483,6 +480,9 @@ config("compiler") { - ldflags += [ "-fPIC" ] - rustflags += [ "-Crelocation-model=pic" ] - -+ extra_rustflags = getenv("RUSTFLAGS") -+ rustflags += [ extra_rustflags ] -+ - if (!is_clang) { - # Use pipes for communicating between sub-processes. Faster. - # (This flag doesn't do anything with Clang.) -@@ -545,55 +545,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 ] -- if (save_reproducers_on_lld_crash && use_lld) { -- ldflags += [ -- "-fcrash-diagnostics=all", -- "-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/40283598): This causes binary size growth and potentially -- # other problems. -- # TODO(crbug.com/40284925): This isn't supported by Cronet's mainline llvm version. -- if (default_toolchain != "//build/toolchain/cros:target" && -- !llvm_android_mainline) { -- cflags += [ -- "-mllvm", -- "-split-threshold-for-reg-with-hint=0", -- ] -- if (use_thin_lto && is_a_target_toolchain) { -- if (is_win) { -- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ] -- } else { -- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ] -- } -- } -- } -- -- # TODO(crbug.com/40192287): 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) || -@@ -998,17 +949,6 @@ config("compiler") { - # `-nodefaultlibs` from the linker invocation from Rust, which would be used - # to compile dylibs on Android, such as for constructing unit test APKs. - "-Cdefault-linker-libraries", -- -- # To make Rust .d files compatible with ninja -- "-Zdep-info-omit-d-target", -- -- # If a macro panics during compilation, show which macro and where it is -- # defined. -- "-Zmacro-backtrace", -- -- # For deterministic builds, keep the local machine's current working -- # directory from appearing in build outputs. -- "-Zremap-cwd-prefix=.", - ] - - if (!is_win || force_rustc_color_output) { -@@ -1516,46 +1456,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=." ] -- swiftflags += [ "-file-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 RBE cache entries. -@@ -1574,39 +1474,6 @@ config("compiler_deterministic") { - } - } - --config("clang_revision") { -- if (is_clang && clang_base_path == default_clang_base_path) { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] -- if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] -- } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") -- -- # This is here so that all files get recompiled after a clang roll and -- # when turning clang on or off. (defines are passed via the command line, -- # and build system rebuild things when their commandline changes). Nothing -- # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -- } --} -- --config("rustc_revision") { -- if (rustc_revision != "") { -- # Similar to the above config, this is here so that all files get recompiled -- # after a rustc roll. Nothing should ever read this cfg. This will not be -- # set if a custom toolchain is used. -- rustflags = [ -- "--cfg", -- "cr_rustc_revision=\"$rustc_revision\"", -- ] -- } --} -- - config("compiler_arm_fpu") { - if (current_cpu == "arm" && !is_ios && !is_nacl) { - cflags = [ "-mfpu=$arm_fpu" ] -@@ -1982,11 +1849,7 @@ config("chromium_code") { - defines = [ "_HAS_NODISCARD" ] - } - } else { -- cflags = [ "-Wall" ] -- if (is_clang) { -- # Enable extra warnings for chromium_code when we control the compiler. -- cflags += [ "-Wextra" ] -- } -+ cflags = [ ] - - # In Chromium code, we define __STDC_foo_MACROS in order to get the - # C99 macros on Mac and Linux. -@@ -1995,24 +1858,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" && -- current_cpu != "riscv64" && current_cpu != "loong64") { -- # 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. -- fortify_level = "2" -- -- # ChromeOS's toolchain supports a high-quality _FORTIFY_SOURCE=3 -- # implementation with a few custom glibc patches. Use that if it's -- # available. -- if (is_chromeos_device && !lacros_use_chromium_toolchain) { -- fortify_level = "3" -- } -- defines += [ "_FORTIFY_SOURCE=" + fortify_level ] -- } -- - if (is_apple) { - cflags_objc = [ "-Wimplicit-retain-self" ] - cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2402,7 +2247,8 @@ config("default_stack_frames") { - # [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000 - # [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000 - # [2]: https://crrev.com/c/5447532 --config("optimize") { -+config("optimize") { } -+config("xoptimize") { - if (is_win) { - cflags = [ "/O2" ] + common_optimize_on_cflags - -@@ -2443,7 +2289,8 @@ config("optimize") { - } - - # Turn off optimizations. --config("no_optimize") { -+config("no_optimize") { } -+config("xno_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2483,7 +2330,8 @@ config("no_optimize") { - # Turns up the optimization level. Used to explicitly enable -O2 instead of - # -Os for select targets on platforms that use optimize_for_size. No-op - # elsewhere. --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: -@@ -2516,7 +2364,8 @@ config("optimize_max") { - # - # TODO(crbug.com/41259697) - 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: -@@ -2545,7 +2394,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 -@@ -2678,7 +2528,8 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { -+config("symbols") { } -+config("xsymbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2828,7 +2679,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") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2913,7 +2765,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/build/config/rust.gni b/build/config/rust.gni -index e99d7d08e1..898b3e6630 100644 ---- a/build/config/rust.gni -+++ b/build/config/rust.gni -@@ -75,7 +75,8 @@ declare_args() { - # - # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS - # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome -- toolchain_supports_rust_thin_lto = !is_chromeos -+ # toolchain_supports_rust_thin_lto = !is_chromeos -+ toolchain_supports_rust_thin_lto = false - - # Any extra std rlibs in your Rust toolchain, relative to the standard - # Rust toolchain. Typically used with 'rust_sysroot_absolute' diff --git a/www-client/chromium/files/chromium-126-compiler.patch b/www-client/chromium/files/chromium-126-compiler.patch deleted file mode 100644 index d93c82a..0000000 --- a/www-client/chromium/files/chromium-126-compiler.patch +++ /dev/null @@ -1,317 +0,0 @@ -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index 973d8bcbd2..9be41363ff 100644 ---- a/build/config/compiler/BUILD.gn -+++ b/build/config/compiler/BUILD.gn -@@ -319,9 +319,6 @@ config("compiler") { - - configs += [ - # See the definitions below. -- ":clang_revision", -- ":rustc_revision", -- ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -496,6 +493,9 @@ config("compiler") { - ldflags += [ "-fPIC" ] - rustflags += [ "-Crelocation-model=pic" ] - -+ extra_rustflags = getenv("RUSTFLAGS") -+ rustflags += [ extra_rustflags ] -+ - if (!is_clang) { - # Use pipes for communicating between sub-processes. Faster. - # (This flag doesn't do anything with Clang.) -@@ -587,55 +587,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 ] -- if (save_reproducers_on_lld_crash && use_lld) { -- ldflags += [ -- "-fcrash-diagnostics=all", -- "-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/1488374): This causes binary size growth and potentially -- # other problems. -- # TODO(crbug.com/1491036): This isn't supported by Cronet's mainline llvm version. -- if (default_toolchain != "//build/toolchain/cros:target" && -- !llvm_android_mainline) { -- cflags += [ -- "-mllvm", -- "-split-threshold-for-reg-with-hint=0", -- ] -- if (use_thin_lto && is_a_target_toolchain) { -- if (is_win) { -- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ] -- } else { -- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=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) || -@@ -1023,17 +974,6 @@ config("compiler") { - # `-nodefaultlibs` from the linker invocation from Rust, which would be used - # to compile dylibs on Android, such as for constructing unit test APKs. - "-Cdefault-linker-libraries", -- -- # To make Rust .d files compatible with ninja -- "-Zdep-info-omit-d-target", -- -- # If a macro panics during compilation, show which macro and where it is -- # defined. -- "-Zmacro-backtrace", -- -- # For deterministic builds, keep the local machine's current working -- # directory from appearing in build outputs. -- "-Zremap-cwd-prefix=.", - ] - - if (!is_win || force_rustc_color_output) { -@@ -1541,46 +1481,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=." ] -- swiftflags += [ "-file-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 RBE cache entries. -@@ -1599,39 +1499,6 @@ config("compiler_deterministic") { - } - } - --config("clang_revision") { -- if (is_clang && clang_base_path == default_clang_base_path) { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] -- if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] -- } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") -- -- # This is here so that all files get recompiled after a clang roll and -- # when turning clang on or off. (defines are passed via the command line, -- # and build system rebuild things when their commandline changes). Nothing -- # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -- } --} -- --config("rustc_revision") { -- if (rustc_revision != "") { -- # Similar to the above config, this is here so that all files get recompiled -- # after a rustc roll. Nothing should ever read this cfg. This will not be -- # set if a custom toolchain is used. -- rustflags = [ -- "--cfg", -- "cr_rustc_revision=\"$rustc_revision\"", -- ] -- } --} -- - config("compiler_arm_fpu") { - if (current_cpu == "arm" && !is_ios && !is_nacl) { - cflags = [ "-mfpu=$arm_fpu" ] -@@ -2007,11 +1874,7 @@ config("chromium_code") { - defines = [ "_HAS_NODISCARD" ] - } - } else { -- cflags = [ "-Wall" ] -- if (is_clang) { -- # Enable extra warnings for chromium_code when we control the compiler. -- cflags += [ "-Wextra" ] -- } -+ cflags = [ ] - - # In Chromium code, we define __STDC_foo_MACROS in order to get the - # C99 macros on Mac and Linux. -@@ -2020,24 +1883,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" && -- current_cpu != "riscv64" && current_cpu != "loong64") { -- # 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. -- fortify_level = "2" -- -- # ChromeOS's toolchain supports a high-quality _FORTIFY_SOURCE=3 -- # implementation with a few custom glibc patches. Use that if it's -- # available. -- if (is_chromeos_device && !lacros_use_chromium_toolchain) { -- fortify_level = "3" -- } -- defines += [ "_FORTIFY_SOURCE=" + fortify_level ] -- } -- - if (is_apple) { - cflags_objc = [ "-Wimplicit-retain-self" ] - cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2427,7 +2272,8 @@ config("default_stack_frames") { - # [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000 - # [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000 - # [2]: https://crrev.com/c/5447532 --config("optimize") { -+config("optimize") { } -+config("xoptimize") { - if (is_win) { - cflags = [ "/O2" ] + common_optimize_on_cflags - -@@ -2468,7 +2314,8 @@ config("optimize") { - } - - # Turn off optimizations. --config("no_optimize") { -+config("no_optimize") { } -+config("xno_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2508,7 +2355,8 @@ config("no_optimize") { - # Turns up the optimization level. Used to explicitly enable -O2 instead of - # -Os for select targets on platforms that use optimize_for_size. No-op - # elsewhere. --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: -@@ -2541,7 +2389,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: -@@ -2570,7 +2419,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 -@@ -2703,7 +2553,8 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { -+config("symbols") { } -+config("xsymbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2852,7 +2703,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") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2937,7 +2789,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/build/config/rust.gni b/build/config/rust.gni -index 59fa14463b..ca780602b4 100644 ---- a/build/config/rust.gni -+++ b/build/config/rust.gni -@@ -75,7 +75,8 @@ declare_args() { - # - # TODO(https://crbug.com/1482525): Re-enable ThinLTO for Rust on LaCrOS - # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome -- toolchain_supports_rust_thin_lto = !is_chromeos -+ # toolchain_supports_rust_thin_lto = !is_chromeos -+ toolchain_supports_rust_thin_lto = false - - # Any extra std rlibs in your Rust toolchain, relative to the standard - # Rust toolchain. Typically used with 'rust_sysroot_absolute' diff --git a/www-client/chromium/files/chromium-126-use-oauth2-client-switches-as-default-r1.patch b/www-client/chromium/files/chromium-126-use-oauth2-client-switches-as-default-r1.patch deleted file mode 100644 index cd39907..0000000 --- a/www-client/chromium/files/chromium-126-use-oauth2-client-switches-as-default-r1.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/google_apis/google_api_keys-inc.cc b/google_apis/google_api_keys-inc.cc -index 4d13e697a5..61aac7b486 100644 ---- a/google_apis/google_api_keys-inc.cc -+++ b/google_apis/google_api_keys-inc.cc -@@ -193,11 +193,11 @@ class APIKeyCache { - std::string default_client_id = CalculateKeyValue( - GOOGLE_DEFAULT_CLIENT_ID, - STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(), -- nullptr, std::string(), environment.get(), command_line, gaia_config); -+ ::switches::kOAuth2ClientID, std::string(), environment.get(), command_line, gaia_config); - std::string default_client_secret = CalculateKeyValue( - GOOGLE_DEFAULT_CLIENT_SECRET, - STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), std::string(), -- nullptr, std::string(), environment.get(), command_line, gaia_config); -+ ::switches::kOAuth2ClientSecret, std::string(), environment.get(), command_line, gaia_config); - - // We currently only allow overriding the baked-in values for the - // default OAuth2 client ID and secret using a command-line diff --git a/www-client/chromium/files/chromium-126-use-oauth2-client-switches-as-default.patch b/www-client/chromium/files/chromium-126-use-oauth2-client-switches-as-default.patch deleted file mode 100644 index dd7a643..0000000 --- a/www-client/chromium/files/chromium-126-use-oauth2-client-switches-as-default.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff --git a/google_apis/google_api_keys-inc.cc b/google_apis/google_api_keys-inc.cc -index 49c396d69d..9493e7e5aa 100644 ---- a/google_apis/google_api_keys-inc.cc -+++ b/google_apis/google_api_keys-inc.cc -@@ -182,11 +182,11 @@ class APIKeyCache { - - std::string default_client_id = CalculateKeyValue( - GOOGLE_DEFAULT_CLIENT_ID, -- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr, -+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), ::switches::kOAuth2ClientID, - std::string(), environment.get(), command_line, gaia_config); - std::string default_client_secret = CalculateKeyValue( - GOOGLE_DEFAULT_CLIENT_SECRET, -- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), nullptr, -+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), ::switches::kOAuth2ClientSecret, - std::string(), environment.get(), command_line, gaia_config); - - // We currently only allow overriding the baked-in values for the diff --git a/www-client/chromium/files/chromium-127-bindgen-include-temporary.patch b/www-client/chromium/files/chromium-127-bindgen-include-temporary.patch deleted file mode 100644 index 570cce8..0000000 --- a/www-client/chromium/files/chromium-127-bindgen-include-temporary.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/build/rust/rust_bindgen.gni b/build/rust/rust_bindgen.gni -index bf110ca93c..654ddf5f0b 100644 ---- a/build/rust/rust_bindgen.gni -+++ b/build/rust/rust_bindgen.gni -@@ -152,6 +152,8 @@ template("rust_bindgen") { - clang_resource_dir, - ] - -+ args += [ "-I" + rebase_path(sysroot + "/usr/lib/clang/17/include/", root_build_dir) ] -+ - # The `--sysroot` flag is not working as expected and gets ignored (we don't - # fully understand why, see b/328510249). But we add `-isystem` to point at - # the headers in the sysroot which are otherwise not found. diff --git a/www-client/chromium/files/chromium-128-compiler-r1.patch b/www-client/chromium/files/chromium-128-compiler-r1.patch deleted file mode 100644 index fa0fc5c..0000000 --- a/www-client/chromium/files/chromium-128-compiler-r1.patch +++ /dev/null @@ -1,324 +0,0 @@ -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index eb329bc88f..145343f6ec 100644 ---- a/build/config/compiler/BUILD.gn -+++ b/build/config/compiler/BUILD.gn -@@ -305,9 +305,6 @@ config("compiler") { - - configs += [ - # See the definitions below. -- ":clang_revision", -- ":rustc_revision", -- ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -487,6 +484,9 @@ config("compiler") { - ldflags += [ "-fPIC" ] - rustflags += [ "-Crelocation-model=pic" ] - -+ extra_rustflags = getenv("RUSTFLAGS") -+ rustflags += [ extra_rustflags ] -+ - if (!is_clang) { - # Use pipes for communicating between sub-processes. Faster. - # (This flag doesn't do anything with Clang.) -@@ -556,55 +556,6 @@ config("compiler") { - ldflags += [ "-Wl,-z,keep-text-section-prefix" ] - } - -- if (is_clang && !is_nacl) { -- cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] -- if (save_reproducers_on_lld_crash && use_lld) { -- ldflags += [ -- "-fcrash-diagnostics=all", -- "-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/40283598): This causes binary size growth and potentially -- # other problems. -- # TODO(crbug.com/40284925): This isn't supported by Cronet's mainline llvm version. -- if (default_toolchain != "//build/toolchain/cros:target" && -- !llvm_android_mainline) { -- cflags += [ -- "-mllvm", -- "-split-threshold-for-reg-with-hint=0", -- ] -- if (use_thin_lto && is_a_target_toolchain) { -- if (is_win) { -- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ] -- } else { -- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ] -- } -- } -- } -- -- # TODO(crbug.com/40192287): 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) || -@@ -1012,17 +963,6 @@ config("compiler") { - # `-nodefaultlibs` from the linker invocation from Rust, which would be used - # to compile dylibs on Android, such as for constructing unit test APKs. - "-Cdefault-linker-libraries", -- -- # To make Rust .d files compatible with ninja -- "-Zdep-info-omit-d-target", -- -- # If a macro panics during compilation, show which macro and where it is -- # defined. -- "-Zmacro-backtrace", -- -- # For deterministic builds, keep the local machine's current working -- # directory from appearing in build outputs. -- "-Zremap-cwd-prefix=.", - ] - - if (!is_win || force_rustc_color_output) { -@@ -1540,52 +1480,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=." ] -- -- # Convert absolute paths to relative paths. Expands to, for example: -- # -file-prefix-map /path/to/chromium/src=../.. -- swiftflags += [ -- "-file-prefix-map", -- rebase_path("//.", "") + "=" + rebase_path("//.", root_build_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 RBE cache entries. -@@ -1604,40 +1498,6 @@ config("compiler_deterministic") { - } - } - --config("clang_revision") { -- if (is_clang && clang_base_path == default_clang_base_path && -- current_os != "zos") { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] -- if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] -- } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") -- -- # This is here so that all files get recompiled after a clang roll and -- # when turning clang on or off. (defines are passed via the command line, -- # and build system rebuild things when their commandline changes). Nothing -- # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -- } --} -- --config("rustc_revision") { -- if (rustc_revision != "") { -- # Similar to the above config, this is here so that all files get recompiled -- # after a rustc roll. Nothing should ever read this cfg. This will not be -- # set if a custom toolchain is used. -- rustflags = [ -- "--cfg", -- "cr_rustc_revision=\"$rustc_revision\"", -- ] -- } --} -- - config("compiler_arm_fpu") { - if (current_cpu == "arm" && !is_ios && !is_nacl) { - cflags = [ "-mfpu=$arm_fpu" ] -@@ -2034,11 +1894,7 @@ config("chromium_code") { - defines = [ "_HAS_NODISCARD" ] - } - } else { -- cflags = [ "-Wall" ] -- if (is_clang) { -- # Enable extra warnings for chromium_code when we control the compiler. -- cflags += [ "-Wextra" ] -- } -+ cflags = [ ] - - # In Chromium code, we define __STDC_foo_MACROS in order to get the - # C99 macros on Mac and Linux. -@@ -2047,24 +1903,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" && -- current_cpu != "riscv64" && current_cpu != "loong64") { -- # 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. -- fortify_level = "2" -- -- # ChromeOS's toolchain supports a high-quality _FORTIFY_SOURCE=3 -- # implementation with a few custom glibc patches. Use that if it's -- # available. -- if (is_chromeos_device && !lacros_use_chromium_toolchain) { -- fortify_level = "3" -- } -- defines += [ "_FORTIFY_SOURCE=" + fortify_level ] -- } -- - if (is_apple) { - cflags_objc = [ "-Wimplicit-retain-self" ] - cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2457,7 +2295,8 @@ config("default_stack_frames") { - # [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000 - # [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000 - # [2]: https://crrev.com/c/5447532 --config("optimize") { -+config("optimize") { } -+config("xoptimize") { - if (is_win) { - # clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for - # consistency with the other platforms. -@@ -2503,7 +2342,8 @@ config("optimize") { - } - - # Turn off optimizations. --config("no_optimize") { -+config("no_optimize") { } -+config("xno_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2543,7 +2383,8 @@ config("no_optimize") { - # Turns up the optimization level. Used to explicitly enable -O2 instead of - # -Os for select targets on platforms that use optimize_for_size. No-op - # elsewhere. --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: -@@ -2576,7 +2417,8 @@ config("optimize_max") { - # - # TODO(crbug.com/41259697) - 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: -@@ -2605,7 +2447,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 -@@ -2736,7 +2579,8 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { -+config("symbols") { } -+config("xsymbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2886,7 +2730,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") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2971,7 +2816,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/build/config/rust.gni b/build/config/rust.gni -index fd4c683442..20c9e4c901 100644 ---- a/build/config/rust.gni -+++ b/build/config/rust.gni -@@ -79,7 +79,8 @@ declare_args() { - # - # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS - # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome -- toolchain_supports_rust_thin_lto = !is_chromeos -+ # toolchain_supports_rust_thin_lto = !is_chromeos -+ toolchain_supports_rust_thin_lto = false - - # Any extra std rlibs in your Rust toolchain, relative to the standard - # Rust toolchain. Typically used with 'rust_sysroot_absolute' diff --git a/www-client/chromium/files/chromium-128-compiler.patch b/www-client/chromium/files/chromium-128-compiler.patch deleted file mode 100644 index 688f928..0000000 --- a/www-client/chromium/files/chromium-128-compiler.patch +++ /dev/null @@ -1,317 +0,0 @@ -diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index 1d2c6e0..9d7e9c0 100644 ---- a/build/config/compiler/BUILD.gn -+++ b/build/config/compiler/BUILD.gn -@@ -305,9 +305,6 @@ config("compiler") { - - configs += [ - # See the definitions below. -- ":clang_revision", -- ":rustc_revision", -- ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -487,6 +484,9 @@ config("compiler") { - ldflags += [ "-fPIC" ] - rustflags += [ "-Crelocation-model=pic" ] - -+ extra_rustflags = getenv("RUSTFLAGS") -+ rustflags += [ extra_rustflags ] -+ - if (!is_clang) { - # Use pipes for communicating between sub-processes. Faster. - # (This flag doesn't do anything with Clang.) -@@ -556,55 +556,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 ] -- if (save_reproducers_on_lld_crash && use_lld) { -- ldflags += [ -- "-fcrash-diagnostics=all", -- "-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/40283598): This causes binary size growth and potentially -- # other problems. -- # TODO(crbug.com/40284925): This isn't supported by Cronet's mainline llvm version. -- if (default_toolchain != "//build/toolchain/cros:target" && -- !llvm_android_mainline) { -- cflags += [ -- "-mllvm", -- "-split-threshold-for-reg-with-hint=0", -- ] -- if (use_thin_lto && is_a_target_toolchain) { -- if (is_win) { -- ldflags += [ "-mllvm:-split-threshold-for-reg-with-hint=0" ] -- } else { -- ldflags += [ "-Wl,-mllvm,-split-threshold-for-reg-with-hint=0" ] -- } -- } -- } -- -- # TODO(crbug.com/40192287): 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) || -@@ -1014,17 +965,6 @@ config("compiler") { - # `-nodefaultlibs` from the linker invocation from Rust, which would be used - # to compile dylibs on Android, such as for constructing unit test APKs. - "-Cdefault-linker-libraries", -- -- # To make Rust .d files compatible with ninja -- "-Zdep-info-omit-d-target", -- -- # If a macro panics during compilation, show which macro and where it is -- # defined. -- "-Zmacro-backtrace", -- -- # For deterministic builds, keep the local machine's current working -- # directory from appearing in build outputs. -- "-Zremap-cwd-prefix=.", - ] - - if (!is_win || force_rustc_color_output) { -@@ -1542,46 +1482,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=." ] -- swiftflags += [ "-file-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 RBE cache entries. -@@ -1600,39 +1500,6 @@ config("compiler_deterministic") { - } - } - --config("clang_revision") { -- if (is_clang && clang_base_path == default_clang_base_path) { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] -- if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] -- } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") -- -- # This is here so that all files get recompiled after a clang roll and -- # when turning clang on or off. (defines are passed via the command line, -- # and build system rebuild things when their commandline changes). Nothing -- # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -- } --} -- --config("rustc_revision") { -- if (rustc_revision != "") { -- # Similar to the above config, this is here so that all files get recompiled -- # after a rustc roll. Nothing should ever read this cfg. This will not be -- # set if a custom toolchain is used. -- rustflags = [ -- "--cfg", -- "cr_rustc_revision=\"$rustc_revision\"", -- ] -- } --} -- - config("compiler_arm_fpu") { - if (current_cpu == "arm" && !is_ios && !is_nacl) { - cflags = [ "-mfpu=$arm_fpu" ] -@@ -2008,11 +1875,7 @@ config("chromium_code") { - defines = [ "_HAS_NODISCARD" ] - } - } else { -- cflags = [ "-Wall" ] -- if (is_clang) { -- # Enable extra warnings for chromium_code when we control the compiler. -- cflags += [ "-Wextra" ] -- } -+ cflags = [ ] - - # In Chromium code, we define __STDC_foo_MACROS in order to get the - # C99 macros on Mac and Linux. -@@ -2021,24 +1884,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" && -- current_cpu != "riscv64" && current_cpu != "loong64") { -- # 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. -- fortify_level = "2" -- -- # ChromeOS's toolchain supports a high-quality _FORTIFY_SOURCE=3 -- # implementation with a few custom glibc patches. Use that if it's -- # available. -- if (is_chromeos_device && !lacros_use_chromium_toolchain) { -- fortify_level = "3" -- } -- defines += [ "_FORTIFY_SOURCE=" + fortify_level ] -- } -- - if (is_apple) { - cflags_objc = [ "-Wimplicit-retain-self" ] - cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2431,7 +2276,8 @@ config("default_stack_frames") { - # [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000 - # [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000 - # [2]: https://crrev.com/c/5447532 --config("optimize") { -+config("optimize") { } -+config("xoptimize") { - if (is_win) { - # clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for - # consistency with the other platforms. -@@ -2477,7 +2323,8 @@ config("optimize") { - } - - # Turn off optimizations. --config("no_optimize") { -+config("no_optimize") { } -+config("xno_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2517,7 +2364,8 @@ config("no_optimize") { - # Turns up the optimization level. Used to explicitly enable -O2 instead of - # -Os for select targets on platforms that use optimize_for_size. No-op - # elsewhere. --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: -@@ -2550,7 +2398,8 @@ config("optimize_max") { - # - # TODO(crbug.com/41259697) - 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: -@@ -2579,7 +2428,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 -@@ -2710,7 +2560,8 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { -+config("symbols") { } -+config("xsymbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2859,7 +2710,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") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2944,7 +2796,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/build/config/rust.gni b/build/config/rust.gni -index 97e788a..e9bbcc0 100644 ---- a/build/config/rust.gni -+++ b/build/config/rust.gni -@@ -79,7 +79,8 @@ declare_args() { - # - # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS - # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome -- toolchain_supports_rust_thin_lto = !is_chromeos -+ # toolchain_supports_rust_thin_lto = !is_chromeos -+ toolchain_supports_rust_thin_lto = false - - # Any extra std rlibs in your Rust toolchain, relative to the standard - # Rust toolchain. Typically used with 'rust_sysroot_absolute' diff --git a/www-client/chromium/files/chromium-131-EnumTable-crash.patch b/www-client/chromium/files/chromium-131-EnumTable-crash.patch deleted file mode 100644 index f4a6969..0000000 --- a/www-client/chromium/files/chromium-131-EnumTable-crash.patch +++ /dev/null @@ -1,79 +0,0 @@ -diff --git a/components/media_router/common/providers/cast/channel/enum_table.h b/components/media_router/common/providers/cast/channel/enum_table.h -index 18fd272c6a..db9d2fb18a 100644 ---- a/components/media_router/common/providers/cast/channel/enum_table.h -+++ b/components/media_router/common/providers/cast/channel/enum_table.h -@@ -16,6 +16,7 @@ - #include <optional> - #include <ostream> - #include <string_view> -+#include <vector> - - #include "base/check_op.h" - #include "base/notreached.h" -@@ -193,7 +194,6 @@ class - inline constexpr GenericEnumTableEntry(int32_t value); - inline constexpr GenericEnumTableEntry(int32_t value, std::string_view str); - -- GenericEnumTableEntry(const GenericEnumTableEntry&) = delete; - GenericEnumTableEntry& operator=(const GenericEnumTableEntry&) = delete; - - private: -@@ -259,7 +259,6 @@ class EnumTable { - constexpr Entry(E value, std::string_view str) - : GenericEnumTableEntry(static_cast<int32_t>(value), str) {} - -- Entry(const Entry&) = delete; - Entry& operator=(const Entry&) = delete; - }; - -@@ -318,15 +317,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 std::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 -@@ -355,8 +353,7 @@ class EnumTable { - // enum value directly. - std::optional<E> GetEnum(std::string_view 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) : std::optional<E>(); - } - -@@ -368,9 +365,9 @@ class EnumTable { - - private: - #ifdef ARCH_CPU_64_BITS -- alignas(std::hardware_destructive_interference_size) -+ 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) -@@ -382,8 +379,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-131-text_codec_icu-system-icu.patch b/www-client/chromium/files/chromium-131-text_codec_icu-system-icu.patch deleted file mode 100644 index 50ada83..0000000 --- a/www-client/chromium/files/chromium-131-text_codec_icu-system-icu.patch +++ /dev/null @@ -1,22 +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 dfa1cb1369..ecffa654a2 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 -@@ -323,7 +323,7 @@ void TextCodecICU::CreateICUConverter() const { - DCHECK(!converter_icu_); - - #if defined(USING_SYSTEM_ICU) -- const char* name = encoding_.GetName(); -+ const char* name = encoding_.GetName().Utf8().c_str(); - needs_gbk_fallbacks_ = - name[0] == 'G' && name[1] == 'B' && name[2] == 'K' && !name[3]; - #endif -@@ -448,7 +448,7 @@ String TextCodecICU::Decode(base::span<const uint8_t> data, - // <http://bugs.webkit.org/show_bug.cgi?id=17014> - // Simplified Chinese pages use the code A3A0 to mean "full-width space", but - // ICU decodes it as U+E5E5. -- if (!strcmp(encoding_.GetName(), "GBK")) { -+ if (!strcmp(encoding_.GetName().Utf8().c_str(), "GBK")) { - if (EqualIgnoringASCIICase(encoding_.GetName(), "gb18030")) - resultString.Replace(0xE5E5, kIdeographicSpaceCharacter); - // Make GBK compliant to the encoding spec and align with GB18030 diff --git a/www-client/chromium/files/chromium-134-gn-exec_script_allowlist.patch b/www-client/chromium/files/chromium-138-gn-exec_script_allowlist.patch index 008e149..e5d6f15 100644 --- a/www-client/chromium/files/chromium-134-gn-exec_script_allowlist.patch +++ b/www-client/chromium/files/chromium-138-gn-exec_script_allowlist.patch @@ -1,14 +1,14 @@ diff --git a/.gn b/.gn -index 3f65718281..0170ef8d0f 100644 +index ae58a0b0a6..e34034d383 100644 --- a/.gn +++ b/.gn -@@ -145,31 +145,31 @@ no_check_targets = [ +@@ -146,25 +146,25 @@ no_check_targets = [ # this situation much easier to create. if the build always lists the # files and passes them to a script, it will always be correct. -exec_script_allowlist = - build_dotfile_settings.exec_script_allowlist + -- angle_dotfile_settings.exec_script_whitelist + +- angle_dotfile_settings.exec_script_allowlist + - [ - # Allowlist entries for //build should go into - # //build/dotfile_settings.gni instead, so that they can be shared @@ -16,14 +16,8 @@ index 3f65718281..0170ef8d0f 100644 - # in the Chromium repo outside of //build. - "//build_overrides/build.gni", - -- "//chrome/android/webapk/shell_apk/prepare_upload_dir/BUILD.gn", - "//chrome/version.gni", - -- # TODO(dgn): Layer violation but breaks the build otherwise, see -- # https://crbug.com/474506. -- "//clank/java/BUILD.gn", -- "//clank/native/BUILD.gn", -- - "//google_apis/BUILD.gn", - "//printing/BUILD.gn", - @@ -36,7 +30,7 @@ index 3f65718281..0170ef8d0f 100644 - ] +#exec_script_allowlist = +# build_dotfile_settings.exec_script_allowlist + -+# angle_dotfile_settings.exec_script_whitelist + ++# angle_dotfile_settings.exec_script_allowlist + +# [ +# # Allowlist entries for //build should go into +# # //build/dotfile_settings.gni instead, so that they can be shared @@ -44,14 +38,8 @@ index 3f65718281..0170ef8d0f 100644 +# # in the Chromium repo outside of //build. +# "//build_overrides/build.gni", +# -+# "//chrome/android/webapk/shell_apk/prepare_upload_dir/BUILD.gn", +# "//chrome/version.gni", +# -+# # TODO(dgn): Layer violation but breaks the build otherwise, see -+# # https://crbug.com/474506. -+# "//clank/java/BUILD.gn", -+# "//clank/native/BUILD.gn", -+# +# "//google_apis/BUILD.gn", +# "//printing/BUILD.gn", +# diff --git a/www-client/chromium/files/chromium-131-compiler.patch b/www-client/chromium/files/chromium-139-compiler-r1.patch index 1790cfd..4a1e8fe 100644 --- a/www-client/chromium/files/chromium-131-compiler.patch +++ b/www-client/chromium/files/chromium-139-compiler-r1.patch @@ -1,8 +1,25 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index 98ae25c768..fca2469519 100644 +index 0c04c90368..6cebd33c44 100644 --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -311,9 +311,6 @@ config("compiler") { +@@ -241,16 +241,6 @@ declare_args() { + assert(!(llvm_force_head_revision && use_remoteexec && host_os != "linux"), + "rbe with locally built clang only works on linux") + +-# Whether or not we should pass the warning_suppression.txt file to clang +-# compilations. This file allows us to suppress warnings that originate from +-# specific file paths, typically third_party headers. +-# +-# Since this is referenced both when passing the file and when deciding which +-# warnings to enable, store it in a separate variable here. +-use_clang_warning_suppression_file = +- !is_nacl && default_toolchain != "//build/toolchain/cros:target" && +- !llvm_android_mainline && is_clang && clang_warning_suppression_file != "" +- + # default_include_dirs --------------------------------------------------------- + # + # This is a separate config so that third_party code (which would not use the +@@ -320,12 +310,8 @@ config("compiler") { configs += [ # See the definitions below. @@ -11,8 +28,11 @@ index 98ae25c768..fca2469519 100644 - ":compiler_cpu_abi", ":compiler_codegen", ":compiler_deterministic", +- ":clang_warning_suppression", ] -@@ -493,6 +490,9 @@ config("compiler") { + + # TODO(https://crbug.com/404297941): Disable clang_warning_suppression +@@ -515,6 +501,9 @@ config("compiler") { ldflags += [ "-fPIC" ] rustflags += [ "-Crelocation-model=pic" ] @@ -22,7 +42,7 @@ index 98ae25c768..fca2469519 100644 if (!is_clang) { # Use pipes for communicating between sub-processes. Faster. # (This flag doesn't do anything with Clang.) -@@ -562,55 +562,6 @@ config("compiler") { +@@ -602,63 +591,6 @@ config("compiler") { ldflags += [ "-Wl,-z,keep-text-section-prefix" ] } @@ -73,12 +93,20 @@ index 98ae25c768..fca2469519 100644 - } else { - cflags += [ "-ffp-contract=off" ] - } +- +- # Enable ELF CREL (see crbug.com/357878242) for all platforms that use ELF +- # (excluding toolchains that use an older version of LLVM). +- # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds. +- if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" && +- default_toolchain != "//build/toolchain/cros:target") { +- cflags += [ "-Wa,--crel,--allow-experimental-crel" ] +- } - } - # C11/C++11 compiler flags setup. # --------------------------- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) || -@@ -1031,17 +982,6 @@ config("compiler") { +@@ -1083,20 +1015,6 @@ config("compiler") { # `-nodefaultlibs` from the linker invocation from Rust, which would be used # to compile dylibs on Android, such as for constructing unit test APKs. "-Cdefault-linker-libraries", @@ -93,10 +121,22 @@ index 98ae25c768..fca2469519 100644 - # For deterministic builds, keep the local machine's current working - # directory from appearing in build outputs. - "-Zremap-cwd-prefix=.", +- +- # We use clang-rt sanitizer runtimes. +- "-Zexternal-clangrt", ] if (!is_win || force_rustc_color_output) { -@@ -1561,52 +1501,6 @@ config("compiler_deterministic") { +@@ -1151,7 +1069,7 @@ config("compiler") { + # Don't allow unstable features to be enabled by `#![feature()]` without + # additional command line flags. + config("disallow_unstable_features") { +- rustflags = [ "-Zallow-features=" ] ++ #rustflags = [ "-Zallow-features=" ] + } + + config("libcxx_hardening") { +@@ -1631,52 +1549,6 @@ config("compiler_deterministic") { } } @@ -149,29 +189,108 @@ index 98ae25c768..fca2469519 100644 # 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 RBE cache entries. -@@ -1625,40 +1519,6 @@ config("compiler_deterministic") { +@@ -1703,119 +1575,6 @@ config("compiler_deterministic") { } } -config("clang_revision") { - if (is_clang && clang_base_path == default_clang_base_path && - current_os != "zos") { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] +- _perform_consistency_checks = current_toolchain == default_toolchain - if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] +- _head_revision_stamp_path = "//third_party/llvm-build/force_head_revision" +- _head_revision = "" +- if (path_exists(_head_revision_stamp_path)) { +- _head_revision = read_file(_head_revision_stamp_path, "trim string") +- } +- assert( +- _head_revision != "", +- "llvm_force_head_revision=true, but no locally built version was detected.") +- _clang_revision = _head_revision +- } else { +- _clang_revision = read_file( +- "//third_party/llvm-build/Release+Asserts/cr_build_revision", +- "trim string") +- +- # Ensure that the synced clang version matches what's in git. +- if (_perform_consistency_checks) { +- # Parse the clang version from the Python script. +- _clang_version_lines = filter_include( +- read_file("//tools/clang/scripts/update.py", "list lines"), +- [ "CLANG_*REVISION = *" ]) +- _py_revision = +- string_replace(_clang_version_lines[0], "CLANG_REVISION = '", "") +- _py_revision = string_replace(_py_revision, "'", "") +- _py_subrevision = +- string_replace(_clang_version_lines[1], "CLANG_SUB_REVISION = ", "") +- _expected_clang_revision = "$_py_revision-$_py_subrevision" +- +- # TODO(agrieve): Change filter_include to _clang_revision == +- # _expected_clang_revision once angle & webrtc use a GCS DEPS entry +- # rather than a update.py runhook. +- assert( +- filter_include([ _clang_revision ], +- [ +- _expected_clang_revision, +- "$_expected_clang_revision,*", +- ]) != [], +- "clang_revision=\"$_clang_revision\" but update.py expected \"$_expected_clang_revision\". Did you forget to gclient sync?") +- } +- } +- +- if (_perform_consistency_checks) { +- # Ensure that the revision matches the version major expected by GN. +- _versions_match = filter_include([ _clang_revision ], +- [ "llvmorg-$clang_version-*" ]) != [] +- assert( +- _versions_match, +- "clang_revision=\"$_clang_revision\" but clang_version=\"$clang_version\". clang_version in build/toolchain/toolchain.gni is likely outdated.") +- } +- +- if (toolchain_has_rust && _perform_consistency_checks) { +- # Ensure that the synced rust version matches what's in git. +- _rust_revision_lines = +- filter_include(read_file("//tools/rust/update_rust.py", "list lines"), +- [ "RUST_*REVISION = *" ]) +- _py_revision = +- string_replace(_rust_revision_lines[0], "RUST_REVISION = '", "") +- _py_revision = string_replace(_py_revision, "'", "") +- _py_subrevision = +- string_replace(_rust_revision_lines[1], "RUST_SUB_REVISION = ", "") +- _expected_rust_revision = "$_py_revision-$_py_subrevision" +- +- # Ensure the rust version matches the clang version. +- assert( +- filter_include([ rustc_revision ], +- [ "*-$_expected_rust_revision-*" ]) != [], +- "rustc_revision=\"$rustc_revision\" but update_rust.py expected \"$_expected_rust_revision\". Run \"gclient sync\"?") - } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") - - # This is here so that all files get recompiled after a clang roll and - # when turning clang on or off. (defines are passed via the command line, - # and build system rebuild things when their commandline changes). Nothing - # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] +- defines = [ "CR_CLANG_REVISION=\"$_clang_revision\"" ] +- } +-} +- +-# Controls the usage of a warning suppression mapping (WSM) file to suppress +-# warnings based on the path of the file they come from. It's controlled by the +-# `clang_warning_suppression_file` gn argument , which points to a text file +-# defining which warnings should be suppressed where. +-# See //build/config/warning_suppression.txt for an example file; this is the +-# file used by Chromium. +-# +-# To use a different file, or to use this functionality outside of chromium, +-# set the `clang_warning_suppression_file` argument to point to the new file, +-# e.g. by setting in the the project's .gn file. +-config("clang_warning_suppression") { +- # Some build configs use older versions of clang that don't support WSMs +- if (use_clang_warning_suppression_file) { +- from_build_root = +- rebase_path(clang_warning_suppression_file, root_build_dir) +- inputs = [ clang_warning_suppression_file ] +- cflags = [ "--warning-suppression-mappings=" + from_build_root ] - } -} - @@ -190,7 +309,7 @@ index 98ae25c768..fca2469519 100644 config("compiler_arm_fpu") { if (current_cpu == "arm" && !is_ios && !is_nacl) { cflags = [ "-mfpu=$arm_fpu" ] -@@ -2059,11 +1919,7 @@ config("chromium_code") { +@@ -2279,11 +2038,7 @@ config("chromium_code") { defines = [ "_HAS_NODISCARD" ] } } else { @@ -203,7 +322,7 @@ index 98ae25c768..fca2469519 100644 # In Chromium code, we define __STDC_foo_MACROS in order to get the # C99 macros on Mac and Linux. -@@ -2072,24 +1928,6 @@ config("chromium_code") { +@@ -2292,24 +2047,6 @@ config("chromium_code") { "__STDC_FORMAT_MACROS", ] @@ -228,7 +347,7 @@ index 98ae25c768..fca2469519 100644 if (is_apple) { cflags_objc = [ "-Wimplicit-retain-self" ] cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2487,7 +2325,8 @@ config("default_stack_frames") { +@@ -2734,7 +2471,8 @@ config("default_stack_frames") { # [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000 # [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000 # [2]: https://crrev.com/c/5447532 @@ -238,7 +357,7 @@ index 98ae25c768..fca2469519 100644 if (is_win) { # clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for # consistency with the other platforms. -@@ -2536,7 +2375,8 @@ config("optimize") { +@@ -2783,7 +2521,8 @@ config("optimize") { } # Turn off optimizations. @@ -248,7 +367,7 @@ index 98ae25c768..fca2469519 100644 if (is_win) { cflags = [ "/Od", # Disable optimization. -@@ -2576,7 +2416,8 @@ config("no_optimize") { +@@ -2818,7 +2557,8 @@ config("no_optimize") { # Turns up the optimization level. Used to explicitly enable -O2 instead of # -Os for select targets on platforms that use optimize_for_size. No-op # elsewhere. @@ -258,7 +377,7 @@ index 98ae25c768..fca2469519 100644 if (is_nacl && is_nacl_irt) { # The NaCl IRT is a special case and always wants its own config. # Various components do: -@@ -2609,7 +2450,8 @@ config("optimize_max") { +@@ -2851,7 +2591,8 @@ config("optimize_max") { # # TODO(crbug.com/41259697) - rework how all of these configs are related # so that we don't need this disclaimer. @@ -268,7 +387,7 @@ index 98ae25c768..fca2469519 100644 if (is_nacl && is_nacl_irt) { # The NaCl IRT is a special case and always wants its own config. # Various components do: -@@ -2638,7 +2480,8 @@ config("optimize_speed") { +@@ -2880,7 +2621,8 @@ config("optimize_speed") { } } @@ -278,7 +397,7 @@ index 98ae25c768..fca2469519 100644 cflags = [ "-O1" ] + common_optimize_on_cflags rustflags = [ "-Copt-level=1" ] ldflags = common_optimize_on_ldflags -@@ -2769,7 +2612,8 @@ config("win_pdbaltpath") { +@@ -3011,7 +2753,8 @@ config("win_pdbaltpath") { } # Full symbols. @@ -288,7 +407,7 @@ index 98ae25c768..fca2469519 100644 rustflags = [] configs = [] if (is_win) { -@@ -2931,7 +2775,8 @@ config("symbols") { +@@ -3185,7 +2928,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. @@ -298,7 +417,7 @@ index 98ae25c768..fca2469519 100644 rustflags = [] if (is_win) { # Functions, files, and line tables only. -@@ -3016,7 +2861,8 @@ config("minimal_symbols") { +@@ -3270,7 +3014,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. @@ -308,11 +427,24 @@ index 98ae25c768..fca2469519 100644 if (is_win) { ldflags = [ "/DEBUG" ] +diff --git a/build/config/gcc/BUILD.gn b/build/config/gcc/BUILD.gn +index a659210b19..bde0e1b273 100644 +--- a/build/config/gcc/BUILD.gn ++++ b/build/config/gcc/BUILD.gn +@@ -32,7 +32,7 @@ declare_args() { + # See http://gcc.gnu.org/wiki/Visibility + config("symbol_visibility_hidden") { + cflags = [ "-fvisibility=hidden" ] +- rustflags = [ "-Zdefault-visibility=hidden" ] ++ # rustflags = [ "-Zdefault-visibility=hidden" ] + + # Visibility attribute is not supported on AIX. + if (current_os != "aix") { diff --git a/build/config/rust.gni b/build/config/rust.gni -index b7e3c8881b..a2cd059ccd 100644 +index bd18d13119..6687b7cb2f 100644 --- a/build/config/rust.gni +++ b/build/config/rust.gni -@@ -79,7 +79,8 @@ declare_args() { +@@ -77,7 +77,8 @@ declare_args() { # # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome diff --git a/www-client/chromium/files/chromium-132-compiler.patch b/www-client/chromium/files/chromium-139-compiler.patch index f9cd8e3..fec48c7 100644 --- a/www-client/chromium/files/chromium-132-compiler.patch +++ b/www-client/chromium/files/chromium-139-compiler.patch @@ -1,8 +1,8 @@ diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn -index cb9bf8772d..9e36a487ba 100644 +index a17fae7220..5e763dc668 100644 --- a/build/config/compiler/BUILD.gn +++ b/build/config/compiler/BUILD.gn -@@ -309,9 +309,6 @@ config("compiler") { +@@ -310,12 +310,8 @@ config("compiler") { configs += [ # See the definitions below. @@ -11,8 +11,11 @@ index cb9bf8772d..9e36a487ba 100644 - ":compiler_cpu_abi", ":compiler_codegen", ":compiler_deterministic", +- ":clang_warning_suppression", ] -@@ -493,6 +490,9 @@ config("compiler") { + + # TODO(https://crbug.com/404297941): Disable clang_warning_suppression +@@ -505,6 +501,9 @@ config("compiler") { ldflags += [ "-fPIC" ] rustflags += [ "-Crelocation-model=pic" ] @@ -22,7 +25,7 @@ index cb9bf8772d..9e36a487ba 100644 if (!is_clang) { # Use pipes for communicating between sub-processes. Faster. # (This flag doesn't do anything with Clang.) -@@ -568,63 +568,6 @@ config("compiler") { +@@ -581,63 +580,6 @@ config("compiler") { ldflags += [ "-Wl,-z,keep-text-section-prefix" ] } @@ -77,7 +80,7 @@ index cb9bf8772d..9e36a487ba 100644 - # Enable ELF CREL (see crbug.com/357878242) for all platforms that use ELF - # (excluding toolchains that use an older version of LLVM). - # TODO(crbug.com/376278218): This causes segfault on Linux ARM builds. -- if (is_linux && !llvm_android_mainline && current_cpu != "arm" && +- if (is_linux && use_lld && !llvm_android_mainline && current_cpu != "arm" && - default_toolchain != "//build/toolchain/cros:target") { - cflags += [ "-Wa,--crel,--allow-experimental-crel" ] - } @@ -86,7 +89,7 @@ index cb9bf8772d..9e36a487ba 100644 # C11/C++11 compiler flags setup. # --------------------------- if (is_linux || is_chromeos || is_android || (is_nacl && is_clang) || -@@ -1045,20 +988,6 @@ config("compiler") { +@@ -1062,20 +1004,6 @@ config("compiler") { # `-nodefaultlibs` from the linker invocation from Rust, which would be used # to compile dylibs on Android, such as for constructing unit test APKs. "-Cdefault-linker-libraries", @@ -107,7 +110,7 @@ index cb9bf8772d..9e36a487ba 100644 ] if (!is_win || force_rustc_color_output) { -@@ -1107,7 +1036,7 @@ config("compiler") { +@@ -1130,7 +1058,7 @@ config("compiler") { # Don't allow unstable features to be enabled by `#![feature()]` without # additional command line flags. config("disallow_unstable_features") { @@ -116,7 +119,7 @@ index cb9bf8772d..9e36a487ba 100644 } config("libcxx_hardening") { -@@ -1583,52 +1512,6 @@ config("compiler_deterministic") { +@@ -1610,52 +1538,6 @@ config("compiler_deterministic") { } } @@ -169,29 +172,110 @@ index cb9bf8772d..9e36a487ba 100644 # 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 RBE cache entries. -@@ -1647,40 +1530,6 @@ config("compiler_deterministic") { +@@ -1682,121 +1564,6 @@ config("compiler_deterministic") { } } -config("clang_revision") { - if (is_clang && clang_base_path == default_clang_base_path && - current_os != "zos") { -- update_args = [ -- "--print-revision", -- "--verify-version=$clang_version", -- ] +- _perform_consistency_checks = current_toolchain == default_toolchain - if (llvm_force_head_revision) { -- update_args += [ "--llvm-force-head-revision" ] +- _head_revision_stamp_path = "//third_party/llvm-build/force_head_revision" +- _head_revision = "" +- if (path_exists(_head_revision_stamp_path)) { +- _head_revision = read_file(_head_revision_stamp_path, "trim string") +- } +- assert( +- _head_revision != "", +- "llvm_force_head_revision=true, but no locally built version was detected.") +- _clang_revision = _head_revision +- } else { +- _clang_revision = read_file( +- "//third_party/llvm-build/Release+Asserts/cr_build_revision", +- "trim string") +- +- # Ensure that the synced clang version matches what's in git. +- if (_perform_consistency_checks) { +- # Parse the clang version from the Python script. +- _clang_version_lines = filter_include( +- read_file("//tools/clang/scripts/update.py", "list lines"), +- [ "CLANG_*REVISION = *" ]) +- _py_revision = +- string_replace(_clang_version_lines[0], "CLANG_REVISION = '", "") +- _py_revision = string_replace(_py_revision, "'", "") +- _py_subrevision = +- string_replace(_clang_version_lines[1], "CLANG_SUB_REVISION = ", "") +- _expected_clang_revision = "$_py_revision-$_py_subrevision" +- +- # TODO(agrieve): Change filter_include to _clang_revision == +- # _expected_clang_revision once angle & webrtc use a GCS DEPS entry +- # rather than a update.py runhook. +- assert( +- filter_include([ _clang_revision ], +- [ +- _expected_clang_revision, +- "$_expected_clang_revision,*", +- ]) != [], +- "clang_revision=\"$_clang_revision\" but update.py expected \"$_expected_clang_revision\". Did you forget to gclient sync?") +- } +- } +- +- if (_perform_consistency_checks) { +- # Ensure that the revision matches the version major expected by GN. +- _versions_match = filter_include([ _clang_revision ], +- [ "llvmorg-$clang_version-*" ]) != [] +- assert( +- _versions_match, +- "clang_revision=\"$_clang_revision\" but clang_version=\"$clang_version\". clang_version in build/toolchain/toolchain.gni is likely outdated.") +- } +- +- if (toolchain_has_rust && _perform_consistency_checks) { +- # Ensure that the synced rust version matches what's in git. +- _rust_revision_lines = +- filter_include(read_file("//tools/rust/update_rust.py", "list lines"), +- [ "RUST_*REVISION = *" ]) +- _py_revision = +- string_replace(_rust_revision_lines[0], "RUST_REVISION = '", "") +- _py_revision = string_replace(_py_revision, "'", "") +- _py_subrevision = +- string_replace(_rust_revision_lines[1], "RUST_SUB_REVISION = ", "") +- _expected_rust_revision = "$_py_revision-$_py_subrevision" +- +- # Ensure the rust version matches the clang version. +- assert( +- filter_include([ rustc_revision ], +- [ "*-$_expected_rust_revision-*" ]) != [], +- "rustc_revision=\"$rustc_revision\" but update_rust.py expected \"$_expected_rust_revision\". Run \"gclient sync\"?") - } -- clang_revision = exec_script("//tools/clang/scripts/update.py", -- update_args, -- "trim string") - - # This is here so that all files get recompiled after a clang roll and - # when turning clang on or off. (defines are passed via the command line, - # and build system rebuild things when their commandline changes). Nothing - # should ever read this define. -- defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] +- defines = [ "CR_CLANG_REVISION=\"$_clang_revision\"" ] +- } +-} +- +-# Controls the usage of a warning suppression mapping (WSM) file to suppress +-# warnings based on the path of the file they come from. It's controlled by the +-# `clang_warning_suppression_file` gn argument , which points to a text file +-# defining which warnings should be suppressed where. +-# See //build/config/warning_suppression.txt for an example file; this is the +-# file used by Chromium. +-# +-# To use a different file, or to use this functionality outside of chromium, +-# set the `clang_warning_suppression_file` argument to point to the new file, +-# e.g. by setting in the the project's .gn file. +-config("clang_warning_suppression") { +- # Some build configs use older versions of clang that don't support WSMs +- if (!is_nacl && default_toolchain != "//build/toolchain/cros:target" && +- !llvm_android_mainline && is_clang && +- clang_warning_suppression_file != "") { +- from_build_root = +- rebase_path(clang_warning_suppression_file, root_build_dir) +- inputs = [ clang_warning_suppression_file ] +- cflags = [ "--warning-suppression-mappings=" + from_build_root ] - } -} - @@ -210,7 +294,7 @@ index cb9bf8772d..9e36a487ba 100644 config("compiler_arm_fpu") { if (current_cpu == "arm" && !is_ios && !is_nacl) { cflags = [ "-mfpu=$arm_fpu" ] -@@ -2086,11 +1935,7 @@ config("chromium_code") { +@@ -2248,11 +2015,7 @@ config("chromium_code") { defines = [ "_HAS_NODISCARD" ] } } else { @@ -223,7 +307,7 @@ index cb9bf8772d..9e36a487ba 100644 # In Chromium code, we define __STDC_foo_MACROS in order to get the # C99 macros on Mac and Linux. -@@ -2099,24 +1944,6 @@ config("chromium_code") { +@@ -2261,24 +2024,6 @@ config("chromium_code") { "__STDC_FORMAT_MACROS", ] @@ -248,7 +332,7 @@ index cb9bf8772d..9e36a487ba 100644 if (is_apple) { cflags_objc = [ "-Wimplicit-retain-self" ] cflags_objcc = [ "-Wimplicit-retain-self" ] -@@ -2544,7 +2371,8 @@ config("default_stack_frames") { +@@ -2703,7 +2448,8 @@ config("default_stack_frames") { # [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000 # [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000 # [2]: https://crrev.com/c/5447532 @@ -258,7 +342,7 @@ index cb9bf8772d..9e36a487ba 100644 if (is_win) { # clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for # consistency with the other platforms. -@@ -2593,7 +2421,8 @@ config("optimize") { +@@ -2752,7 +2498,8 @@ config("optimize") { } # Turn off optimizations. @@ -268,7 +352,7 @@ index cb9bf8772d..9e36a487ba 100644 if (is_win) { cflags = [ "/Od", # Disable optimization. -@@ -2633,7 +2462,8 @@ config("no_optimize") { +@@ -2787,7 +2534,8 @@ config("no_optimize") { # Turns up the optimization level. Used to explicitly enable -O2 instead of # -Os for select targets on platforms that use optimize_for_size. No-op # elsewhere. @@ -278,7 +362,7 @@ index cb9bf8772d..9e36a487ba 100644 if (is_nacl && is_nacl_irt) { # The NaCl IRT is a special case and always wants its own config. # Various components do: -@@ -2666,7 +2496,8 @@ config("optimize_max") { +@@ -2820,7 +2568,8 @@ config("optimize_max") { # # TODO(crbug.com/41259697) - rework how all of these configs are related # so that we don't need this disclaimer. @@ -288,7 +372,7 @@ index cb9bf8772d..9e36a487ba 100644 if (is_nacl && is_nacl_irt) { # The NaCl IRT is a special case and always wants its own config. # Various components do: -@@ -2695,7 +2526,8 @@ config("optimize_speed") { +@@ -2849,7 +2598,8 @@ config("optimize_speed") { } } @@ -298,7 +382,7 @@ index cb9bf8772d..9e36a487ba 100644 cflags = [ "-O1" ] + common_optimize_on_cflags rustflags = [ "-Copt-level=1" ] ldflags = common_optimize_on_ldflags -@@ -2826,7 +2658,8 @@ config("win_pdbaltpath") { +@@ -2980,7 +2730,8 @@ config("win_pdbaltpath") { } # Full symbols. @@ -308,7 +392,7 @@ index cb9bf8772d..9e36a487ba 100644 rustflags = [] configs = [] if (is_win) { -@@ -2988,7 +2821,8 @@ config("symbols") { +@@ -3154,7 +2905,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. @@ -318,7 +402,7 @@ index cb9bf8772d..9e36a487ba 100644 rustflags = [] if (is_win) { # Functions, files, and line tables only. -@@ -3073,7 +2907,8 @@ config("minimal_symbols") { +@@ -3239,7 +2991,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. @@ -342,10 +426,10 @@ index a659210b19..bde0e1b273 100644 # Visibility attribute is not supported on AIX. if (current_os != "aix") { diff --git a/build/config/rust.gni b/build/config/rust.gni -index 5b7807a1b8..4b3acd300e 100644 +index bd18d13119..6687b7cb2f 100644 --- a/build/config/rust.gni +++ b/build/config/rust.gni -@@ -79,7 +79,8 @@ declare_args() { +@@ -77,7 +77,8 @@ declare_args() { # # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome diff --git a/www-client/chromium/files/chromium-135-mv2-ungoogled.patch b/www-client/chromium/files/chromium-139-mv2-ungoogled-r1.patch index db276b3..36d3419 100644 --- a/www-client/chromium/files/chromium-135-mv2-ungoogled.patch +++ b/www-client/chromium/files/chromium-139-mv2-ungoogled-r1.patch @@ -1,10 +1,10 @@ diff --git a/chrome/browser/extensions/api/developer_private/extension_info_generator.cc b/chrome/browser/extensions/api/developer_private/extension_info_generator.cc -index e330cb7163..08da10083a 100644 +index 99e7a64fee..924592d366 100644 --- a/chrome/browser/extensions/api/developer_private/extension_info_generator.cc +++ b/chrome/browser/extensions/api/developer_private/extension_info_generator.cc -@@ -618,17 +618,6 @@ void ExtensionInfoGenerator::CreateExtensionInfoHelper( - info->controlled_info.emplace(); - info->controlled_info->text = +@@ -595,17 +595,6 @@ void ExtensionInfoGenerator::FillExtensionInfo(const Extension& extension, + info.controlled_info.emplace(); + info.controlled_info->text = l10n_util::GetStringUTF8(IDS_EXTENSIONS_INSTALL_LOCATION_ENTERPRISE); - } else { - // Create Safety Hub information for any non-enterprise extension. @@ -12,8 +12,8 @@ index e330cb7163..08da10083a 100644 - ExtensionSafetyCheckUtils::GetSafetyCheckWarningReason(extension, - profile); - if (warning_reason != developer::SafetyCheckWarningReason::kNone) { -- info->safety_check_warning_reason = warning_reason; -- info->safety_check_text = +- info.safety_check_warning_reason = warning_reason; +- info.safety_check_text = - ExtensionSafetyCheckUtils::GetSafetyCheckWarningStrings( - warning_reason, state); - } @@ -21,10 +21,10 @@ index e330cb7163..08da10083a 100644 bool is_enabled = state == developer::ExtensionState::kEnabled; diff --git a/chrome/browser/extensions/extension_management.cc b/chrome/browser/extensions/extension_management.cc -index eb2350fca9..f13816a016 100644 +index 7d55128c57..1f0e2b931a 100644 --- a/chrome/browser/extensions/extension_management.cc +++ b/chrome/browser/extensions/extension_management.cc -@@ -318,31 +318,7 @@ bool ExtensionManagement::IsAllowedManifestVersion( +@@ -355,31 +355,7 @@ bool ExtensionManagement::IsAllowedManifestVersion( int manifest_version, const std::string& extension_id, Manifest::Type manifest_type) { @@ -50,13 +50,13 @@ index eb2350fca9..f13816a016 100644 - auto installation_mode = - GetInstallationMode(extension_id, /*update_url=*/std::string()); - return manifest_version >= 3 || -- installation_mode == INSTALLATION_FORCED || -- installation_mode == INSTALLATION_RECOMMENDED; +- installation_mode == ManagedInstallationMode::kForced || +- installation_mode == ManagedInstallationMode::kRecommended; - } } bool ExtensionManagement::IsAllowedManifestVersion(const Extension* extension) { -@@ -363,26 +339,8 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy( +@@ -400,26 +376,8 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy( return false; } @@ -75,36 +75,16 @@ index eb2350fca9..f13816a016 100644 - // installed extension only. - auto installation_mode = - GetInstallationMode(extension_id, /*update_url=*/std::string()); -- return installation_mode == INSTALLATION_FORCED || -- installation_mode == INSTALLATION_RECOMMENDED; +- return installation_mode == ManagedInstallationMode::kForced || +- installation_mode == ManagedInstallationMode::kRecommended; - } - - return false; } bool ExtensionManagement::IsAllowedByUnpublishedAvailabilityPolicy( -diff --git a/chrome/browser/extensions/keyed_services/chrome_browser_context_keyed_service_factories.cc b/chrome/browser/extensions/keyed_services/chrome_browser_context_keyed_service_factories.cc -index 555fd894e8..3f042548bd 100644 ---- a/chrome/browser/extensions/keyed_services/chrome_browser_context_keyed_service_factories.cc -+++ b/chrome/browser/extensions/keyed_services/chrome_browser_context_keyed_service_factories.cc -@@ -23,7 +23,6 @@ - #include "chrome/browser/extensions/extension_web_ui_override_registrar.h" - #include "chrome/browser/extensions/install_tracker_factory.h" - #include "chrome/browser/extensions/install_verifier_factory.h" --#include "chrome/browser/extensions/manifest_v2_experiment_manager.h" - #include "chrome/browser/extensions/menu_manager_factory.h" - #include "chrome/browser/extensions/permissions/permissions_updater.h" - #include "chrome/browser/extensions/plugin_manager.h" -@@ -55,7 +54,6 @@ void EnsureChromeBrowserContextKeyedServiceFactoriesBuilt() { - extensions::ChromeExtensionSystemFactory::GetInstance(); - extensions::InstallTrackerFactory::GetInstance(); - extensions::InstallVerifierFactory::GetInstance(); -- extensions::ManifestV2ExperimentManager::GetFactory(); - extensions::MenuManagerFactory::GetInstance(); - extensions::PermissionsUpdater::EnsureAssociatedFactoryBuilt(); - #if BUILDFLAG(ENABLE_PLUGINS) diff --git a/chrome/browser/extensions/manifest_v2_experiment_manager.cc b/chrome/browser/extensions/manifest_v2_experiment_manager.cc -index 2e47e928e3..81ad199a24 100644 +index 08b7de6995..47ff0885ad 100644 --- a/chrome/browser/extensions/manifest_v2_experiment_manager.cc +++ b/chrome/browser/extensions/manifest_v2_experiment_manager.cc @@ -145,22 +145,6 @@ bool ManifestV2ExperimentManagerFactory::ServiceIsCreatedWithBrowserContext() @@ -151,23 +131,23 @@ index 2e47e928e3..81ad199a24 100644 // Returns true if the given `stage` is one in which extension enablement should diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browser/ui/webui/extensions/extensions_ui.cc -index 057dc619e9..52d0e388c9 100644 +index 7f00cde25c..64bb58da80 100644 --- a/chrome/browser/ui/webui/extensions/extensions_ui.cc +++ b/chrome/browser/ui/webui/extensions/extensions_ui.cc -@@ -477,7 +477,7 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile, +@@ -482,7 +482,7 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile, extensions_features::kExtensionsMenuAccessControlWithPermittedSites)); source->AddBoolean( "safetyHubThreeDotDetails", - base::FeatureList::IsEnabled(features::kSafetyHubThreeDotDetails)); + false); - // TODO(crbug.com/392777363): Clean these up with non-placeholder values. - #if BUILDFLAG(IS_ANDROID) + // MV2 deprecation. + auto* mv2_experiment_manager = ManifestV2ExperimentManager::Get(profile); diff --git a/extensions/common/extension.cc b/extensions/common/extension.cc -index 833ea42681..dfd41632bd 100644 +index d92362bb78..626edc0b64 100644 --- a/extensions/common/extension.cc +++ b/extensions/common/extension.cc -@@ -96,13 +96,6 @@ bool IsManifestSupported(int manifest_version, +@@ -104,13 +104,6 @@ bool IsManifestSupported(int manifest_version, // Supported versions are always safe. if (manifest_version >= kMinimumSupportedManifestVersion && manifest_version <= kMaximumSupportedManifestVersion) { diff --git a/www-client/chromium/files/chromium-139-mv2-ungoogled.patch b/www-client/chromium/files/chromium-139-mv2-ungoogled.patch new file mode 100644 index 0000000..9450773 --- /dev/null +++ b/www-client/chromium/files/chromium-139-mv2-ungoogled.patch @@ -0,0 +1,163 @@ +diff --git a/chrome/browser/extensions/api/developer_private/extension_info_generator_shared.cc b/chrome/browser/extensions/api/developer_private/extension_info_generator_shared.cc +index 3950614ed7..fecfe19744 100644 +--- a/chrome/browser/extensions/api/developer_private/extension_info_generator_shared.cc ++++ b/chrome/browser/extensions/api/developer_private/extension_info_generator_shared.cc +@@ -596,17 +596,6 @@ void ExtensionInfoGeneratorShared::FillExtensionInfo( + info.controlled_info.emplace(); + info.controlled_info->text = + l10n_util::GetStringUTF8(IDS_EXTENSIONS_INSTALL_LOCATION_ENTERPRISE); +- } else { +- // Create Safety Hub information for any non-enterprise extension. +- developer::SafetyCheckWarningReason warning_reason = +- ExtensionSafetyCheckUtils::GetSafetyCheckWarningReason(extension, +- profile); +- if (warning_reason != developer::SafetyCheckWarningReason::kNone) { +- info.safety_check_warning_reason = warning_reason; +- info.safety_check_text = +- ExtensionSafetyCheckUtils::GetSafetyCheckWarningStrings( +- warning_reason, state); +- } + } + + bool is_enabled = state == developer::ExtensionState::kEnabled; +diff --git a/chrome/browser/extensions/extension_management.cc b/chrome/browser/extensions/extension_management.cc +index ae782891ad..b0b82002e2 100644 +--- a/chrome/browser/extensions/extension_management.cc ++++ b/chrome/browser/extensions/extension_management.cc +@@ -322,31 +322,7 @@ bool ExtensionManagement::IsAllowedManifestVersion( + int manifest_version, + const std::string& extension_id, + Manifest::Type manifest_type) { +- bool enabled_by_default = +- !base::FeatureList::IsEnabled( +- extensions_features::kExtensionsManifestV3Only) || +- manifest_version >= 3; +- +- // Manifest version policy only supports normal extensions and Chrome OS login +- // screen extension. +- if (manifest_type != Manifest::Type::TYPE_EXTENSION && +- manifest_type != Manifest::Type::TYPE_LOGIN_SCREEN_EXTENSION) { +- return enabled_by_default; +- } +- switch (global_settings_->manifest_v2_setting) { +- case internal::GlobalSettings::ManifestV2Setting::kDefault: +- return enabled_by_default; +- case internal::GlobalSettings::ManifestV2Setting::kDisabled: +- return manifest_version >= 3; +- case internal::GlobalSettings::ManifestV2Setting::kEnabled: + return true; +- case internal::GlobalSettings::ManifestV2Setting::kEnabledForForceInstalled: +- auto installation_mode = +- GetInstallationMode(extension_id, /*update_url=*/std::string()); +- return manifest_version >= 3 || +- installation_mode == ManagedInstallationMode::kForced || +- installation_mode == ManagedInstallationMode::kRecommended; +- } + } + + bool ExtensionManagement::IsAllowedManifestVersion(const Extension* extension) { +@@ -367,26 +343,8 @@ bool ExtensionManagement::IsExemptFromMV2DeprecationByPolicy( + return false; + } + +- switch (global_settings_->manifest_v2_setting) { +- case internal::GlobalSettings::ManifestV2Setting::kDefault: +- // Default browser behavior. Not exempt. +- return false; +- case internal::GlobalSettings::ManifestV2Setting::kDisabled: +- // All MV2 extensions are disallowed. Not exempt. +- return false; +- case internal::GlobalSettings::ManifestV2Setting::kEnabled: + // All MV2 extensions are allowed. Exempt. + return true; +- case internal::GlobalSettings::ManifestV2Setting::kEnabledForForceInstalled: +- // Force-installed MV2 extensions are allowed. Exempt if it's a force- +- // installed extension only. +- auto installation_mode = +- GetInstallationMode(extension_id, /*update_url=*/std::string()); +- return installation_mode == ManagedInstallationMode::kForced || +- installation_mode == ManagedInstallationMode::kRecommended; +- } +- +- return false; + } + + bool ExtensionManagement::IsAllowedByUnpublishedAvailabilityPolicy( +diff --git a/chrome/browser/extensions/manifest_v2_experiment_manager.cc b/chrome/browser/extensions/manifest_v2_experiment_manager.cc +index 08b7de6995..47ff0885ad 100644 +--- a/chrome/browser/extensions/manifest_v2_experiment_manager.cc ++++ b/chrome/browser/extensions/manifest_v2_experiment_manager.cc +@@ -145,22 +145,6 @@ bool ManifestV2ExperimentManagerFactory::ServiceIsCreatedWithBrowserContext() + + // Determines the current stage of the MV2 deprecation experiments. + MV2ExperimentStage CalculateCurrentExperimentStage() { +- // Return the "highest" stage that is currently active for the user. +- if (base::FeatureList::IsEnabled( +- extensions_features::kExtensionManifestV2Unsupported)) { +- return MV2ExperimentStage::kUnsupported; +- } +- +- if (base::FeatureList::IsEnabled( +- extensions_features::kExtensionManifestV2Disabled)) { +- return MV2ExperimentStage::kDisableWithReEnable; +- } +- +- if (base::FeatureList::IsEnabled( +- extensions_features::kExtensionManifestV2DeprecationWarning)) { +- return MV2ExperimentStage::kWarning; +- } +- + return MV2ExperimentStage::kNone; + } + +@@ -200,19 +184,7 @@ PrefMap GetGlobalNoticeAcknowledgedPrefFor( + // Returns true if legacy extensions should be disabled, looking at both + // experiment stage and global state. + bool ShouldDisableLegacyExtensions(MV2ExperimentStage stage) { +- if (g_allow_mv2_for_testing) { +- // We allow legacy MV2 extensions for testing purposes. +- return false; +- } +- +- switch (stage) { +- case MV2ExperimentStage::kNone: +- case MV2ExperimentStage::kWarning: + return false; +- case MV2ExperimentStage::kDisableWithReEnable: +- case MV2ExperimentStage::kUnsupported: +- return true; +- } + } + + // Returns true if the given `stage` is one in which extension enablement should +diff --git a/chrome/browser/ui/webui/extensions/extensions_ui.cc b/chrome/browser/ui/webui/extensions/extensions_ui.cc +index 7a4d1338c4..9c599a5e7d 100644 +--- a/chrome/browser/ui/webui/extensions/extensions_ui.cc ++++ b/chrome/browser/ui/webui/extensions/extensions_ui.cc +@@ -490,7 +490,7 @@ content::WebUIDataSource* CreateAndAddExtensionsSource(Profile* profile, + extensions_features::kExtensionsMenuAccessControlWithPermittedSites)); + source->AddBoolean( + "safetyHubThreeDotDetails", +- base::FeatureList::IsEnabled(features::kSafetyHubThreeDotDetails)); ++ false); + + // MV2 deprecation. + auto* mv2_experiment_manager = ManifestV2ExperimentManager::Get(profile); +diff --git a/extensions/common/extension.cc b/extensions/common/extension.cc +index f82aaf92ad..48041098a8 100644 +--- a/extensions/common/extension.cc ++++ b/extensions/common/extension.cc +@@ -104,13 +104,6 @@ bool IsManifestSupported(int manifest_version, + // Supported versions are always safe. + if (manifest_version >= kMinimumSupportedManifestVersion && + manifest_version <= kMaximumSupportedManifestVersion) { +- // Emit a warning for unpacked extensions on Manifest V2 warning that +- // MV2 is deprecated. +- if (type == Manifest::TYPE_EXTENSION && manifest_version == 2 && +- Manifest::IsUnpackedLocation(location) && +- !g_silence_deprecated_manifest_version_warnings) { +- *warning = errors::kManifestV2IsDeprecatedWarning; +- } + return true; + } + diff --git a/www-client/chromium/files/chromium-135-protobuf-RepeatedPtrField-export.patch b/www-client/chromium/files/chromium-139-protobuf-RepeatedPtrField-export.patch index 5d336bd..948eede 100644 --- a/www-client/chromium/files/chromium-135-protobuf-RepeatedPtrField-export.patch +++ b/www-client/chromium/files/chromium-139-protobuf-RepeatedPtrField-export.patch @@ -1,13 +1,13 @@ diff --git a/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h b/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h -index 36ca1c65c9..30baf169ef 100644 +index e98f8df605..6035b0b84b 100644 --- a/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h +++ b/third_party/protobuf/src/google/protobuf/repeated_ptr_field.h -@@ -926,7 +926,7 @@ class GenericTypeHandler<std::string> { +@@ -944,7 +944,7 @@ class GenericTypeHandler<std::string> { // RepeatedPtrField is like RepeatedField, but used for repeated strings or // Messages. template <typename Element> --class RepeatedPtrField final : private internal::RepeatedPtrFieldBase { -+class PROTOBUF_EXPORT RepeatedPtrField final : private internal::RepeatedPtrFieldBase { +-class ABSL_ATTRIBUTE_WARN_UNUSED RepeatedPtrField final ++class PROTOBUF_EXPORT ABSL_ATTRIBUTE_WARN_UNUSED RepeatedPtrField final + : private internal::RepeatedPtrFieldBase { static_assert(!std::is_const<Element>::value, "We do not support const value types."); - static_assert(!std::is_volatile<Element>::value, |