Skip to content
  • Matthew Pickering's avatar
    b42cedbe
    hadrian: Inplace/Final package databases · b42cedbe
    Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
    There are now two different package databases per stage. An inplace
    package database contains .conf files which point directly into the
    build directories. The final package database contains .conf files which
    point into the installed locations. The inplace .conf files are created
    before any building happens and have fake ABI hash values. The final
    .conf files are created after a package finished building and contains
    the proper ABI has.
    
    The motivation for this is to make the dependency structure more
    fine-grained when building modules. Now a module depends just depends
    directly on M.o from package p rather than the .conf file depend on the
    .conf file for package p. So when all of a modules direct dependencies
    have finished building we can start building it rather than waiting for
    the whole package to finish.
    
    The secondary motivation is that the multi-repl doesn't need to build
    everything before starting the multi-repl session. We can just configure
    the inplace package-db and use that in order to start the repl.
    b42cedbe
    hadrian: Inplace/Final package databases
    Matthew Pickering authored and Marge Bot's avatar Marge Bot committed
    There are now two different package databases per stage. An inplace
    package database contains .conf files which point directly into the
    build directories. The final package database contains .conf files which
    point into the installed locations. The inplace .conf files are created
    before any building happens and have fake ABI hash values. The final
    .conf files are created after a package finished building and contains
    the proper ABI has.
    
    The motivation for this is to make the dependency structure more
    fine-grained when building modules. Now a module depends just depends
    directly on M.o from package p rather than the .conf file depend on the
    .conf file for package p. So when all of a modules direct dependencies
    have finished building we can start building it rather than waiting for
    the whole package to finish.
    
    The secondary motivation is that the multi-repl doesn't need to build
    everything before starting the multi-repl session. We can just configure
    the inplace package-db and use that in order to start the repl.
Loading