में फ़ंक्शंस मैं कई बार दोहराए जाने वाले सामानों के साथ मेकफ़ाइल लिख रहा हूं, उदा।मेकफ़ाइल
debug_ifort_Linux:
if [ $(UNAME) = Linux ]; then \
$(MAKE) FC=ifort FFLAGS=$(difort) PETSC_FFLAGS="..." \
[email protected] LEXT="ifort_$(UNAME)" -e syst; \
else \
echo $(err_arch); \
exit 1; \
fi
जहां लक्ष्य 'syst' परिभाषित किया गया है, चर 'uname' परिभाषित किया गया है (और आमतौर पर लिनक्स है, लेकिन यह भी Cygwin या OSF1 से हो सकता है) और चर 'difort' और 'err_arch' भी परिभाषित कर रहे हैं । विभिन्न संकलक लक्ष्यों के लिए कोड का यह ब्लॉक कई बार उपयोग किया जाता है ('' नाम का एक सम्मेलन का उपयोग करके)। चूंकि यह एक बड़ी मात्रा में अनावश्यक कोड है, इसलिए मैं इसे अधिक सरल तरीके से लिखने में सक्षम होना चाहता हूं। जैसे, मैं कुछ इस तरह करना चाहते हैं:
debug_ifort_Linux:
compile(uname,compiler,flags,petsc_flags,target,lext)
जहां संकलन तर्कों के आधार पर उपरोक्त कोड कर एक समारोह हो सकता है। क्या किसी को कोई विचार है कि मैं इसे कैसे पूरा कर सकता हूं?
यह पिछले उत्तर की तुलना में बेहतर क्यों है जिसे वर्तमान में सही के रूप में चिह्नित किया गया है? –
आपको \ n की बजाय बहु-पंक्ति चर का उपयोग करना चाहिए। जो फिर से "उस उत्तर को संपादित करने के लिए बहुत अधिक" होगा (जहां तक मुझे अब तक समीक्षा मिली है) – JonnyJD
और मल्टीलाइन वेरिएबल समझाते हुए टिप्पणी के लिए थोड़ा अधिक है। लेकिन आपको निश्चित रूप से सहमत नहीं होना है। – JonnyJD