#!/bin/bash function fix_qt4_ebuilds { pushd /usr/portage/dev-qt ELEMENT=(core dbus gui script svg) JOB_PID=$$ for((COUNTER=0, ARRAY_SIZE=${#ELEMENT[*]}; COUNTER < ARRAY_SIZE; ++COUNTER)) do CURRENT_ELEMENT=$ELEMENT[COUNTER] EBUILD=`ls qt$ELEMENT/qt$ELEMENT-4*.ebuild | tail -n1` if [ "`grep ^IUSE $EBUILD | grep c\+\+0x | wc -l`" -eq "0" ]; then cat $EBUILD | sed 's/^IUSE=\"/IUSE=\"c\+\+0x\ /' > ebuild.$JOB_PID mv ebuild.$JOB_PID $EBUILD ebuild $EBUILD digest else echo "$EBUILD already contains c++0x" fi done popd } function stop_being_silly { pushd /usr/portage/profiles JOB_PID=$$ sed 's/^qt5$//' base/use.mask > $JOB_PID mv $JOB_PID base/use.mask popd } emerge --sync -q if command -v layman; then layman -Sq; fi fix_qt4_ebuilds stop_being_silly