Add portdbapi support for a metadata/layout.conf file which
authorZac Medico <zmedico@gentoo.org>
Mon, 6 Apr 2009 22:25:15 +0000 (22:25 -0000)
committerZac Medico <zmedico@gentoo.org>
Mon, 6 Apr 2009 22:25:15 +0000 (22:25 -0000)
commit2bd2620142d15344f32ef67896c4fa88e5386953
treee65dffa019d22454a0bf776c9f4a0b19dce5bfa9
parent1ad3342b49e9d488a9beba86ea7096c68c6b1f44
Add portdbapi support for a metadata/layout.conf file which
specifies information about the repository layout. Currently,
only a single "masters" attribute is supported, which is used
to specify names of repositories which satisfy dependencies
on eclasses and/or ebuilds. Each repository name should
correspond the value of a repo_name entry from one of the
repositories that is configured via the PORTDIR or
PORTDIR_OVERLAY variables.

Since layout.conf is now used to control eclass inheritance,
it is now safer to use overlays which contain forked eclasses
have names identical to those from the main tree. Such
eclasses will only apply to their containing repository and
any other repositories which reference their containing
repository via layout.conf. This solves bug #124041 by
containing eclass overrides so that they don't necessarily
apply to all ebuilds.

Thanks to Alistair Bush <ali_bush@g.o> for his initial patch
for layout.conf support in repoman (will be merged later).
See the "QA Overlay Layout support" thread on the gentoo-dev
mailing list for more information:

http://archives.gentoo.org/gentoo-dev/msg_33c61550b4ed2b7b25dd5a4110e1ec81.xml

svn path=/main/trunk/; revision=13291
man/portage.5
pym/_emerge/__init__.py
pym/portage/__init__.py
pym/portage/cache/metadata.py
pym/portage/cache/util.py
pym/portage/dbapi/porttree.py
pym/portage/eclass_cache.py