Tried to cross emerge python into my powerpc root and to my surprise python pulled in portage! I suspect this is due to the !!<sys-apps/portage-2.1.9 dep in the ebuild, can it be removed?
No, that's app-admin/python-updater: RDEPEND="|| ( >=sys-apps/portage-2.1.6 >=sys-apps/paludis-0.56.0 )" Emerge any one of those you like prior to cross-emerging dev-lang/python. Example (use -t): # hppa2.0-unknown-linux-gnu-emerge -vpt dev-lang/python:2.7 These are the packages that would be merged, in reverse order: Calculating dependencies... done! [nomerge ] dev-lang/python-2.7.6:2.7 to /usr/hppa2.0-unknown-linux-gnu/ USE="gdbm ipv6 ncurses readline ssl threads (wide-unicode) xml -berkdb -build -doc -examples -hardened -sqlite -tk -wininst" [ebuild N ] app-admin/python-updater-0.11 to /usr/hppa2.0-unknown-linux-gnu/ 0 kB [ebuild N ] sys-apps/portage-2.2.8-r1 to /usr/hppa2.0-unknown-linux-gnu/ USE="(ipc) -build -doc -epydoc (-pypy2_0) -python2 -python3 (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python2_7 python3_3 (-pypy2_0) -python2_6 -python3_2 (-python3_4)" 0 kB [ebuild N ] dev-lang/python-3.3.3:3.3 to /usr/hppa2.0-unknown-linux-gnu/ USE="gdbm ipv6 ncurses readline ssl threads xml -build -doc -examples -hardened -sqlite -tk -wininst" 0 kB [ebuild N ] dev-lang/python-2.7.6:2.7 to /usr/hppa2.0-unknown-linux-gnu/ USE="gdbm ipv6 ncurses readline ssl threads (wide-unicode) xml -berkdb -build -doc -examples -hardened -sqlite -tk -wininst" 10,201 kB [ebuild N ] sys-apps/sandbox-2.6-r1 to /usr/hppa2.0-unknown-linux-gnu/ USE="(-multilib)" 0 kB [ebuild N ] app-misc/pax-utils-0.7 to /usr/hppa2.0-unknown-linux-gnu/ USE="-caps -python" 0 kB [ebuild N ] app-admin/eselect-python-20140125 to /usr/hppa2.0-unknown-linux-gnu/ 71 kB [ebuild N ] sys-libs/gdbm-1.11 to /usr/hppa2.0-unknown-linux-gnu/ USE="berkdb nls -exporter -static-libs" 793 kB [ebuild N ] app-misc/mime-types-9 to /usr/hppa2.0-unknown-linux-gnu/ 0 kB [nomerge ] sys-apps/portage-2.2.8-r1 to /usr/hppa2.0-unknown-linux-gnu/ USE="(ipc) -build -doc -epydoc (-pypy2_0) -python2 -python3 (-selinux) -xattr" LINGUAS="-ru" PYTHON_TARGETS="python2_7 python3_3 (-pypy2_0) -python2_6 -python3_2 (-python3_4)" [ebuild N ] app-shells/bash-4.2_p45-r1 to /usr/hppa2.0-unknown-linux-gnu/ USE="net nls (readline) (-afs) -bashlogger -examples -mem-scramble -plugins -vanilla" 0 kB [ebuild N ] net-misc/rsync-3.1.0 to /usr/hppa2.0-unknown-linux-gnu/ USE="acl iconv ipv6 -static -xattr" 864 kB [nomerge ] dev-lang/python-3.3.3:3.3 to /usr/hppa2.0-unknown-linux-gnu/ USE="gdbm ipv6 ncurses readline ssl threads xml -build -doc -examples -hardened -sqlite -tk -wininst" [ebuild N ] app-arch/xz-utils-5.0.5-r1 to /usr/hppa2.0-unknown-linux-gnu/ USE="nls threads -static-libs" 0 kB [nomerge ] net-misc/rsync-3.1.0 to /usr/hppa2.0-unknown-linux-gnu/ USE="acl iconv ipv6 -static -xattr" [ebuild N ] dev-libs/popt-1.16-r1 to /usr/hppa2.0-unknown-linux-gnu/ USE="nls -static-libs" 0 kB [ebuild N ] virtual/libintl-0-r1 to /usr/hppa2.0-unknown-linux-gnu/ 0 kB
If you must avoid either sys-apps/portage or app-admin/python-updater, then use package.provided as described in portage(5), and be sure you know what you are doing.
While I can use package.provided (and package.mask to not pull in python3) I think this just a workaround. Forcing all these extra pkgs just to emerge pyhton is not very nice. A few USE flags would not hurt.