diff --git a/cpp/ycm/CMakeLists.txt b/cpp/ycm/CMakeLists.txt index 7c606af8..e37a2a59 100644 --- a/cpp/ycm/CMakeLists.txt +++ b/cpp/ycm/CMakeLists.txt @@ -33,50 +33,35 @@ option( PATH_TO_LLVM_ROOT "Path to the root of a LLVM+Clang binary distribution" option( USE_SYSTEM_LIBCLANG "Set to ON to use the system libclang library" OFF ) option( EXTERNAL_LIBCLANG_PATH "Path libclang library to use" ) -# Checks for clang 3.2 (LLVM 4.2+) if ( USE_CLANG_COMPLETER AND NOT USE_SYSTEM_LIBCLANG AND NOT PATH_TO_LLVM_ROOT ) - # Figure out Clang version - if ( COMPILER_IS_CLANG ) - set( CLANG_VERSION ${CMAKE_CXX_COMPILER_VERSION} ) + message( "Downloading Clang 3.2" ) + + set( CLANG_URL "http://llvm.org/releases/3.2" ) + + if ( APPLE ) + set( CLANG_DIRNAME "clang+llvm-3.2-x86_64-apple-darwin11" ) + set( CLANG_MD5 "fbdca3b4e8cdaa2352f2aeb038a16532" ) else() - execute_process( COMMAND clang -dumpversion OUTPUT_VARIABLE CLANG_VERSION ) - endif() - - if ( CLANG_VERSION VERSION_EQUAL 4.2 OR CLANG_VERSION VERSION_GREATER 4.2 ) - # Good enough, use it. - set( USE_SYSTEM_LIBCLANG ON ) - message( "System libclang seems good enough, using it." ) - else() - # If the wrong version, or not found, download - message( "Downloading Clang 3.2 (system libclang not present or not good enough)" ) - - set( CLANG_URL "http://llvm.org/releases/3.2" ) - - if ( APPLE ) - set( CLANG_DIRNAME "clang+llvm-3.2-x86_64-apple-darwin11" ) - set( CLANG_MD5 "fbdca3b4e8cdaa2352f2aeb038a16532" ) + if ( 64_BIT_PLATFORM ) + set( CLANG_DIRNAME "clang+llvm-3.2-x86_64-linux-ubuntu-12.04" ) + set( CLANG_MD5 "81821e339d7300afb76aca8edab2cf4f" ) else() - if ( 64_BIT_PLATFORM ) - set( CLANG_DIRNAME "clang+llvm-3.2-x86_64-linux-ubuntu-12.04" ) - set( CLANG_MD5 "81821e339d7300afb76aca8edab2cf4f" ) - else() - set( CLANG_DIRNAME "clang+llvm-3.2-x86-linux-ubuntu-12.04" ) - set( CLANG_MD5 "cea2d01b3206e92a8df7b079935c070b" ) - endif() + set( CLANG_DIRNAME "clang+llvm-3.2-x86-linux-ubuntu-12.04" ) + set( CLANG_MD5 "cea2d01b3206e92a8df7b079935c070b" ) endif() - - set( CLANG_FILENAME "${CLANG_DIRNAME}.tar.gz" ) - - file( - DOWNLOAD "${CLANG_URL}/${CLANG_FILENAME}" "./${CLANG_FILENAME}" - SHOW_PROGRESS EXPECTED_MD5 "${CLANG_MD5}" - ) - - execute_process( COMMAND tar -xzf ${CLANG_FILENAME} ) - - # And set PATH_TO_LLVM_ROOT - set( PATH_TO_LLVM_ROOT "${CMAKE_CURRENT_BINARY_DIR}/../${CLANG_DIRNAME}" ) endif() + + set( CLANG_FILENAME "${CLANG_DIRNAME}.tar.gz" ) + + file( + DOWNLOAD "${CLANG_URL}/${CLANG_FILENAME}" "./${CLANG_FILENAME}" + SHOW_PROGRESS EXPECTED_MD5 "${CLANG_MD5}" + ) + + execute_process( COMMAND tar -xzf ${CLANG_FILENAME} ) + + # And set PATH_TO_LLVM_ROOT + set( PATH_TO_LLVM_ROOT "${CMAKE_CURRENT_BINARY_DIR}/../${CLANG_DIRNAME}" ) endif() if ( PATH_TO_LLVM_ROOT OR USE_SYSTEM_LIBCLANG OR EXTERNAL_LIBCLANG_PATH )