makefile ifneq 语句的使用疑问 ifeq ($(strip $(CHIP_VER)),6600L6) 这句话是啥意识

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了makefile ifneq 语句的使用疑问 ifeq ($(strip $(CHIP_VER)),6600L6) 这句话是啥意识相关的知识,希望对你有一定的参考价值。

$ 符号是什么意识?

参考技术A 好像有两种意思:
第一:
CHIP_VER := 2.2.2
echo $(CHIP_VER)
出来的结果是2.2.2,这是指取CHIP_VER的变量值;
第二种:
ifeq ($(strip $(CHIP_VER)),6600L6)
ifeq是个判别是否相等的关键字
亦即 $(strip $(CHIP_VER)) ?= 6600L6

重点说下$(strip $(CHIP_VER))
$(strip argument):指提调用strip 函数,函数入参为$(CHIP_VER)) ,直接理解即为strip(2,2,2);就这样理解可以了;当然我也没有查strip是实现什么功能的函数,你可以查看makefile文档函数使用更清楚;
希望我的解答能帮助你本回答被提问者和网友采纳
参考技术B 什么呢啊~·~·

chardev driver build Makefile

ARCH := arm

CROSS_COMPILE := arm-linux-gnueabi-

export ARCH CROSS_COMPILE 

 

obj-m += chardev.o

 

ifneq ($(KERNELRELEASE),)

 

else

KERNELDIR ?= /home/hugh/workspace/linux-4.9.28

PWD := $(shell pwd)

default:

  $(MAKE) -C $(KERNELDIR) M=$(PWD) modules

clean:

  $(MAKE) -C $(KERNELDIR) M=$(PWD) clean

endif

以上是关于makefile ifneq 语句的使用疑问 ifeq ($(strip $(CHIP_VER)),6600L6) 这句话是啥意识的主要内容,如果未能解决你的问题,请参考以下文章

makefile条件判断语句

makefile中ifeq,ifneq,ifdef和ifndef的区别与用法

makefile中ifeq,ifneq,ifdef和ifndef的区别与用法

makefile中ifneq "$(DTV_TESTING)" "YES"是啥意思啊?

Makefile中的条件编译:ifeqifneqifdef和ifndef

linux使用makefile提示丢失分隔符。我在makefile语句前用的就是tab键。求大师!!