Сделать целевую замену - PullRequest
       9

Сделать целевую замену

0 голосов
/ 22 февраля 2012

Кажется, что подоболочка не извлекает результат "$ @", поэтому подстановка не на что.

%_bust.css: %.css
    @echo $(echo $@ | sed s/_bust/$(BUSTER)/g)

Ответы [ 3 ]

4 голосов
/ 22 февраля 2012

Заменить $() на ``. Первым является расширение переменной GNU.

1 голос
/ 22 февраля 2012

Вы сделали это излишне сложным. Вам не нужно вложенное echo.

%_bust.css: %.css
    @echo $@ | sed s/_bust/$(BUSTER)/g
0 голосов
/ 22 февраля 2012

Вы также можете использовать make механизмы подстановки текста.

@echo $*$(BUSTER).css
@echo $(subst _bust,$(BUSTER),$@)

Последний характерен для GNU Make и менее точен и элегантен в данном конкретном случае.

...