Skip to content

Commit

Permalink
gyp: install node-gyp
Browse files Browse the repository at this point in the history
* fixes nodejs#2480
  • Loading branch information
indutny committed Jan 16, 2012
1 parent d5047f5 commit 3d1476a
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 11 deletions.
17 changes: 11 additions & 6 deletions tools/addon.gypi
Expand Up @@ -3,15 +3,20 @@
'type': 'loadable_module',
'product_extension': 'node',
'product_prefix': '',
'include_dirs': [
'../src',
'../deps/uv/include',
'../deps/v8/include'
],

'conditions': [
[ 'OS=="mac"', {
'libraries': [ '-undefined dynamic_lookup' ],
'libraries': [ '-undefined dynamic_lookup' ]
}],
[ 'OS=="win"', {
'include_dirs': [
'../src',
'../deps/uv/include',
'../deps/v8/include'
],
'libraries': [ '-l<(node_root_dir>/Debug/node.lib' ],
}, {
'include_dirs': ['../../../include/node']
}]
]
}
Expand Down
11 changes: 9 additions & 2 deletions tools/installer.js
Expand Up @@ -93,7 +93,13 @@ if (cmd === 'install') {
copy([
'deps/uv/include/ares.h',
'deps/uv/include/ares_version.h'
], 'include/node/c-ares/');
], 'include/node/');

// Copy node-gyp files
copy('common.gypi', 'lib/node/');
copy('tools/*', 'lib/node/tools/');
queue.push('ln -sf ../lib/node/tools/node-gyp ' +
path.join(node_prefix, 'bin/node-gyp'));

// Copy binary file
copy('out/Release/node', 'bin/node');
Expand All @@ -106,7 +112,8 @@ if (cmd === 'install') {
}
} else {
remove([
'bin/node', 'bin/npm', 'include/node/*', 'lib/node_modules'
'bin/node', 'bin/npm', 'bin/node-gyp', 'include/node/*',
'lib/node', 'lib/node_modules'
]);
}

Expand Down
8 changes: 5 additions & 3 deletions tools/gyp_addon → tools/node-gyp
Expand Up @@ -4,18 +4,20 @@ import sys

script_dir = os.path.dirname(__file__)
node_root = os.path.normpath(os.path.join(script_dir, os.pardir))
node_tools = os.path.join(node_root, 'lib', 'node', 'tools')

sys.path.insert(0, os.path.join(node_root, 'tools', 'gyp', 'pylib'))
sys.path.insert(0, os.path.join(node_tools, 'gyp', 'pylib'))
import gyp

if __name__ == '__main__':
args = sys.argv[1:]
addon_gypi = os.path.join(node_root, 'tools', 'addon.gypi')
common_gypi = os.path.join(node_root, 'common.gypi')
addon_gypi = os.path.join(node_tools, 'addon.gypi')
common_gypi = os.path.join(node_root, 'lib', 'node', 'common.gypi')
args.extend(['-I', addon_gypi])
args.extend(['-I', common_gypi])
args.extend(['-Dlibrary=shared_library'])
args.extend(['-Dvisibility=default'])
args.extend(['-Dnode_root_dir=%s' % node_root])
args.extend(['--depth=.']);

gyp_args = list(args)
Expand Down

0 comments on commit 3d1476a

Please sign in to comment.