Допустим, у меня есть make-файл, подобный следующему:
CXXFLAGS := -I./Include
Foo:
$(CXX) $(CXXFLAGS) -o Foo
Если пользователь cd
s в дерево исходных текстов и запускает make
, все нормально. Однако, если make
вызывается из-за пределов дерева исходных текстов, каталог include будет неправильным.
Использование полных путей вместо относительных путей работает, но это разрушает переносимость make-файла.
Стоит ли полагаться на пользователей, которые правильно вызывают make
? Или есть простой способ обойти это?