Bei der Arbeit verwenden wir ein gemeinsames Makefile, das andere Makefiles enthalten (über die Include-Anweisung), und es hat ein generisches "sauberes" Ziel, das einige gebräuchliche Dateien zerstört. Ich möchte dieses Ziel in meinem neuen Makefile hinzufügen, damit ich bestimmte Dateien löschen kann, aber wenn ich ein sauberes Ziel in meinem Makefile hinzufüge, überschreibt es einfach das alte.Ziel in Makefile überschreiben, um weitere Befehle hinzuzufügen?
Ich weiß, ich kann nur ein neues Ziel mit einem neuen Namen machen und es sauber zu machen, und dann andere Sachen tun, aber aus Gründen der Konsistenz möchte ich in der Lage sein, einfach zu machen machen sauber und es tun alles.
Ist das möglich?
Scheint wie das wäre ein bisschen rückwärts, erfordern mehr und mehr preq zu dem sauberen Ziel des gemeinsamen Makefile. Wenn man das saubere Ziel im gemeinsamen Makefile etwas anderes nennt und dieses Ziel dann zu einem Preq des sauberen Ziels in anderen Makefiles macht, die das gewöhnliche Makefile enthalten, scheint es einfacher zu sein UND zu verhindern, dass das gemeinsame Makefile jemals ein preq hat verschwindet, wenn ein Teilprojekt verschwindet. Wenn Sie ein Doppel-Doppelpunkt-Ziel sauber machen, ist dies ein weiterer sauberer und vorhersehbarer Weg zur Lösung dieses Problems. –
@Dave Rawks, du verstehst falsch, was ich geschrieben habe, würde in das * lokale * Makefile gehen, nicht in das übliche Makefile. Außerdem hatte der OP zwei Zielnamen, die er nicht wollte. Die Doppelpunkt-Idee ist clever, obwohl es das Ändern des allgemeinen Makefiles beinhalten würde (und es lokalen Makefiles nicht erlauben würde, die allgemeine Regel zu überschreiben). – Beta
Danke, ich habe diese Beziehung vorher nicht bemerkt. – Bohdan