Hoʻokuʻu i ka ʻōnaehana kūkulu CMake 3.15

ua hanaia ka hoʻokuʻu ʻana i kahi mea hoʻoheheʻe hōʻailona wehe ʻia CMake 3.15, e hana ana ma ke ʻano he ʻokoʻa no Autotools a hoʻohana ʻia i nā papahana e like me KDE, LLVM/Clang, MySQL, MariaDB, ReactOS a me Blender. Ua kākau ʻia ka code CMake ma C++ a māhele ʻia ma lalo o ka laikini BSD.

He mea kaulana ʻo CMake no ka hāʻawi ʻana i kahi ʻōlelo kākau maʻalahi, kahi ala e hoʻonui ai i ka hana ma o nā modula, kahi helu liʻiliʻi o nā mea hilinaʻi (ʻaʻohe paʻa iā M4, Perl a i ʻole Python), kākoʻo caching, ke alo o nā mea hana no ka hoʻohui ʻana, kākoʻo no ka hoʻokumu ʻana. nā waihona no ka laulā o nā ʻōnaehana kūkulu a me nā mea hoʻohui, nā mea pono ctest a me cpack no ka wehewehe ʻana i nā palapala hōʻike hoʻāʻo a me nā pūʻolo kūkulu hale, pono cmake-gui no ka hoʻonohonoho ʻana i nā palena kūkulu.

ka papa kuhikuhiE nā hoʻomaikaʻi:

  • Ua hoʻohui ʻia ke kākoʻo ʻōlelo mua i ka mea hoʻokumu palapala kūkulu ʻia ʻo Ninja māmā, hoʻomohala ʻia e Apple;
  • Kākoʻo hoʻohui ʻia no kahi ʻokoʻa o ka Clang compiler no Windows e kūkulu me ka MSVC ABI, akā hoʻohana i nā koho laina kauoha GNU-style;
  • Hoʻohui ʻia nā mea hoʻololi CMAKE_MSVC_RUNTIME_LIBRARY a me MSVC_RUNTIME_LIBRARY no ke koho ʻana i nā hale waihona puke i hoʻohana ʻia e nā mea hōʻuluʻulu e pili ana i ka MSVC ABI (MS Visual Studio);
  • No nā mea hōʻuluʻulu e like me MSVC, CMAKE__FLAGS ma ka paʻamau e hoʻopau i ka papa inoa ʻana i nā hae mana e like me "/W3";
  • Hoʻohui ʻia kahi huaʻōlelo generator "COMPILE_LANG_AND_ID:" no ka wehewehe ʻana i nā koho mea hoʻopili no nā faila i manaʻo ʻia, me ka hoʻohana ʻana i nā mea hoʻololi CMAKE__COMPILER_ID a me LANGUAGE no kēlā me kēia faila code;
  • I loko o nā huaʻōlelo C_COMPILER_ID, CXX_COMPILER_ID,
    CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE,
    COMPILE_LANG_AND_ID a me PLATFORM_ID hoʻohui i ke kākoʻo no ka hoʻohālikelike ʻana i hoʻokahi waiwai i kahi papa inoa i hoʻokaʻawale ʻia nā mea e kahi koma;

  • Hoʻohui ʻia ʻo CMAKE_FIND_PACKAGE_PREFER_CONFIG i mea e ʻimi mua ai ke kelepona ʻana iā find_package() i ka faila hoʻonohonoho o ka pūʻolo, ʻoiai inā loaʻa kahi mea ʻimi;
  • No nā hale waihona puke, ua hoʻohui ʻia ke kākoʻo no ka hoʻonohonoho ʻana i nā waiwai PUBLIC_HEADER a me PRIVATE_HEADER, kahi e hiki ai ke hoʻonohonoho i nā poʻomanaʻo me ka hoʻohana ʻana i ke kauoha hoʻokomo (TARGETS) ma ke kau ʻana i nā manaʻo PUBLIC_HEADER a me PRIVATE_HEADER;
  • Hoʻohui ʻia ʻo CMAKE_VS_JUST_MY_CODE_DEBUGGING a me ka waiwai i hoʻopaʻa ʻia VS_JUST_MY_CODE_DEBUGGING e hiki ai i ke ʻano "Just My Code" i ka Visual Studio debugger i ka wā e hōʻuluʻulu ai me ka MSVC cl 19.05 a me nā mana hou aku;
  • Ua hoʻolālā hou ʻia ka module FindBoost, i kēia manawa e hana ʻoi aku ka holoʻokoʻa ma nā ʻano Config a me Module i mua o nā modules hulina ʻē aʻe;
  • Kākoʻo ke kauoha () i nā ʻano NOTICE, VERBOSE,
    DEBUG a me TRACE;

  • ʻO ke kauoha "hoʻokuʻu aku (PACKAGE)" i kēia manawa ʻaʻohe mea ke ʻae ʻia ma o ka hoʻololi CMAKE_EXPORT_PACKAGE_REGISTRY.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka