Ehituse ümbris võib lasta teil lisada CMake'i argumente, varjates samal ajal keskkonda, milles CMake käivitatakse. Varajane projekti konks annab teile ühe koha, kus anda konfigureerimisprotsessi puhverserveri väärtused.

Salvestage väike fail stabiilsesse absoluutsesse teesse, näiteks /home/alex/cmake/proxy-env.cmake:

set(ENV{http_proxy} "http://proxy.example:8080")
set(ENV{https_proxy} "http://proxy.example:8080")

Edastage see fail konfiguratsioonile:

cmake -S . -B build -DCMAKE_PROJECT_INCLUDE_BEFORE=/home/alex/cmake/proxy-env.cmake

CMAKE_PROJECT_INCLUDE_BEFORE kaasab faili iga project() kutse alguses. Seetõttu töötab see varem kui CMAKE_PROJECT_INCLUDE, mis töötab selle kutse lõpus. See erinevus on oluline, kui keele seadistamine või pesastatud projekt vajab seda marsruuti.

Konfigureerimisaja avalike allalaadimiste jaoks, mis on lubatud avaliku vahendaja kaudu, valige HTTP URL-i väärtused HTTP puhverserverite loendist. Konks ei saa siiski mõjutada tööd, mis toimus enne seda, sealhulgas allalaadimist enne esimest project() kutset. Samuti ei kirjuta see püsivat operatsioonisüsteemi keskkonnaseadet.

Protsessid, mille see CMake'i protsess hiljem käivitab, võivad väärtused pärida, kui nende võrgukliendid neid toetavad. Hiljem eraldi käivitatud ehitusel on oma keskkond. Sellele ehitustapile edasi lükatud allalaadimine peab saama oma puhverserveri ka seal.

Hoidke konksufail avalikust lähtepuust väljas, kui see sisaldab privaatseid ühenduse andmeid. Argument -D salvestab konksu tee CMake'i muutujana; set(ENV{...}) muudab töötava protsessi keskkonda, selle asemel et muuta vahemälu muutuja puhverserveri seadeks.

Seotud artiklid