我遇到了一种陌生的文件类型,它是一个.mk文件。它似乎是Makefile的扩展,但我不知道它是否与Makefile实际上有所不同。有人可以帮忙澄清一下区别吗?
make
文件可以使用任何名称。使用make
的-f
选项来指定要使用哪个文件:
make -f foobar
你甚至可以多次使用 -f
:
make -f foo -f bar
如果这种情况下,make
会按顺序处理文件(或等效地连接文件并处理结果)。
makefile
和 Makefile
是特殊的名称,因为如果没有使用-f
选项调用make
,它会自动按照这个顺序搜索它们,并使用找到的第一个。请注意,GNU make
还考虑了GNUmakefile
,并将其优先于makefile
和Makefile
。其他make
实现可能具有其他默认名称。
.mk
扩展名是对除默认名称外的make文件的一种更或多或少标准的扩展名。如果您希望人们快速了解这些文件,那么这是一个合理的扩展名:convert.mk
比foobar
更具信息量。一些编辑器使用此扩展名识别文件类型并应用语法着色。它们通常将相同的语法着色应用于makefile
和Makefile
。
Makefile
中包含一些逻辑来决定是否include
一个或多个windows.mk
、linux.mk
或mac.mk
(例如)。 - undefined