CMake의 최신 기능과 업데이트는 빌드 시스템의 효율성을 높이고 다양한 플랫폼에서의 호환성을 강화하는 데 중점을 두고 있다. 2024년 8월 현재 최신 버전은 CMake 3.30으로, 다양한 새로운 기능과 수정 사항들이 포함되었다.
주요 업데이트 내용
- 새로운 언어 및 컴파일러 지원:
- C++26 및 CUDA 26 표준에 대한 지원이 강화되었다. 이로 인해 최신 언어 기능을 사용하는 프로젝트에서 CMake를 더욱 효율적으로 활용할 수 있게 되었다.
-
OrangeC 컴파일러에 대한 지원이 추가되어, 더 다양한 환경에서 CMake를 사용할 수 있게 되었다.
-
보안 및 네트워크 기능 개선:
-
CMAKE_TLS_VERSION
및CMAKE_TLS_VERIFY
변수들이 추가되어,https://
URL을 사용하는 파일 다운로드 및 업로드 시 최소 TLS 버전을 설정할 수 있다. 이는 네트워크 보안을 강화하는 데 중요한 역할을 한다. -
Visual Studio 통합 강화:
-
Visual Studio 프로젝트 파일(
.vcxproj
)에 대한 디버그 라이브러리 사용 여부를 명시적으로 제어할 수 있는CMAKE_VS_USE_DEBUG_LIBRARIES
변수가 추가되었다. 이로 인해 Visual Studio와의 통합이 더욱 매끄럽게 이루어진다. -
모듈 및 패키지 관리 개선:
FindCUDAToolkit
모듈은 이제libnvfatbin
과libnvfatbin_static
라이브러리를 지원하며, CUDA 컴파일러 설정이 더욱 유연해졌다.-
FindPython
및FindPython3
모듈은 Python 디버그 버전에 대한 향상된 지원을 제공하며, 다양한 환경에서의 Python 프로젝트 관리가 개선되었다. -
제너레이터 표현식 및 정책 업데이트:
- 새로운 제너레이터 표현식이 추가되어 빌드 설정에서의 조건부 논리를 더 쉽게 구현할 수 있게 되었으며, 일부 기존 제너레이터 표현식의 동작이 개선되었다.
-
정책
CMP0163
및CMP0166
가 추가되었으며, 이는 프로젝트의 빌드 구성 요소 간의 종속성을 관리하는 데 도움을 준다. -
기타 개선 사항:
CTest
및CPack
도구에 여러 개선 사항이 추가되었다. 예를 들어,CPack
의 Inno Setup 및 NuGet 생성기가 새로운 환경에서도 사용할 수 있게 되었다.
이러한 업데이트는 CMake가 다양한 플랫폼과 복잡한 빌드 환경에서 더욱 강력하게 작동하도록 개선하는 데 기여한다. 최신 기능을 활용하여 프로젝트의 빌드 환경을 최적화할 수 있다.
관련 자료: - CMake Release Notes, CMake 3.30 Documentation - Kitware, CMake 3.30.0-rc4 Features and CMake 3.28.3 Updates