9. 스크립트 문법COMMAND(args...) # 변수/리스트SET(Foo a b c)COMMAND(${Foo})COMMAND(a b c) # 분기IF(var) SOME_COMMAND(...) ENDIF(var) # 반복FOREACH(f ${VAR}) MESSAGE(${f}) ENDFOREACH(f)
12. KDE 사례 Why the KDE project switched to CMake -- and how 가장 큰 FOSS(Free and Open Source Software)프로젝트 중 하나1200명 이상의 참여 개발자4백만 줄이 넘는 소스10만 명 이상의 사용자를 위한 80가지 언어 지원매일 300번 이상의 커밋
13. 빌드 시스템으로 Autotools를 사용전체구조를 이해하기 어려워 Autohell이라 불리움SCons(파이썬 기반 빌드 툴) 검토SCons는 대형 프로젝트에 적용 할 만큼 성숙하지 못함특히 Linux가 아닌 플랫폼에서 문제가 됨CMake성공적으로 진행돼 KDE4 버전부터 정식 적용
14. CMake를 사용하는 프로젝트Allegro libraryArmadillo - linear algebra libraryAvidemuxawesome - window managerBlender 3DBoost C++ LibrariesBullet Physics EngineChickenChipmunk physics engineclangConkyDoomsday EngineDrishtiFennelGammuGDCMGmshHypertablehuginIGSTKInsight Segmentation and Registration ToolkitKDE (starting with version 4)KicadLMMSLLVMMariaDBMiKTeXMuseScoreMySQLOGREOpenSceneGraphOpenCVOpenFLUIDParaViewPopplerPvPGNQuantum GISRaw TherapeeRemRyzom CoreScribusSecond LifeSuperTuxSlicerStellariumThe Visualization ToolkitVXL