Thanks to the work of mgorny and others, working multilib support starts to supersede the need for emul* packages. So, you'll only have those 32bit libraries on your system that you really need. Note: the following is my impression as a user, I'm not a developer.

The first emul package that is replaced is emul-linux-x86-xlibs. emul-linux-x86-xlibs-20130224-r1 has been introduced as a meta package that depends on the new single multilib-enabled ebuilds (the -r1 version itself does not install any file!). Therefore, old ebuilds can depend on the new -r1 version and still get all 32bit x11 libs. As a user, you'll have to do the following if you want to transit from the emul-*-xlibs package to the split ebuilds and keep all the libraries that were also installed with the emul package:

  • Add the following list of packages to /etc/portage/package.accept_keywords:
    =x11-proto/xineramaproto-1.2.1-r1 ~amd64
    =x11-libs/libXinerama-1.1.2-r1 ~amd64
    =x11-libs/libXScrnSaver-1.2.2-r1 ~amd64
    =x11-libs/libXau-1.0.7-r1 ~amd64
    =x11-proto/xextproto-7.2.1-r1 ~amd64
    =x11-libs/libXpm-3.5.10-r1 ~amd64
    =x11-libs/libXxf86dga-1.1.3-r1 ~amd64
    =x11-proto/xf86vidmodeproto-2.3.1-r1 ~amd64
    =x11-libs/libXft-2.3.1-r1 ~amd64
    =x11-proto/xf86bigfontproto-1.2.0-r1 ~amd64
    =x11-proto/xf86dgaproto-2.1-r2 ~amd64
    =x11-libs/libXtst-1.2.1-r1 ~amd64
    =x11-libs/libpciaccess-0.13.1-r1 ~amd64
    =x11-libs/libXext-1.3.1-r1 ~amd64
    =x11-libs/libX11-1.5.0-r1 ~amd64
    =x11-libs/libvdpau-0.5-r1 ~amd64
    =x11-libs/libXvMC-1.0.7-r1 ~amd64
    =media-libs/fontconfig-2.10.2-r1 ~amd64
    =x11-proto/renderproto-0.11.1-r1 ~amd64
    =x11-libs/libXmu-1.1.1-r1 ~amd64
    =x11-libs/libXxf86vm-1.1.2-r1 ~amd64
    =x11-proto/recordproto-1.14.2-r1 ~amd64
    =x11-libs/libxcb-1.9-r1 ~amd64
    =x11-proto/compositeproto-0.4.2-r1 ~amd64
    =x11-proto/xproto-7.0.23-r2 ~amd64
    =x11-proto/xcb-proto-1.8-r1 ~amd64
    =x11-libs/libXcomposite-0.4.4-r1 ~amd64
    =x11-libs/libXt-1.1.3-r1 ~amd64
    =x11-libs/libXp-1.0.1-r1 ~amd64
    =x11-proto/inputproto-2.3 ~amd64
    =x11-libs/libXrandr-1.4.0-r1 ~amd64
    =x11-libs/libXv-1.0.7-r1 ~amd64
    =x11-proto/scrnsaverproto-1.2.2-r1 ~amd64
    =x11-libs/libXcursor-1.1.13-r1 ~amd64
    =x11-proto/randrproto-1.4.0-r1 ~amd64
    =x11-libs/libXaw-1.0.11-r2 ~amd64
    =media-libs/freetype-2.4.11-r2 ~amd64
    =x11-proto/printproto-1.0.5-r1 ~amd64
    =x11-libs/libXfixes-5.0-r1 ~amd64
    =x11-libs/libXi-1.7 ~amd64
    =x11-proto/videoproto-2.3.1-r1 ~amd64
    =x11-libs/libXrender-0.9.7-r1 ~amd64
    =dev-libs/libpthread-stubs-0.3-r1 ~amd64
    =x11-libs/libICE-1.0.8-r1 ~amd64
    =x11-proto/damageproto-1.2.1-r1 ~amd64
    =x11-proto/kbproto-1.0.6-r1 ~amd64
    =x11-libs/libXdmcp-1.1.1-r1 ~amd64
    =x11-libs/libSM-1.2.1-r1 ~amd64
    =x11-libs/libXdamage-1.1.4-r1 ~amd64
    =x11-proto/fixesproto-5.0-r1 ~amd64
  • If you are not already using the latest emul-* packages, you also have to install the latest version of all other emul packages you use as they depend on each other. E.g. you can simply add the following to the list above:
    app-emulation/emul-linux-x86-qtlibs ~amd64
    app-emulation/emul-linux-x86-baselibs ~amd64
    app-emulation/emul-linux-x86-compat ~amd64
    app-emulation/emul-linux-x86-db ~amd64
    app-emulation/emul-linux-x86-xlibs ~amd64
    app-emulation/emul-linux-x86-medialibs ~amd64
    app-emulation/emul-linux-x86-soundlibs ~amd64
    app-emulation/emul-linux-x86-sdl ~amd64
    app-emulation/emul-linux-x86-opengl ~amd64
    app-emulation/emul-linux-x86-gtklibs ~amd64
  • Due to a communication problem, you have to add the following to /etc/portage/package.unmask:
  • Add ABI_X86="64 32" or the abi_x86_32 use flag to your defaults in make.conf
  • Update your system as usual. It should work without further intervention.

Only after all ebuilds - that you use and that depend on emul-linux-x86-xlibs - are updated, you can add the abi_x86_32 use flag only to those packages that you really need and you can remove emul-linux-x86-xlibs.

If you don't want to migrate you can stay with the stable or the latest emul packages before the -r1 as long as they are in the official tree. Mixing <emul-linux-x86-xlibs-20130224-r1 with already enabled 32bit multilib ebuilds will not work out.

A corresponding thread in the forum:

UPDATE (2013-04-22): Looks like you have to add the following to /etc/portage/package.unmask as well (see Bug #466546):