blob: 4cb806018a2bca130498fce109864c903390722f [file] [log] [blame]
{
'targets': [
{
'target_name': 'uws',
'sources': [
'src/Extensions.cpp',
'src/Group.cpp',
'src/Networking.cpp',
'src/Hub.cpp',
'src/Node.cpp',
'src/WebSocket.cpp',
'src/HTTPSocket.cpp',
'src/Socket.cpp',
'src/addon.cpp'
],
'conditions': [
['OS=="linux"', {
'cflags_cc': [ '-std=c++11', '-DUSE_LIBUV' ],
'cflags_cc!': [ '-fno-exceptions', '-std=gnu++0x', '-fno-rtti' ],
'cflags!': [ '-fno-omit-frame-pointer' ],
'ldflags!': [ '-rdynamic' ],
'ldflags': [ '-s' ]
}],
['OS=="mac"', {
'xcode_settings': {
'MACOSX_DEPLOYMENT_TARGET': '10.7',
'CLANG_CXX_LANGUAGE_STANDARD': 'c++11',
'CLANG_CXX_LIBRARY': 'libc++',
'GCC_GENERATE_DEBUGGING_SYMBOLS': 'NO',
'GCC_ENABLE_CPP_EXCEPTIONS': 'YES',
'GCC_THREADSAFE_STATICS': 'YES',
'GCC_OPTIMIZATION_LEVEL': '3',
'GCC_ENABLE_CPP_RTTI': 'YES',
'OTHER_CFLAGS!': [ '-fno-strict-aliasing' ],
'OTHER_CPLUSPLUSFLAGS': [ '-DUSE_LIBUV' ]
}
}],
['OS=="win"', {
'cflags_cc': [ '/DUSE_LIBUV' ],
'cflags_cc!': []
}]
]
},
{
'target_name': 'action_after_build',
'type': 'none',
'dependencies': [ 'uws' ],
'conditions': [
['OS!="win"', {
'actions': [
{
'action_name': 'move_lib',
'inputs': [
'<@(PRODUCT_DIR)/uws.node'
],
'outputs': [
'uws'
],
'action': ['cp', '<@(PRODUCT_DIR)/uws.node', 'uws_<!@(node -p process.platform)_<!@(node -p process.versions.modules).node']
}
]}
],
['OS=="win"', {
'actions': [
{
'action_name': 'move_lib',
'inputs': [
'<@(PRODUCT_DIR)/uws.node'
],
'outputs': [
'uws'
],
'action': ['copy', '<@(PRODUCT_DIR)/uws.node', 'uws_<!@(node -p process.platform)_<!@(node -p process.versions.modules).node']
}
]}
]
]
}
]
}