我有一个使用 Makefile 构建的 C + + 库。直到最近,所有源都在一个目录中,Makefile 执行类似的操作
SOURCES = $(wildcard *.cpp)
效果不错。
现在我已经添加了一些在子目录中的源代码,比如 subdir
SOURCES = $(wildcard *.cpp) $(wildcard subdir/*.cpp)
但我正在寻找一种避免手动指定 subdir
的方法,即让 wildcard
查看子目录,或以某种方式生成子目录列表,然后用几个 wildcard
函数展开它。此时,使用非递归解决方案(即仅展开第一级)就可以了。
我没有找到任何东西-我最好的猜测是使用 find -type d
来列出子目录,但它感觉像一个黑客。有没有什么内置的方法可以做到这一点?