code: def toolchain_spec_compile_entries(
          toolchain, spec, entries, process_name, overwrite_log=None):
      
  
      processor = getattr(toolchain, 'compile_%s_entry' % process_name)
      modpath_logger = (
          partial(overwrite_log, toolchain.modpath_suffix)
          if callable(overwrite_log) else None)
      targetpath_logger = (
          partial(overwrite_log, toolchain.targetpath_suffix)
          if callable(overwrite_log) else None)
      return process_compile_entries(
          processor, spec, entries, modpath_logger, targetpath_logger)
docs: The standardized Toolchain Spec Entries compile function
  
      This function accepts a toolchain instance, the spec to be operated
      with and the entries provided for the process name.  The standard
      flow is to deferr the actual processing to the toolchain method
      `compile_{process_name}_entry` for each entry in the entries list.
  
      The generic compile entries method for the compile process.
  
      Arguments:
  
      toolchain
          The toolchain to be used for the operation.
      spec
          The spec to be operated with.
      entries
          The entries for the source.
      process_name
          The name of the specific compile process of the provided
          toolchain.
      overwrite_log
          A callable that will accept a 4-tuple of suffix, key, original
          and new value, if monitoring of overwritten values are required.
          suffix is derived from the modpath_suffix or targetpath_suffix
          of the toolchain instance, key is the key on any of the keys on
          either of those mappings, original and new are the original and
          the replacement value.