Cztery znaki dolara w Makefile

Czytam dokument GNU Make. Oto przykład

% .d:% .c

    @set -e; rm -f $@; \

     $(CC) -M $(CPPFLAGS) 
    @set -e; rm -f $@; \

     $(CC) -M $(CPPFLAGS) $< > $@.$$$$; \

     sed ’s,\($*\)\.o[ :]*,\1.o $@ : ,g’ < $@.$$$$ > $@; \

     rm -f $@.$$$$
lt; > $@.$$; \ sed ’s,\($*\)\.o[ :]*,\1.o $@ : ,g’ < $@.$$ > $@; \ rm -f $@.$$

Próbowałem tego w programie C ++ i dostałem listę plików

init3d.d init3d.d.18449 input.d input.d.18444 main.d main.d.18439

Oto, co znalazłem, ale nie rozumiem tego samegodokument

Jeśli włączono dodatkowe rozwinięcie i chcesz literalnego znaku dolara na liście wymagań wstępnych, musisz napisać cztery znaki dolara („$$”).

Zastanawiam się, co właściwie oznaczają cztery znaki dolara „$$”? W jaki sposób 18449, 18444 lub 18439?

Dziękuję i pozdrawiam!

questionAnswers(3)

yourAnswerToTheQuestion