Commit Graph

8 Commits

Author SHA1 Message Date
Nathan Rajlich
093be8b16b install: prevent a KeyError from being thrown when PORTABLE is not set 2012-08-06 13:22:05 -07:00
Nathan Rajlich
7a9db6cfb1 install: add a "portable" mode to the shebang-rewriting logic
This "portable" mode rewrites the npm shebang to use the "node" executable
in the same directory relative to the "npm" script. This makes the "npm"
script "just work" even when "node" is not in the user's $PATH.

This mode is necessary for the precompiled binary packages that may potentially
be extracted to anywhere. The regular shebang-rewriting logic would normally
set the npm script's shebang to "/bin/node" which will not be present on anyone's
machine. In the end, we want the precompiled packages to be as user-friendly as
possible.
2012-08-06 10:18:27 -07:00
Nathan Rajlich
6bdd4d0205 install: install the "wafadmin/Tools" files into the correct dir
Previously they were going into just "wafadmin" and node-waf wasn't working.
2012-08-06 10:16:09 -07:00
Nathan Rajlich
3254caceef install: use os.path.join() to create the npm shebang
Prettier formatting for the shebang if the "prefix" ends with a /
2012-08-05 14:02:30 -07:00
Nathan Rajlich
57f785151a install: install the "wafadmin" files into the correct directory
Before they were just being copied into "lib/node/".
Now they go into "lib/node/wafadmin/".
2012-08-04 00:10:58 -07:00
Ben Noordhuis
110e499fe7 installer: prevent ETXTBSY errors
The installer does what amounts to `cp -p`. If the node binary is in use at
the time of the copy, it'd fail with a ETXTBSY error. That's why it's unlinked
first now.
2012-08-04 02:41:34 +02:00
Ben Noordhuis
b21c8e0bfd installer: honor --without-npm, default install path
* honor the --without-waf and --without-npm configure switches

* a small logic bug made the installer script install to $PWD instead of
  /usr/local if --prefix= was not passed to configure
2012-08-04 02:18:18 +02:00
Ben Noordhuis
50e00de92a installer: fix cross-compile installs
The old installer was a JS script, which didn't work if node had been
cross-compiled for another architecture. Replace it with a python script.

Fixes #3807.
2012-08-02 13:51:35 +02:00