我无法在CMAKE.org网站或其他任何地方找到LANGUAGE变量的可能值列表.有人请列举CMAKE认可的价值观吗?我特别需要指定Objective C++.
只要看看所有的CMakeDetermine<Language>Compiler.cmake脚本 CMake的附带.
这将导致 - 按字母顺序 - 在下面你可以放入enable_language()调用:
ASMASM-ATTASM-MASMASM-NASMCCSharpCUDACXXFortranJavaOBJC (Windows资源编译器)OBJCXX使用CMake版本3.9进行评估
参考
语言支持因平台而异.
目前,CMake在大多数平台上都支持C,CXX和Fortran.在某些平台上也支持某些汇编程序.有关完整列表,请查看该OBJC文件夹的内容.
这个想法是给命令或命令OBJCXX字段的语言只是一个字符串,然后由CMake与语言相关变量一起使用来设置构建系统.随CMake一起提供的Platform脚本为C和C++执行此配置.从理论上讲,只需设置正确的变量就可以添加自己的语言(虽然这很复杂,但我不知道有谁成功地做过这个).Modules/PlatformLANGUAGE
至于添加对Objective-C的支持:由于大多数工具链对C和Objective-C使用相同的编译器,因此您不需要配置新语言.只需将您的代码编译为纯C,并为Objective-C支持添加适当的编译器标志.
不幸的是,使用起来不太舒服,并且在角落的情况下很容易破裂.但是直到CMake明确支持Objective-C作为一流的语言,我担心这会得到它的好处.