feature test macros을 기반으로 조건부로 제공되는 특정 Linux/POSIX 기능을 사용하고 싶습니다. 예를 들어 cpu_set_t
유형, CPU_SET_ZERO
매크로 및 sched_setaffinity
매크로가 있습니다.CMake가 glibc 기능 테스트 매크로를 지원합니까?
이상적으로 나는 CMake에게 내가 필요하다고 말하고 싶습니다. 현재 시스템에서 제공 할 수없는 경우 어떤 여분의 기능 테스트 매크로를 설정하거나 실패 하는지를 알아 내야합니다. 그게 가능하니?
은 내가 themanpages에서 조회 및 수동 add_definitions(-D_GNU_SOURCE)
를 사용할 수 있음을 알고 있지만, POSIX 표준의 서로 다른 버전에 도입하고 사용되지 않는 여러 기능이 결합되면 그 지루한 될 수 있습니다. 내 경험에 비추어 볼 때 glibc 구현 버전에 따라 이식성을 유지하기가 어려울 수 있습니다.
CMake platform checks이 있지만 확인에 도움이되는 것 같습니다. 따라서 make
이 아닌 cmake
동안 오류가 발생하지만 올바른 기능 테스트 매크로를 수동으로 파악해야합니다.
cmake-compile-features은 라이브러리가 아닌 컴파일러와 직접 관련된 기능 만 제공합니다.