依存性の生成を行うMakefileを作成しましたが、(従来の)コードベースには.cpp
と.cc
というファイルが混在しているため、ルールを複製する必要があります。それはちょっと見苦しいようです。とにかく、ターゲットの前提条件が.cpp
または.cc
のいずれかのファイルになることを指定する必要はありますか?GNU Makeのルールを複製しないようにする
そうではなくなる:
%.d : %.cpp
$(CPP) -MM $(CPPFLAGS) $<
%.d : %.cc
$(CPP) -MM $(CPPFLAGS) $<
は次のように重複せずに何かを作成します。
%.d : %.(cpp | cc)
$(CPP) -MM $(CPPFLAGS) $<
またはこの強制冗長GNUのちょうど不幸な要素の設計は、作るのでしょうか?
あなたが使用している場合GNU autotoolsでおそらくm4マクロを使うことができます – Kevin