install.py 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #!/usr/bin/env python
  2. import os
  3. import subprocess
  4. import sys
  5. import os.path as p
  6. import glob
  7. major, minor = sys.version_info[ 0 : 2 ]
  8. if major != 2 or minor < 6:
  9. sys.exit( 'The build script requires Python version >= 2.6 and < 3.0; '
  10. 'your version of Python is ' + sys.version )
  11. DIR_OF_THIS_SCRIPT = p.dirname( p.abspath( __file__ ) )
  12. DIR_OF_OLD_LIBS = p.join( DIR_OF_THIS_SCRIPT, 'python' )
  13. def Main():
  14. build_file = p.join( DIR_OF_THIS_SCRIPT, 'third_party', 'ycmd', 'build.py' )
  15. if not p.isfile( build_file ):
  16. sys.exit( 'File ' + build_file + ' does not exist; you probably forgot '
  17. 'to run:\n\tgit submodule update --init --recursive\n\n' )
  18. python_binary = sys.executable
  19. subprocess.check_call( [ python_binary, build_file ] + sys.argv[1:] )
  20. # Remove old YCM libs if present so that YCM can start.
  21. old_libs = (
  22. glob.glob( p.join( DIR_OF_OLD_LIBS, '*ycm_core.*' ) ) +
  23. glob.glob( p.join( DIR_OF_OLD_LIBS, '*ycm_client_support.*' ) ) +
  24. glob.glob( p.join( DIR_OF_OLD_LIBS, '*clang*.*') ) )
  25. for lib in old_libs:
  26. os.remove( lib )
  27. if __name__ == "__main__":
  28. Main()