Välityspalvelinmuuttujien vienti GNU Make -resepteihin
Vie välityspalvelinympäristö GNU make -reseptien komennoille ja vältä shell-viennin katoaminen erillisten reseptirivien välillä.
make käynnistää lataajan; lataaja päättää, miten välityspalvelinta käytetään. GNU makessa vie muuttujat Makefile-tasolla, kun jokaisen asiaankuuluvan reseptin on saatava ne:
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
Reseptirivi alkaa sarkaimella. export-käskyt kuuluvat maken syntaksiin ja välittävät arvot komentojen ympäristöön.
Yhdellä reseptirivillä tehty shell-vienti katoaa yleensä ennen seuraavaa riviä, koska GNU make käynnistää jokaiselle riville erillisen shellin. Yhtä komentoa varten käytä sen sijaan shell-sijoitusta suoraan kyseisen komennon yhteydessä:
fetch:
http_proxy=http://proxy.example:8080 https_proxy=http://proxy.example:8080 curl --fail https://downloads.example/package.tar.gz
Käytä lataajan dokumentoituja muuttujanimiä ja välityspalvelinprotokollaa. Jos käännös voi käyttää julkista HTTP-päätepistettä, valitse ehdokas HTTP-välityspalvelinluettelosta näille ympäristöarvoille. Suoritettava tiedosto, joka jättää nämä muuttujat huomiotta, tarvitsee oman välityspalvelinvalintansa. Tunnistetiedot kannattaa toimittaa käännösympäristön kautta sen sijaan, että ne tallennetaan Makefileen.
Nämä viennit vaikuttavat alikomentoihin. Ne eivät muuta pääteohjelman ympäristöä sen jälkeen, kun make päättyy.