diff options
author | Daiderd Jordan <daiderd@gmail.com> | 2017-02-14 21:32:09 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-02-14 21:32:09 +0100 |
commit | 7929888e8da9271d307c2692a28251a1552c577a (patch) | |
tree | fa91ba17aa7fb82742e97a8e3fb187229b038ce2 /pkgs/misc/vim-plugins | |
parent | a5b8d468a504e0eedcda71de1694201806fb921d (diff) | |
parent | 07c21bfaf72b54c3bcc1649c635d95fdc900a5ed (diff) | |
download | nixlib-7929888e8da9271d307c2692a28251a1552c577a.tar nixlib-7929888e8da9271d307c2692a28251a1552c577a.tar.gz nixlib-7929888e8da9271d307c2692a28251a1552c577a.tar.bz2 nixlib-7929888e8da9271d307c2692a28251a1552c577a.tar.lz nixlib-7929888e8da9271d307c2692a28251a1552c577a.tar.xz nixlib-7929888e8da9271d307c2692a28251a1552c577a.tar.zst nixlib-7929888e8da9271d307c2692a28251a1552c577a.zip |
Merge pull request #22614 from cstrahan/ycm
YouCompleteMe: use ycmd package
Diffstat (limited to 'pkgs/misc/vim-plugins')
-rw-r--r-- | pkgs/misc/vim-plugins/default.nix | 30 | ||||
-rw-r--r-- | pkgs/misc/vim-plugins/patches/youcompleteme/2-ycm-cmake.patch | 36 | ||||
-rw-r--r-- | pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme | 27 |
3 files changed, 10 insertions, 83 deletions
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix index f7274219bdcb..953957c7c124 100644 --- a/pkgs/misc/vim-plugins/default.nix +++ b/pkgs/misc/vim-plugins/default.nix @@ -3,6 +3,7 @@ , which, fetchgit, llvmPackages , xkb_switch, rustracerd, fzf , python3, boost, icu +, ycmd , Cocoa ? null }: @@ -1451,32 +1452,13 @@ rec { sha256 = "12xz019jrvr6wgjbp0w052awpmhwbpkwy6j7v0f0ldx242rv9sr8"; }; dependencies = []; - buildInputs = [ - python go cmake - ] ++ stdenv.lib.optional stdenv.isDarwin Cocoa; - - propagatedBuildInputs = stdenv.lib.optional (!stdenv.isDarwin) rustracerd; - - patches = [ - ./patches/youcompleteme/2-ycm-cmake.patch - ]; - - # YCM requires path to external libclang 3.9 - # For explicit use and as env variable for ../third_party/ycmd/build.py - EXTRA_CMAKE_ARGS="-DEXTERNAL_LIBCLANG_PATH=${llvmPackages.clang.cc}/lib/libclang.${if stdenv.isDarwin then "dylib" else "so"}"; - buildPhase = '' - patchShebangs . substituteInPlace plugin/youcompleteme.vim \ - --replace "'ycm_path_to_python_interpreter', '''" "'ycm_path_to_python_interpreter', '${python}/bin/python'" - - mkdir build - pushd build - cmake -G "Unix Makefiles" . ../third_party/ycmd/cpp -DPYTHON_LIBRARIES:PATH=${python}/lib/libpython2.7.so -DPYTHON_INCLUDE_DIR:PATH=${python}/include/python2.7 -DUSE_CLANG_COMPLETER=ON \ - $EXTRA_CMAKE_ARGS - make ycm_core -j''${NIX_BUILD_CORES} -l''${NIX_BUILD_CORES}} - ${python}/bin/python ../third_party/ycmd/build.py --gocode-completer --clang-completer - popd + --replace "'ycm_path_to_python_interpreter', '''" \ + "'ycm_path_to_python_interpreter', '${python}/bin/python'" + + rm -r third_party/ycmd + ln -s ${ycmd}/lib/ycmd third_party ''; meta = { diff --git a/pkgs/misc/vim-plugins/patches/youcompleteme/2-ycm-cmake.patch b/pkgs/misc/vim-plugins/patches/youcompleteme/2-ycm-cmake.patch deleted file mode 100644 index a1c4b1b39a46..000000000000 --- a/pkgs/misc/vim-plugins/patches/youcompleteme/2-ycm-cmake.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- ./third_party/ycmd/cpp/ycm/CMakeLists.txt -+++ ./third_party/ycmd/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() - diff --git a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme index 8da267837fb7..d61fdff0f08d 100644 --- a/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme +++ b/pkgs/misc/vim-plugins/vim2nix/additional-nix-code/youcompleteme @@ -1,29 +1,10 @@ - buildInputs = [ - python go cmake - ] ++ stdenv.lib.optional stdenv.isDarwin Cocoa; - - propagatedBuildInputs = stdenv.lib.optional (!stdenv.isDarwin) rustracerd; - - patches = [ - ./patches/youcompleteme/2-ycm-cmake.patch - ]; - - # YCM requires path to external libclang 3.9 - # For explicit use and as env variable for ../third_party/ycmd/build.py - EXTRA_CMAKE_ARGS="-DEXTERNAL_LIBCLANG_PATH=${llvmPackages.clang.cc}/lib/libclang.${if stdenv.isDarwin then "dylib" else "so"}"; - buildPhase = '' - patchShebangs . substituteInPlace plugin/youcompleteme.vim \ - --replace "'ycm_path_to_python_interpreter', '''" "'ycm_path_to_python_interpreter', '${python}/bin/python'" + --replace "'ycm_path_to_python_interpreter', '''" \ + "'ycm_path_to_python_interpreter', '${python}/bin/python'" - mkdir build - pushd build - cmake -G "Unix Makefiles" . ../third_party/ycmd/cpp -DPYTHON_LIBRARIES:PATH=${python}/lib/libpython2.7.so -DPYTHON_INCLUDE_DIR:PATH=${python}/include/python2.7 -DUSE_CLANG_COMPLETER=ON \ - $EXTRA_CMAKE_ARGS - make ycm_core -j''${NIX_BUILD_CORES} -l''${NIX_BUILD_CORES}} - ${python}/bin/python ../third_party/ycmd/build.py --gocode-completer --clang-completer - popd + rm -r third_party/ycmd + ln -s ${ycmd}/lib/ycmd third_party ''; meta = { |