मैं मेकफ़ाइल लिख रहा हूं जो कुछ निर्भरता पीढ़ी करता है और मुझे खुद को नियमों को डुप्लिकेट करना पड़ता है क्योंकि (विरासत) कोडेबेस में .cpp
और .cc
फ़ाइलों का मिश्रण होता है। यह थोड़ा अस्पष्ट लगता है। क्या यह निर्दिष्ट करने के लिए वैसे भी है कि किसी लक्ष्य की पूर्वापेक्षाएँ या तो .cpp
या .cc
फ़ाइलें हो सकती हैं?जीएनयू डुप्लिकेट करने से बचें नियम बनाएं
तो बजाय होने:
%.d : %.cpp
$(CPP) -MM $(CPPFLAGS) $<
%.d : %.cc
$(CPP) -MM $(CPPFLAGS) $<
तरह दोहराव के बिना कुछ बनाएँ:
%.d : %.(cpp | cc)
$(CPP) -MM $(CPPFLAGS) $<
या इस से लागू अतिरेक सिर्फ जीएनयू की एक दुर्भाग्यपूर्ण तत्व के डिजाइन बनाने है?
अगर आप का उपयोग करें जीएनयू ऑटोोटूल आप संभवतः एम 4 मैक्रोज़ – Kevin