Rilis sistem mbangun CMake 3.16

Dipuntepangaken release saka cross-platform mbukak mbangun script generator CMake 3.16, sing dadi alternatif kanggo Autotools lan digunakake ing proyek kayata KDE, LLVM/Clang, MySQL, MariaDB, ReactOS lan Blender. Kode CMake ditulis ing C ++ lan disebarake miturut lisensi BSD.

CMake misuwur amarga nyedhiyakake basa skrip sing prasaja, sarana kanggo nggedhekake fungsi liwat modul, jumlah dependensi minimal (ora ana ikatan karo M4, Perl utawa Python), dhukungan caching, ana alat kanggo kompilasi silang, dhukungan kanggo mbangun mbangun. file kanggo sawetara saka sudhut mbangun sistem lan compiler, ngarsane ctest lan cpack keperluan kanggo nemtokake script test lan paket bangunan, cmake-gui sarana kanggo setelan interaktif mbangun paramèter.

Utama dandan:

  • Ditambahake dhukungan kanggo Objective C ("OBJC") lan basa Objective
    C ++ ("OBJCXX"), sing bisa diaktifake liwat project () lan enable_language () printah, sawise kode ing ".m" ".mm" file bakal ngumpulake minangka Objective C lan Objective C ++ kode, tinimbang minangka C++, kaya sadurunge;

  • Dhukungan tambahan kanggo kompiler Clang ing platform Solaris;
  • Nambahake opsi baris printah anyar: "cmake -E bener | palsu" kanggo print kode bali 0 lan 1; "cmake --trace-redirect=" kanggo ngarahake informasi trace menyang file
    "stderr"; printah "cmake --loglevel" wis diganti jeneng kanggo "--log-level" kanggo nggawa menyang baris karo jeneng saka printah liyane;

  • Nambahake printah "target_precompile_headers ()" kanggo dhaptar dhaptar file header sing digunakake sajrone precompilation (nyuda wektu mbangun);
  • Nambahake properti "UNITY_BUILD", sing ngaktifake mode kumpulan kanggo ngolah file sumber ing generator kanggo nyepetake mbangun;
  • Printah sing ditambahake "find_file ()", "find_library ()", "find_path ()",
    "find_package ()" lan "find_program ()" kanggo nggoleki file, perpustakaan, path, paket lan eksekusi miturut variabel sing nemtokake path panelusuran kanggo macem-macem kategori file.
    Variabel "CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH", "CMAKE_FIND_USE_CMAKE_PATH", "CMAKE_FIND_USE_CMAKE_SYSTEM_PATH", "CMAKE_FIND_USE_PACKAGE_ROOT_PATH", "CMAKE_FIND_USE_SYSTEM_FINDAGE" lan ngontrol path panelusuran dhasar RY";

  • Added "file (GET_RUNTIME_DEPENDENCIES)" mode kanggo "file ()" printah, sing ngijini sampeyan kanggo recursively njupuk dhaftar perpustakaan digunakake nalika mbosenke ngubungake file eksekusi utawa perpustakaan. Mode diganti GetPrequisites () printah, kang saiki wis ora digunakake;
  • Printah "ctest (1)" ngleksanakake kemampuan kanggo serialize tes adhedhasar sumber daya sing dibutuhake kanggo saben test;
  • Variabel "CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY" wis ora digunakake lan kudu diganti karo "CMAKE_FIND_USE_PACKAGE_REGISTRY";
  • Dhukungan platform AIX sing luwih apik. Nalika nggunakake properti "ENABLE_EXPORTS", saliyane file eksekusi, file impor kanggo linker saiki digawe, disimpen karo extension ".imp". Ing plugins digawe dening nelpon "add_library ()" karo pilihan "MODUL", file iki bisa digunakake nalika ngubungake nggunakake printah "target_link_libraries ()". Linking runtime ing AIX dipateni kanthi gawan amarga CMake saiki nyedhiyakake kabeh informasi simbol sing dibutuhake kanggo nyambungake nalika mbukak. Kanggo nggunakake runtime linking perpustakaan dinamis utawa modul loadable, sampeyan kudu tegas nemtokake opsi "-Wl, -G" ing dhaftar panji wiwitan linker, ditetepake liwat variabel "CMAKE_SHARED_LINKER_FLAGS" lan "CMAKE_MODULE_LINKER_FLAGS".

Source: opennet.ru

Add a comment