CMake根据平台移植检查设置文件编译选项

#添加函数检查功能
include(CheckFunctionExists)

//检查系统是否支持accpet4,将检查结果设置至HAVE_ACCEPT4
check_function_exists(accept4 HAVE_ACCEPT4)
if(NOT HAVE_ACCEPT4)
    //如果系统不支持accept4,则针对SocketsOps.cc添加编译选项"-DNO_ACCEPT4"
    set_source_files_properties(SocketsOps.cc PROPERTIES COMPILE_FLAGS "-DNO_ACCEPT4")
endif()

假设代码需要在不同平台,或者不同系统版本间移植,需要检查系统是否支持某些函数.
可以使用CMakeCheckFunctionExists进行检查,并使用set_source_files_properties针对某些文件设置编译选项.

PS:
如果您觉得我的文章对您有帮助,可以扫码领取下红包,谢谢!

猜你喜欢

转载自www.cnblogs.com/jason1990/p/10082137.html