Removes any atoms that are satisfied by package.provided in emerge's getlist() 
function.
diff -uNr 2.0/bin/emerge 2.0-patched/bin/emerge
--- 2.0/bin/emerge	2005-09-27 13:16:09.000000000 +0900
+++ 2.0-patched/bin/emerge	2005-09-27 15:00:23.000000000 +0900
@@ -861,6 +861,16 @@
 				continue
 			myline=myline[1:]
 		mynewlines.append(myline.strip())
+
+	# Remove everything that is package.provided from our list
+	for atom in mynewlines[:]:
+		for expanded_atom in portage.flatten(portage.dep_virtual([atom], portage.settings)):
+			mykey = portage.dep_getkey(expanded_atom)
+			if portage.settings.pprovideddict.has_key(mykey) and \
+				portage.match_from_list(expanded_atom, portage.settings.pprovideddict[mykey]):
+					mynewlines.remove(atom)
+					break
+
 	return mynewlines
 
 def genericdict(mylist):

Reply via email to