Расширение в Make переменных - PullRequest
2 голосов
/ 04 октября 2011

В моем Makefile есть две переменные:

archs = i386 x86_64
tarball = foo-i386 foo-x86_64

Как вы видите, моя вторая переменная фактически основана на первой.Но я хочу, чтобы что-то вроде расширения регулярных выражений использовало первую переменную, например:

tarball = foo-$(archs)

Но это не работает таким образом.Это расширяется в GNU Make до:

tarball = foo-i386 x86_64

Какой лучший способ присвоить переменную tarball, которая использует мою переменную archs?

1 Ответ

2 голосов
/ 04 октября 2011

Когда вы можете положиться на GNU make, функция foreach - ваш друг.

Если нет, то конструкция

tarball = $(archs:%=foo-%)

работает на некоторых других марок. Тем не менее, он все еще находится в несовместимых списках функций.

...