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 ସମାପ୍ତ ହେବା ପରେ ସେଗୁଡ଼ିକ ମୂଳ ଟର୍ମିନାଲର ପରିବେଶକୁ ବଦଳାଏ ନାହିଁ।