VirtualBox

Changeset 2665 in kBuild for trunk/src


Ignore:
Timestamp:
Nov 15, 2012 12:30:57 AM (12 years ago)
Author:
bird
Message:

file.c: Fixed renaming/rehashing of multi-target files. This could result in us forgetting the multi_* properties and fail to resolve prerequisites. (The COMWrappers missing filesplitter issue.)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/kmk/file.c

    r2634 r2665  
    361361        }
    362362    }
     363
     364#ifdef CONFIG_WITH_EXPLICIT_MULTITARGET
     365  /* Merge multi target attributes and considerations.  */
     366  if (from_file->multi_head)
     367    {
     368      if (to_file->multi_head)
     369        fatal (NILF, _("can't rename/merge multi target '%s' with multi target '%s'"),
     370               from_file->name, to_hname);
     371
     372      to_file->multi_maybe = from_file->multi_maybe;
     373      to_file->multi_next  = from_file->multi_next;
     374      to_file->multi_head  = f = from_file->multi_head;
     375      if (f == from_file)
     376        for (; f != 0; f = f->multi_next)
     377            f->multi_head = to_file;
     378      else
     379        {
     380          while (f->multi_next != from_file)
     381            f = f->multi_next;
     382          f->multi_next = to_file;
     383        }
     384    }
     385#endif
    363386
    364387  /* Merge the dependencies of the two files.  */
     
    11481171              multi_maybe = f2->multi_maybe;
    11491172            }
    1150           putchar (':');
     1173          if (f->deps)
     1174            printf (": \\\n\t");
     1175          else
     1176            putchar (':');
    11511177        }
    11521178      else
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette