Подтвердить что ты не робот

Читать входную переменную в make файле и задавать переменную на ее имя

У меня есть make файл, где я хочу прочитать имя модуля из ввода, а затем создать каталог на основе его имени. вот мой код:

build:  
    @read -p "Enter Module Name:" module;  
    module_dir=./modules/$$module  
    mkdir -p $$module_dir/build;  

Но после установки module_dir он содержит только ./modules/ (без имени имени конкатенации).
Что не так в моем коде?

спасибо за ваши ответы

4b9b3361

Ответ 1

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

build:  
    @read -p "Enter Module Name:" module; \  
    module_dir=./modules/$$module; \
    mkdir -p $$module_dir/build