То, что у вас есть, есть шаблонное правило. Он говорит make, как сделать цель типа certian (заканчивающуюся на «.png»), а не какую-либо конкретную цель. Так что у вас есть что-то, что позволяет вам набирать произвольный «make foo.png», и он будет знать, как это сделать.
Способ, которым я бы обобщил это, чтобы создать правило для создания "всех .png, которые вы можете сделать из этого каталога", будет использовать переменную. Поместите строку в верхнюю часть вашего make-файла:
SVGs = *.svg
PNGs = $(subst .svg,.png,$(SVGs))
В первой строке будут созданы переменные SVG, которые содержат все файлы в вашем каталоге, оканчивающиеся на «.svg». Второй создает переменные PNG, содержащие тот же список, но с ".png" в конце.
Затем вы должны создать правило для сборки всех SVG-файлов следующим образом:
allsvgs : $(PNGs)
Обратите внимание, что я не назвал это "все". Цель «all» - это неофициальная стандартная цель, которая всегда должна означать «создать каждую цель, которую поддерживает мой make-файл». В вашем случае, я полагаю, вы могли бы создать «allsvgs» для списка целей all, но по мере роста вашего make-файла вы нужно будет что-то добавить.