我试图将Node.js插件集成到基于CMake的现有构建系统中。插件构建需要CMake上下文中可用的大量预处理器宏定义和库依赖项。我希望能够在CMake调用它们时将它们传递给node-gyp
。不幸的是,我无法找到一种简单的方法。
我尝试过这样使用普通旧gyp
的方法:
node-gyp configure -d -DPOSIX=1
但是-D
选项似乎没有被node-gyp
传递。查看node-gyp
的来源,这并不令人惊讶。有没有直接,直接的方法来做到这一点,或者我是否仍然坚持以编程方式生成binding.gyp
中的条目,从环境中提取这些信息或其他类似的信息?
答案 0 :(得分:1)
我不确定为什么你会看到在binding.gyp中使用cflags设置的缺点 - 但我只是通过使用.bashrc设置标志来做类似的工作
导出CFLAGS =' - m32' export CXXFLAGS =' - m32' export LDFLAGS =' - m3'
答案 1 :(得分:0)
使用"定义"。
{
"targets": [
{
"target_name": "MyAddon",
"sources": [ "File1.cpp", "File2.cpp" ],
"libraries": [ "MyNeeded.lib" ],
"defines": [ "_UNICODE", "UNICODE" ]
}
]
}
运行 node-gyp configure 时,会在config.gypi中添加定义