makefile: найти позицию слова в переменной

В моем make-файле мне нужно сделать присвоение переменной на основе значения переменной командной строки. например, я делаю:

make var_1=xxx

гдеvar_1 может иметь одно из, скажем, 100 возможных значений. На основании стоимостиvar_1Мне нужно присвоить значениеvar_2 в моем make-файле. Я мог бы сделать:

ifeq ($(var_1), a)
   var_2 = A
endif
ifeq ($(var_1), b)
   var_2 = B
endif

и так далее для всех 100 возможных комбинацийvar_1, var_2, Вотa,A,b,B представляют некоторые строки. Как мне это сделать, чтобы избежать сотенif заявления? Я думал определить две переменные:

var_1_values = a b c d     
var_2_values = A B C D

я могу использовать$(findstring $(var_1),$(var_1_values)) увидеть, если$(var_1) среди$(var_1_values), но как мне найти положение$(var_1) среди всех$(var_1_values)? Эта позиция будет использоваться для выбора соответствующего слова внутри$(var_2_values).

Ответы на вопрос(5)

Ваш ответ на вопрос