CMake เปเบเบฑเบเบเบตเปเปเบเบเปเบเบฑเปเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบชเบฐเบซเบเบญเบเบเบฒเบชเบฒเบชเบฐเบเบดเบเบเบตเปเบเปเบฒเบเบเบฒเบ, เบงเบดเบเบตเบเบฒเบเบเบฐเบซเบเบฒเบเบเบฒเบเบเปเบฒเบเบฒเบเปเบเบเบเปเบฒเบเปเบกเบเบนเบ, เบเปเบฒเบเบงเบเบซเบเปเบญเบเบเบญเบเบเบฒเบเปเบเบดเปเบเบเบฒเบญเบฒเปเบช (เบเปเปเบกเบตเบเบฒเบเบเบนเบเบกเบฑเบเบเบฑเบ M4, Perl เบซเบผเบท Python), เบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบเบฒเบเบเบงเบฒเบกเบเปเบฒ, เบกเบตเปเบเบทเปเบญเบเบกเบทเบชเปเบฒเบฅเบฑเบเบเบฒเบเบฅเบงเบเบฅเบงเบกเบเปเบฒเบก, เบชเบฐเบซเบเบฑเบเบชเบฐเบซเบเบนเบเบเบฒเบเบชเปเบฒเบเบเบฒเบเบเปเปเบชเปเบฒเบ. เปเบเบฅเปเบชเปเบฒเบฅเบฑเบเบฅเบฐเบเบฑเบเบเบงเบฒเบกเบเปเบงเบฒเบเบเบญเบเบฅเบฐเบเบปเบเบเบฒเบเบเปเปเบชเปเบฒเบเปเบฅเบฐ compilers, เบกเบต ctest เปเบฅเบฐ cpack utilities เบชเปเบฒเบฅเบฑเบเบเปเบฒเบเบปเบ scripts เบเบฒเบเบเบปเบเบชเบญเบเปเบฅเบฐเบเบธเบเบเบฒเบเบเปเปเบชเปเบฒเบ, cmake-gui utility เบชเปเบฒเบฅเบฑเบเบเบฒเบเปเบเปเบเบญเบเบเบฒเบเบชเปเบฒเบเบเบปเบงเบเปเบฒเบเบปเบเบเบฒเบ.
เบเบปเปเบโเบเป
- ะะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตัะถะบะฐ ัะทัะบะพะฒ Objective C (ยซOBJCยป) ะธ Objective
C++ (ยซOBJCXXยป), ะบะพัะพััะต ะผะพะณัั ะฑััั ะฐะบัะธะฒะธัะพะฒะฐะฝั ัะตัะตะท ะบะพะผะฐะฝะดั project() ะธ enable_language(), ะฟะพัะปะต ัะตะณะพ ะบะพะด ะฒ ัะฐะนะปะฐั ยซ.mยป ยซ.mmยป ะฑัะดะตั ะบะพะผะฟะธะปะธัะพะฒะฐัััั ะบะฐะบ ะบะพะด ะฝะฐ Objective C ะธ Objective C++, ะฐ ะฝะต ะบะฐะบ ะบะพะด ะฝะฐ C++, ะบะฐะบ ััะพ ะฑัะปะพ ัะฐะฝััะต; - ะะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตัะถะบะฐ ะบะพะผะฟะธะปััะพัะฐ Clang ะฝะฐ ะฟะปะฐััะพัะผะต Solaris;
- ะะพะฑะฐะฒะปะตะฝั ะฝะพะฒัะต ะฟะฐัะฐะผะตััั ะบะพะผะฐะฝะดะฝะพะน ัััะพะบะธ: ยซcmake -E true|falseยป ะดะปั ะฒัะฒะพะดะฐ ะบะพะดะพะฒ ะฒะพะทะฒัะฐัะฐ 0 ะธ 1; ยซcmake โtrace-redirect=ยป ะดะปั ะฟะตัะตะฝะฐะฟัะฐะฒะปะตะฝะธั ะธะฝัะพัะผะฐัะธะธ ะพ ััะฐััะธัะพะฒะบะต ะฒ ัะฐะนะป, ะฒะผะตััะพ
ยซstderrยป; ะบะพะผะฐะฝะดะฐ ยซcmake โloglevelยป ะฟะตัะตะธะผะตะฝะพะฒะฐะฝะฐ ะฒ ยซโlog-levelยป ะดะปั ะฟัะธะฒะตะดะตะฝะธั ะฒ ัะพะพัะฒะตัััะฒะธะต ั ะฝะฐะธะผะตะฝะพะฒะฐะฝะธะตะผ ะพััะฐะปัะฝัั ะบะพะผะฐะฝะด; - ะะพะฑะฐะฒะปะตะฝะฐ ะบะพะผะฐะฝะดะฐ ยซtarget_precompile_headers()ยป ะดะปั ะฟะตัะตัะธัะปะตะฝะธั ัะฟะธัะบะฐ ะทะฐะณะพะปะพะฒะพัะฝัะน ัะฐะนะปะพะฒ, ะธัะฟะพะปัะทัะตะผัั ะฟัะธ ะฟัะตะดะบะพะผะฟะธะปััะธะธ (ัะพะบัะฐัะฐะตั ะฒัะตะผั ัะฑะพัะบะธ);
- ะะพะฑะฐะฒะปะตะฝะพ ัะฒะพะนััะฒะพ ยซUNITY_BUILDยป, ะฐะบัะธะฒะธััััะตะต ะฟะฐะบะตัะฝัะน ัะตะถะธะผ ะพะฑัะฐะฑะพัะบะธ ะธัั ะพะดะฝัั ัะฐะนะปะพะฒ ะฒ ะณะตะฝะตัะฐัะพัะฐั ะดะปั ััะบะพัะตะฝะธั ัะฑะพัะบะธ;
- ะะพะฑะฐะฒะปะตะฝั ะบะพะผะฐะฝะดั ยซfind_file()ยป, ยซfind_library()ยป, ยซfind_path()ยป,
ยซfind_package()ยป ะธ ยซfind_program()ยป ะดะปั ะฟะพะธัะบะฐ ัะฐะนะปะพะฒ, ะฑะธะฑะปะธะพัะตะบ, ะฟััะตะน, ะฟะฐะบะตัะพะฒ ะธ ะธัะฟะพะปะฝัะตะผัั ัะฐะนะปะพะฒ ะฒ ัะพะพัะฒะตัััะฒะธะธ ั ะฟะตัะตะผะตะฝะฝัะผะธ, ะพะฟัะตะดะตะปัััะธะผะธ ะฟััะธ ะฟะพะธัะบะฐ ัะฐะทะปะธัะฝัั ะบะฐัะตะณะพัะธะน ัะฐะนะปะพะฒ.
ะะปั ัะฟัะฐะฒะปะตะฝะธั ะฑะฐะทะพะฒัะผะธ ะฟัััะผะธ ะดะปั ะฟะพะธัะบะฐ ะธัะฟะพะปัะทััััั ะฟะตัะตะผะตะฝะฝัะต ยซ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_ENVIRONMENT_PATHยป ะธ ยซCMAKE_FIND_USE_PACKAGE_REGISTRYยป; - ะ ะบะพะผะฐะฝะดั ยซfile()ยป ะดะพะฑะฐะฒะปะตะฝ ัะตะถะธะผ ยซfile(GET_RUNTIME_DEPENDENCIES)ยป, ะฟะพะทะฒะพะปัััะธะน ัะตะบัััะธะฒะฝะพ ะธะทะฒะปะตัั ัะฟะธัะพะบ ะฑะธะฑะปะธะพัะตะบ, ะทะฐะดะตะนััะฒะพะฒะฐะฝะฝัั ะฟัะธ ะดะธะฝะฐะผะธัะตัะบะพะผ ัะฒัะทัะฒะฐะฝะธะธ ะธัะฟะพะปะฝัะตะผะพะณะพ ัะฐะนะปะฐ ะธะปะธ ะฑะธะฑะปะธะพัะตะบะธ. ะ ะตะถะธะผ ะฟัะธััะป ะฝะฐ ัะผะตะฝั ะบะพะผะฐะฝะดะต GetPrerequisites(), ะบะพัะพัะฐั ัะตะฟะตัั ะพะฑััะฒะปะตะฝะฐ ัััะฐัะตะฒัะตะน;
- ะ ะบะพะผะฐะฝะดะต ยซctest(1)ยป ัะตะฐะปะธะทะพะฒะฐะฝะฐ ะฒะพะทะผะพะถะฝะพััั ัะตัะธะฐะปะธะทะฐัะธะธ ัะตััะพะฒ, ะพััะฐะปะบะธะฒะฐััั ะพั ัะตััััะพะฒ, ััะตะฑัะตะผัั ะดะปั ะบะฐะถะดะพะณะพ ัะตััะฐ;
- ะะฑััะฒะปะตะฝะฐ ัััะฐัะตะฒัะตะน ะฟะตัะตะผะตะฝะฝะฐั ยซCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRYยป, ะฒะผะตััะพ ะบะพัะพัะพะน ัะปะตะดัะตั ะธัะฟะพะปัะทะพะฒะฐัั ยซCMAKE_FIND_USE_PACKAGE_REGISTRYยป;
- ะฃะปัััะตะฝะฐ ะฟะพะดะดะตัะถะบะฐ ะฟะปะฐััะพัะผั AIX. ะัะธ ะธัะฟะพะปัะทะพะฒะฐะฝะธะธ ัะฒะพะนััะฒะฐ ยซENABLE_EXPORTSยป, ะฟะพะผะธะผะพ ะธัะฟะพะปะฝัะตะผะพะณะพ ัะฐะนะปะฐ, ัะตะฟะตัั ัะพัะผะธััะตััั ัะฐะนะป ะธะผะฟะพััะฐ ะดะปั ะบะพะผะฟะพะฝะพะฒัะธะบะฐ, ัะพั ัะฐะฝัะตะผัะน ั ัะฐััะธัะตะฝะธะตะผ ยซ.impยป. ะ ะฟะปะฐะณะธะฝะฐั , ัะพะทะดะฐะฒะฐะตะผัั ะฟัะธ ะฟะพะผะพัะธ ะฒัะทะพะฒะฐ ยซadd_library()ยป ั ะพะฟัะธะตะน ยซMODULEยป, ะดะฐะฝะฝัะน ัะฐะนะป ะผะพะถะตั ะฟัะธะผะตะฝััััั ะฟัะธ ะบะพะผะฟะพะฝะพะฒะบะต ั ะธัะฟะพะปัะทะพะฒะฐะฝะธะตะผ ะบะพะผะฐะฝะดั ยซtarget_link_libraries()ยป. Runtime-ะบะพะผะฟะพะฝะพะฒะบะฐ ะฒ AIX ะฟะพ ัะผะพะปัะฐะฝะธั ะพัะบะปััะตะฝะฐ, ัะฐะบ ะบะฐะบ CMake ัะตะฟะตัั ะฟัะตะดะพััะฐะฒะปัะตั ะฒัั ะฝะตะพะฑั ะพะดะธะผัั ะธะฝัะพัะผะฐัะธั ะพ ัะธะผะฒะพะปะฐั ะดะปั ัะฒัะทัะฒะฐะฝะธั ะฒะพ ะฒัะตะผั ะทะฐะณััะทะบะธ. ะะปั ะฟัะธะผะตะฝะตะฝะธั runtime-ะบะพะผะฟะพะฝะพะฒะบะธ ะดะธะฝะฐะผะธัะตัะบะธั ะฑะธะฑะปะธะพัะตะบ ะธะปะธ ะทะฐะณััะถะฐะตะผัั ะผะพะดัะปะตะน ัะปะตะดัะตั ัะฒะฝะพ ัะบะฐะทัะฒะฐัั ะพะฟัะธะธ ยซ-Wl,-Gยป ะฒ ัะฟะธัะบะธ ัะปะฐะณะพะฒ ะทะฐะฟััะบะฐ ะบะพะผะฟะพะฝะพะฒัะธะบะฐ, ะพะฟัะตะดะตะปัะตะผัั ัะตัะตะท ะฟะตัะตะผะตะฝะฝัะต ยซCMAKE_SHARED_LINKER_FLAGSยป ะธ ยซCMAKE_MODULE_LINKER_FLAGSยป.
เปเบซเบผเปเบเบเปเปเบกเบนเบ: opennet.ru