אַ בויען־וויקלער קען דיר לאָזן צולייגן CMake אַרגומענטן בשעת ער באַהאַלט דאָס סוויווע מיט וואָס CMake ווערט אָנגעהויבן. אַ פֿרייער פּראָיעקט־האַק גיט דיר איין אָרט צו צושטעלן די פּראַקסי־ווערטן פֿונעם קאָנפֿיגוראַציע־פּראָצעס.

היט אַ קליינע טעקע אויף אַ סטאַבילער אַבסאָלוטער וועג, למשל /home/alex/cmake/proxy-env.cmake:

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

גיב די טעקע צו דער קאָנפֿיגוראַציע:

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

CMAKE_PROJECT_INCLUDE_BEFORE שליסט איין די טעקע אינעם אָנהייב פֿון יעדן project() רוף. דעריבער לויפֿט ער פֿריִער ווי CMAKE_PROJECT_INCLUDE, וואָס לויפֿט אין סוף פֿון יענעם רוף. דער חילוק איז וויכטיק ווען די שפּראַך־סעטאַפּ אָדער אַ נעסטעד פּראָיעקט דאַרף דעם וועג.

פֿאַר עפנטלעכע אַראָפּלאָדונגען אין דער צײַט פֿון קאָנפֿיגוראַציע וואָס זענען ערלויבט דורך אַן עפנטלעכן מיטלער, קלייב די HTTP URL ווערטן פֿון דער HTTP פּראַקסי־ליסטע. דער האַק קען נאָך אַלץ נישט באַאַיינפֿלוסן אַרבעט וואָס איז פֿאָרגעקומען פֿריִער, אַריינגערעכנט אַן אַראָפּלאָדונג פֿאַר דעם ערשטן project() רוף. ער שרײַבט אויך נישט קיין באַשטענדיקע סוויווע־איינשטעלונג פֿונעם אָפּעראַציע־סיסטעם.

פּראָצעסן וואָס דער CMake־פּראָצעס הייבט שפּעטער אָן קענען ירשענען די ווערטן, בפֿרט ווען זייערע נעצווערק־קליענטן שטיצן זיי. אַ שפּעטער באַזונדער אָנגעהויבענע בויאונג האָט איר אייגענע סוויווע. אַן אַראָפּלאָדונג וואָס ווערט אָפּגעשטופּט צו יענער בויאונג־סטאַדיע מוז אויך באַקומען איר פּראַקסי דאָרט.

האַלט די האַק־טעקע אינדרויסן פֿון אַן עפנטלעכן מקור־בוים ווען זי אַנטהאַלט פּריוואַטע פֿאַרבינדונג־פּרטים. דער -D אַרגומענט היט דעם האַק־וועג ווי אַ CMake וואַריאַבל; set(ENV{...}) ענדערט דאָס סוויווע פֿונעם לויפֿנדיקן פּראָצעס אַנשטאָט פֿאַרוואַנדלען אַ קאַש־וואַריאַבל אין אַ פּראַקסי־איינשטעלונג.

פֿאַרבונדענע אַרטיקלען