如何从cmake文件(GLOB …)模式中排除单个文件?

我的CMakeLists.txt包含这一行:

file(GLOB lib_srcs Half/half.cpp Iex/*.cpp IlmThread/*.cpp Imath/*.cpp IlmImf/*.cpp)

IlmImf文件夹包含b44ExpLogTable.cpp ,我需要从构build中排除。

如何实现?

您可以使用listfunction来操纵列​​表,例如:

 list(REMOVE_ITEM <list> <value> [<value> ...]) 

在你的情况下,也许这样的事情会工作:

 list(REMOVE_ITEM lib_srcs "IlmImf/b44ExpLogTable.cpp")