يأتي CMake 3.17.0 مزودًا بمولد نصوص Ninja جديد ، وتحسينات والمزيد

اطلاق ال .. انطلاق ال .. اقلاع ال الإصدار الجديد من منشئ البرنامج النصي مفتوح المصدر عبر الأنظمة الأساسية CMake 3.17 تحديث، بحيث لقد عمل المطورون لإضافة ملف منشئ البرنامج النصي يسمى "Ninja Multi-Config"وتحسينات على منشئ البرنامج النصي Visual Studio والتحسينات العامة والمزيد.

لمن لا يعرفون CMake، يجب أن يعرفوا ذلك هي أداة إنشاء أو أتمتة رمز متعدد الأنظمة الأساسية الذي يعمل كبديل لأدوات Autotools ويستخدم في مشاريع مثل KDE و LLVM / Clang و MySQL و MariaDB و ReactOS و Blender.

CMake يتميز بتوفير لغة برمجة نصية بسيطة ، يعني توسيع الوظائف عبر الوحدات ، والحد الأدنى من التبعيات (لا يوجد ربط بـ M4 أو Perl أو Python) ، ودعم التخزين المؤقت ، وجود أدوات للتجميع المتقاطع، ودعم إنشاء ملفات البناء لمجموعة واسعة من أنظمة البناء والمترجمين ، ووجود أدوات ctest و cpack لتحديد البرامج النصية واختبارها ، وأداة cmake-gui لتكوين معلمات البناء بشكل تفاعلي.

هذه الأداة تستخدم للتحكم في عملية تجميع البرنامج باستخدام ملفات تكوين بسيطة ومستقلة عن النظام الأساسي. يولد makefiles الأصلية ومساحات العمل التي يمكن استخدامها في بيئة التطوير المطلوبة.

إنه مشابه لنظام البناء جنو من نظام Unix حيث يتم التحكم في العملية من خلال ملفات التكوين ، في حالة CMake تسمى CMakeLists.txt.

ما الجديد في CMake 3.17.0

كما ذكرنا في البداية ، فإن إحدى المستجدات الرئيسية التي تبرز في هذا الإصدار الجديد من CMake 3.17.0 هي إضافة منشئ نصي جديد للبناء بالاعتماد على أدوات النينجا والتي تحمل اسم «النينجا متعدد التكوين«، والذي يختلف عن المولد السابق لأن هذا المولد الجديد يوفر القدرة على معالجة تكوينات بناء متعددة في نفس الوقت.

في غضون، في منشئ البرنامج النصي للبناء بالنسبة لبرنامج Visual Studio ، يمكنك الآن تحديد ملفات المصدر المرفقة بكل إعداد.

القدرة على ضبط metaparameters لـ CUDA ("Cuda_std_03" ، "cuda_std_14" ، إلخ.) تمت إضافته إلى الأدوات لتكوين وظائف المترجم (وظائف الترجمة).

بالإضافة إلى ذلك ، يذكر الإعلان ذلك تم إضافة المتغيرات «CMAKE_CUDA_RUNTIME_LIBRARY»Y«CUDA_RUNTIME_LIBRARY»لتحديد نوع مكتبات وقت التشغيل عند استخدام CUDA وكذلك وحدة« FindCUDAToolkit »لتحديد أدوات CUDA المتاحة على النظام دون تضمين لغة CUDA.

في CMake 3.17.0 ، يكون الأمر «- اكتشاف الأخطاء»تمت إضافته لعرض تشخيصات إضافية قابلة للقراءة عند البحث. لأغراض مماثلة ، المتغير CMAKE_FIND_DEBUG_MODE.

مضاف دعم البحث عن أدوات CURL في وحدة «FindCURL» باستخدام ملفات التكوين "CURLConfig.cmake" التي تم إنشاؤها بواسطة cmake. لتعطيل هذا السلوك ، يتم توفير المتغير CURL_NO_CURL_CMAKE.

وحدة يضيف FindPython القدرة على البحث عن مكونات Python في بيئات افتراضية يتحكم فيها «كوندا".

مضاف الخيار «–لا اختبارات = [خطأ | تجاهل]»إلى ctest فائدة ل تحديد السلوك في حالة عدم وجود دليل و "- كرر" لتحديد شروط إعادة الاختبارات (حتى تمر ، بعد انتهاء المهلة).

من التغييرات الأخرى التي ورد ذكرها في الإعلان:

  • بناء الخصائص المستهدفة INTERFACE_LINK_OPTIONS, INTERFACE_LINK_DIRECTORIES e INTERFACE_LINK_DEPENDS تم نقلها بين التبعيات الداخلية للمكتبات المجمعة بشكل ثابت.
  • عند استخدام مجموعة أدوات MinGW ، ابحث عن ملفات DLL باستخدام الأمر find_library يتم تعطيله افتراضيًا (جرت محاولة لاستيراد مكتبات ".dll.a" افتراضيًا بدلاً من ذلك).
  • لا يعتمد منطق اختيار الأداة المساعدة ninja في منشئ Ninja الآن على اسم الملف القابل للتنفيذ - يتم استخدام الأداة المساعدة الأولى بناء النينجا, النينجا o السموع وجدت ، والتي توجد في المسارات المحددة من خلال متغير البيئة PATH.
  • الامر "-Erm»تمت إضافته إلى الأداة المساعدة cmake ، والتي يمكن استخدامها لإزالة الملفات والمجلدات بدلاً من الأوامر المنفصلة«-E إزالة»Y«-E إزالة_الدليل".

أخيرا إذا كنت تريد معرفة المزيد عنها، يمكنك التحقق من الإعلان عن هذا الإصدار الجديد في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.