When looking for a Python executable on Windows, before falling back to
guessing the default location or failing completely, attempt to use the
Python launcher to figure out the location of the Python executable.
The Python launcher is being distributed by default with Python
distributions on Windows, and is placed in the %WINDIR% folder (which is
in the PATH). This allows us to locate a Python installation even if it
was installed without putting the python.exe executable itself into the
PATH.
Because the Python launcher supports all versions of Python, we have to
explicitly request a Python 2 version. This is done by supplying "-2" as
the first command line argument. Since "py.exe -2" would be an invalid
executable for "execFile", we have to use the launcher to figure out where
the actual "python.exe" executable is located.
PR-URL: https://github.com/nodejs/node-gyp/pull/894
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
For AIX we need to use gmake.
For AIX we need to set up the path to the exp file which contains the
symbols needed for linking. The file will either be in one of the
following depeding on whether are are in installed or development
environment:
- the include/node directory
- the out/Release directory
PR-URL: https://github.com/nodejs/node-gyp/pull/753
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Sakthipriyan Vairamani <thechargingvolcano@gmail.com>
As Python has no concept of node packages, it will load whatever comes first in `sys.path`. Here we help Python by making sure files bundled in this node package are the preferred path when looking for imports.
I'm working on a old platforms,when I run ```node-gyp configure```,node-gyp report one error of python
> ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.
check this : http://bugs.python.org/issue3770
I suggest not parallel processing because usually we don't have so manay files to parse.
github.com/joyent/node had closed the issue of the same problem,see :
https://github.com/joyent/node/issues/6640
When both versions are present, attempt to use the command prompt to
determine which one should be set.
The command prompt for VS2012 set the environment variable to:
VisualStudioVersion=11.0
This environment variable is absent in the VS2010 command prompts.
Also, presumably the checkVCExpress function not setting hasVCExpress
was an oversight.
Older linkers don't have the -T flag.
This is a somewhat experimental feature, so if user's want "thin"
archives, they can specify `--thin` to revert to the original behavior.
This has been something I've been thinking about for a while now and I
finally just got my first bug report for it, so I think emptying out
these values is in fact the correct behavior.
When present alongside the "binding.gyp" file. This gives addons a chance to
overwrite default variables specified in the gyp files of the native addon's
gyp dependencies.