What is ?= in Makefile

前端 未结 2 1252
梦毁少年i
梦毁少年i 2021-02-02 05:10
KDIR ?= $(shell uname -r)

What is the meaning of ?=?

I have understood the difference between :=, += and

相关标签:
2条回答
  • 2021-02-02 05:35

    Thanks to Simon and R.T. for their quick and correct response.

    Also, I have found the GNU manual that explains everything in detail: http://www.gnu.org/software/make/manual/html_node/Setting.html

    0 讨论(0)
  • 2021-02-02 05:39

    ?= indicates to set the KDIR variable only if it's not set/doesn't have a value.

    For example:

    KDIR ?= "foo"
    KDIR ?= "bar"
    
    test:
        echo $(KDIR)
    

    Would print "foo"

    GNU manual: http://www.gnu.org/software/make/manual/html_node/Setting.html

    0 讨论(0)
提交回复
热议问题