blob: caf99d21f23f9b7804f89c5ab8e6eae5f3797dcf [file] [log] [blame]
{
'target_defaults': {
'include_dirs': [
"<!(node -p \"require('node-addon-api').include_dir\")"
],
'variables': {
'NAPI_VERSION%': "<!(node -p \"process.env.NAPI_VERSION || process.versions.napi\")",
'require_basic_finalizers': "<!(node -p \"process.env['npm_config_require_basic_finalizers']\")",
},
'conditions': [
['NAPI_VERSION!=""', { 'defines': ['NAPI_VERSION=<@(NAPI_VERSION)'] } ],
['NAPI_VERSION==2147483647', { 'defines': ['NAPI_EXPERIMENTAL'] } ],
['require_basic_finalizers=="true"', {
'defines': ['NODE_ADDON_API_REQUIRE_BASIC_FINALIZERS'],
}],
['OS=="mac"', {
'cflags+': ['-fvisibility=hidden'],
'xcode_settings': {
'OTHER_CFLAGS': ['-fvisibility=hidden']
}
}]
],
'sources': [
'addon.cc',
],
},
'targets': [
{
'target_name': 'addon',
'defines': [
'NAPI_CPP_EXCEPTIONS'
],
'cflags!': [ '-fno-exceptions' ],
'cflags_cc!': [ '-fno-exceptions' ],
'msvs_settings': {
'VCCLCompilerTool': {
'ExceptionHandling': 1,
'EnablePREfast': 'true',
},
},
'xcode_settings': {
'CLANG_CXX_LIBRARY': 'libc++',
'MACOSX_DEPLOYMENT_TARGET': '10.7',
'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
},
}
]
}