Permalink
Browse files

Install npm with 'make install'

  • Loading branch information...
1 parent 6035651 commit 2cd5adc28bcdfb5adcc56b70462703ecf4678a2d @ry ry committed Nov 22, 2011
Showing with 15 additions and 1 deletion.
  1. +1 −1 tools/wafadmin/Build.py
  2. +14 −0 wscript
View
@@ -773,7 +773,7 @@ def do_install(self, src, tgt, chmod=O644):
try:
shutil.copy2(src, tgt)
- os.chmod(tgt, chmod)
+ if chmod < 0: os.chmod(tgt, chmod)
except IOError:
try:
os.stat(src)
View
14 wscript
@@ -969,6 +969,20 @@ def build(bld):
bld.install_files('${PREFIX}/bin/', 'tools/node-waf', chmod=0755)
bld.install_files('${LIBDIR}/node/wafadmin', 'tools/wafadmin/*.py')
bld.install_files('${LIBDIR}/node/wafadmin/Tools', 'tools/wafadmin/Tools/*.py')
+ install_npm(bld)
+
+def install_npm(bld):
+ start_dir = bld.path.find_dir('deps/npm')
+ # The chmod=-1 is a Node hack. We changed WAF so that when chmod was set to
+ # -1 that the same permission in this tree are used. Necessary to get
+ # npm-cli.js to be executable without having to list every file in NPM.
+ bld.install_files('${LIBDIR}/node_modules/npm',
+ start_dir.ant_glob('**/*'),
+ cwd=start_dir,
+ relative_trick=True,
+ chmod=0)
+ bld.symlink_as('${PREFIX}/bin/npm',
+ '../lib/node_modules/npm/bin/npm-cli.js')
def shutdown():
Options.options.debug

0 comments on commit 2cd5adc

Please sign in to comment.