ycmd: 2017-02-03 -> 2017-03-27

Now works with newer version of vim youcompleteme plugin.

Details:
- The OS X patch is no longer necessary as that code was removed upstream.
- It seems to want LLVM version 4 now.
- It annoyingly wants to symlink libclang.4 to libclang.4.0; nix already
  did this.
This commit is contained in:
Evan Danaher 2017-03-28 16:03:37 -04:00
parent c46e2d1903
commit 33d8d15329
4 changed files with 21 additions and 42 deletions

View File

@ -1,37 +0,0 @@
diff --git a/cpp/ycm/CMakeLists.txt b/cpp/ycm/CMakeLists.txt
index 2074c58e..9ecd6e57 100644
--- a/cpp/ycm/CMakeLists.txt
+++ b/cpp/ycm/CMakeLists.txt
@@ -335,7 +335,7 @@
COMMAND ${CMAKE_COMMAND} -E copy "${LIBCLANG_TARGET}" "$<TARGET_FILE_DIR:${PROJECT_NAME}>"
)
- if( APPLE )
+ #if( APPLE )
# In OS X El Capitan, Apple introduced System Integrity Protection.
# Amongst other things, this introduces features to the dynamic loader
# (dyld) which cause it to "sanitise" (and complain about) embedded
@@ -354,15 +354,15 @@
# simply strip the rpath entry from the dylib. There's no way any
# @executable_path that python might have could be in any way useful to
# libclang.dylib, so this seems perfectly safe.
- get_filename_component( LIBCLANG_TAIL ${LIBCLANG_TARGET} NAME )
- add_custom_command( TARGET ${PROJECT_NAME}
- POST_BUILD
- COMMAND install_name_tool
- "-delete_rpath"
- "@executable_path/../lib"
- "$<TARGET_FILE_DIR:${PROJECT_NAME}>/${LIBCLANG_TAIL}"
- )
- endif()
+ # get_filename_component( LIBCLANG_TAIL ${LIBCLANG_TARGET} NAME )
+ #add_custom_command( TARGET ${PROJECT_NAME}
+ # POST_BUILD
+ # COMMAND install_name_tool
+ # "-delete_rpath"
+ # "@executable_path/../lib"
+ # "$<TARGET_FILE_DIR:${PROJECT_NAME}>/${LIBCLANG_TAIL}"
+ # )
+ # endif()
endif()
endif()

View File

@ -7,12 +7,12 @@
stdenv.mkDerivation rec {
name = "ycmd-${version}";
version = "2017-02-03";
version = "2017-03-27";
src = fetchgit {
url = "git://github.com/Valloric/ycmd.git";
rev = "ec7a154f8fe50c071ecd0ac6841de8a50ce92f5d";
sha256 = "0rzxgqqqmmrv9r4k2ji074iprhw6sb0jkvh84wvi45yfyphsh0xi";
rev = "2ef1ae0d00a06a47fed3aacfd465a310e8bdb0d2";
sha256 = "0p5knlxgy66zi229ns1lfdhz5lram93vahmmk54w98fr3h8b1yfj";
};
buildInputs = [ cmake boost ] ++ stdenv.lib.optional stdenv.isDarwin Cocoa;
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
${python.interpreter} build.py --clang-completer --system-boost
'';
patches = [ ./2-ycm-cmake.patch ];
patches = [ ./dont-symlink-clang.patch ];
configurePhase = ":";

View File

@ -0,0 +1,16 @@
diff --git a/cpp/ycm/CMakeLists.txt b/cpp/ycm/CMakeLists.txt
index 00e4882..8f29797 100644
--- a/cpp/ycm/CMakeLists.txt
+++ b/cpp/ycm/CMakeLists.txt
@@ -310,11 +310,6 @@ if ( EXTERNAL_LIBCLANG_PATH OR USE_SYSTEM_LIBCLANG )
# our libraries require, in particular the Python one (from pyenv for
# instance).
set( CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE )
- # When loading our library, the dynamic linker will look for
- # libclang.so.4, not libclang.so.4.x.
- file( RENAME
- ${EXTERNAL_LIBCLANG_PATH}.${CLANG_MAJOR_VERSION}.${CLANG_MINOR_VERSION}
- ${EXTERNAL_LIBCLANG_PATH}.${CLANG_MAJOR_VERSION} )
endif()
endif()

View File

@ -6992,7 +6992,7 @@ with pkgs;
ycmd = callPackage ../development/tools/misc/ycmd {
inherit (darwin.apple_sdk.frameworks) Cocoa;
llvmPackages = llvmPackages_39;
llvmPackages = llvmPackages_4;
python = python2;
};