본문 바로가기
기타/CMake

기본 CMake 사용과 문법

by 이재만박사 2016. 6. 17.

CMake를 사용하는 것은 간단하다.

빌드 과정은 프로젝트를 구성하는 각 디렉토리 안에서 하나 또는 그 이상의 CMakeLists 파일을 생성하여 제어한다

CMakeLists 파일은 CMake의 간단한 언어로 프로젝트 설명을 포함해야 한다

언어는 명령어들의 집합으로 표현된다 각 명령어는 CMakeLists 파일에서 나타나는 순서로 실행된다

명령어는 다음 형식을 갖는다


command (args ... )


여기에서 command는 명령어의 이름이고 args는 공백으로 구분된 파라미터의 리스트이다

(빈 공백을 포함한 전달인자는 따옴표로 해야 한다)

Version 2.2 이후로 대소문자에 상관 없다. 그래서 COMMAND나 Command로 대신 사용해도 된다. 

이전 버전은 오직 대문자만 수용한다


CMake는 문자열 또는 문자열의 리스트가 될 수 있는 간단한 변수를 지원한다

변수들은 ${VAR} 문법을 사용하여 참조된다 

여러 개의 전달인자는 set 명령어를 사용하여 리스트로 함께 묶어질 수 있다

모든 다른 명령어들은 빈 공백 구분자를 가지고 그것들이 명령어로 전달된 것처럼 리스트를 확장한다

예를 들어 set (Foo a b c)는 변수 Foo를 a b c로 설정한 결과로 나타나고 

만약 Foo가 또 다른 명령어 command("${Foo})로 전달된다면 그것은 command(a b c)와 동일할 것이다

하나의 전달인자인 것처럼 명령어를 전달인자의 리스트로 전달하기를 원하면 간단히 따옴표로 묶어라

예를 들어 command("${Foo}") 는 command("a b c")와 동일한 오직 하나의 전달인자를 전달하여 호출할 것이다


시스템 환경 변수와 Windows 레지스트리 값은 CMake에 직접적으로 접근할 수 있다

시스템 환경 변수에 접근하기 위해 $ENV{VAR} 가 사용된다

CMake는 또한 [HKEY_CURRENT_USER\\Software\\path1\\path2;key] 형태의 문법을 사용하여 많은 명령어로 레지스트리 명단을 참조할 수 있다 여기에서 패스는 레지스트리 트리와 키로부터 설치된다

댓글