What's happening is that the ebuild is going through a lookup table of CPU flags, and saying... "if you invoke a certain advanced feature, then you also have to invoke the base version of that feature". If you ask for the advanced feature, but not the base feature, it's like trying to build the top 4 storeys of a 10-storey building without the bottom 6 storeys. From your output...
If you're calling for avx2, then you also need avx > cpu_flags_x86_avx2? ( cpu_flags_x86_avx ) If you're calling for sse4_2, then you also need sse4_1 > cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 ) If you're calling for sse4_1, then you also need ssse3 > cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 ) If you're calling for ssse3, then you also need sse3 (count the "s") > cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 ) If you're calling for sse3, then you also need sse2 > cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 ) If you're calling for sse2, then you also need sse > cpu_flags_x86_sse2? ( cpu_flags_x86_sse ) If you're calling for sse, then you also need mmxext > cpu_flags_x86_sse? ( cpu_flags_x86_mmxext ) If you're calling for mmxext, then you also need mmx > cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx ) AMD If you're calling for 3dnowext, then you also need 3dnow > cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow ) AMD If you're calling for 3dnow, then you also need mmx > cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx ) Basically, if flag B is an extension of flag A and builds on it, then calling flag B requires calling flag A. Think of it as a "march flag dependency tree". -- Walter Dnes <waltd...@waltdnes.org> I don't run "desktop environments"; I run useful applications