如何设置一个目标后的变量
How to set a variable after a target been made?
我有cc和。proto目录下的文件。 *。proto文件用于生成。cc和.h文件。
现在我想要$(SRC)有所有的。cc文件,包括那些生成的。如何?
PROTOS = $(wildcard *.proto)
SRC = $(wildcard *.cc)
OBJS = $(patsubst %.cc,%.o,$(SRC))
all: proto $(OBJS)
proto: $(PROTOS)
protoc --cpp_out=. $(PROTOS)
简短的回答:你不能。Make在执行任何规则之前确定要执行的规则列表。
长答案:你可以,但是你必须让Make自己运行第二次:
PROTOS = $(wildcard *.proto)
SRC = $(wildcard *.cc)
OBJS = $(patsubst %.cc,%.o,$(SRC))
all: proto
$(MAKE) objs
proto: $(PROTOS)
protoc --cpp_out=. $(PROTOS)
objs: $(OBJS)
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 将数组的地址分配给变量并删除
- 为"adjacent"变量赋值时出现问题
- enum是C++中的宏变量还是整数变量
- 我应该如何在没有变量的情况下将相同的参数传递给 CMAKE 中的多个目标?
- 使用 gtest 框架在单元测试代码中检查目标对象的私有变量的最佳实践是什么?
- 如果输入类型与目标类型不同,"cin"变量是否重置为某个默认值?
- 目标-C 变量布局
- Google Mock:在目标类的构造函数中实例化的模拟私有变量成员
- 如何在不定义目标变量大小的情况下逐个字符将字符串变量复制到另一个字符
- 目标C C++ if(cin >>变量) 等价
- 在数组中查找一个变量,哪个和最接近目标和
- 在c++中将只读变量更改为目标
- 针对不同生成文件目标的不同变量集
- 如何定义一个变量,然后在目标[Makefile]中编译
- GNU Make -在规则/目标中设置shell命令输出中的MAKEFILE变量
- 根据Makefile中的目标更改变量
- 如何设置一个目标后的变量
- 目标 C - 使用局部变量声明的dispatch_apply无法在方法实现中编译C++