VPATH: Путь поиска всех предварительных зависимостей
Значение переменной make VPATH определяет список каталогов, которые make должен искать. Чаще всего ожидается, что каталоги содержат файлы предварительных зависимостей, которые отсутствуют в текущем каталоге; однако, make использует VPATH как список поиска для предварительных зависимостей и целей правил.
Таким образом, если файл, указанный в качестве цели или предварительной зависимости, отсутствует в текущем каталоге, make ищет файл с таким же именем в каталогах, перечисленных в VPATH. Если файл найден в одном из них, этот файл может стать предварительной зависимостью (см. ниже). Правила могут затем указывать имена файлов в списке предварительных зависимостей так, как если бы все они существовали в текущем каталоге. См. Создание рецептов с поиском по каталогам.
В переменной VPATH имена каталогов разделяются двоеточиями или пробелами. Порядок, в котором перечислены каталоги, — это порядок, который make следует при поиске. (В MS-DOS и MS-Windows в VPATH, в качестве разделителей имён каталогов используются точки с запятой, так как двоеточие может использоваться в самом пути имени файла после буквы диска.)
Например,
VPATH = src:../headers
указывает путь, содержащий два каталога, src и ../headers, которые make ищет в указанном порядке.
Со значением VPATH следующее правило,
foo.o : foo.c
интерпретируется так, как если бы оно было написано так:
foo.o : src/foo.c
при условии, что файл foo.c отсутствует в текущем каталоге, но найден в каталоге src.
Copyright © 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Free Software Foundation, Inc.
Licensed under the GNU Free Documentation License.
https://www.gnu.org/software/make/manual/html_node/General-Search.html