From: "W. Trevor King" <[email protected]> For packages that don't use EAPI-5's sub-slots to track ABI dependencies, binary packages may go stale without Portage noticing. You can use this new option to list packages that may be troublesome. Listed packages will be removed from the pkgcache, and rebuilt from scratch for your seed.
If binpkg_blacklist is unset in your spec file, it defaults to including the following packages: * sys-devel/gcc: see, for example, http://mid.gmane.org/[email protected] * media-libs/mesa: see, for example, #454184 --- modules/generic_stage_target.py | 4 +++- targets/support/chroot-functions.sh | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/generic_stage_target.py b/modules/generic_stage_target.py index 31cb025..4fbbb44 100644 --- a/modules/generic_stage_target.py +++ b/modules/generic_stage_target.py @@ -16,7 +16,9 @@ class generic_stage_target(generic_target): self.valid_values.extend(["version_stamp","target","subarch",\ "rel_type","profile","snapshot","source_subpath","portage_confdir",\ "cflags","cxxflags","ldflags","cbuild","hostuse","portage_overlay",\ - "distcc_hosts","makeopts","pkgcache_path","kerncache_path"]) + "distcc_hosts","makeopts","pkgcache_path","kerncache_path", + 'binpkg_blacklist', + ]) self.set_valid_build_kernel_vars(addlargs) generic_target.__init__(self,myspec,addlargs) diff --git a/targets/support/chroot-functions.sh b/targets/support/chroot-functions.sh index 35ffbaa..957af9d 100644 --- a/targets/support/chroot-functions.sh +++ b/targets/support/chroot-functions.sh @@ -261,6 +261,11 @@ run_merge() { export EPAUSE_IGNORE=0 export CONFIG_PROTECT="-*" + default_binpkg_blacklist="sys-devel/gcc media-libs/mesa" + for binpkg in ${clst_binpkg_blacklist-${default_binpkg_blacklist}}; do + rm -vf "/usr/portage/packages/${binpkg}"* + done + if [ -n "${clst_VERBOSE}" ] then echo "ROOT=${ROOT} emerge ${clst_myemergeopts} -pt $@" || exit 1 -- 1.8.2
