2017-06-05 3 views

Antwort

3

Siehe How Makefiles Are Remade:

Wenn Sie wissen, dass ein oder mehr Ihre Makefiles nicht wieder gemacht werden kann und Sie eine implizite Regel Suche von der Durchführung auf sie macht halten will, vielleicht aus Effizienzgründen, Sie Sie können jede normale Methode verwenden, um das Suchen nach impliziten Regeln zu verhindern. Beispielsweise können Sie eine explizite Regel mit dem Makefile als Ziel und ein leeres Rezept schreiben.

Und das ist genau das, was $(CURDIR)/Makefile Makefile: ; Regel tut - es eine empty recipe hat.

+0

Danke für die Antwort. Ich habe jetzt verstanden, dass es ein leeres Rezept ist. Jetzt geht es um den Zielnamen, der $ "(CURDIR)/Makefile Makefile" ist. Wir können "$ (CURDIR)/Makefile" 'erwähnen, gibt es irgendeinen Grund, das' Makefile' zweimal im Zielnamen zu verwenden. – user3693586

+0

@ user3693586 Ich bin mir nicht sicher, wie diese 2 Ziele auf verschiedene Dateien verweisen könnten. Ich würde erwarten, dass sie sich auf dieselbe Datei beziehen. –

+0

Beide beziehen sich nur auf das gleiche Makefile. Meine Zweideutigkeit ist, ob wir $ "(CURDIR)/Makefile:;" anstelle von "$ (CURDIR)/Makefile Makefile:;" verwenden können. – user3693586

Verwandte Themen