diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2020-01-15 15:51:32 +0000 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2020-01-15 15:51:32 +0000 |
commit | 21435953e16cda318a82334ddbadb3b5c36d9ea7 (patch) | |
tree | e1810a4b135afce04b34862ef0fab2bfaeb8aeca /app-editors/vim | |
parent | 7bc9c63c9da678a7e6fceb095d56c634afd22c56 (diff) |
gentoo resync : 15.01.2020
Diffstat (limited to 'app-editors/vim')
-rw-r--r-- | app-editors/vim/Manifest | 10 | ||||
-rw-r--r-- | app-editors/vim/vim-8.1.1486.ebuild | 4 | ||||
-rw-r--r-- | app-editors/vim/vim-8.1.1846.ebuild | 4 | ||||
-rw-r--r-- | app-editors/vim/vim-8.2.0055.ebuild | 320 | ||||
-rw-r--r-- | app-editors/vim/vim-8.2.0114.ebuild | 318 | ||||
-rw-r--r-- | app-editors/vim/vim-9999.ebuild | 12 |
6 files changed, 654 insertions, 14 deletions
diff --git a/app-editors/vim/Manifest b/app-editors/vim/Manifest index 95baa09b0db9..4af86e9011bc 100644 --- a/app-editors/vim/Manifest +++ b/app-editors/vim/Manifest @@ -2,7 +2,11 @@ AUX vim-completion 1004 BLAKE2B dea4230a8d2a57fd1af18df4037504a44382a97ff672410e DIST vim-8.0.0938-gentoo-patches.tar.bz2 2316 BLAKE2B 05a87f32fc5cc65e7f5e4e5a87c654b2040ad39f1555ddde7e0e6f473dc8b520916a795406bb6bbeaf5e7ae8748aacebe7a9679461e48802e69417e945eea827 SHA512 a6062be5e6a5c5b437081312df5742353242b5171bf26da04aa6ca216d2b142b2411a88bc1edd460d28e00a59a210c8e1729e801fac6f1efd86bb2e437a56a2b DIST vim-8.1.1486.tar.gz 14318109 BLAKE2B 6054df175a32e9ed36873802a4a669cc46e034bac879cb829e45ece53f9440e97cccad47e370ebdef8dc1bb963e8e8c84bd517a3a6561705786dcab7e2368d21 SHA512 0a521d74c60f2a32e8a11e16f256e2e99fb9c00f478cd8d7a9328315abbd445796153f03884ab2b240905260317809a33afb64627b9a71ac8d6db1cbd4026d20 DIST vim-8.1.1846.tar.gz 14415116 BLAKE2B 59c2864519e100f9bc2617dd7b31a8cc17ff20fc87a761eba653e91a70688c3b4a5f05c527acaf6d075830d23c7ef8842595b6558eac2ab5209029153f1adb10 SHA512 d5a5cb7733f3190915e2b1389fea48d119afef27eac6f04ac3967f57e894cab811727a694c6837bb5acef9997cd56018d4b37efeb413c654012aaaea02bf7c7a -EBUILD vim-8.1.1486.ebuild 9071 BLAKE2B ccc015ffe297ef875c31f05ab802b14785d4e020975b251b1dcfbe49a93662a6c543c4fc3645a37c5882a8357419f1bf241328890769cf0198a2d05c5f56f1fe SHA512 0d968e45730203fbe7a936a3329ecf107fad7edb5fe53b524873bb71aebc9dbbb602580d3775cbf59d56ffc27caa70e6078ea374e9fe75b45df3167971fbc0c0 -EBUILD vim-8.1.1846.ebuild 9158 BLAKE2B 2128b3794ae8d7957c74ecb63bb06fc1b6b4a3cc17fbf66925fe775eab9b466f819e80a68c467497591399770d0023a83611b9e0e32bb7552f30bf4c2a5f649c SHA512 0a91a04386d233913f888a90da840ef33846e9d450d6287d7b7c64712cdbae765476c866be0d729c638192e0ac9c90a4bea7656210ad60656c64c43f5f9e76fe -EBUILD vim-9999.ebuild 9177 BLAKE2B f1e49f697e9dd013d586ac25859cb5f9e42a4f4b133e86103c182743592a736c05d4ffa9cfab92bdb02ac7f589c0ce3257a0bb4f5464ffe5d483d7c3ffe6c523 SHA512 86d01ac13dcbbd16e0932d486ec986f829fff21c72efa3a557941dd9ac69085a0af9c7597011beaee3adb323706c8fc329681e487c5f74221f29e9c366427f16 +DIST vim-8.2.0055.tar.gz 14655766 BLAKE2B 73703f4f08cd78f75c53cd446e3edc171805a19bce37bcc4f420f4800d50b515a265ceb885947668e8654666cfca52a189f2abc407d2db0f520a6ceb124e20ec SHA512 ccbf0bb4cd294292ef69c2b7f4539ed87aa3cbdb5e638dbcc3e86b8e3986c96419c033685a7b2293382ace0599457a523e3bf25815882cec74f6ecec87139d92 +DIST vim-8.2.0114.tar.gz 14667122 BLAKE2B 3f6219592a1b8ed85caee4cfa289e4042380da4e4a563692fb36d60fdec9e29930a8e20963fa57dddd4dd346928b34626ea51a8ab79085c1fac86c755bccfeac SHA512 0e45a63bc910f8f2972e2df076523d3a2612836bee0cffba6c2753eeadaff978054689af4029384713e822aabe0e57aa8c89bbb5f9a813781f381c3a2a416d1f +EBUILD vim-8.1.1486.ebuild 9067 BLAKE2B be4836c179288569bf5de15e3e50dc879676f86be1d84810dea0e33d454603f407d1f1327ee38b9a3841a6a67e690af0b26bd3557b245b9caf2a309af01f66fa SHA512 6e0e205b33f62ae2f97b989e22bd39365db7d687e3e5bc56ec3e811dca6e40c295b05de7060ab31f109fa9df2e3c93c6adbd97a470b0ba1251e177f50ae949a7 +EBUILD vim-8.1.1846.ebuild 9154 BLAKE2B 9963fe3bffcf4ecc6ccb82751152e6f4428865c00bae9c8f7e86ce9038b2f791679c74d4b14bcb1cb0eeec97998745263851ce58ca26c9cb3f9392b007ca578e SHA512 3ed6f3180065ce544e3f48cdb8cad923188511ca2170d5145bcd0ae4e78a22a964db491e4eafb56f2ec791c81369dd0f09ca6ad438347c232751763a3852a1fc +EBUILD vim-8.2.0055.ebuild 9154 BLAKE2B 2d3d69e1fe5e8b777dfe7c2e6a34d0f00e739cd162e6306a2fead62c795b799fe92f03a48e8c9d150a5d609d9aa11190afdb6e229d2ae2ca6a4e8faa0aade033 SHA512 d8f6c1c253d01df537e2c6edcbc964c8c1ce7035967eebe5c0c9511acb1bc4411c999bf6dd3acc4d95edf7afb9382214beb3dd7a73e023cd8a7b706a3a86c1af +EBUILD vim-8.2.0114.ebuild 9043 BLAKE2B 3dea56da891356560d81f8aad7ff902bcc6e7aa30478051b0ca1704483b8758919547de3461f874fe09c637298ba8703eba4cbc98642d69545e103c2ea2e665e SHA512 2e4fd2908d6e5bda8aeee29b37dfcb6ffda2c5aaccfac820dbfff58663ab6ca498c26d0c5cc32e7809ba70e655aeedaa5962bef3fe2aa0d2f1b2f728fc9ba000 +EBUILD vim-9999.ebuild 9062 BLAKE2B 637721a3b1b66fbd7738b3af885ed8867627994e1ec7131647fc67b73fc74558f60464a4786b27bae0f4775c4ff4fac711348b5cfb1254ac4b94505f470c4ee7 SHA512 60cde8a76286735f4bde290ef4f8dc2338997a89dc922221cdcb4d255028c59069eebcb6767bf321258c495d062269fc1182671a9c932b7ce6d96d217b163b2b MISC metadata.xml 807 BLAKE2B e876f33c06a0bb165a43a7c50ff9bbfa0513e43287f54dbcee396af736034e4cefba8831226b47cc8a334599632a94344623ae2343f0162dbbcd511f749d524a SHA512 a7801a4483b08944c01848593354322c406a929296075617736755c0b62852b76c30467cee2c360ea211521274f2019b495309bffb5a3285d73940aac45e4a53 diff --git a/app-editors/vim/vim-8.1.1486.ebuild b/app-editors/vim/vim-8.1.1486.ebuild index 523b701d7e45..0eb8f9ece42b 100644 --- a/app-editors/vim/vim-8.1.1486.ebuild +++ b/app-editors/vim/vim-8.1.1486.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 VIM_VERSION="8.1" -PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} ) +PYTHON_COMPAT=( python{2_7,3_6,3_7} ) PYTHON_REQ_USE="threads(+)" USE_RUBY="ruby24 ruby25 ruby26" diff --git a/app-editors/vim/vim-8.1.1846.ebuild b/app-editors/vim/vim-8.1.1846.ebuild index a5ce18ee59be..dda7aa265740 100644 --- a/app-editors/vim/vim-8.1.1846.ebuild +++ b/app-editors/vim/vim-8.1.1846.ebuild @@ -1,9 +1,9 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=6 VIM_VERSION="8.1" -PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} ) +PYTHON_COMPAT=( python{2_7,3_6,3_7} ) PYTHON_REQ_USE="threads(+)" USE_RUBY="ruby24 ruby25 ruby26" diff --git a/app-editors/vim/vim-8.2.0055.ebuild b/app-editors/vim/vim-8.2.0055.ebuild new file mode 100644 index 000000000000..f397bd99178b --- /dev/null +++ b/app-editors/vim/vim-8.2.0055.ebuild @@ -0,0 +1,320 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +VIM_VERSION="8.2" +PYTHON_COMPAT=( python{2_7,3_6,3_7} ) +PYTHON_REQ_USE="threads(+)" +USE_RUBY="ruby24 ruby25 ruby26" + +inherit vim-doc flag-o-matic bash-completion-r1 python-single-r1 ruby-single desktop xdg-utils + +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="Vim, an improved vi-style text editor" +HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim" + +SLOT="0" +LICENSE="vim" +IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + vim-pager? ( !minimal ) +" + +RDEPEND=" + >=app-eselect/eselect-vi-1.1 + >=sys-libs/ncurses-5.2-r2:0= + nls? ( virtual/libintl ) + acl? ( kernel_linux? ( sys-apps/acl ) ) + cscope? ( dev-util/cscope ) + gpm? ( >=sys-libs/gpm-1.19.3 ) + lua? ( + luajit? ( dev-lang/luajit:2= ) + !luajit? ( dev-lang/lua:0[deprecated] ) + ) + !minimal? ( ~app-editors/vim-core-${PV} ) + vim-pager? ( app-editors/vim-core[-minimal] ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + racket? ( dev-scheme/racket ) + ruby? ( ${RUBY_DEPS} ) + selinux? ( sys-libs/libselinux ) + sound? ( media-libs/libcanberra ) + tcl? ( dev-lang/tcl:0= ) + X? ( x11-libs/libXt ) +" + +DEPEND=" + ${RDEPEND} + sys-devel/autoconf + nls? ( sys-devel/gettext ) +" + +pkg_setup() { + # people with broken alphabets run into trouble. bug 82186. + unset LANG LC_ALL + export LC_COLLATE="C" + + # Gnome sandbox silliness. bug #114475. + mkdir -p "${T}"/home || die "mkdir failed" + export HOME="${T}"/home + + use python && python-single-r1_pkg_setup +} + +src_prepare() { + if [[ ${PV} != 9999* ]] ; then + # Gentoo patches to fix runtime issues, cross-compile errors, etc + eapply "${WORKDIR}"/patches/ + fi + + # Fixup a script to use awk instead of nawk + sed -i -e \ + '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ + "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" + + # Read vimrc and gvimrc from /etc/vim + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. + # Hopefully this pattern won't break for a while at least. + # This fixes bug 29398 (27 Sep 2003 agriffis) + sed -i -e \ + 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ + "${S}"/runtime/doc/syntax.txt \ + "${S}"/runtime/doc/tagsrch.txt \ + "${S}"/runtime/doc/usr_29.txt \ + "${S}"/runtime/menu.vim \ + "${S}"/src/configure.ac || die 'sed failed' + + # Don't be fooled by /usr/include/libc.h. When found, vim thinks + # this is NeXT, but it's actually just a file in dev-libs/9libs + # This fixes bug 43885 (20 Mar 2004 agriffis) + sed -i -e \ + 's/ libc\.h / /' \ + "${S}"/src/configure.ac || die 'sed failed' + + # gcc on sparc32 has this, uhm, interesting problem with detecting EOF + # correctly. To avoid some really entertaining error messages about stuff + # which isn't even in the source file being invalid, we'll do some trickery + # to make the error never occur. bug 66162 (02 October 2004 ciaranm) + find "${S}" -name '*.c' | while read c; do + echo >> "$c" || die "echo failed" + done + + # conditionally make the manpager.sh script + if use vim-pager; then + cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" + #!/bin/sh + sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ + vim \\ + -c 'let no_plugin_maps = 1' \\ + -c 'set nolist nomod ft=man ts=8' \\ + -c 'let g:showmarks_enable=0' \\ + -c 'runtime! macros/less.vim' - + _EOF_ + fi + + # Try to avoid sandbox problems. Bug #114475. + if [[ -d "${S}"/src/po ]]; then + sed -i -e \ + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ + "${S}"/src/po/Makefile || die "sed failed" + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + sed -i -e \ + "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \ + "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed' + + eapply_user +} + +src_configure() { + local myconf=() + + # Fix bug 37354: Disallow -funroll-all-loops on amd64 + # Bug 57859 suggests that we want to do this for all archs + filter-flags -funroll-all-loops + + # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for + # everyone since previous flag filtering bugs have turned out to affect + # multiple archs... + replace-flags -O3 -O2 + + # Fix bug 18245: Prevent "make" from the following chain: + # (1) Notice configure.ac is newer than auto/configure + # (2) Rebuild auto/configure + # (3) Notice auto/configure is newer than auto/config.mk + # (4) Run ./configure (with wrong args) to remake auto/config.mk + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + rm src/auto/configure || die "rm failed" + emake -j1 -C src autoconf + + # This should fix a sandbox violation (see bug 24447). The hvc + # things are for ppc64, see bug 86433. + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e "${file}" ]]; then + addwrite $file + fi + done + + if use minimal; then + myconf=( + --with-features=tiny + --disable-nls + --disable-canberra + --disable-acl + --enable-gui=no + --without-x + --disable-darwin + --disable-luainterp + --disable-perlinterp + --disable-pythoninterp + --disable-mzschemeinterp + --disable-rubyinterp + --disable-selinux + --disable-tclinterp + --disable-gpm + ) + else + use debug && append-flags "-DDEBUG" + + myconf=( + --with-features=huge + $(use_enable sound canberra) + $(use_enable acl) + $(use_enable cscope) + $(use_enable gpm) + $(use_enable lua luainterp) + $(usex lua "--with-lua-prefix=${EPREFIX}/usr" "") + $(use_with luajit) + $(use_enable nls) + $(use_enable perl perlinterp) + $(use_enable python pythoninterp) + $(use_enable python python3interp) + $(use_with python python-command $(type -P $(eselect python show --python2))) + $(use_with python python3-command $(type -P $(eselect python show --python3))) + $(use_enable racket mzschemeinterp) + $(use_enable ruby rubyinterp) + $(use_enable selinux) + $(use_enable tcl tclinterp) + $(use_enable terminal) + ) + + # --with-features=huge forces on cscope even if we --disable it. We need + # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) + if ! use cscope; then + sed -i -e \ + '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" + fi + + # don't test USE=X here ... see bug #19115 + # but need to provide a way to link against X ... see bug #20093 + myconf+=( + --enable-gui=no + --disable-darwin + $(use_with X x) + ) + fi + + # let package manager strip binaries + export ac_cv_prog_STRIP="$(type -P true ) faking strip" + + # keep prefix env contained within the EPREFIX + use prefix && myconf+=( --without-local-dir ) + + econf \ + --with-modified-by=Gentoo-${PVR} \ + "${myconf[@]}" +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake +} + +src_test() { + einfo + einfo "Starting vim tests. Several error messages will be shown" + einfo "while the tests run. This is normal behaviour and does not" + einfo "indicate a fault." + einfo + ewarn "If the tests fail, your terminal may be left in a strange" + ewarn "state. Usually, running 'reset' will fix this." + einfo + + # Don't let vim talk to X + unset DISPLAY + + emake -j1 -C src/testdir nongui +} + +# Call eselect vi update with --if-unset +# to respect user's choice (bug 187449) +eselect_vi_update() { + einfo "Calling eselect vi update..." + eselect vi update --if-unset + eend $? +} + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are + # managed by eselect-vi + dobin src/vim + dosym vim /usr/bin/vimdiff + dosym vim /usr/bin/rvim + dosym vim /usr/bin/rview + if use vim-pager ; then + dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager + dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager + insinto ${vimfiles}/macros + doins runtime/macros/manpager.sh + fperms a+x ${vimfiles}/macros/manpager.sh + fi + + domenu runtime/vim.desktop + + newbashcomp "${FILESDIR}"/${PN}-completion ${PN} + + # keep in sync with 'complete ... -F' list + bashcomp_alias vim ex vi view rvim rview vimdiff +} + +pkg_postinst() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} diff --git a/app-editors/vim/vim-8.2.0114.ebuild b/app-editors/vim/vim-8.2.0114.ebuild new file mode 100644 index 000000000000..617022926398 --- /dev/null +++ b/app-editors/vim/vim-8.2.0114.ebuild @@ -0,0 +1,318 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +VIM_VERSION="8.2" +PYTHON_COMPAT=( python{3_6,3_7,3_8} ) +PYTHON_REQ_USE="threads(+)" +USE_RUBY="ruby24 ruby25 ruby26 ruby27" + +inherit vim-doc flag-o-matic bash-completion-r1 python-single-r1 ruby-single desktop xdg-utils + +if [[ ${PV} == 9999* ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="Vim, an improved vi-style text editor" +HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim" + +SLOT="0" +LICENSE="vim" +IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux sound tcl terminal vim-pager" +REQUIRED_USE=" + python? ( ${PYTHON_REQUIRED_USE} ) + vim-pager? ( !minimal ) +" + +RDEPEND=" + >=app-eselect/eselect-vi-1.1 + >=sys-libs/ncurses-5.2-r2:0= + nls? ( virtual/libintl ) + acl? ( kernel_linux? ( sys-apps/acl ) ) + cscope? ( dev-util/cscope ) + gpm? ( >=sys-libs/gpm-1.19.3 ) + lua? ( + luajit? ( dev-lang/luajit:2= ) + !luajit? ( dev-lang/lua:0[deprecated] ) + ) + !minimal? ( ~app-editors/vim-core-${PV} ) + vim-pager? ( app-editors/vim-core[-minimal] ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + racket? ( dev-scheme/racket ) + ruby? ( ${RUBY_DEPS} ) + selinux? ( sys-libs/libselinux ) + sound? ( media-libs/libcanberra ) + tcl? ( dev-lang/tcl:0= ) + X? ( x11-libs/libXt ) +" + +DEPEND=" + ${RDEPEND} + sys-devel/autoconf + nls? ( sys-devel/gettext ) +" + +pkg_setup() { + # people with broken alphabets run into trouble. bug 82186. + unset LANG LC_ALL + export LC_COLLATE="C" + + # Gnome sandbox silliness. bug #114475. + mkdir -p "${T}"/home || die "mkdir failed" + export HOME="${T}"/home + + use python && python-single-r1_pkg_setup +} + +src_prepare() { + if [[ ${PV} != 9999* ]] ; then + # Gentoo patches to fix runtime issues, cross-compile errors, etc + eapply "${WORKDIR}"/patches/ + fi + + # Fixup a script to use awk instead of nawk + sed -i -e \ + '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \ + "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed" + + # Read vimrc and gvimrc from /etc/vim + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \ + >> "${S}"/src/feature.h || die "echo failed" + + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags. + # Hopefully this pattern won't break for a while at least. + # This fixes bug 29398 (27 Sep 2003 agriffis) + sed -i -e \ + 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \ + "${S}"/runtime/doc/syntax.txt \ + "${S}"/runtime/doc/tagsrch.txt \ + "${S}"/runtime/doc/usr_29.txt \ + "${S}"/runtime/menu.vim \ + "${S}"/src/configure.ac || die 'sed failed' + + # Don't be fooled by /usr/include/libc.h. When found, vim thinks + # this is NeXT, but it's actually just a file in dev-libs/9libs + # This fixes bug 43885 (20 Mar 2004 agriffis) + sed -i -e \ + 's/ libc\.h / /' \ + "${S}"/src/configure.ac || die 'sed failed' + + # gcc on sparc32 has this, uhm, interesting problem with detecting EOF + # correctly. To avoid some really entertaining error messages about stuff + # which isn't even in the source file being invalid, we'll do some trickery + # to make the error never occur. bug 66162 (02 October 2004 ciaranm) + find "${S}" -name '*.c' | while read c; do + echo >> "$c" || die "echo failed" + done + + # conditionally make the manpager.sh script + if use vim-pager; then + cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed" + #!/bin/sh + sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\ + vim \\ + -c 'let no_plugin_maps = 1' \\ + -c 'set nolist nomod ft=man ts=8' \\ + -c 'let g:showmarks_enable=0' \\ + -c 'runtime! macros/less.vim' - + _EOF_ + fi + + # Try to avoid sandbox problems. Bug #114475. + if [[ -d "${S}"/src/po ]]; then + sed -i -e \ + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \ + "${S}"/src/po/Makefile || die "sed failed" + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + sed -i -e \ + "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \ + "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed' + + eapply_user +} + +src_configure() { + local myconf=() + + # Fix bug 37354: Disallow -funroll-all-loops on amd64 + # Bug 57859 suggests that we want to do this for all archs + filter-flags -funroll-all-loops + + # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for + # everyone since previous flag filtering bugs have turned out to affect + # multiple archs... + replace-flags -O3 -O2 + + # Fix bug 18245: Prevent "make" from the following chain: + # (1) Notice configure.ac is newer than auto/configure + # (2) Rebuild auto/configure + # (3) Notice auto/configure is newer than auto/config.mk + # (4) Run ./configure (with wrong args) to remake auto/config.mk + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + rm src/auto/configure || die "rm failed" + emake -j1 -C src autoconf + + # This should fix a sandbox violation (see bug 24447). The hvc + # things are for ppc64, see bug 86433. + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e "${file}" ]]; then + addwrite $file + fi + done + + if use minimal; then + myconf=( + --with-features=tiny + --disable-nls + --disable-canberra + --disable-acl + --enable-gui=no + --without-x + --disable-darwin + --disable-luainterp + --disable-perlinterp + --disable-pythoninterp + --disable-mzschemeinterp + --disable-rubyinterp + --disable-selinux + --disable-tclinterp + --disable-gpm + ) + else + use debug && append-flags "-DDEBUG" + + myconf=( + --with-features=huge + $(use_enable sound canberra) + $(use_enable acl) + $(use_enable cscope) + $(use_enable gpm) + $(use_enable lua luainterp) + $(usex lua "--with-lua-prefix=${EPREFIX}/usr" "") + $(use_with luajit) + $(use_enable nls) + $(use_enable perl perlinterp) + $(use_enable python python3interp) + $(use_with python python3-command $(type -P $(eselect python show --python3))) + $(use_enable racket mzschemeinterp) + $(use_enable ruby rubyinterp) + $(use_enable selinux) + $(use_enable tcl tclinterp) + $(use_enable terminal) + ) + + # --with-features=huge forces on cscope even if we --disable it. We need + # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm) + if ! use cscope; then + sed -i -e \ + '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed" + fi + + # don't test USE=X here ... see bug #19115 + # but need to provide a way to link against X ... see bug #20093 + myconf+=( + --enable-gui=no + --disable-darwin + $(use_with X x) + ) + fi + + # let package manager strip binaries + export ac_cv_prog_STRIP="$(type -P true ) faking strip" + + # keep prefix env contained within the EPREFIX + use prefix && myconf+=( --without-local-dir ) + + econf \ + --with-modified-by=Gentoo-${PVR} \ + "${myconf[@]}" +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake +} + +src_test() { + einfo + einfo "Starting vim tests. Several error messages will be shown" + einfo "while the tests run. This is normal behaviour and does not" + einfo "indicate a fault." + einfo + ewarn "If the tests fail, your terminal may be left in a strange" + ewarn "state. Usually, running 'reset' will fix this." + einfo + + # Don't let vim talk to X + unset DISPLAY + + emake -j1 -C src/testdir nongui +} + +# Call eselect vi update with --if-unset +# to respect user's choice (bug 187449) +eselect_vi_update() { + einfo "Calling eselect vi update..." + eselect vi update --if-unset + eend $? +} + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are + # managed by eselect-vi + dobin src/vim + dosym vim /usr/bin/vimdiff + dosym vim /usr/bin/rvim + dosym vim /usr/bin/rview + if use vim-pager ; then + dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager + dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager + insinto ${vimfiles}/macros + doins runtime/macros/manpager.sh + fperms a+x ${vimfiles}/macros/manpager.sh + fi + + domenu runtime/vim.desktop + + newbashcomp "${FILESDIR}"/${PN}-completion ${PN} + + # keep in sync with 'complete ... -F' list + bashcomp_alias vim ex vi view rvim rview vimdiff +} + +pkg_postinst() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Call eselect vi update + eselect_vi_update + + # update desktop file mime cache + xdg_desktop_database_update +} diff --git a/app-editors/vim/vim-9999.ebuild b/app-editors/vim/vim-9999.ebuild index 704472bff111..6f2ff73fb529 100644 --- a/app-editors/vim/vim-9999.ebuild +++ b/app-editors/vim/vim-9999.ebuild @@ -1,11 +1,11 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 -EAPI=6 -VIM_VERSION="8.1" -PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} ) +EAPI=7 +VIM_VERSION="8.2" +PYTHON_COMPAT=( python{3_6,3_7,3_8} ) PYTHON_REQ_USE="threads(+)" -USE_RUBY="ruby24 ruby25 ruby26" +USE_RUBY="ruby24 ruby25 ruby26 ruby27" inherit vim-doc flag-o-matic bash-completion-r1 python-single-r1 ruby-single desktop xdg-utils @@ -203,9 +203,7 @@ src_configure() { $(use_with luajit) $(use_enable nls) $(use_enable perl perlinterp) - $(use_enable python pythoninterp) $(use_enable python python3interp) - $(use_with python python-command $(type -P $(eselect python show --python2))) $(use_with python python3-command $(type -P $(eselect python show --python3))) $(use_enable racket mzschemeinterp) $(use_enable ruby rubyinterp) |