diff options
Diffstat (limited to 'lib/_emerge')
-rw-r--r-- | lib/_emerge/EbuildBuild.py | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/lib/_emerge/EbuildBuild.py b/lib/_emerge/EbuildBuild.py index 2ed16537b..6d290e116 100644 --- a/lib/_emerge/EbuildBuild.py +++ b/lib/_emerge/EbuildBuild.py @@ -343,9 +343,24 @@ class EbuildBuild(CompositeTask): and opts.buildpkg != "n" ) + # Do not build binary cache for packages from volatile sources. + # For volatile sources (eg., git), the PROPERTIES parameter in + # the ebuild is set to 'live'. + + # The default behavior is to build binary cache for all pkgs. + # "buildpkg-live" is a FEATURE that is enabled by default. + # To not build binary cache for live pkgs, we disable it by + # specifying FEATURES="-buildpkg-live" + + buildpkg_live = "buildpkg-live" in features + live_ebuild = "live" in self.settings.get("PROPERTIES", "").split() + buildpkg_live_disabled = live_ebuild and not buildpkg_live + if ( - "buildpkg" in features or self._issyspkg - ) and not self.opts.buildpkg_exclude.findAtomForPackage(pkg): + ("buildpkg" in features or self._issyspkg) + and not buildpkg_live_disabled + and not self.opts.buildpkg_exclude.findAtomForPackage(pkg) + ): self._buildpkg = True |