1. 程式人生 > >CMake根據平臺移植檢查設定檔案編譯選項

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()

假設程式碼需要在不同平臺,或者不同系統版本間移植,需要檢查系統是否支援某些函式.
可以使用CMake

CheckFunctionExists進行檢查,並使用set_source_files_properties針對某些檔案設定編譯選項.

PS:
如果您覺得我的文章對您有幫助,可以掃碼領取下紅包,謝謝!