В bash 4 (и выше), чтобы сделать первую букву строки, хранящейся в переменной L1
, заглавной, я могу сделать следующее:
L1=en
Ll1=${L1^}
echo $Ll1
Это печатает En
.
Я пытаюсь сделать что-то подобное в Makefile, но не могу заставить работать синтаксис ${L1^}
.
SHELL := /bin/bash
L1 = en
Ll1 := $(shell echo ${L1^})
all:
@echo $(Ll1)
Производит пустой вывод.
Могу ли я заставить это работать с таким синтаксисом bash, не прибегая к tr/sed?
P.S. Мне нужно присвоить его переменной, а не повторять ее напрямую. Я использую bash 4.3.48 и GNU make 4.1.