"make"命令如何定位makefile

How "make" command locates makefile

我正在尝试了解 "make" 命令的工作原理(刚开始使用此命令)。我有一个“.sh”文件,它有一个脚本来执行 "make" 命令,如下所示:

source /somepath/environment-setup-cortexa9hf-vfp-neon-poky-linux-gnueabi
make arch=arm toolchainPrefix=arm-poky-linux-gnueabi- xeno=off mode=Debug all

脚本文件所在目录有一个名为"makefile"的文件。但是上面的脚本文件中没有关于此 "makefile" 的任何内容。执行完脚本文件后,所有带"makefile"的脚本都会自动执行。谁能用几句话解释一下 "make xyz all" 命令的工作原理。

谢谢

与 UNIX 系统一样,该命令在某种程度上按照约定工作。 make(至少是 makeGNU 版本)将在工作目录中搜索名为 GNUmakefilemakefileMakefile 的文件或者您可以使用 -f(或 --file)选项为其提供特定文件。