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 ਖਤਮ ਹੋਣ ਤੋਂ ਬਾਅਦ ਇਹ ਮੂਲ ਟਰਮੀਨਲ ਦਾ ਵਾਤਾਵਰਣ ਨਹੀਂ ਬਦਲਦੇ।

ਸੰਬੰਧਿਤ ਲੇਖ