Выход в make-файл - PullRequest
       16

Выход в make-файл

77 голосов
/ 05 марта 2010

Я пытаюсь сделать это в make-файле, и это ужасно не получается:

M_ARCH := $(shell g++ -dumpmachine | awk '{split($1,a,"-");print a[1]}')

ты знаешь почему? Я думаю, это связано с побегом, но что и где?

Ответы [ 2 ]

149 голосов
/ 05 марта 2010

Это знак доллара, в make-файлах вам нужно будет набрать $$, чтобы получить один знак доллара:

M_ARCH := $(shell g++ -dumpmachine | awk '{split($$1,a,"-");print a[1]}')
16 голосов
/ 05 марта 2010

Мэйк довольно шустрый, когда ты к нему подойдешь.Вот не-awk версия, которая делает то же самое:

space := $() #

M_ARCH := $(firstword $(subst -,$(space),$(shell g++ -dumpmachine)))

all:
    $(info $(M_ARCH))
...