如何使用Makefile(vim)中的ifeq检查头文件是否位于main.c中
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用Makefile(vim)中的ifeq检查头文件是否位于main.c中相关的知识,希望对你有一定的参考价值。
我想在Makefile中使用“ifeq”检查我的“c代码”中是否存在头文件。我正在使用“test -f”来检查字符串是否存在于c文件中。我通过在我的c代码中注释掉头文件来测试它,但是当我重新初始化头文件时它从不输入“ifeq”语句。我在“ifeq”声明中遗漏了什么?我在Linux上使用vim文本文件。谢谢
我已经查看了“test -f”的shell命令,但无法弄清楚我做错了什么
ifeq ($(test -f my.h && echo true) , true)
CFLAGS += -DCONFIG_H
else
$(info VAR="$(VAR)")
endif
初始化头文件时,它进入else语句
答案
做你想做的最好的方法是:
ifeq ($(wildcard my.h),)
$(info VAR="$(VAR)")
else
CFLAGS += -DCONFIG_H
endif
以上是关于如何使用Makefile(vim)中的ifeq检查头文件是否位于main.c中的主要内容,如果未能解决你的问题,请参考以下文章
makefile中ifeq,ifneq,ifdef和ifndef的区别与用法
在 makefile 中使用 ifeq 编译 C 或 CPP 文件
makefile中ifeq,ifneq,ifdef和ifndef的区别与用法
makefile ifneq 语句的使用疑问 ifeq ($(strip $(CHIP_VER)),6600L6) 这句话是啥意识