Muhtemelen bunu yapmamalısın; Make'in nasıl çalıştığına dair temel kalıbı bozuyorsunuz. Ama işte burada:
action:
@echo action $(filter-out $@,$(MAKECMDGOALS))
%: # thanks to chakrit
@: # thanks to William Pursell
EDIT:
İlk komutu açıklamak için,
$(MAKECMDGOALS) komut satırında yazılı "hedefler" listesidir, örneğin "işlem değeri1 değer2".
$@Bir olan otomatik değişken bu durumda "eylem" in kural hedefin adı için.
filter-outbir listeden bazı öğeleri kaldıran bir işlevdir. Yani $(filter-out bar, foo bar baz)dönüşler foo baz(daha incelikli olabilir, ancak burada inceliğe ihtiyacımız yok).
Bunları bir araya getirin ve $(filter-out $@,$(MAKECMDGOALS))"eylem" dışında komut satırında belirtilen hedeflerin listesini döndürür, bu "değer1 değer2" olabilir.