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
ترکیب کی سطر tab سے شروع ہوتی ہے۔ 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 کے ختم ہونے کے بعد یہ والدین ٹرمینل کا ماحول نہیں بدلتیں۔