我是C / C ++和gnu makefile的新手。我暂时有了一个makefile,该文件会自动生成一个目录中所有源和标头的列表,以便make
输出二进制文件。
随着项目的发展,我当然不想将所有源文件和头文件都集中到一个目录中。而是创建(嵌套)子目录。......
有没有办法-我以subdirs := $(wildcard */)
为起点-并进一步涉及for... in... ($subdirs)
首先只在子目录和嵌套子目录中生成源文件和头文件的列表?也许以后再添加一个make
调用来访问每个子目录的源和标题吗?
非常感谢您。
您真诚的 冯·斯波茨
答案 0 :(得分:4)
您可以使用$(shell)
并将其编写为脚本:
ALL_SOURCES := $(shell find * -name '*.cpp' -print)
(假设您使用.cpp
作为C ++源文件扩展名)。您应该已经安装了make
的完整文档:
info -f make