You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

154 lines
4.6 KiB

{
"variables": {
# may be redefined in command line on configuration stage
# "BUILD_LIBRDKAFKA%": "<!(echo ${BUILD_LIBRDKAFKA:-1})"
"BUILD_LIBRDKAFKA%": "<!(node ./util/get-env.js BUILD_LIBRDKAFKA 1)",
},
"targets": [
{
"target_name": "node-librdkafka",
'sources': [
'src/binding.cc',
'src/callbacks.cc',
'src/common.cc',
'src/config.cc',
'src/connection.cc',
'src/errors.cc',
'src/kafka-consumer.cc',
'src/producer.cc',
'src/topic.cc',
'src/workers.cc',
'src/admin.cc'
],
"include_dirs": [
"<!(node -e \"require('nan')\")",
"<(module_root_dir)/"
],
'conditions': [
[
'OS=="win"',
{
'actions': [
{
'action_name': 'nuget_librdkafka_download',
'inputs': [
'deps/windows-install.py'
],
'outputs': [
'deps/precompiled/librdkafka.lib',
'deps/precompiled/librdkafkacpp.lib'
],
'message': 'Getting librdkafka from nuget',
'action': ['python', '<@(_inputs)']
}
],
'cflags_cc' : [
'-std=c++14'
],
'msvs_settings': {
'VCLinkerTool': {
'AdditionalDependencies': [
'librdkafka.lib',
'librdkafkacpp.lib'
],
'AdditionalLibraryDirectories': [
'../deps/precompiled/'
]
},
'VCCLCompilerTool': {
'AdditionalOptions': [
'/GR'
],
'AdditionalUsingDirectories': [
'deps/precompiled/'
],
'AdditionalIncludeDirectories': [
'deps/librdkafka/src',
'deps/librdkafka/src-cpp'
]
}
},
'include_dirs': [
'deps/include'
]
},
{
'conditions': [
[ "<(BUILD_LIBRDKAFKA)==1",
{
"dependencies": [
"deps/librdkafka.gyp:librdkafka"
],
"include_dirs": [
"deps/librdkafka/src",
"deps/librdkafka/src-cpp"
],
'conditions': [
[
'OS=="linux"',
{
"libraries": [
"../build/deps/librdkafka.so",
"../build/deps/librdkafka++.so",
"-Wl,-rpath='$$ORIGIN/../deps'",
],
}
],
[
'OS=="mac"',
{
"libraries": [
"../build/deps/librdkafka.dylib",
"../build/deps/librdkafka++.dylib",
],
}
]
],
},
# Else link against globally installed rdkafka and use
# globally installed headers. On Debian, you should
# install the librdkafka1, librdkafka++1, and librdkafka-dev
# .deb packages.
{
"libraries": ["-lrdkafka", "-lrdkafka++"],
"include_dirs": [
"/usr/include/librdkafka",
"/usr/local/include/librdkafka",
"/opt/include/librdkafka",
],
},
],
[
'OS=="linux"',
{
'cflags_cc' : [
'-std=c++14'
],
'cflags_cc!': [
'-fno-rtti'
]
}
],
[
'OS=="mac"',
{
'xcode_settings': {
'MACOSX_DEPLOYMENT_TARGET': '10.11',
'GCC_ENABLE_CPP_RTTI': 'YES',
'OTHER_LDFLAGS': [
'-L/usr/local/opt/openssl/lib'
],
'OTHER_CPLUSPLUSFLAGS': [
'-I/usr/local/opt/openssl/include',
'-std=c++14'
],
},
}
]
]
}
]
]
}
]
}