Всем привет!Столкнулся с необходимостью написания несколько странного make-файла. Странность в том, что список целей нужно прочитать из внешнего источника, и это сделать нужно ленивым образом.
Как-то так:
items = $(shell wget -O - http://example.com)
item:
a-lot-of-computing --with=$(@)
do-work: $(items)
Проблема в том, что в мейкфайле есть и другие цели, для которых знание содержимого items не требуется, а wget все равно вызывается. В результате - приличный оверхед.
Есть ли способ сделать так, чтобы items вычислялся только когда задана цель do-work? Я игрался с SECONDEXPANSION, с разными способами подстановки переменных, но что-то безуспешно.
При этом нет никаких проблем переписать это в отдельном мейкфайле. Мне просто интересно, можно ли решить проблему без этого или нельзя.
Буду благодарен за помощь!