Best way to check with CMake whether list containts a specific entry

前端 未结 4 1439
粉色の甜心
粉色の甜心 2021-02-06 21:26

I want to check whether a lists contains a specific entry like in the following code snipplet:

macro(foo)
if ($(ARGN} contains \"bar\")
  ...
endif
endmacro()
         


        
4条回答
  •  我寻月下人不归
    2021-02-06 22:05

    With CMake 3.3 or later, the if command supports an IN_LIST operator, e.g.:

    if ("bar" IN_LIST _list)
     ...
    endif()
    

    For older versions of CMake, you can use the built-in list(FIND) function:

    list (FIND _list "bar" _index)
    if (${_index} GREATER -1)
      ...
    endif()
    

提交回复
热议问题