Правило Makefile для сборки с тем же именем, но с другим каталогом

Я хотел бы правило что-то вроде:

build/%.ext: src/%.ext
    action

У меня есть один каталог файлов в папке, который я хочу оптимизировать, а затем вывести в другую папку. Однако файлы имеют одинаковое имя во входных и выходных папках. Я пробовал различные итерации правила выше, но make будет перестраиваться всегда или никогда, в зависимости от того, как я настроил вышеизложенное. Предложения?

РЕДАКТИРОВАТЬ: Я получил следующее решение, которое прекрасно работает!

JS = \
  src/js/script2.js \
  src/js/script1.js

JS_OPT = $(patsubst src/js/%.js,web/js/%.js, $(JS))

all: $(JS_OPT)

$(JS_OPT): web/js/%.js: src/js/%.js
  cat $@ | ./bin/jsmin > 
JS = \
  src/js/script2.js \
  src/js/script1.js

JS_OPT = $(patsubst src/js/%.js,web/js/%.js, $(JS))

all: $(JS_OPT)

$(JS_OPT): web/js/%.js: src/js/%.js
  cat $@ | ./bin/jsmin > $<
lt;

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

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