diff --git a/app-vim/youcompleteme/Manifest b/app-vim/youcompleteme/Manifest index fbf761e..cca5d90 100644 --- a/app-vim/youcompleteme/Manifest +++ b/app-vim/youcompleteme/Manifest @@ -1,5 +1,6 @@ EBUILD youcompleteme-20171020.ebuild 5205 SHA256 c5514d8c8761bbd023600f94c6ef69b41115d73daf4c3eb18ee8afb258a5ff4a SHA512 f89c26368caa7c8d758126dbd41d3d22d74490e1c3c153a8568ecae65a5f4d861b2709d22c56aaf08869969f9fb155d2d26f2f8d6d2677365197119b86335730 WHIRLPOOL ba3eff3f02ffbb345b67ba4c368aff11ae7d5a78f94f659b5a43f916b3bed439926dde3c19163e85953585fb9e095dbac902da50414128085d262afba2201870 EBUILD youcompleteme-20171216.ebuild 5205 SHA256 3d47de77cd691ad60afa09ed4a402757f1e82ea963babf3788d8ab2643732628 SHA512 7f84437a972668201d64e7100873a8c6e6ef73dd060195dbb0e9afd4ce676114d3cabe8b7887c84f5229bbfe621f5e717f9832864b096feed7612cd08da27e5e WHIRLPOOL cef1aaf8223bed068297d8022dbf1099a5d8d44f2a7d4c320b912fac188597bed00dda52edc826a48965950fcdf9d10ae04c4e93b4168df227ba1748413e7c8f +EBUILD youcompleteme-20180219.ebuild 5196 SHA256 292ec25061cb25597421b0205d64cc21e182de11a308bafcbae885a64f3d8af6 SHA512 9dd324d7b736897c5f0a82b1ba753a77af4d36acc27d555a195558ce80d3bed2cd266e13dc5b407785f8b8860596d6936f4b5bc5a9799ff975f5328aea148e98 WHIRLPOOL b797cf6e0ee6649d21f9fcf113ec6d9ab690f55d45be938bfdc8e2fca1e6eb8e8e176b2efe13b11d28b50fa74238dc3bf4838fc428c5185517fcee06ed5f08ef EBUILD youcompleteme-99999999-r1.ebuild 5150 SHA256 b5347df1d3b68ceb03c76531a64cf9dd5a04ade69a5c9c60b332aab752986772 SHA512 bac4ee666dc83136dcb935907121a926a778395b280b657ba4afccf388de2d88cfa589302a45ef50f8a34140490d189f4b82006a7162852666db639f15608821 WHIRLPOOL 3416f4fa875915f1087fb9e864e783682f3b8e8c24a7fa967763ccb532723d3590bd0e67ec6157baf9c756a0b18c3f6755e12fff439efe23a5fff5500a709f9c MISC README.md 1017 SHA256 b5741d484ae2b303937e0bd50ca913dd367dd846d1b211bada7db583541f1a57 SHA512 fb8d02d90df215addc2b13e60975a3d1e41d3cca945294ca1a3013ab337b7dcd834151aabb7712036fb13189a53e69b14a531110cc3820431416cd620404d08f WHIRLPOOL 0f832da37bf55242f006dff821648d68f3ce4329031e5fd1eb56fd57ded3769b86f83d65ac247f81636cfe5b8dc39e9ca97669ae4baa393c75f9a0d98822d901 MISC metadata.xml 372 SHA256 e3dd72be40b227af12daab42f7c3e887c7cf5f204833873384a155e8bcd065e9 SHA512 3afacd989d495928012e5a1b1c2bb6d14209cbcb1e347a24c1c0881c758642cc8457ee7b6202b8d129e3f08dc21492792715fc5452f8ffc33f719da9a447fdac WHIRLPOOL 2f70b46a70e97e9f8ecec4bf6d5fea40669fa1f92335362a45321f8b3f414228faa2d4152e52846bfbe92d1d659086d1f34bf42970d206a27fcbdeaefa4c9ea9 diff --git a/app-vim/youcompleteme/youcompleteme-20180219.ebuild b/app-vim/youcompleteme/youcompleteme-20180219.ebuild new file mode 100644 index 0000000..1bcdc7d --- /dev/null +++ b/app-vim/youcompleteme/youcompleteme-20180219.ebuild @@ -0,0 +1,193 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python2_7 ) + +inherit eutils cmake-utils git-r3 multilib python-single-r1 vim-plugin + +DESCRIPTION="vim plugin: a code-completion engine for Vim" +HOMEPAGE="https://valloric.github.io/YouCompleteMe/" +EGIT_REPO_URI="https://github.com/Valloric/YouCompleteMe.git" +EGIT_COMMIT="d0c6b6186e7a9ab7d5e770add3079200a518d908" +SRC_URI="" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="clang doc test mono go rust nodejs" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +COMMON_DEPEND=" + ${PYTHON_DEPS} + clang? ( >=sys-devel/clang-3.8:= ) + mono? ( dev-lang/mono ) + go? ( dev-lang/go ) + rust? ( dev-lang/rust + app-vim/rust-vim + ) + nodejs? ( net-libs/nodejs ) + dev-libs/boost[python,threads,${PYTHON_USEDEP}] + || ( + app-editors/vim[python,${PYTHON_USEDEP}] + app-editors/gvim[python,${PYTHON_USEDEP}] + ) +" + +RDEPEND=" + ${COMMON_DEPEND} + dev-python/bottle[${PYTHON_USEDEP}] + dev-python/future[${PYTHON_USEDEP}] + dev-python/jedi[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/sh[${PYTHON_USEDEP}] + dev-python/waitress[${PYTHON_USEDEP}] + virtual/python-futures[${PYTHON_USEDEP}] +" +DEPEND=" + ${COMMON_DEPEND} + test? ( + >=dev-python/mock-1.0.1[${PYTHON_USEDEP}] + >=dev-python/nose-1.3.0[${PYTHON_USEDEP}] + dev-cpp/gmock + dev-cpp/gtest + ) +" + +CMAKE_IN_SOURCE_BUILD=1 +CMAKE_USE_DIR=${S}/third_party/ycmd/cpp + +VIM_PLUGIN_HELPFILES="${PN}" + +src_prepare() { + default + + + if ! use test ; then + sed -i '/^add_subdirectory( tests )/d' third_party/ycmd/cpp/ycm/CMakeLists.txt || die + fi + for third_party_module in pythonfutures; do + rm -r "${S}"/third_party/${third_party_module} || die "Failed to remove third party module ${third_party_module}" + done + # Argparse is included in python 2.7 + for third_party_module in bottle python-future requests waitress; do + rm -r "${S}"/third_party/ycmd/third_party/${third_party_module} || die "Failed to remove third party module ${third_party_module}" + done + rm -r "${S}"/third_party/ycmd/third_party/JediHTTP/vendor || die "Failed to remove third_party/ycmd/third_party/JediHTTP/vendor" + rm -r "${S}"/third_party/ycmd/cpp/BoostParts || die "Failed to remove bundled boost" + +} + +src_configure() { + local mycmakeargs=( + -DUSE_CLANG_COMPLETER="$(usex clang)" + -DUSE_SYSTEM_LIBCLANG="$(usex clang)" + -DUSE_SYSTEM_BOOST=ON + -DUSE_SYSTEM_GMOCK=ON + ) + cmake-utils_src_configure +} + +src_compile() { + cmake-utils_src_compile + + if use rust; + then + cd "${S}"/third_party/ycmd/third_party/racerd || die "no dir third_party/racerd" + cargo build --release || die "cargo build failed" + fi + + if use mono; + then + cd "${S}/third_party/ycmd/third_party/OmniSharpServer" || die "failed cd to OmniSharpServer" + xbuild /property:Configuration=Release || die "xbuild command failed" + fi + + if use go; + then + cd "${S}/third_party/ycmd/third_party/gocode" || die "failed cd to gocode" + go build || die "failed to go build gocode" + cd "${S}/third_party/ycmd/third_party/godef" || die "failed cd to godef" + go build || die "failed to go build godef" + fi + + if use nodejs; + then + cd "${S}/third_party/ycmd/third_party/tern_runtime" || die "no dir third_party/tern_runtime" + npm install --production --python=python2 || die "npm install failed" + fi + +} + +src_test() { + cd "${S}/third_party/ycmd/cpp/ycm/tests" + LD_LIBRARY_PATH="${EROOT}"/usr/$(get_libdir)/llvm \ + ./ycm_core_tests || die + + cd "${S}"/python/ycm + + local dirs=( "${S}"/third_party/*/ "${S}"/third_party/ycmd/third_party/*/ ) + local -x PYTHONPATH=${PYTHONPATH}:$(IFS=:; echo "${dirs[*]}") + + nosetests --verbose || die +} + +src_install() { + + + if use rust; + then + cd "${S}/third_party/ycmd/third_party/racerd" || die "racerd target wasn't built" + for f in $(ls -a | tail -n +3 | grep -v target) + do + rm -rf "${f}" + done + cd "${S}/third_party/ycmd/third_party/racerd/target/release" || die "racerd target wasn't built" + for f in $(ls -a | tail -n +3 | grep -v '^racerd$') + do + rm -rf "${f}" + done + fi + + if use mono; + then + cd "${S}/third_party/ycmd/third_party/OmniSharpServer" + for f in $(ls -a | tail -n +3 | grep -v '^OmniSharp$') + do + rm -rf "${f}" + done + cd "${S}/third_party/ycmd/third_party/OmniSharpServer/OmniSharp" + for f in $(ls -a | tail -n +3 | grep -v '^bin$') + do + rm -rf "${f}" + done + fi + + if use go; + then + cd "${S}/third_party/ycmd/third_party/gocode" + for f in $(ls -a | tail -n +3 | grep -v '^gocode$') + do + rm -rf "${f}" + done + cd "${S}/third_party/ycmd/third_party/godef" + for f in $(ls -a | tail -n +3 | grep -v '^godef$') + do + rm -rf "${f}" + done + fi + + cd "${S}" + use doc && dodoc *.md third_party/ycmd/*.md + rm -r *.md *.sh *.py* *.ini *.yml COPYING.txt ci third_party/ycmd/cpp third_party/ycmd/ci third_party/ycmd/ycmd/tests third_party/ycmd/examples/samples || die + rm -r third_party/ycmd/{*.md,*.sh,*.yml,.coveragerc,.gitignore,.gitmodules,.travis.yml,build.*,*.txt,run_tests.*,*.ini,update*,Vagrantfile} || die + find python -name *test* -exec rm -rf {} + || die + egit_clean + use clang && (rm third_party/ycmd/libclang.so* || die) + + vim-plugin_src_install + + python_optimize "${ED}" + python_fix_shebang "${ED}" +}