euse builds the list of files found in cascading/stackable profiles in the wrong order when the 'parent' file contains more than one line. For example, when "/etc/make.profile" links to "/usr/portage/profiles/default/linux/amd64/10.0/desktop", the euse script sets: MAKE_DEFAULTS='/usr/portage/profiles/targets/desktop/make.defaults /usr/portage/profiles/releases/make.defaults /usr/portage/profiles/releases/10.0/make.defaults /usr/portage/profiles/features/multilib/make.defaults /usr/portage/profiles/features/multilib/lib32/make.defaults /usr/portage/profiles/arch/amd64/make.defaults /usr/portage/profiles/default/linux/make.defaults /usr/portage/profiles/base/make.defaults' It should set: MAKE_DEFAULTS='/usr/portage/profiles/base/make.defaults /usr/portage/profiles/default/linux/make.defaults /usr/portage/profiles/features/multilib/make.defaults /usr/portage/profiles/features/multilib/lib32/make.defaults /usr/portage/profiles/arch/amd64/make.defaults /usr/portage/profiles/releases/make.defaults /usr/portage/profiles/releases/10.0/make.defaults /usr/portage/profiles/targets/desktop/make.defaults' Reproducible: Always
Created attachment 283679 [details, diff] Patch to traverse cascading profiles in correct order
Note that this bug causes most mischief on profiles containing negative USE flags, such as the "server" profiles. For example, for the "/usr/portage/profiles/default/linux/x86/10.0/server" profile, "euse -g -i perl python" shows the "perl" and "python" USE flags as enabled by default when in reality they are disabled by default for that profile.
Thanks for the patch, it is in git now. http://git.overlays.gentoo.org/gitweb/?p=proj/gentoolkit.git;a=commit;h=6edc15a5690a3c26a3c530669a922e01f50ab830 This will be in gentoolkit-0.3.0.4-r2
Released in gentoolkit-0.3.0.4-r2. Thanks for the patch.