gnu-make - 是否可以在 GNU make 模式中使用目录名称?
问题描述
我有许多设备驱动程序:每个设备的源代码都在一个与设备同名的子目录中:
devices/foo/foo.c
devices/bar/bar.c
如果我像这样为每个设备设置一个单独的 GNU make 规则,它会起作用:
obj/foo.o: devices/foo/foo.c
$(CC) $(CFLAGS) devices/foo/foo.c -o obj/foo.o
如果我设置这样的 make 模式,则无法确定如何制作文件。我猜这个问题与使用 % 作为子目录的名称有关。
obj/%.o: devices/%/%.c
$(CC) $(CFLAGS) $< -o $@
有什么方法可以设置一个模式来做到这一点?
解决方案
推荐阅读
- go - *(*int)(nil) = 0 在 golang 中是什么意思?
- android - Android 通知图标在某些设备上为空白
- android - Android材质按钮采用颜色原色而不是颜色重音
- javascript - 如何根据条件更改进度条的颜色
- java - 将字符串中的连续数字值转换为数字格式
- ansible - Ansible items.key in when 条件
- android - 如何保存底部导航片段的状态 - 具有单个导航图的 Android 导航组件
- html - 搜索输入在展开时推送链接列表
- python - 如何绘制具有多个边缘属性的networkx图?
- c# - Fluent Ribbon 未在 Visual Studio 2019 中编译