Index: portage.py =================================================================== RCS file: /var/cvsroot/gentoo-src/portage/pym/portage.py,v retrieving revision 1.524.2.76 diff -u -r1.524.2.76 portage.py --- portage.py 29 May 2005 12:40:08 -0000 1.524.2.76 +++ portage.py 13 Jun 2005 13:42:25 -0000 @@ -870,6 +870,7 @@ self.use_defs = copy.deepcopy(clone.use_defs) self.usemask = copy.deepcopy(clone.usemask) + self.useforce = copy.deepcopy(clone.useforce) self.configlist = copy.deepcopy(clone.configlist) self.configlist[-1] = os.environ.copy() @@ -967,6 +968,9 @@ usemask_lists = grab_multiple("use.mask", self.profiles, grabfile) self.usemask = stack_lists(usemask_lists, incremental=True) del usemask_lists + useforce_lists = grab_multiple("use.force", self.profiles, grabfile) + self.useforce = stack_lists(useforce_lists, incremental=True) + del useforce_lists use_defs_lists = grab_multiple("use.defaults", self.profiles, grabdict) self.use_defs = stack_dictlist(use_defs_lists, incremental=True) del use_defs_lists @@ -1395,6 +1399,11 @@ if mystr not in usesplit: usesplit.append(mystr) + # Pre-Prend forced USE flags + for flag in self.useforce: + if flag not in usesplit: + usesplit.insert(0, flag) + # Pre-Pend ARCH variable to USE settings so '-*' in env doesn't kill arch. if self.configdict["defaults"].has_key("ARCH"): if self.configdict["defaults"]["ARCH"]: