/ node_modules / bcrypt / binding.gyp
binding.gyp
 1  {
 2    "variables": {
 3      "NODE_VERSION%":"<!(node -p \"process.versions.node.split(\\\".\\\")[0]\")"
 4    },
 5    'targets': [
 6      {
 7        'target_name': 'bcrypt_lib',
 8        'sources': [
 9          'src/blowfish.cc',
10          'src/bcrypt.cc',
11          'src/bcrypt_node.cc'
12        ],
13        'defines': [
14              '_GNU_SOURCE',
15        ],
16        'cflags!': [ '-fno-exceptions' ],
17        'cflags_cc!': [ '-fno-exceptions' ],
18        'dependencies': [
19            "<!(node -p \"require('node-addon-api').targets\"):node_addon_api_except",
20        ],
21        'conditions': [
22          ['OS=="win"', {
23            "msvs_settings": {
24              "VCCLCompilerTool": {
25                "ExceptionHandling": 1
26              }
27            },
28            'defines': [
29              'uint=unsigned int',
30            ]
31          }],
32          ['OS=="mac"', {
33            'cflags+': ['-fvisibility=hidden'],
34            "xcode_settings": {
35              "CLANG_CXX_LIBRARY": "libc++",
36              'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
37              'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
38            }
39          }],
40          ['OS=="zos" and NODE_VERSION <= 16',{
41              'cflags': [
42                '-qascii',
43              ],
44              'defines': ["NAPI_DISABLE_CPP_EXCEPTIONS"],
45          }],
46        ],
47      },
48    ]
49  }