If clst_PGKCACHE is defined, --newuse was not being added to clst_myemergeopts, so then portage was not being rebuilt if portage was already up to date.
# We need to merge our package manager with USE="build" set in case it is
# portage to avoid frying our /etc/portage/make.conf file. Otherwise, we could
# just let emerge system could merge it.
- # Use --update or portage won't reinstall the same version.
+ # Use --update or portage won't reinstall the same version later.
+ # Use --newuse to make sure it rebuilds with the "build" use flag.
[ -e /etc/portage/make.conf ] && echo 'USE="${USE} build"' >> /etc/portage/make.conf
- run_merge --oneshot --nodeps --update sys-apps/portage
+ run_merge --oneshot --nodeps --update --newuse sys-apps/portage
sed -i '/USE="${USE} build"/d' /etc/portage/make.conf
}