GNU создает правило для нескольких входных файлов?

#makefile #gnu-make

#makefile создать файл #gnu-make

Вопрос:

У меня есть переменная GNU make с несколькими аудиофайлами в ней:

FILEWAV = $(wildcard $(DIRIN)/*.wav)

Мне нужно преобразовать wav в файлы f32 с помощью SoX:

sox -channels 1 --rate 48000 $(FILEWAV) --type raw $(FILEWAV:.wav=.f32)

Как бы я написал целевой файл makefile для преобразования всех файлов один за другим?

Комментарии:

1. Вы ознакомились с документацией Make? Раздел о правилах шаблонов может представлять особый интерес.

2. Если вы покажете нам makefile, который вы пытались написать, и предоставите несколько сообщений об ошибках или объясните, как это не работает, мы сможем объяснить ошибку в вашем makefile.

Ответ №1:

Это работает:

 %.f32: %.wav
    sox --channels 1 --encoding signed-integer --rate 48000

lt; --type raw $@

run: $(MY_FILES_F32) $(MY_OTHER_FILES_F32)