diff options
Diffstat (limited to 'app-editors/gvim')
-rw-r--r-- | app-editors/gvim/Manifest | 6 | ||||
-rw-r--r-- | app-editors/gvim/gvim-8.0.1645.ebuild | 371 | ||||
-rw-r--r-- | app-editors/gvim/gvim-9999.ebuild | 2 | ||||
-rw-r--r-- | app-editors/gvim/metadata.xml | 1 |
4 files changed, 376 insertions, 4 deletions
diff --git a/app-editors/gvim/Manifest b/app-editors/gvim/Manifest index 0a5c69330711..46720f3fd815 100644 --- a/app-editors/gvim/Manifest +++ b/app-editors/gvim/Manifest @@ -7,9 +7,11 @@ DIST vim-8.0.0938-gentoo-patches.tar.bz2 2316 BLAKE2B 05a87f32fc5cc65e7f5e4e5a87 DIST vim-8.0.1188.tar.gz 13363260 BLAKE2B 545b2d6e8322b27967c974bb960f4e5ea2c6811d2649ac4c008eb8e6af78fe555a035657704af40026f96f12f83e3cebe435e90d21d7da87980446710424f79f SHA512 9c3733aa894c276de593d6144ee0aaf251092a11f4d0ac603d3d49a282ac6176aa4e88eccfd2527ff53b386bdd0177a85c0942367d68a652b5ca4040390ba49b DIST vim-8.0.1298.tar.gz 13395459 BLAKE2B 4b6e3c4443cd675dc3727e8609b89c422f66c7d32908b5136ee312d48427568a8236214c85135242269b6575e0e1336b0973395a6372664435f8bae4d7bee843 SHA512 7704c493359c1a922f876e4d6f3b4ad265d8ce974a59d51a39e5a4424251105250ffc803bcf6c6750daeb5e6376cbbfd24557b075eacf2b0274d7c432db2f681 DIST vim-8.0.1428.tar.gz 13415243 BLAKE2B 88f86c371d0a644212b9e4dc1a15d61244847037f36262a225c361bfc2799b741c128de21ac92bb3fb4a4955894e46d34dc01baa7cbf58f1371d772b36887103 SHA512 f635c53c7e2ca808dc1cb424e6e4b16d8c41c66a86c3c7584444dab3d2482904795fea7c071d65862ae6ac6b2b66b7ad5ac832e1e30f4624d46f220c6f41e2e9 +DIST vim-8.0.1645.tar.gz 13535252 BLAKE2B a5c7463e85eed12825bdf46d15eb7e7513d62831eba76cbb90af875010b33662b7a6ef2c4c5cecddface415d75e97caf0a670e69835ecd3b4a89704f3b18b905 SHA512 367b9e205e776f84fcfbb92725afd5e7aa66898110d46dbea1a33f7b74c239559e829b5104c45360539c8f2b23c375ed59ccea7ee35a5dd10770400d9a7be085 EBUILD gvim-8.0.0386.ebuild 11569 BLAKE2B 2e9803cd0cad4f6d9ba86f7a4f9242a1850c4017a1b7cc894ab57d9c450f173d9f24f7deb2a2f7c26a4598bfb79d2bfecfc29c777473e0759c6e89fcd99cb5d6 SHA512 93d54860172f0e8caf22d129d55a26276e4ba0d68f91c74dcc969fb2f738f3197ee77de983d65c9533029a04e0cd74fbefabf6802ecba6bb0d4ba0807b68783c EBUILD gvim-8.0.1188.ebuild 10477 BLAKE2B 764132ab93aa42aeef1f26fdfaf1095630ddcbdf148681d2ff929611a6fc736ab7c325947d39752dbe112c869cdf1ff51fb0419c9316f9e05eb0440a662cc38f SHA512 ca3474ac8e4ffa20bb0d96677f4bee91683cafeceb6db4d2654c4d3f3037adc7a5a78bf57bc019222fbde96d06a5731c4d6474324ac676941115e728dcc085bf EBUILD gvim-8.0.1298.ebuild 10469 BLAKE2B b0f04d4d5a1df2854184d2d0f9b64129524af078e86096704348a86710b8b551b77f3d8b0a2071a56a650cd747b45cf437e58ec7a3259b5b1332c46de1dd7f2e SHA512 27f0671ee4de3ffbbd4d6d56c09550fe4774ec1d9b5b45513f6314719e1f1c6e0ea55215dfe5b88c253d16bd97bbcc7cbf734d7c9049b11df625da300e7c589c EBUILD gvim-8.0.1428.ebuild 10477 BLAKE2B 764132ab93aa42aeef1f26fdfaf1095630ddcbdf148681d2ff929611a6fc736ab7c325947d39752dbe112c869cdf1ff51fb0419c9316f9e05eb0440a662cc38f SHA512 ca3474ac8e4ffa20bb0d96677f4bee91683cafeceb6db4d2654c4d3f3037adc7a5a78bf57bc019222fbde96d06a5731c4d6474324ac676941115e728dcc085bf -EBUILD gvim-9999.ebuild 10477 BLAKE2B 764132ab93aa42aeef1f26fdfaf1095630ddcbdf148681d2ff929611a6fc736ab7c325947d39752dbe112c869cdf1ff51fb0419c9316f9e05eb0440a662cc38f SHA512 ca3474ac8e4ffa20bb0d96677f4bee91683cafeceb6db4d2654c4d3f3037adc7a5a78bf57bc019222fbde96d06a5731c4d6474324ac676941115e728dcc085bf -MISC metadata.xml 675 BLAKE2B 4c96806a5744b61f168512c28512c9c6114ca42522ff8ed266cb14c5e16ef538e4de8aa15ce233cf1044f98dabf27c6654592eb296e4a83175940f88ddd4b1a3 SHA512 df75c9e935ae47b8961c8b6b984483b8032e39d3833ffcf4784e2630cea870579d45ef5f104b71d6b35f4128ef689394edd72510fce82a76e596749ce69d835d +EBUILD gvim-8.0.1645.ebuild 10495 BLAKE2B 2c3e61a00479e7adf15fdd2bb32a3eb4c806c67b40aefa068bda7270a5af7cd27ed3bd02c04c07d60697b5710e47a30097e925d86a88062a3fb3bdcf35636b20 SHA512 6335c49298a9e01775b0baf9f52bb8aae61bd6cae0ecf51f43c1b5b9fc19fbd8b2919c02280e38cf391a80bce364ff83b7eddcc0acdf2f0c64e58ff8609c4296 +EBUILD gvim-9999.ebuild 10495 BLAKE2B 2c3e61a00479e7adf15fdd2bb32a3eb4c806c67b40aefa068bda7270a5af7cd27ed3bd02c04c07d60697b5710e47a30097e925d86a88062a3fb3bdcf35636b20 SHA512 6335c49298a9e01775b0baf9f52bb8aae61bd6cae0ecf51f43c1b5b9fc19fbd8b2919c02280e38cf391a80bce364ff83b7eddcc0acdf2f0c64e58ff8609c4296 +MISC metadata.xml 578 BLAKE2B a0b7e41324455706748f79109affec89e72dece0b41346d0cc804742cc7e5aa88f89556623b1aac4f53387afe6e6145049079b1cd44d3411bcf2f8ee8c7c2bfd SHA512 b2db961a6e59b803e2371c4e6dda496917d6c5e332f36062be8dbfa4fb47b4b640d8deb6871c9ff3c5a527fdf9c16aa13f14b9e0a37f93a3a10c6f6b57808126 diff --git a/app-editors/gvim/gvim-8.0.1645.ebuild b/app-editors/gvim/gvim-8.0.1645.ebuild new file mode 100644 index 000000000000..1de46facaa9c --- /dev/null +++ b/app-editors/gvim/gvim-8.0.1645.ebuild @@ -0,0 +1,371 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +VIM_VERSION="8.0" +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} ) +PYTHON_REQ_USE=threads +inherit vim-doc flag-o-matic xdg-utils gnome2-utils versionator bash-completion-r1 prefix python-single-r1 + +if [[ ${PV} == 9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/vim/vim.git" + EGIT_CHECKOUT_DIR=${WORKDIR}/vim-${PV} +else + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> vim-${PV}.tar.gz + https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris" +fi + +DESCRIPTION="GUI version of the Vim text editor" +HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim" + +SLOT="0" +LICENSE="vim" +IUSE="acl aqua cscope debug gnome gtk gtk3 lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl" +REQUIRED_USE=" + luajit? ( lua ) + python? ( ${PYTHON_REQUIRED_USE} ) +" + +RDEPEND=" + ~app-editors/vim-core-${PV} + >=app-eselect/eselect-vi-1.1 + >=sys-libs/ncurses-5.2-r2:0= + x11-libs/libICE + x11-libs/libSM + x11-libs/libXext + x11-libs/libXt + acl? ( kernel_linux? ( sys-apps/acl ) ) + !aqua? ( + gtk3? ( + x11-libs/gtk+:3 + x11-libs/libXft + ) + !gtk3? ( + gtk? ( + >=x11-libs/gtk+-2.6:2 + x11-libs/libXft + gnome? ( >=gnome-base/libgnomeui-2.6 ) + ) + !gtk? ( + motif? ( >=x11-libs/motif-2.3:0 ) + !motif? ( + neXt? ( x11-libs/neXtaw ) + !neXt? ( x11-libs/libXaw ) + ) + ) + ) + ) + cscope? ( dev-util/cscope ) + lua? ( + luajit? ( dev-lang/luajit:2= ) + !luajit? ( dev-lang/lua:0[deprecated] ) + ) + nls? ( virtual/libintl ) + perl? ( dev-lang/perl:= ) + python? ( ${PYTHON_DEPS} ) + racket? ( dev-scheme/racket ) + ruby? ( || ( dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) ) + selinux? ( sys-libs/libselinux ) + session? ( x11-libs/libSM ) + tcl? ( dev-lang/tcl:0= ) +" +DEPEND="${RDEPEND} + dev-util/ctags + sys-devel/autoconf + virtual/pkgconfig + nls? ( sys-devel/gettext ) +" + +S=${WORKDIR}/vim-${PV} + +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 + 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 + + # 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 + fi + + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed" + + # Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0 + 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 -e \ + 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed" + rm -v 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. + local file + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do + if [[ -e ${file} ]]; then + addwrite $file + fi + done + + use debug && append-flags "-DDEBUG" + + myconf=( + --with-features=huge + --disable-gpm + --enable-multibyte + $(use_enable acl) + $(use_enable cscope) + $(use_enable lua luainterp) + $(use_with luajit) + $(use_enable netbeans) + $(use_enable nls) + $(use_enable perl perlinterp) + $(use_enable python pythoninterp) + $(use_enable python python3interp) + $(use_enable racket mzschemeinterp) + $(use_enable ruby rubyinterp) + $(use_enable selinux) + $(use_enable session xsmp) + $(use_enable tcl tclinterp) + ) + + # --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 "couldn't disable cscope" + fi + + # gvim's GUI preference order is as follows: + # aqua CARBON (not tested) + # -aqua gtk3 GTK3 + # -aqua -gtk3 gnome GNOME2 + # -aqua -gtk3 -gnome gtk GTK2 + # -aqua -gtk -gtk3 motif MOTIF + # -aqua -gtk -gtk3 -motif neXt NEXTAW + # -aqua -gtk -gtk3 -motif -neXt ATHENA + echo ; echo + if use aqua; then + einfo "Building gvim with the Carbon GUI" + myconf+=( + --enable-darwin + --enable-gui=carbon + ) + elif use gtk3; then + myconf+=( --enable-gtk3-check ) + einfo "Building gvim with the gtk+-3 GUI" + myconf+=( --enable-gui=gtk3 ) + elif use gtk; then + myconf+=( --enable-gtk2-check ) + if use gnome; then + einfo "Building gvim with the Gnome 2 GUI" + myconf+=( --enable-gui=gnome2 ) + else + einfo "Building gvim with the gtk+-2 GUI" + myconf+=( --enable-gui=gtk2 ) + fi + elif use motif; then + einfo "Building gvim with the MOTIF GUI" + myconf+=( --enable-gui=motif ) + elif use neXt; then + einfo "Building gvim with the neXtaw GUI" + myconf+=( --enable-gui=nextaw ) + else + einfo "Building gvim with the Athena GUI" + myconf+=( --enable-gui=athena ) + fi + echo ; echo + + # 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 ) + + if [[ ${CHOST} == *-interix* ]]; then + # avoid finding of this function, to avoid having to patch either + # configure or the source, which would be much more hackish. + # after all vim does it right, only interix is badly broken (again) + export ac_cv_func_sigaction=no + fi + + econf \ + --with-modified-by=Gentoo-${PVR} \ + --with-vim-name=gvim \ + --with-x \ + "${myconf[@]}" +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake +} + +src_test() { + echo + 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." + echo + ewarn "If the tests fail, your terminal may be left in a strange" + ewarn "state. Usually, running 'reset' will fix this." + echo + + # Don't let vim talk to X + unset DISPLAY + + # Make gvim not try to connect to X. See :help gui-x11-start in vim for how + # this evil trickery works. + ln -s "${S}"/src/gvim "${S}"/src/testvim || die + + # Make sure our VIMPROG is used. + sed -i -e 's:\.\./vim:../testvim:' src/testdir/test49.vim || die + + # Don't do additional GUI tests. + emake -j1 VIMPROG=../testvim -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/.} + + dobin src/gvim + dosym gvim /usr/bin/gvimdiff + dosym gvim /usr/bin/evim + dosym gvim /usr/bin/eview + dosym gvim /usr/bin/gview + dosym gvim /usr/bin/rgvim + dosym gvim /usr/bin/rgview + + emake -C src DESTDIR="${D}" DATADIR="${EPREFIX}"/usr/share install-icons + + dodir /usr/share/man/man1 + echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1 || die "echo failed" + echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1 || die "echo failed" + echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1 || \ + die "echo failed" + + insinto /etc/vim + newins "${FILESDIR}"/gvimrc-r1 gvimrc + eprefixify "${ED}"/etc/vim/gvimrc + + doicon -s scalable "${FILESDIR}"/gvim.svg + + # bash completion script, bug #79018. + newbashcomp "${FILESDIR}"/${PN}-completion ${PN} + + # don't install vim desktop file + rm -v "${ED}"/usr/share/applications/vim.desktop || die "failed to remove vim.desktop" +} + +pkg_postinst() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Update fdo mime stuff, bug #78394 + xdg_desktop_database_update + + # Update icon cache + gnome2_icon_cache_update + + # Call eselect vi update + eselect_vi_update +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags + + # Update fdo mime stuff, bug #78394 + xdg_desktop_database_update + + # Update icon cache + gnome2_icon_cache_update + + # Call eselect vi update + eselect_vi_update +} diff --git a/app-editors/gvim/gvim-9999.ebuild b/app-editors/gvim/gvim-9999.ebuild index b19e4d692308..1de46facaa9c 100644 --- a/app-editors/gvim/gvim-9999.ebuild +++ b/app-editors/gvim/gvim-9999.ebuild @@ -66,7 +66,7 @@ RDEPEND=" perl? ( dev-lang/perl:= ) python? ( ${PYTHON_DEPS} ) racket? ( dev-scheme/racket ) - ruby? ( || ( dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) ) + ruby? ( || ( dev-lang/ruby:2.5 dev-lang/ruby:2.4 dev-lang/ruby:2.3 dev-lang/ruby:2.2 ) ) selinux? ( sys-libs/libselinux ) session? ( x11-libs/libSM ) tcl? ( dev-lang/tcl:0= ) diff --git a/app-editors/gvim/metadata.xml b/app-editors/gvim/metadata.xml index bd2205f57da1..aa4ea747bcc9 100644 --- a/app-editors/gvim/metadata.xml +++ b/app-editors/gvim/metadata.xml @@ -7,7 +7,6 @@ </maintainer> <use> <flag name="gtk3">Enable GTK+3 interface</flag> - <flag name="luajit">Use <pkg>dev-lang/luajit</pkg> instead of <pkg>dev-lang/lua</pkg></flag> <flag name="netbeans">Include netbeans external editor integration support</flag> <flag name="racket">Enable support for Scheme using <pkg>dev-scheme/racket</pkg></flag> </use> |