Не кажется ли вам, что менеджер пакетов занимается сборкой пакетов в зависимости от каких-то предусловий, а make делает то же самое?
файл /var/lib/portage/world сделать главным правилом для makefile (какие пакеты собирать)
Сделать отдельную директорию, в которой понасоздавать файлов столько, сколько сейчас USE-флагов.
Как только один из файлов поменяется, надо будет выполнить make мира. И всё (кому надо, содержимое файла заинклюдят и проверят).