mirror of
https://github.com/electron/electron.git
synced 2026-04-10 03:01:51 -04:00
Merge pull request #1705 from hammerandchisel/node-not-in-path
compile-coffee.py searches for node even on non-windows systems
This commit is contained in:
@@ -6,11 +6,15 @@ import sys
|
||||
|
||||
|
||||
SOURCE_ROOT = os.path.dirname(os.path.dirname(__file__))
|
||||
WINDOWS_NODE_PATHs = [
|
||||
WINDOWS_NODE_PATHs = os.environ['PATH'].split(os.pathsep) + [
|
||||
'C:/Program Files (x86)/nodejs',
|
||||
'C:/Program Files/nodejs',
|
||||
] + os.environ['PATH'].split(os.pathsep)
|
||||
|
||||
]
|
||||
NIX_NODE_PATHs = os.environ['PATH'].split(os.pathsep) + [
|
||||
'/usr/local/bin',
|
||||
'/usr/bin',
|
||||
'/bin',
|
||||
]
|
||||
|
||||
def main():
|
||||
input_file = sys.argv[1]
|
||||
@@ -18,20 +22,24 @@ def main():
|
||||
|
||||
coffee = os.path.join(SOURCE_ROOT, 'node_modules', 'coffee-script', 'bin',
|
||||
'coffee')
|
||||
|
||||
node = 'node'
|
||||
if sys.platform in ['win32', 'cygwin']:
|
||||
node = find_node()
|
||||
if not node:
|
||||
print 'Node.js not found in PATH for building atom-shell'
|
||||
return 1
|
||||
subprocess.check_call(['node', coffee, '-c', '-o', output_dir, input_file],
|
||||
executable=node)
|
||||
node = find_node(WINDOWS_NODE_PATHs, 'node.exe')
|
||||
else:
|
||||
subprocess.check_call(['node', coffee, '-c', '-o', output_dir, input_file])
|
||||
node = find_node(NIX_NODE_PATHs, 'node')
|
||||
|
||||
if not node:
|
||||
print 'Node.js not found in PATH for building electron'
|
||||
return 1
|
||||
|
||||
subprocess.check_call(['node', coffee, '-c', '-o', output_dir, input_file],
|
||||
executable=node)
|
||||
|
||||
|
||||
def find_node():
|
||||
for path in WINDOWS_NODE_PATHs:
|
||||
full_path = os.path.join(path, 'node.exe')
|
||||
def find_node(paths, target):
|
||||
for path in paths:
|
||||
full_path = os.path.join(path, target)
|
||||
if os.path.exists(full_path):
|
||||
return full_path
|
||||
return None
|
||||
|
||||
Reference in New Issue
Block a user