Source code

Revision control

Copy as Markdown

Other Tools

schema: 1
bugzilla:
product: "Toolkit"
component: "Application Update"
origin:
name: Zucchini
description: A binary diffing algorithm from the Chromium project.
# Below is the first chromium commit that breaks C++17 compatiblity in
# Chromium base:
#
# d64d543bc2ff2e343fabe6b9d83963501131d802 (Tue Aug 01 17:08:26 2023)
#
# Land intentional C++20 use in base/.
#
# This smoketests that nothing breaks in advance of announcing C++20
# availability.
#
# We work from the parent of this commit, and cherry-pick more recent
# zucchini patches if relevant.
release: b6d2f6e088c83d18a5988ca565608bc5b1dd2440 (Tue Aug 01 17:07:53 2023).
revision: b6d2f6e088c83d18a5988ca565608bc5b1dd2440
license: BSD-3-Clause
vendoring:
source-hosting: googlesource
flavor: individual-files
tracking: commit
# Files that are listed but commented out are defined chromium-shim/
individual-files-default-upstream: ""
individual-files-default-destination: "{vendor_dir}/"
individual-files-list:
- base/allocator/partition_allocator/partition_alloc_base/augmentations/compiler_specific.h
- base/allocator/partition_allocator/partition_alloc_base/compiler_specific.h
- base/allocator/partition_allocator/partition_alloc_base/component_export.h
- base/allocator/partition_allocator/partition_alloc_base/cxx20_is_constant_evaluated.h
# base/allocator/partition_allocator/partition_alloc_base/debug/debugging_buildflags.h
- base/allocator/partition_allocator/partition_alloc_base/thread_annotations.h
- base/allocator/partition_allocator/partition_alloc_base/win/win_handle_types.h
- base/allocator/partition_allocator/partition_alloc_base/win/win_handle_types_list.inc
# base/allocator/partition_allocator/partition_alloc_buildflags.h
- base/allocator/partition_allocator/partition_alloc_config.h
- base/allocator/partition_allocator/partition_alloc_forward.h
- base/allocator/partition_allocator/pointers/raw_ptr.h
- base/allocator/partition_allocator/pointers/raw_ptr_exclusion.h
- base/allocator/partition_allocator/pointers/raw_ptr_noop_impl.h
- base/allocator/partition_allocator/pointers/raw_ref.h
- base/atomic_ref_count.h
- base/atomicops.h
- base/atomicops_internals_atomicword_compat.h
- base/atomicops_internals_portable.h
- base/auto_reset.h
- base/base_export.h
- base/bit_cast.h
- base/check.cc
- base/check.h
- base/check_op.cc
- base/check_op.h
- base/command_line.cc
- base/command_line.h
- base/compiler_specific.h
- base/containers/adapters.h
- base/containers/checked_iterators.h
- base/containers/contains.h
- base/containers/contiguous_iterator.h
- base/containers/cxx20_erase.h
- base/containers/cxx20_erase_deque.h
- base/containers/cxx20_erase_forward_list.h
- base/containers/cxx20_erase_internal.h
- base/containers/cxx20_erase_list.h
- base/containers/cxx20_erase_map.h
- base/containers/cxx20_erase_set.h
- base/containers/cxx20_erase_string.h
- base/containers/cxx20_erase_unordered_map.h
- base/containers/cxx20_erase_unordered_set.h
- base/containers/cxx20_erase_vector.h
- base/containers/span.h
- base/containers/util.h
- base/cpu.cc
- base/cpu.h
- base/cxx20_is_constant_evaluated.h
- base/cxx20_to_address.h
- base/dcheck_is_on.h
# base/debug/debugging_buildflags.h
# base/debug/stack_trace.h
- base/files/file.cc
- base/files/file.h
- base/files/file_path.cc
- base/files/file_path.h
- base/files/file_tracing.cc
- base/files/file_tracing.h
- base/files/file_util.h
- base/files/file_util_win.cc
- base/files/file_win.cc
- base/files/memory_mapped_file.cc
- base/files/memory_mapped_file.h
- base/files/memory_mapped_file_win.cc
- base/files/platform_file.h
- base/files/scoped_file.h
- base/format_macros.h
- base/functional/bind.h
- base/functional/bind_internal.h
- base/functional/callback.h
- base/functional/callback_forward.h
- base/functional/callback_internal.cc
- base/functional/callback_internal.h
- base/functional/callback_tags.h
- base/functional/disallow_unretained.h
- base/functional/function_ref.h
- base/functional/identity.h
- base/functional/invoke.h
- base/functional/unretained_traits.h
# base/gtest_prod_util.h
- base/immediate_crash.h
- base/location.cc
- base/location.h
# base/logging.cc
- base/logging.h
# base/logging_buildflags.h
- base/memory/raw_ptr.h
- base/memory/raw_ptr_asan_bound_arg_tracker.h
- base/memory/raw_ptr_asan_service.h
- base/memory/raw_ptr_exclusion.h
- base/memory/raw_ref.h
- base/memory/raw_scoped_refptr_mismatch_checker.h
- base/memory/ref_counted.cc
- base/memory/ref_counted.h
- base/memory/safe_ref_traits.h
- base/memory/scoped_refptr.h
- base/memory/weak_ptr.h
- base/no_destructor.h
- base/notreached.h
- base/numerics/checked_math.h
- base/numerics/checked_math_impl.h
- base/numerics/clamped_math.h
- base/numerics/clamped_math_impl.h
- base/numerics/safe_conversions.h
- base/numerics/safe_conversions_arm_impl.h
- base/numerics/safe_conversions_impl.h
- base/numerics/safe_math.h
- base/numerics/safe_math_arm_impl.h
- base/numerics/safe_math_clang_gcc_impl.h
- base/numerics/safe_math_shared_impl.h
- base/process/process_handle.h
- base/ranges/algorithm.h
- base/ranges/functional.h
- base/ranges/ranges.h
- base/scoped_clear_last_error.h
- base/scoped_clear_last_error_win.cc
- base/scoped_generic.h
- base/sequence_checker.h
- base/sequence_checker_impl.h
- base/sequence_token.h
- base/strings/strcat.cc
- base/strings/strcat.h
- base/strings/strcat_internal.h
- base/strings/strcat_win.cc
- base/strings/strcat_win.h
- base/strings/string_number_conversions.cc
- base/strings/string_number_conversions.h
- base/strings/string_number_conversions_internal.h
- base/strings/string_number_conversions_win.h
- base/strings/string_piece.h
- base/strings/string_piece_forward.h
- base/strings/string_split.h
- base/strings/string_split_win.h
- base/strings/string_tokenizer.h
- base/strings/string_util.cc
- base/strings/string_util.h
- base/strings/string_util_constants.cc
- base/strings/string_util_impl_helpers.h
- base/strings/string_util_internal.h
- base/strings/string_util_win.cc
- base/strings/string_util_win.h
- base/strings/stringprintf.cc
- base/strings/stringprintf.h
- base/strings/to_string.h
- base/strings/utf_ostream_operators.cc
- base/strings/utf_ostream_operators.h
- base/strings/utf_string_conversion_utils.h
- base/strings/utf_string_conversions.cc
- base/strings/utf_string_conversions.h
- base/synchronization/atomic_flag.h
- base/synchronization/lock.h
- base/synchronization/lock_impl.h
- base/synchronization/lock_impl_win.cc
- base/system/sys_info.h
- base/system/sys_info_win.cc
- base/template_util.h
- base/third_party/icu/icu_utf.h
- base/third_party/icu/LICENSE
- base/third_party/nspr/LICENSE
- base/third_party/nspr/prtime.cc
- base/third_party/nspr/prtime.h
- base/thread_annotations.h
- base/threading/platform_thread.h
- base/threading/platform_thread_ref.h
- base/threading/thread_checker_impl.h
- base/threading/thread_collision_warner.h
# base/threading/scoped_blocking_call.h
- base/time/time.cc
- base/time/time.h
- base/time/time_override.h
- base/time/time_win.cc
- base/trace_event/base_tracing.h
- base/trace_event/base_tracing_forward.h
- base/trace_event/common/trace_event_common.h
- base/trace_event/memory_allocator_dump_guid.h
- base/trace_event/trace_event_stub.cc
- base/trace_event/trace_event_stub.h
# base/tracing_buildflags.h
- base/types/always_false.h
- base/types/pass_key.h
- base/types/supports_ostream_operator.h
# base/values.h
- base/version.h
- base/win/scoped_handle.cc
- base/win/scoped_handle.h
- base/win/win_handle_types.h
- base/win/win_handle_types_list.inc
- base/win/win_util.cc
- base/win/win_util.h
- base/win/windows_types.h
- base/win/windows_version.cc
- base/win/windows_version.h
- build/build_config.h
- build/buildflag.h
# build/chromeos_buildflags.h
- components/zucchini/abs32_utils.cc
- components/zucchini/abs32_utils.h
- components/zucchini/address_translator.cc
- components/zucchini/address_translator.h
- components/zucchini/algorithm.h
- components/zucchini/arm_utils.cc
- components/zucchini/arm_utils.h
- components/zucchini/binary_data_histogram.cc
- components/zucchini/binary_data_histogram.h
- components/zucchini/buffer_sink.cc
- components/zucchini/buffer_sink.h
- components/zucchini/buffer_source.cc
- components/zucchini/buffer_source.h
- components/zucchini/buffer_view.h
# components/zucchini/buildflags.h
- components/zucchini/crc32.cc
- components/zucchini/crc32.h
- components/zucchini/disassembler.cc
- components/zucchini/disassembler.h
- components/zucchini/disassembler_elf.cc
- components/zucchini/disassembler_elf.h
- components/zucchini/disassembler_no_op.cc
- components/zucchini/disassembler_no_op.h
- components/zucchini/disassembler_win32.cc
- components/zucchini/disassembler_win32.h
- components/zucchini/element_detection.cc
- components/zucchini/element_detection.h
- components/zucchini/encoded_view.cc
- components/zucchini/encoded_view.h
- components/zucchini/ensemble_matcher.cc
- components/zucchini/ensemble_matcher.h
- components/zucchini/equivalence_map.cc
- components/zucchini/equivalence_map.h
- components/zucchini/exception_filter_helper_win.cc
- components/zucchini/exception_filter_helper_win.h
- components/zucchini/heuristic_ensemble_matcher.cc
- components/zucchini/heuristic_ensemble_matcher.h
- components/zucchini/image_index.cc
- components/zucchini/image_index.h
- components/zucchini/image_utils.h
- components/zucchini/imposed_ensemble_matcher.cc
- components/zucchini/imposed_ensemble_matcher.h
- components/zucchini/io_utils.cc
- components/zucchini/io_utils.h
- components/zucchini/main_utils.cc
- components/zucchini/main_utils.h
- components/zucchini/mapped_file.cc
- components/zucchini/mapped_file.h
- components/zucchini/patch_reader.cc
- components/zucchini/patch_reader.h
- components/zucchini/patch_utils.h
- components/zucchini/patch_writer.cc
- components/zucchini/patch_writer.h
- components/zucchini/reference_set.cc
- components/zucchini/reference_set.h
- components/zucchini/rel32_finder.cc
- components/zucchini/rel32_finder.h
- components/zucchini/rel32_utils.cc
- components/zucchini/rel32_utils.h
- components/zucchini/reloc_elf.cc
- components/zucchini/reloc_elf.h
- components/zucchini/reloc_win32.cc
- components/zucchini/reloc_win32.h
- components/zucchini/suffix_array.h
- components/zucchini/target_pool.cc
- components/zucchini/target_pool.h
- components/zucchini/targets_affinity.cc
- components/zucchini/targets_affinity.h
- components/zucchini/type_elf.h
- components/zucchini/type_win_pe.h
- components/zucchini/typed_value.h
- components/zucchini/version_info.h
- components/zucchini/zucchini.h
- components/zucchini/zucchini_apply.cc
- components/zucchini/zucchini_apply.h
- components/zucchini/zucchini_commands.cc
- components/zucchini/zucchini_commands.h
- components/zucchini/zucchini_gen.cc
- components/zucchini/zucchini_gen.h
- components/zucchini/zucchini_integration.cc
- components/zucchini/zucchini_integration.h
- components/zucchini/zucchini_main.cc
- components/zucchini/zucchini_tools.cc
- components/zucchini/zucchini_tools.h
- LICENSE
# third_party/abseil-cpp/absl/base/attributes.h
# third_party/abseil-cpp/absl/functional/function_ref.h
# third_party/abseil-cpp/absl/types/optional.h
# third_party/abseil-cpp/absl/utility/utility.h
# Apply patches that are taken from upstream first as these will not be
# needed at some point, so we want subsequent patches to work after the
# upstream fix.
patches:
- ../chromium-shim/patches/upstream/*.patch
- ../chromium-shim/patches/*.patch