как передать переменную make в команду $(shell ...) в make

Рейтинг: 0Ответов: 1Опубликовано: 31.07.2023

Мне нужно получить результат команды $(shell find $$(@D) -type f) в make скрипте. К сожалению, этот код не работает, как я могу передать директорию таргета в эту команду?

Ответы

▲ -1

Вы можете передать директорию таргета в команду $(shell) с помощью переменной $@D. Вот как это может выглядеть:

SOURCES := $(shell find $(TARGET_DIR) -type f)

all: $(TARGET)

$(TARGET): $(SOURCES)
    # Ваша команда сборки

Здесь TARGET_DIR - это переменная, содержащая путь к директории таргета, а TARGET - это имя таргета. Переменная SOURCES будет содержать список всех файлов в директории таргета.