GNU Make रेसिपींमध्ये प्रॉक्सी व्हेरिएबल्स एक्सपोर्ट करा
GNU make च्या रेसिपी कमांडसाठी प्रॉक्सी पर्यावरण एक्सपोर्ट करा आणि वेगवेगळ्या रेसिपी ओळींमध्ये shell export हरवणे टाळा.
make डाउनलोडर चालवते; प्रॉक्सी कसा वापरायचा हे डाउनलोडर ठरवते. GNU make साठी, प्रत्येक संबंधित रेसिपीला ती मिळायला हवी असताना व्हेरिएबल्स Makefile स्तरावर एक्सपोर्ट करा:
export http_proxy := http://proxy.example:8080
export https_proxy := http://proxy.example:8080
fetch:
curl --fail --output package.tar.gz https://downloads.example/package.tar.gz
रेसिपी ओळ टॅबने सुरू होते. export निर्देश make च्या सिंटॅक्सचा भाग आहेत आणि मूल्ये कमांडच्या पर्यावरणात पाठवतात.
एका रेसिपी ओळीवरील shell export सामान्यतः पुढच्या ओळीपूर्वी नाहीसे होते, कारण GNU make प्रत्येक ओळीसाठी वेगळा shell बोलावते. एका कमांडसाठी त्याऐवजी shell असाइनमेंट थेट त्या कमांडसोबत वापरा:
fetch:
http_proxy=http://proxy.example:8080 https_proxy=http://proxy.example:8080 curl --fail https://downloads.example/package.tar.gz
डाउनलोडरची दस्तऐवजीकृत व्हेरिएबल नावे आणि प्रॉक्सी प्रोटोकॉल वापरा. जर बिल्ड सार्वजनिक HTTP एंडपॉइंट वापरू शकत असेल, तर त्या पर्यावरण मूल्यांसाठी HTTP प्रॉक्सी यादीतून उमेदवार निवडा. ही व्हेरिएबल्स दुर्लक्षित करणाऱ्या एक्झिक्युटेबलला स्वतःचा प्रॉक्सी पर्याय लागतो. क्रेडेन्शियल्स Makefile मध्ये लिहिण्यापेक्षा बिल्ड पर्यावरणातून देणे बरे.
हे एक्सपोर्ट चाइल्ड कमांडवर परिणाम करतात. make संपल्यानंतर ते मूळ टर्मिनलचे पर्यावरण बदलत नाहीत.