Te tukunga o te punaha hanga CMake 3.16

Tukuna e te tukunga o te papa-tuwhera-tuwhera te kaiwhakaputa tuhinga tuhi CMake 3.16, e mahi ana hei rereke ki Autotools ka whakamahia i roto i nga kaupapa penei i te KDE, LLVM/Clang, MySQL, MariaDB, ReactOS me Blender. Ko te waehere CMake kua tuhia ki C ++ ka tohatohahia i raro i te raihana BSD.

He mea rongonui a CMake mo te whakarato i te reo tuhi ngawari, he huarahi ki te whakawhānui i nga mahi ma roto i nga waahanga, he iti noa nga whakawhirinakitanga (kaore he here ki te M4, Perl, Python ranei), te tautoko keteroki, te aroaro o nga taputapu mo te whakahiato-whakawhitiwhiti, tautoko mo te hanga hanga. nga konae mo te whanuitanga o nga punaha hanga me nga kaitoi, nga taputapu ctest me te cpack mo te tautuhi i nga tuhinga whakamatautau me nga kohinga hangahanga, taputapu cmake-gui mo te tauwhitiwhiti i nga tawhā hanga.

Main whakapainga:

  • He tautoko taapiri mo Objective C (“OBJC”) me nga reo Objective
    C++ ("OBJCXX"), ka taea te whakahohe ma te kaupapa() me nga tono enable_language(), muri iho ka whakahiatohia te waehere i roto i nga konae ".m" ".mm" hei waehere Objective C me Objective C++, kaua hei C++, pera i mua;
  • He tautoko taapiri mo te Clang compiler i runga i te papaaho Solaris;
  • Kua taapirihia nga whiringa raina whakahau hou: "cmake -E pono|teka" ki te tuhi i nga waehere whakahoki 0 me te 1; "cmake --trace-redirect=" ki te anga i nga korero tohu ki tetahi konae
    "stderr"; kua whakaingoatia te tono "cmake --loglevel" ki te "--log-level" kia rite ki nga ingoa o etahi atu whakahau;
  • I taapirihia te whakahau "target_precompile_headers()" ki te whakarārangi i te raarangi o nga konae pane i whakamahia i te wa o mua i te whakahiatotanga (whakaitihia te wa hanga);
  • Kua taapirihia te taonga "UNITY_BUILD", e whakahohe ana i te aratau puranga mo te tukatuka i nga konae puna i roto i nga kaihanga ki te tere ake te hanga;
  • Kua taapirihia nga whakahau "find_file()", "find_library()", "find_path()",
    "find_package()" me te "find_program()" ki te rapu i nga konae, whare pukapuka, ara, paanui me nga mahi e pa ana ki nga taurangi e tautuhi ana i nga huarahi rapu mo nga momo momo momo konae.
    Ko nga taurangi "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_HINDAGE" me te "CMAKE_FIND_USE_SYSTEM_HNDVI" me te "CMAKE_FIND_USE_STEM_HNDVI" me te whakahaere i nga huarahi rapu turanga ISTRY";
  • I taapirihia te aratau "Kōnae(GET_RUNTIME_DEPENDENCIES)" ki te tono "kōnae()", e taea ai e koe te whakahoki ano i te rarangi o nga whare pukapuka i whakamahia ina hono hihiri ana te konae, te whare pukapuka ranei. I whakakapihia e te aratau te tono GetPrequisites(), kua whakakorea inaianei;
  • Ko te whakahau “ctest(1)” e whakatinana ana i te kaha ki te whakariterite i nga whakamatautau i runga i nga rauemi e hiahiatia ana mo ia whakamatautau;
  • Ko te taurangi "CMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY" kua whakakorehia, me whakakapi e "CMAKE_FIND_USE_PACKAGE_REGISTRY";
  • Kua pai ake te tautoko papaaho AIX. Ina whakamahi i te taonga "ENABLE_EXPORTS", i tua atu i te konae ka taea te whakahaere, ka hangaia he konae kawemai mo te hono, ka tiakina ki te toronga ".imp". I roto i nga monomai i hangaia ma te karanga "add_library()" me te "MODULE", ka taea te whakamahi i tenei konae ina hono ana te tono "target_link_libraries()". Ko te hono i te wa whakahaere i runga i te AIX kua monoa ma te taunoa na te mea kei te whakaratohia e CMake nga korero tohu katoa e tika ana mo te hono i te wa uta. Hei whakamahi i te hono wa-whakahaere o nga whare pukapuka hihiri me nga waahanga ka taea te utaina, me tino tohu koe i nga whiringa "-Wl, -G" ki nga rarangi o nga haki whakaoho hono, kua tautuhia ma nga taurangi "CMAKE_SHARED_LINKER_FLAGS" me "CMAKE_MODULE_LINKER_FLAGS".

Source: opennet.ru

Hokona te manaaki pono mo nga waahi me te tiaki DDoS, nga kaiwhakarato VPS VDS 🔥 Hokona he manaaki paetukutuku pono me te tiakitanga DDoS, ngā tūmau VPS VDS | ProHoster