Konstrua ĉirkaŭilo povas lasi vin aldoni CMake-argumentojn dum ĝi kaŝas la medion per kiu CMake lanĉiĝas. Frua projekta hoko donas al vi unu lokon por provizi la prokurajn valorojn de la agorda procezo.

Konservu malgrandan dosieron ĉe stabila absoluta vojo, ekzemple /home/alex/cmake/proxy-env.cmake:

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

Transdonu tiun dosieron al la agordo:

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

CMAKE_PROJECT_INCLUDE_BEFORE inkluzivas la dosieron komence de ĉiu alvoko al project(). Ĝi do ruliĝas pli frue ol CMAKE_PROJECT_INCLUDE, kiu ruliĝas je la fino de tiu alvoko. Tiu diferenco gravas kiam lingva agordo aŭ nestita projekto bezonas la vojon.

Por publikaj elŝutoj dum agordado permesataj tra publika peranto, elektu la HTTP-URL-valorojn el la HTTP-prokura listo. La hoko tamen ne povas influi laboron faritan antaŭ ĝi, inkluzive elŝuton antaŭ la unua alvoko al project(). Ĝi ankaŭ ne skribas daŭran medion-agordon de la operaciumo.

Procezoj lanĉitaj poste de tiu ĉi CMake-procezo povas heredi la valorojn, kondiĉe ke iliaj retaj klientoj subtenas ilin. Pli posta, aparte lanĉita konstruo havas sian propran medion. Elŝuto prokrastita al tiu konstrua etapo ankaŭ devas ricevi sian prokuron tie.

Tenu la hokan dosieron ekster publika fonta arbo kiam ĝi enhavas privatajn konektajn detalojn. La argumento -D konservas la hokan vojon kiel CMake-variablon; set(ENV{...}) ŝanĝas la medion de la kuranta procezo anstataŭ igi kaŝmemoran variablon prokura agordo.

Rilataj artikoloj