Browse Source

win: Fix calling lint scripts with win32 python.

Cheng Zhao 10 years ago
parent
commit
724b29d6d4
3 changed files with 9 additions and 15 deletions
  1. 7 13
      script/coffeelint.py
  2. 1 1
      script/cpplint.py
  3. 1 1
      script/pylint.py

+ 7 - 13
script/coffeelint.py

@@ -3,33 +3,27 @@
 import errno
 import glob
 import os
-import subprocess
 import sys
 
+from lib.util import execute
 
-SOURCE_ROOT = os.path.dirname(os.path.dirname(__file__))
+
+SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
 
 
 def main():
   os.chdir(SOURCE_ROOT)
 
-  coffeelint = os.path.join(SOURCE_ROOT, 'node_modules', 'coffeelint', 'bin',
-                            'coffeelint')
+  coffeelint = os.path.join(SOURCE_ROOT, 'node_modules', '.bin', 'coffeelint')
+  if sys.platform in ['win32', 'cygwin']:
+    coffeelint += '.cmd'
   settings = ['--quiet', '-f', os.path.join('script', 'coffeelint.json')]
   files = glob.glob('atom/browser/api/lib/*.coffee') + \
           glob.glob('atom/renderer/api/lib/*.coffee') + \
           glob.glob('atom/common/api/lib/*.coffee') + \
           glob.glob('atom/browser/atom/*.coffee')
 
-  try:
-    subprocess.check_call(['node', coffeelint] + settings + files)
-  except OSError as e:
-    if e.errno == errno.ENOENT and sys.platform in ['win32', 'cygwin']:
-      subprocess.check_call(['node', coffeelint] + settings + files,
-                            executable='C:/Program Files/nodejs/node.exe')
-    else:
-      raise
-
+  execute([coffeelint] + settings + files)
 
 if __name__ == '__main__':
   sys.exit(main())

+ 1 - 1
script/cpplint.py

@@ -23,7 +23,7 @@ IGNORE_FILES = [
   os.path.join('atom', 'common', 'swap_or_assign.h'),
 ]
 
-SOURCE_ROOT = os.path.dirname(os.path.dirname(__file__))
+SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
 
 
 def main():

+ 1 - 1
script/pylint.py

@@ -5,7 +5,7 @@ import os
 import subprocess
 import sys
 
-SOURCE_ROOT = os.path.dirname(os.path.dirname(__file__))
+SOURCE_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
 
 
 def main():