Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 186826
Collapse All | Expand All

(-)bin/emerge (-16 / +24 lines)
Lines 2586-2592 Link Here
2586
		else:
2586
		else:
2587
			def create_use_string(name, cur_iuse, iuse_forced, cur_use,
2587
			def create_use_string(name, cur_iuse, iuse_forced, cur_use,
2588
				old_iuse, old_use,
2588
				old_iuse, old_use,
2589
				is_new, all_flags=(verbosity == 3 or "--quiet" in self.myopts),
2589
				is_new, reinst_flags,
2590
				all_flags=(verbosity == 3 or "--quiet" in self.myopts),
2590
				alphabetical=("--alphabetical" in self.myopts)):
2591
				alphabetical=("--alphabetical" in self.myopts)):
2591
				enabled = []
2592
				enabled = []
2592
				if alphabetical:
2593
				if alphabetical:
Lines 2604-2619 Link Here
2604
				for flag in any_iuse:
2605
				for flag in any_iuse:
2605
					flag_str = None
2606
					flag_str = None
2606
					isEnabled = False
2607
					isEnabled = False
2608
					reinst_flag = reinst_flags and flag in reinst_flags
2607
					if flag in enabled_flags:
2609
					if flag in enabled_flags:
2608
						isEnabled = True
2610
						isEnabled = True
2609
						if is_new or flag in old_use and all_flags:
2611
						if is_new or flag in old_use and \
2612
							(all_flags or reinst_flag):
2610
							flag_str = red(flag)
2613
							flag_str = red(flag)
2611
						elif flag not in old_iuse:
2614
						elif flag not in old_iuse:
2612
							flag_str = yellow(flag) + "%*"
2615
							flag_str = yellow(flag) + "%*"
2613
						elif flag not in old_use:
2616
						elif flag not in old_use:
2614
							flag_str = green(flag) + "*"
2617
							flag_str = green(flag) + "*"
2615
					elif flag in removed_iuse:
2618
					elif flag in removed_iuse:
2616
						if all_flags:
2619
						if all_flags or reinst_flag:
2617
							flag_str = yellow("-" + flag) + "%"
2620
							flag_str = yellow("-" + flag) + "%"
2618
							if flag in old_use:
2621
							if flag in old_use:
2619
								flag_str += "*"
2622
								flag_str += "*"
Lines 2621-2627 Link Here
2621
							removed.append(flag_str)
2624
							removed.append(flag_str)
2622
						continue
2625
						continue
2623
					else:
2626
					else:
2624
						if is_new or flag in old_iuse and flag not in old_use and all_flags:
2627
						if is_new or flag in old_iuse and \
2628
							flag not in old_use and \
2629
							(all_flags or reinst_flag):
2625
							flag_str = blue("-" + flag)
2630
							flag_str = blue("-" + flag)
2626
						elif flag not in old_iuse:
2631
						elif flag not in old_iuse:
2627
							flag_str = yellow("-" + flag)
2632
							flag_str = yellow("-" + flag)
Lines 2932-2953 Link Here
2932
2937
2933
					# Prevent USE_EXPAND_HIDDEN flags from being hidden if they
2938
					# Prevent USE_EXPAND_HIDDEN flags from being hidden if they
2934
					# are the only thing that triggered reinstallation.
2939
					# are the only thing that triggered reinstallation.
2935
					reinst_flags_map = None
2940
					reinst_flags_map = {}
2936
					reinstall_for_flags = self._reinstall_nodes.get(pkg_node)
2941
					reinstall_for_flags = self._reinstall_nodes.get(pkg_node)
2942
					reinst_expand_map = None
2937
					if reinstall_for_flags:
2943
					if reinstall_for_flags:
2938
						reinst_flags_map = map_to_use_expand(
2944
						reinst_flags_map = map_to_use_expand(
2939
							list(reinstall_for_flags), removeHidden=False)
2945
							list(reinstall_for_flags), removeHidden=False)
2940
						if reinst_flags_map["USE"]:
2946
						for k in list(reinst_flags_map):
2941
							reinst_flags_map = None
2947
							if not reinst_flags_map[k]:
2942
						else:
2948
								del reinst_flags_map[k]
2943
							for k in reinst_flags_map.keys():
2949
						if not reinst_flags_map.get("USE"):
2944
								if not reinst_flags_map[k]:
2950
							reinst_expand_map = reinst_flags_map.copy()
2945
									del reinst_flags_map[k]
2951
							reinst_expand_map.pop("USE", None)
2946
					if reinst_flags_map and \
2952
					if reinst_expand_map and \
2947
						not set(reinst_flags_map).difference(
2953
						not set(reinst_expand_map).difference(
2948
						use_expand_hidden):
2954
						use_expand_hidden):
2949
						use_expand_hidden = set(use_expand_hidden).difference(
2955
						use_expand_hidden = \
2950
							reinst_flags_map)
2956
							set(use_expand_hidden).difference(
2957
							reinst_expand_map)
2951
2958
2952
					cur_iuse_map, iuse_forced = \
2959
					cur_iuse_map, iuse_forced = \
2953
						map_to_use_expand(cur_iuse, forcedFlags=True)
2960
						map_to_use_expand(cur_iuse, forcedFlags=True)
Lines 2964-2970 Link Here
2964
						verboseadd += create_use_string(key.upper(),
2971
						verboseadd += create_use_string(key.upper(),
2965
							cur_iuse_map[key], iuse_forced[key],
2972
							cur_iuse_map[key], iuse_forced[key],
2966
							cur_use_map[key], old_iuse_map[key],
2973
							cur_use_map[key], old_iuse_map[key],
2967
							old_use_map[key], is_new)
2974
							old_use_map[key], is_new,
2975
							reinst_flags_map.get(key))
2968
2976
2969
				if verbosity == 3:
2977
				if verbosity == 3:
2970
					# size verbose
2978
					# size verbose

Return to bug 186826