bintree = self.trees[myroot]["bintree"]
if bintree.populated:
bintree.inject(pkg_key)
- else:
- # Copy group permissions for new directories that
- # may have been created.
- for path in ("All", portage.catsplit(pkg.cpv)[0]):
- bintree._ensure_dir(
- os.path.join(bintree.pkgdir, path))
if "--buildpkgonly" not in self.myopts:
msg = " === (%s of %s) Merging (%s::%s)" % \
(mergecount, len(mymergelist), pkg_key, y)
use for a given cpv. If a collision will occur with an existing
package from another category, the existing package will be bumped to
${PKGDIR}/${CATEGORY}/${PF}.tbz2 so that both can coexist."""
+
+ # Copy group permissions for new directories that
+ # may have been created.
+ for path in ("All", catsplit(cpv)[0]):
+ path = os.path.join(self.pkgdir, path)
+ self._ensure_dir(path)
+ if not os.access(path, os.W_OK):
+ raise portage_exception.PermissionDenied(
+ "access('%s', W_OK)" % path)
+
if not self.populated:
# Try to avoid the population routine when possible, so that
# FEATURES=buildpkg doesn't always force population.