Proxy ortamını CMAKE_PROJECT_INCLUDE_BEFORE ile ayarlama
Bir sarmalayıcı CMake bağımsız değişkenlerine izin verip başlatma ortamını açığa çıkarmadığında erken bir proje include dosyası kullanın.
Bir derleme sarmalayıcısı, CMake'in başlatıldığı ortamı gizlerken CMake bağımsız değişkenleri eklemenize izin verebilir. Erken bir proje kancası, yapılandırma sürecinin proxy değerlerini sağlayacağınız tek bir yer verir.
Küçük bir dosyayı sabit ve mutlak bir yolda saklayın, örneğin /home/alex/cmake/proxy-env.cmake:
set(ENV{http_proxy} "http://proxy.example:8080")
set(ENV{https_proxy} "http://proxy.example:8080")Bu dosyayı yapılandırmaya geçirin:
cmake -S . -B build -DCMAKE_PROJECT_INCLUDE_BEFORE=/home/alex/cmake/proxy-env.cmakeCMAKE_PROJECT_INCLUDE_BEFORE dosyayı her project() çağrısının başında içerir. Bu nedenle, o çağrının sonunda çalışan CMAKE_PROJECT_INCLUDE'den daha erken çalışır. Dil kurulumu veya iç içe bir proje bu yola ihtiyaç duyduğunda bu ayrım önemlidir.
Yapılandırma sırasında genel bir aracı üzerinden izin verilen genel indirmeler için HTTP URL değerlerini HTTP proxy listesinden seçin. Kanca yine de kendisinden önce yürüyen işi etkileyemez; ilk project() çağrısından önceki bir indirme de buna dahildir. Ayrıca işletim sisteminin kalıcı ortam ayarını da yazmaz.
Bu CMake sürecinin sonradan başlattığı süreçler, ağ istemcileri destekliyorsa değerleri devralabilir. Sonradan ayrı başlatılan bir derleme kendi ortamına sahiptir. O derleme aşamasına ertelenen bir indirme de proxy'sini orada almalıdır.
Kanca dosyası özel bağlantı ayrıntıları içeriyorsa genel bir kaynak ağacının dışında tutun. -D bağımsız değişkeni kanca yolunu bir CMake değişkeni olarak saklar; set(ENV{...}) bir önbellek değişkenini proxy ayarına dönüştürmek yerine çalışan sürecin ortamını değiştirir.