नयाँ CMake 3.15.१XNUMX लिपि जेनरेटर अपडेट जारी गरिएको छ

cmake

केहि दिन अघि सीएमके 3.15.१ cross क्रस-प्लेटफार्म खुला स्रोत स्क्रिप्ट जेनरेटर जारी गरियो जसले अटोटुलको विकल्पको रूपमा काम गर्दछ र केडीई, एलएलभीएम / क्लng्ग, माईएसक्यूएल, मारियाडबी, रियाक्टोस, र ब्लेन्डर जस्ता परियोजनाहरूमा प्रयोग हुन्छ।

सीएमके एक बहु प्लेटफार्म कोड जेनेरेसन वा स्वचालन उपकरण हो। नाम "क्रस प्लेटफार्म मेक" का लागि एक संक्षिप्त नाम हो (क्रस प्लेटफर्म बनाउनुहोस्, नाममा "मेक" को उपयोग बाहिर, CMake एक अलग सूट र साधारण मेक प्रणालीको भन्दा उच्च स्तर हो यूनिक्सको, अटोटुलसँग मिल्दोजुल्दो छ।

CMake बारे

सीएमके एक साधारण स्क्रिप्टिंग भाषा प्रदान गर्नका लागि उल्लेखनीय छ, उपकरणहरू मोड्युलहरूमा कार्यक्षमता विस्तार गर्न, निर्भरताहरूको न्यूनतम संख्या (M4, पर्ल वा पाइथनको लागि बाध्य छैन), क्यासिंग समर्थन, क्रस-कम्पाइलेसनका लागि उपकरणहरूको उपलब्धता, विस्तृत दायरा कम्पाइलर प्रणालीहरू र कम्पाइलरहरूको लागि असेंब्ली फाइलहरू उत्पन्न गर्न समर्थन।

टेक्स्ट परिदृश्यहरू र प्याकेज सिर्जना परिभाषित गर्नका लागि cteke र cpack उपयोगिताहरू, अन्तर्क्रियात्मक निर्माण परिमितिहरू कन्फिगर गर्नका लागि cmake-gui युटिलिटीसँग।

CMake सरल र स्वतन्त्र कन्फिगरेसन फाइलहरू प्रयोग गरेर सफ्टवेयरको कम्पाईल प्रक्रिया नियन्त्रण गर्न प्रयोग गरिन्छ प्लेटफर्मबाट। Cmake नेटिभ मेकफाइलहरू र कार्यक्षेत्रहरू उत्पन्न गर्दछ जुन इच्छित विकास वातावरणमा प्रयोग गर्न सकिन्छ।

यो यूनिक्स GNU निर्माण प्रणालीसँग तुलना गर्न सकिन्छ जुन प्रक्रिया कन्फिगरेसन फाइलहरू द्वारा नियन्त्रण गरिएको हुन्छ, CMakeLists.txt भनिने CMake मामलामा।

GNU निर्माण प्रणाली जस्तो छैन, जुन युनिक्स प्लेटफार्महरूमा प्रतिबन्धित छ, CMake ले विभिन्न अपरेटिंग प्रणालीहरूको लागि फाइलहरूको उत्पादन समर्थन गर्दछ, जसले मर्मत सहयोग गर्दछ र प्रत्येक प्लेटफर्मको लागि फाइलहरूको बहु सेटहरू हुनुपर्ने आवश्यकतालाई हटाउँछ।

निर्माण प्रक्रिया एक वा अधिक CMakeLists.txt फाइलहरू प्रत्येक डाइरेक्टरीमा सिर्जना गरेर नियन्त्रण गरिन्छ (उपनिर्देशिकाहरू सहित)।

सीएमके कोड C ++ मा लेखिएको छ र BSD इजाजतपत्र अन्तर्गत वितरित गरिएको छ।

सीएमके 3.15..१XNUMX को मुख्य नयाँ सुविधाहरू

यो नयाँ संस्करण स्विफ्ट भाषाको लागि प्रारम्भिक जेनरेटर समर्थनको आगमन द्वारा हाइलाइट गरियो एप्पल द्वारा विकसित निन्जा टूलकिट असेंबली स्क्रिप्ट जेनरेटरमा थपिएको छ।

यस बाहेक, समर्थन पनि क्लng्ग कम्पाइलर विकल्पको लागि आउँछ विन्डोजको लागि जुन ABI MSVC को साथ बनेको छ, तर GNU- शैली कमाण्ड लाइन विकल्पहरूको प्रयोग गर्दछ।

विकासकर्ताहरूले जोड दिन्छ कि चरहरू CMAKE_MSVC_RUNTIME_LIBRARY y MSVC_RUNTIME_LIBRARY कम्पाइलरहरू द्वारा प्रयोग गरिएको रनटाइम लाइब्रेरीहरू चयन गर्न थपिएका छन् ABI MSVC (एमएस भिजुअल स्टुडियो)

कम्पाइलर्स को लागी MSVCमा CMAKE__FLAGSपूर्वनिर्धारित द्वारा, चेतावनी नियन्त्रण झण्डाहरूको सूची "/ W3" रोकीएको छ।

अन्य सुधारहरू जुन यस नयाँ संस्करणको रिलिजको घोषणामा हाइलाइट गरिएको छ, हामी निम्न फेला पार्दछौं:

  • उत्पन्न अभिव्यक्ति 'जोडियोCOMPILE_LANG_AND_ID: Target लक्ष्य फाइलहरूको लागि चलहरू प्रयोग गर्ने कम्पाइलर विकल्पहरू परिभाषित गर्न CMAKE__COMPILER_ID y LANGUAGE प्रत्येक कोड फाईलका लागि
  • जेनेरेटर अभिव्यक्ति C_COMPILER_ID, CXX_COMPILER_ID, CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE, COMPILE_LANG_AND_ID y PLATFORM_ID सूचीमा मूल्य मिलाउन समर्थन अल्प गर्नुहोस्, अल्पविराम विभाजित आईटमहरू
  • चर थपियो CMAKE_FIND_PACKAGE_PREFER_CONFIG, जसमा find_package () मा कल प्याकेज कन्फिगरेसन फाइल खोजी गर्दछ पहिले, खोजी मोड्युल उपलब्ध छ भने पनि
  • ईन्टरफेस पुस्तकालयहरूको लागि, गुणहरू सेट गर्नका लागि समर्थन थपिएको छ PUBLIC_HEADER y PRIVATE_HEADER, जसको हेडरहरू इन्स्टल कमान्ड (TARGETS) आर्गुमेन्टहरू पार गरेर कन्फिगर गर्न सकिन्छ PUBLIC_HEADER y PRIVATE_HEADER
  • चर थपियो CMAKE_VS_JUST_MY_CODE_DEBUGGING र गन्तव्य सम्पत्ति VS_JUST_MY_CODE_DEBUGGING MSVC cl 19.05 र नयाँ संस्करणहरू प्रयोग गरेर कम्पाइल गर्दा भिजुअल स्टुडियो डिबगरमा "Just My Code" मोड सक्षम गर्न।
  • FindBoost मोड्युल पुन: निर्माण गरिएको छ, जुन अब कन्फिगरेसन र मोड्युल मोडहरूमा अन्य खोज मोड्युलहरूको उपस्थितिमा पूर्ण रूपमा काम भइरहेको छ।
  • सूचना, VERBOSE, DEBUG, र TRACE प्रकारहरूको लागि समर्थन सन्देश () आदेशमा थपिएको छ
  • "निर्यात (PACKAGE)" कमाण्डले अब केहि पनि गर्दैन जबसम्म यो भ्यारीएबलको माध्यमद्वारा स्पष्ट रूपमा सक्षम हुँदैन CMAKE_EXPORT_PACKAGE_REGISTRY.

यदि तपाईं यसको बारेमा अधिक जान्न चाहनुहुन्छ भने तपाईं परामर्श लिन सक्नुहुन्छ निम्न लिंक


लेखको सामग्री हाम्रो सिद्धान्तहरूको पालना गर्दछ सम्पादकीय नैतिकता। त्रुटि क्लिक गर्न रिपोर्ट गर्नुहोस् यहाँ.

टिप्पणी गर्न पहिलो हुनुहोस्

तपाइँको टिप्पणी छोड्नुहोस्

तपाईंको ईमेल ठेगाना प्रकाशित हुनेछैन।

*

*

  1. डाटाका लागि उत्तरदायी: मिगुएल gelन्गल ग्याटन
  2. डाटाको उद्देश्य: नियन्त्रण स्पाम, टिप्पणी प्रबन्धन।
  3. वैधानिकता: तपाईंको सहमति
  4. डाटाको सञ्चार: डाटा कानुनी बाध्यता बाहेक तेस्रो पक्षलाई सूचित गरिने छैन।
  5. डाटा भण्डारण: डाटाबेस ओसीन्टस नेटवर्क (EU) द्वारा होस्ट गरिएको
  6. अधिकार: कुनै पनि समयमा तपाईं सीमित गर्न सक्नुहुनेछ, पुन: प्राप्ति र तपाईंको जानकारी मेटाउन।