Каждая строка в правиле должна быть с отступом табуляции (без пробелов). Ваши отступы кажутся смешанными (хотя я не могу сказать 100% из вставленного кода).
Также вы должны стараться не смешивать синтаксис make и bash, где вы можете избежать этого. Например, вы можете сделать.
Могут также быть некоторые дополнительные пробелы на концах некоторых строк (я не могу сказать здесь), но убедитесь, что на концах нет пробелов.
Я бы-пишите его построчно, начиная с:
$(DIR_REL64)/%: $(SHIFT_BINDIR64)/%
$(copy_file)
, где $ (copy_file) с отступом от табуляции. Убедитесь, что это работает, а затем добавьте следующий бит.