Проблема в том, что вы подразумеваете под «конечным значением».Для рекурсивной переменной это буквальная строка $(exec_prefix}/lib
.И расширение происходит только тогда, когда переменная указывается с помощью ${libdir}
.
Однако простые переменные немедленно раскрываются.Так что libdir:=${libdir}
и make -np
дадут желаемый результат.Но иначе это невозможно.
Кстати.Вы можете написать общее правило «печати», как это (в GMSL):
print-%:
@echo value of "$*" is "$($*)"
И затем просто выполните make print-libdir