make kjører nedlasteren; nedlasteren velger hvordan en proxy brukes. For GNU make eksporterer du variablene på Makefile-nivå når hver relevant oppskrift skal motta dem:

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

Oppskriftslinjen begynner med en tab. export-direktivene hører til makes syntaks og sender verdiene inn i kommandonenes miljø.

Et shell-export på én oppskriftslinje forsvinner vanligvis før neste linje, fordi GNU make starter et eget shell for hver linje. For én kommando bør du i stedet bruke en shell-tilordning direkte sammen med kommandoen:

fetch:
	http_proxy=http://proxy.example:8080 https_proxy=http://proxy.example:8080 curl --fail https://downloads.example/package.tar.gz

Bruk nedlasterens dokumenterte variabelnavn og proxyprotokoll. Hvis bygget kan bruke et offentlig HTTP-endepunkt, velg en kandidat fra HTTP-proxylisten til de miljøverdiene. En kjørbar fil som ignorerer disse variablene trenger sitt eget proxyvalg. Legitimasjon bør leveres via byggemiljøet i stedet for å skrives i Makefile.

Disse eksportene påvirker underordnede kommandoer. De endrer ikke miljøet til overordnet terminal etter at make avsluttes.

Relaterte artikler