CMake ExternalProject ဒေါင်းလုဒ်များအတွက် ပရောက်စီ ဆက်တင်များ
CMake ဖွဲ့စည်းမှု အောင်မြင်ခြင်းက နောက်ပိုင်း မှီခိုမှု ဒေါင်းလုဒ်များ တူညီသော လမ်းကြောင်းကို သုံးသည်ဟု သက်သေပြသည်ဟု မယူဆမီ ExternalProject နောက်ကွယ်ရှိ လုပ်ငန်းစဉ်နှင့် ဒေါင်းလုဒ် အဆင့်ကို ဖော်ထုတ်ပါ။
CMake သည် အောင်မြင်စွာ ဖွဲ့စည်းသည်။ တည်ဆောက်မှုသည် နောက်မှ စတင်ပြီး ပြင်ပ မှီခိုမှုတစ်ခုကို ဒေါင်းလုဒ်ဆွဲရန် ကြိုးစားကာ ပရောက်စီတွင် ကျရှုံးသည်။ ယခင်အောင်မြင်မှုသည် ထို ဒေါင်းလုဒ်ကို လုံးဝ မလေ့ကျင့်ခဲ့ခြင်း ဖြစ်နိုင်သည်။
ExternalProject_Add() သည် တည်ဆောက်မှုအတွင်း လည်ပတ်နိုင်သော အဆင့်များကို ဖန်တီးသည်။ ထို အဆင့်များကို စတင်သော လုပ်ငန်းစဉ်သည် ပင်မ ပရောဂျက်ကို ဖွဲ့စည်းခဲ့သော တာမီနယ် သို့မဟုတ် IDE နှင့် မတူညီသော ပတ်ဝန်းကျင် ရှိနိုင်သည်။ CI တွင် ဤကွာခြားချက်ကို လျစ်လျူရှုရန် လွယ်ကူသည်၊ အဘယ်ကြောင့်ဆိုသော် ထိုတွင် ဖွဲ့စည်းမှုနှင့် ကွန်ပိုင်းလုပ်ခြင်းသည် သီးခြား အလုပ်များ ဖြစ်နိုင်သည်။
ကွန်ရက် လုပ်ဆောင်ချက်ကို ရှာပါ
- URL ဒေါင်းလုဒ်သည် CMake ၏ ဒေါင်းလုဒ်လမ်းကြောင်းကို သုံးသည်။
- Git ရင်းမြစ်သည် ကိုယ်ပိုင် ပံ့ပိုးထားသော ဖွဲ့စည်းမှုရှိသည့် Git သယ်ယူပို့ဆောင်မှုကို ခေါ်သည်။
- စိတ်ကြိုက်
DOWNLOAD_COMMANDသည် ပရောဂျက် သတ်မှတ်ထားသည့် မည်သည့် ပရိုဂရမ်ကိုမဆို သုံးသည်။
ပရိုဂရမ်တစ်ခု၏ ပရောက်စီ ဆက်တင်သည် သုံးခုလုံးကို ဖွဲ့စည်းသည်ဟု မယူဆပါနှင့်။ မှီခိုမှု URL ကို မပြောင်းမီ ကျရှုံးသော အဆင့်၏ အမိန့်နှင့် အမှားကို ဖတ်ပါ။
ရွေးချယ်ထားသော ဒေါင်းလုဒ်ဆွဲသူသည် ပရောက်စီ ပတ်ဝန်းကျင် ကိန်းရှင်များကို ပံ့ပိုးပါက ထို အဆင့်ကို အမှန်တကယ် လုပ်ဆောင်သော လုပ်ငန်းစဉ်ထံ ပေးပါ။ ဖောက်သည်က HTTP ပရောက်စီကို လက်ခံသော အများသူငှာ ဒေါင်းလုဒ်များအတွက် ထိုလမ်းကြောင်း ခွင့်ပြုထားပါက HTTP ပရောက်စီ စာရင်းက အဆုံးမှတ် ကိုယ်စားလှယ်လောင်းများကို ပေးသည်။ အလားတူ အမည်ရှိ သာမန် CMake ကက်ရှ် ကိန်းရှင်ကို ပေးပို့ခြင်းသည် ကလေး လုပ်ငန်းစဉ်၏ ပတ်ဝန်းကျင် ကိန်းရှင်ကို သတ်မှတ်ခြင်းနှင့် အလိုအလျောက် မတူပါ။
FetchContent နှင့် ကွာခြားချက်ကိုလည်း ထိန်းသိမ်းပါ။ ၎င်း၏ ပုံမှန် မှီခိုမှု ဖြည့်စွက်ခြင်းသည် ဖွဲ့စည်းမှုအတွင်း ဖြစ်ပွားသောကြောင့် ထိုတွင် အလုပ်လုပ်သော ချက်ပြုတ်နည်းသည် ExternalProject တည်ဆောက်မှု အဆင့်၏ ပတ်ဝန်းကျင်ကို သက်သေမပြပါ။
သမိုင်းဝင် ပြန်လည်လွှဲပို့မှု ကန့်သတ်ချက်ကို ရှောင်ရန် စိတ်ကြိုက် ဒေါင်းလုဒ်ဆွဲသူကို အကြံပြုသော အဖြေဟောင်းသည် ခေတ်သစ် ကျရှုံးမှုတိုင်း ဒေါင်းလုဒ် အမိန့်အသစ် လိုအပ်သည်ဟု သက်သေမဟုတ်ပါ။ လက်ရှိ အမှားသည် ပြန်လည်လွှဲပို့မှု၊ ပရောက်စီ အတည်ပြုခြင်း၊ လက်မှတ် ယုံကြည်မှု သို့မဟုတ် ရိုးရှင်းစွာ ဆက်သွယ်နိုင်မှု ဖြစ်မဖြစ် စစ်ဆေးပါ။ သက်ဆိုင်ရာ လမ်းကြောင်းကို ပြင်ဆင်နေစဉ် မျှော်လင့်ထားသော မော်ကွန်း ဟက်ရှ်နှင့် TLS အတည်ပြုခြင်းကို ထိန်းသိမ်းပါ။