Version bump. Re-enable supporting both py2 and py3 at the same time.
authorTim Harder <radhermit@gentoo.org>
Sat, 7 Feb 2015 02:21:10 +0000 (02:21 +0000)
committerTim Harder <radhermit@gentoo.org>
Sat, 7 Feb 2015 02:21:10 +0000 (02:21 +0000)
Package-Manager: portage-2.2.15/cvs/Linux x86_64
Manifest-Sign-Key: 0x4AB3E85B4F064CA3

app-editors/gvim/ChangeLog
app-editors/gvim/Manifest
app-editors/gvim/gvim-7.4.622.ebuild [new file with mode: 0644]
app-editors/gvim/gvim-9999.ebuild
app-editors/vim/ChangeLog
app-editors/vim/Manifest
app-editors/vim/vim-7.4.622.ebuild [new file with mode: 0644]
app-editors/vim/vim-9999.ebuild

index 532944cc44a2c0c481b30a184dfd85c686953ce3..6cdbf6e30264c858235fd63a7c3945e2cbbd6d9e 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for app-editors/gvim
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/ChangeLog,v 1.453 2015/01/26 23:27:38 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/ChangeLog,v 1.454 2015/02/07 02:21:07 radhermit Exp $
+
+*gvim-7.4.622 (07 Feb 2015)
+
+  07 Feb 2015; Tim Harder <radhermit@gentoo.org> +gvim-7.4.622.ebuild,
+  gvim-9999.ebuild:
+  Version bump. Re-enable supporting both py2 and py3 at the same time.
 
 *gvim-7.4.591 (26 Jan 2015)
 
index 52a4f1e6a9335f204f82bf0f1a879a17a19a957b..2504ac415d443097dbe65e16f66004a7851be2b3 100644 (file)
@@ -9,6 +9,7 @@ DIST vim-7.4-gentoo-patches.tar.bz2 3314 SHA256 704e2ef7fc3a9f3e721b4c9cbc619a47
 DIST vim-7.4.542-gentoo-patches.tar.bz2 3307 SHA256 0eb635f13e199de77846e0d363a473882f2186f138158271fabf0975747a2f3d SHA512 446c66764dac2533cc2f2b3d50481971d4c63a4e81d94c545862a1be620179fdcd81a79f2d81737d1188812a6ad41d90e2a752a05acf6913e7a71464f7cecdd9 WHIRLPOOL cfca8feef0eb8096897ef751afb0427acddd008530ded6cf908fcff51be9713da4ea3e5e613d544c5caba400d664ae19ca70925df3a218bec5c8be6f69aadda2
 DIST vim-7.4.560.patch.xz 741936 SHA256 e67cb9ba8772c72c3ebed0727e6dd57fc8eaeb1c8087cab7b9b8fe52f9063e04 SHA512 6748efa85883cbe811f4997192f5c0c11ac4825b40a3ef81a9a457eab26d86868aea6f62c8ced7018b3a7758242bd6c8e789fdfb8ce111f4b468f6563bc146fd WHIRLPOOL 45864fdabb133551c66768a4c075588744b99fc823f555ae19a440b2486054e1336c64c50f0bd7e3c1c0c88a0e345595a4bd384cd7dde312ff1465351db869e1
 DIST vim-7.4.591.patch.xz 805892 SHA256 6556595e75666b35cce58dcd585605e3d8910477761cee0fb34317d8969e0344 SHA512 fd98fa6e84fb1b6dc3c80f1e68694ee3711678e66234953962c6bad1aaf045c053c3824d25dd3df9842951e9c5e3ca630b65fafedc30fa6c31313822e3518968 WHIRLPOOL 47f5a75d2faec35460ee0af565437da275b2cd18259645456a76ba79d289d7b8f7392cde95d6cb5da5e2b4657043c11f5f363e99d1cb8457f83dfa884f5ab238
+DIST vim-7.4.622.patch.xz 816104 SHA256 f9d6624b7c8e5cbae749eff3f3bef30f7b10554fa04edf7fe3c85828b2b2e7a8 SHA512 544258cca6e46291743f95acba3dbc7844fddf0f579706cb7903f338b359b852cb4818238e7402e2b5413fa1a2ca9084246ffe39a7c23d29d14883594caa65c3 WHIRLPOOL 2b92e418892bc99c45e6b56592635804394e282c8f0959addf1a93434dccdfb06fa75f39f171624f484cc6a6420bfd6ea6a9d30b1b0a9694cb8a14cbf42e456e
 DIST vim-7.4.tar.bz2 9843297 SHA256 d0f5a6d2c439f02d97fa21bd9121f4c5abb1f6cd8b5a79d3ca82867495734ade SHA512 65d55da556ee283a364b376d251b70e430b7a157bb5a8ee89565060ff9937907966d416cffd33f701b3314d0fdf16efe00065f66bc8459469f5ae2f713418e0e WHIRLPOOL 914fc2c4fd485196410d853990bb5cc4c0071bc36dc0794655ec05cc0b5f7d2971dea780cc7293fcfbd4495a30a7437a3b1e33a2b6795c10a9f05a2eac3ca6f4
 DIST vim-patches-7.4.273.patch.bz2 506378 SHA256 065447179d22602315e2965d135cf9f1db4394ff5655520719f6338ff29e89ca SHA512 029a5cef758e4b201eabbc82458f3e1c3674582715a8c78a7270f3ecd57980b1cef66a0152526fd3505685c27c07f6e6742da48da9ad9546e3cfc2a5e7c11164 WHIRLPOOL 305322e991e9640b80147dd5ceac9dd6dae93a07610f807bbf01c0fdf37cba67ea41a1b2720c8a43da0161c57e0a522086f135efc712fb0106497a21288a872a
 DIST vim-patches-7.4.488.patch.bz2 755739 SHA256 831bd6338a5169d90b82c313ea73256a70325ad8b721e2b7052d9d5ec5ff2fde SHA512 53a1041e2baa6477b179fd7879ca76867a8fff9cc21a7e843519fb96c3f880f6053760a7465d68c84ee4d7f6cb42cc2017152789a4b57db7953d20bbfa7dd4aa WHIRLPOOL 0bfc8d839e1d886ac8339edf01bb84e46f8c1d3754791d565d3b4050ebf678b548792c8d94b1c8f09824ebbee52fb1df9c65670b63fa860032278b318b89db66
@@ -20,17 +21,18 @@ EBUILD gvim-7.4.527.ebuild 12501 SHA256 c208c8777b8127eb4c57f6add60afeaf8f140414
 EBUILD gvim-7.4.542.ebuild 12492 SHA256 2e7bf0cb9190f2b052cea32b2227ca53542646c101d2c79a2fcdf6586c76a386 SHA512 a082a237bbfb5bfbeecc6bd4a0688790cf7f2bc6c75a2aa645b42e751fd0912d6f4b9a43a2ae15a5fa681eb4ea2ae9e28335af51d793451d76b144008309f46f WHIRLPOOL 3555c34aadd70cca7305893ee5c9aa5ed712319c5fffa49467a47a720b8e44b4d5ce16da61b08d56c90e5c34f32acbc6f3918a8c39fea47ba61822317876e5af
 EBUILD gvim-7.4.560.ebuild 12375 SHA256 ba3c230d7fe2e8fc2757a9c2e55eafc6e1fb23fa1d25be3590deaa87f19f0950 SHA512 be43518842526937d6239a207072da2dc74ef5d225029994c757722a5cc2a5cc6969bc6a6508a9f97c5254712326138225b85ab6d8d2bcaf456e560b1d80feb2 WHIRLPOOL 699b694d6ed8cf8c3eacbaef201bf47c8e7dde19571ac0dfc7ef78042d3329ef21abc5d2619f50f285db2b9dc768eb0c6b1d1d1f47206c862847df311f59f862
 EBUILD gvim-7.4.591.ebuild 12317 SHA256 1acb962cd79a13b11b36eb2bfe89cdee606d231876ff638c033436c55fd14723 SHA512 0a911433f81459efee5a365140ed41734c59e751f903909d650e8439a0f7072399e09659d2fcc31d7c70c67b8c1ade7ef19bb7cfe17ace3ac3f347f834a41ac3 WHIRLPOOL 48bc1f3c690429800ef5721dffe8d245386e8d2b0e991a079828fa49d40c81c9f065be39e60af7d9ed32b8f35076185e77f9391198c4e64de2095f74874c7d26
-EBUILD gvim-9999.ebuild 12313 SHA256 4588546d0696ce3ecf82181ec8091ea8c11d358889127492a39c62b04f9a5351 SHA512 a91aee68aa485eea28c53d786ee29ef36ffe9e359fd4e5402cbc46457b3a5536c011ed34e5efbc41e6ef30d9001db18d0442dea20e65fea1ab5d7023a6b133b4 WHIRLPOOL ef0301e912b349b91bffb2ecddf35b8f55890e32cbf82456bd9bcb79ad0e268d0bbe6eb091d5fb3fc3ee3f4f00555e946ed5ea2d4b937651d73d41d823b4d14b
-MISC ChangeLog 62294 SHA256 435cc516dd747892dbf28a6097e0a228893305adf60c9a60ce98473ff6ccd11a SHA512 bb5a7b2b4f1f055cefcc9e08e14ae917189175f6b4e45eecad075140eaec8583998efffd6c6ae5815d3e60c2d1bae67d011fb25a02d8367c29d9efef3d2e4c5a WHIRLPOOL b1e458ca18e78436140cc428ce68fddfd29492e472fb8bfab7a0ea1e7ea13989a1535e645c7d3bc888a38b115beeefaa5cab07568db17935cae89f93d68ebcc3
+EBUILD gvim-7.4.622.ebuild 12356 SHA256 ed4a9a601ac27d0a802263bdc83658f9a6ecb49ac7749f1534b908f1b901cb22 SHA512 0642ed81fc67bd8e70058505f4364110122f30d4e13d20d20c86bb5d93493761b13369519c78b44073c9decefb1e0e485b145a1f822e671c836474c24f073671 WHIRLPOOL aebb97d5c3dc0d6e3da1d04c7a57cabe15c69ffc952e59501ce785805dc21df8e30f0214f121e571b749ba2c16d8ecb47fcd93c115712acca71dd0814db310c9
+EBUILD gvim-9999.ebuild 12359 SHA256 6f107328b313157bfbeecc9075d181e909d04b0d3359025fc9ba30b1979fa4d4 SHA512 e9d783aeef8eb630b5fce8b195d2e925b4138b94cf27f469e49bec619f1380ef8deed686bb7455068bf57eaeb145262e1a368d8def416135437e84d003b394e6 WHIRLPOOL 0f7a914f347d1012772181a54fb69a46acfe8db1b4af6485bb099c073f6eb7aab6da7c0c6d66bc0dd22d2adce22360613c0703160fcfcfd7d7e8c21f0b7d72ab
+MISC ChangeLog 62487 SHA256 5560377ab22d36a4b1d9aefc06a4f7413c2d7d89465d323b2a0a3e442b31e09f SHA512 02252674664ea59b9467f5cad2c24293712a2f23f9649f20ccc257ff318d7a1f140ba81fb347f3b5ba93b11009f40b89c4eb9ad54590fc6da72404eefaabec6f WHIRLPOOL 8d182e0ba14d4bf2c3ff7f6fccc64e81953b775ae7a9c79446c7ecd5bbce76d151c51ce73076ac3348faa554dd36dadb4bd33d7dfaf81b3e9722158129afadab
 MISC metadata.xml 448 SHA256 524e425c32bae85ecbdb39210b1a936ef2849092916d7b3dcb52a5dbc921ec6e SHA512 a07525b45a00b8de6e019e35305479275013b75c557abc5447f78c196a1bf7806480ecbf3b1fe2faf148b0e147870303d2e04cf6bb027bd501b2f04106e67b71 WHIRLPOOL 0fddc25f0abb4814caae4faef2ff5aef0c090c74caa4a773f727a904b5308efe19e72f1fda61c431c67f07a384a5cfd9e92fbf24ddf1cc92ad35e1622d907def
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQEcBAEBCAAGBQJUxs1vAAoJEEqz6FtPBkyjvj4H/2s3J05/HsyHzGtb7+nfsNkb
-85gSMBPYMFGCJTGvP5SndN7xoLUNy122riLhDVbSTN2ltKYhtCtE6fy1H9mbKDVA
-mgedq4j00eVf1y7HKdZh/RTymU5/Q95tG6Xgj6SVA+7gPXe0NB08Bl0LhNX56nIg
-VgENso2wYgXHxuYvC/1O2eunZOYln5nPf1ZjATyW5EeZeGGKQ/iLyz1uLOJ1LSk3
-l5w2rjnRO3vzNMRqbuqQ481VigumiwMTghnwg6tvZCSyVjt4pn3RFFMhEIlm6+4D
-yOLFnSvu13zFV2zved4qJEuWQJwv3QHScbxcLfORlsR/O3vOwla2H2Hc6E8qysY=
-=Te7J
+iQEcBAEBCAAGBQJU1XaaAAoJEEqz6FtPBkyjnk8H/RlAyJUFWP5BuhU6NVlA34AF
+5BwTwcGkn0tM4IVuBxkTMqf5Fk7W4FZ7zoLNVrY4WOnBCTEIvt1kOKjhkHpLyhnw
+FvzvmkCl89UhFVcOiXv6bL5S+M9B641bFQDOypYpHQP8pShnMpY4a8MYmZdUSOFV
+yBfLDqDWY6ylSacW+/RzgbO6LEpg6JDsXoCwPGpiehPUQg50ISzxIeGb+A6awSpx
+V8T5N7a9yAqtqluTauzvu/IjI/oWToygFn41lC1mmOdSGs4RbowpNKkWHkGNfEHo
+nuCsC5SsEhxnjBrNNlHOk1hoDIfxeBBDvvgeOKTM3TfZaky+OzGkYUP+EjBsomc=
+=NYyZ
 -----END PGP SIGNATURE-----
diff --git a/app-editors/gvim/gvim-7.4.622.ebuild b/app-editors/gvim/gvim-7.4.622.ebuild
new file mode 100644 (file)
index 0000000..928cec2
--- /dev/null
@@ -0,0 +1,420 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/gvim-7.4.622.ebuild,v 1.1 2015/02/07 02:21:07 radhermit Exp $
+
+EAPI=5
+VIM_VERSION="7.4"
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+PYTHON_REQ_USE=threads
+inherit eutils vim-doc flag-o-matic fdo-mime versionator bash-completion-r1 prefix python-r1
+
+if [[ ${PV} == 9999* ]] ; then
+       inherit mercurial
+       EHG_REPO_URI="https://vim.googlecode.com/hg/"
+       EHG_PROJECT="vim"
+else
+       VIM_ORG_PATCH="vim-${PV}.patch.xz"
+       SRC_URI="ftp://ftp.vim.org/pub/vim/unix/vim-${VIM_VERSION}.tar.bz2
+               http://dev.gentoo.org/~radhermit/vim/${VIM_ORG_PATCH}
+               http://dev.gentoo.org/~radhermit/vim/vim-7.4.542-gentoo-patches.tar.bz2"
+       KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+fi
+
+DESCRIPTION="GUI version of the Vim text editor"
+HOMEPAGE="http://www.vim.org/"
+
+SLOT="0"
+LICENSE="vim"
+IUSE="acl aqua cscope debug gnome gtk lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
+REQUIRED_USE="
+       luajit? ( lua )
+       python? (
+               || ( $(python_gen_useflags '*') )
+               ?? ( $(python_gen_useflags 'python2*') )
+               ?? ( $(python_gen_useflags 'python3*') )
+       )
+"
+
+RDEPEND="
+       ~app-editors/vim-core-${PV}
+       >=app-admin/eselect-vi-1.1
+       >=sys-libs/ncurses-5.2-r2
+       x11-libs/libXext
+       x11-libs/libXt
+       acl? ( kernel_linux? ( sys-apps/acl ) )
+       !aqua? (
+               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 )
+               !luajit? ( dev-lang/lua[deprecated] )
+       )
+       nls? ( virtual/libintl )
+       perl? ( dev-lang/perl:= )
+       python? ( ${PYTHON_DEPS} )
+       racket? ( dev-scheme/racket )
+       ruby? ( || ( dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 ) )
+       selinux? ( sys-libs/libselinux )
+       session? ( x11-libs/libSM )
+       tcl? ( dev-lang/tcl )
+"
+DEPEND="${RDEPEND}
+       dev-util/ctags
+       sys-devel/autoconf
+       virtual/pkgconfig
+       nls? ( sys-devel/gettext )
+"
+
+S=${WORKDIR}/vim${VIM_VERSION/.}
+
+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
+       export HOME="${T}"/home
+}
+
+src_prepare() {
+       if [[ ${PV} != 9999* ]] ; then
+               if [[ -f "${WORKDIR}"/${VIM_ORG_PATCH%.xz} ]] ; then
+                       # Apply any patches available from vim.org for this version
+                       epatch "${WORKDIR}"/${VIM_ORG_PATCH%.xz}
+               fi
+
+               if [[ -d "${WORKDIR}"/patches/ ]]; then
+                       # Gentoo patches to fix runtime issues, cross-compile errors, etc
+                       EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" \
+                               epatch "${WORKDIR}"/patches/
+               fi
+       fi
+
+       # Fixup a script to use awk instead of nawk
+       sed -i '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
+       echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
+
+       # 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 '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.in || 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 's/ libc\.h / /' "${S}"/src/configure.in || 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" ; done
+
+       # Try to avoid sandbox problems. Bug #114475.
+       if [[ -d "${S}"/src/po ]] ; then
+               sed -i '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
+                       "${S}"/src/po/Makefile
+       fi
+
+       if version_is_at_least 7.3.122 ; then
+               cp "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk
+       fi
+
+       # Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
+       if version_is_at_least 7.3 ; then
+               sed -i "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:"     \
+                       "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
+       fi
+
+       epatch_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.in 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 -f src/auto/configure
+       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
+               [[ -e ${file} ]] && addwrite $file
+       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 racket mzschemeinterp)
+               $(use_enable ruby rubyinterp)
+               $(use_enable selinux)
+               $(use_enable session xsmp)
+               $(use_enable tcl tclinterp)
+       )
+
+       if use python ; then
+               py_add_interp() {
+                       local v
+
+                       [[ ${EPYTHON} == python3* ]] && v=3
+                       myconf+=(
+                               --enable-python${v}interp
+                               vi_cv_path_python${v}="${PYTHON}"
+                       )
+               }
+
+               python_foreach_impl py_add_interp
+       else
+               myconf+=(
+                       --disable-pythoninterp
+                       --disable-python3interp
+               )
+       fi
+
+       # --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 '/# 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 gtk gnome               GNOME2
+       # -aqua gtk -gnome              GTK2
+       # -aqua -gtk  motif             MOTIF
+       # -aqua -gtk -motif neXt        NEXTAW
+       # -aqua -gtk -motif -neXt       ATHENA
+       echo ; echo
+       if use aqua ; then
+               einfo "Building gvim with the Carbon GUI"
+               myconf+=(
+                       --enable-darwin
+                       --enable-gui=carbon
+               )
+       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 Portage do the stripping. Some people like that.
+       export ac_cv_prog_STRIP="$(type -P true ) faking strip"
+
+       # Keep Gentoo 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
+
+       # We've got to call make test from within testdir, since the Makefiles
+       # don't pass through our VIMPROG argument
+       cd "${S}"/src/testdir
+
+       # Test 49 won't work inside a portage environment
+       einfo "Test 49 isn't sandbox-friendly, so it will be skipped."
+       sed -i 's~test49.out~~g' Makefile
+
+       # We don't want to rebuild vim before running the tests
+       sed -i 's,: \$(VIMPROG),: ,' Makefile
+
+       # 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
+
+       # Don't try to do the additional GUI test
+       emake -j1 VIMPROG=../testvim nongui
+}
+
+# Make convenience symlinks, hopefully without stepping on toes.  Some
+# of these links are "owned" by the vim ebuild when it is installed,
+# but they might be good for gvim as well (see bug 45828)
+update_vim_symlinks() {
+       local f syms
+       syms="vimdiff rvim rview"
+       einfo "Calling eselect vi update..."
+       # Call this with --if-unset to respect user's choice (bug 187449)
+       eselect vi update --if-unset
+
+       # Make or remove convenience symlink, vim -> gvim
+       if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
+               ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null
+       elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
+               rm "${EROOT}"/usr/bin/vim
+       fi
+
+       # Make or remove convenience symlinks to vim
+       if [[ -f "${EROOT}"/usr/bin/vim ]]; then
+               for f in ${syms}; do
+                       ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null
+               done
+       else
+               for f in ${syms}; do
+                       if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
+                               rm -f "${EROOT}"/usr/bin/${f}
+                       fi
+               done
+       fi
+
+       # This will still break if you merge then remove the vi package,
+       # but there's only so much you can do, eh?  Unfortunately we don't
+       # have triggers like are done in rpm-land.
+}
+
+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
+
+       dodir /usr/share/man/man1
+       echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1
+       echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1
+       echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1
+
+       insinto /etc/vim
+       newins "${FILESDIR}"/gvimrc-r1 gvimrc
+       eprefixify "${ED}"/etc/vim/gvimrc
+
+       newmenu "${FILESDIR}"/gvim.desktop-r2 gvim.desktop
+       doicon "${FILESDIR}"/gvim.xpm
+
+       # bash completion script, bug #79018.
+       newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
+
+       # We shouldn't be installing the ex or view man page symlinks, as they
+       # are managed by eselect-vi
+       rm -f "${ED}"/usr/share/man/man1/{ex,view}.1
+}
+
+pkg_postinst() {
+       # Update documentation tags (from vim-doc.eclass)
+       update_vim_helptags
+
+       # Update fdo mime stuff, bug #78394
+       fdo-mime_mime_database_update
+
+       if [[ -z ${REPLACING_VERSIONS} ]] ; then
+               echo
+               elog "Vim 7 includes an integrated spell checker. You need to install"
+               elog "word list files before you can use it. There are ebuilds for"
+               elog "some of these named app-vim/vim-spell-*. If your language of"
+               elog "choice is not included, please consult vim-spell.eclass for"
+               elog "instructions on how to make a package."
+               echo
+               ewarn "Note that the English word lists are no longer installed by"
+               ewarn "default."
+               echo
+       fi
+
+       # Make convenience symlinks
+       update_vim_symlinks
+}
+
+pkg_postrm() {
+       # Update documentation tags (from vim-doc.eclass)
+       update_vim_helptags
+
+       # Update fdo mime stuff, bug #78394
+       fdo-mime_mime_database_update
+
+       # Make convenience symlinks
+       update_vim_symlinks
+}
index feb29be77b0fe529b16678cc11f1f894e2011449..ef0e90372c33bec466836fd93c694a055fad6409 100644 (file)
@@ -1,6 +1,6 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/gvim-9999.ebuild,v 1.26 2015/01/22 23:18:18 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/gvim-9999.ebuild,v 1.27 2015/02/07 02:21:07 radhermit Exp $
 
 EAPI=5
 VIM_VERSION="7.4"
@@ -27,8 +27,12 @@ SLOT="0"
 LICENSE="vim"
 IUSE="acl aqua cscope debug gnome gtk lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
 REQUIRED_USE="
-       python? ( ${PYTHON_REQUIRED_USE} )
        luajit? ( lua )
+       python? (
+               || ( $(python_gen_useflags '*') )
+               ?? ( $(python_gen_useflags 'python2*') )
+               ?? ( $(python_gen_useflags 'python3*') )
+       )
 "
 
 RDEPEND="
@@ -83,8 +87,6 @@ pkg_setup() {
        # Gnome sandbox silliness. bug #114475.
        mkdir -p "${T}"/home
        export HOME="${T}"/home
-
-       use python && python-single-r1_pkg_setup
 }
 
 src_prepare() {
@@ -197,13 +199,17 @@ src_configure() {
        )
 
        if use python ; then
-               if [[ ${EPYTHON} == python3* ]] ; then
-                       myconf+=( --enable-python3interp )
-                       export vi_cv_path_python3="${PYTHON}"
-               else
-                       myconf+=( --enable-pythoninterp )
-                       export vi_cv_path_python="${PYTHON}"
-               fi
+               py_add_interp() {
+                       local v
+
+                       [[ ${EPYTHON} == python3* ]] && v=3
+                       myconf+=(
+                               --enable-python${v}interp
+                               vi_cv_path_python${v}="${PYTHON}"
+                       )
+               }
+
+               python_foreach_impl py_add_interp
        else
                myconf+=(
                        --disable-pythoninterp
index b31f337be90a7d86c227c9f6ed17c3fb2d60fb85..2b8104a6ab3f1d82dd412f8102e30d38013abcb5 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for app-editors/vim
 # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/vim/ChangeLog,v 1.488 2015/01/26 23:26:21 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/vim/ChangeLog,v 1.489 2015/02/07 02:19:57 radhermit Exp $
+
+*vim-7.4.622 (07 Feb 2015)
+
+  07 Feb 2015; Tim Harder <radhermit@gentoo.org> +vim-7.4.622.ebuild,
+  vim-9999.ebuild:
+  Version bump. Re-enable supporting both py2 and py3 at the same time.
 
 *vim-7.4.591 (26 Jan 2015)
 
index 3c7d8079e5e06d718956a4f7f836b13f67e661b3..c2de0d7ee213563b044a7dca0323df552373a20b 100644 (file)
@@ -6,6 +6,7 @@ DIST vim-7.4-gentoo-patches.tar.bz2 3314 SHA256 704e2ef7fc3a9f3e721b4c9cbc619a47
 DIST vim-7.4.542-gentoo-patches.tar.bz2 3307 SHA256 0eb635f13e199de77846e0d363a473882f2186f138158271fabf0975747a2f3d SHA512 446c66764dac2533cc2f2b3d50481971d4c63a4e81d94c545862a1be620179fdcd81a79f2d81737d1188812a6ad41d90e2a752a05acf6913e7a71464f7cecdd9 WHIRLPOOL cfca8feef0eb8096897ef751afb0427acddd008530ded6cf908fcff51be9713da4ea3e5e613d544c5caba400d664ae19ca70925df3a218bec5c8be6f69aadda2
 DIST vim-7.4.560.patch.xz 741936 SHA256 e67cb9ba8772c72c3ebed0727e6dd57fc8eaeb1c8087cab7b9b8fe52f9063e04 SHA512 6748efa85883cbe811f4997192f5c0c11ac4825b40a3ef81a9a457eab26d86868aea6f62c8ced7018b3a7758242bd6c8e789fdfb8ce111f4b468f6563bc146fd WHIRLPOOL 45864fdabb133551c66768a4c075588744b99fc823f555ae19a440b2486054e1336c64c50f0bd7e3c1c0c88a0e345595a4bd384cd7dde312ff1465351db869e1
 DIST vim-7.4.591.patch.xz 805892 SHA256 6556595e75666b35cce58dcd585605e3d8910477761cee0fb34317d8969e0344 SHA512 fd98fa6e84fb1b6dc3c80f1e68694ee3711678e66234953962c6bad1aaf045c053c3824d25dd3df9842951e9c5e3ca630b65fafedc30fa6c31313822e3518968 WHIRLPOOL 47f5a75d2faec35460ee0af565437da275b2cd18259645456a76ba79d289d7b8f7392cde95d6cb5da5e2b4657043c11f5f363e99d1cb8457f83dfa884f5ab238
+DIST vim-7.4.622.patch.xz 816104 SHA256 f9d6624b7c8e5cbae749eff3f3bef30f7b10554fa04edf7fe3c85828b2b2e7a8 SHA512 544258cca6e46291743f95acba3dbc7844fddf0f579706cb7903f338b359b852cb4818238e7402e2b5413fa1a2ca9084246ffe39a7c23d29d14883594caa65c3 WHIRLPOOL 2b92e418892bc99c45e6b56592635804394e282c8f0959addf1a93434dccdfb06fa75f39f171624f484cc6a6420bfd6ea6a9d30b1b0a9694cb8a14cbf42e456e
 DIST vim-7.4.tar.bz2 9843297 SHA256 d0f5a6d2c439f02d97fa21bd9121f4c5abb1f6cd8b5a79d3ca82867495734ade SHA512 65d55da556ee283a364b376d251b70e430b7a157bb5a8ee89565060ff9937907966d416cffd33f701b3314d0fdf16efe00065f66bc8459469f5ae2f713418e0e WHIRLPOOL 914fc2c4fd485196410d853990bb5cc4c0071bc36dc0794655ec05cc0b5f7d2971dea780cc7293fcfbd4495a30a7437a3b1e33a2b6795c10a9f05a2eac3ca6f4
 DIST vim-patches-7.4.273.patch.bz2 506378 SHA256 065447179d22602315e2965d135cf9f1db4394ff5655520719f6338ff29e89ca SHA512 029a5cef758e4b201eabbc82458f3e1c3674582715a8c78a7270f3ecd57980b1cef66a0152526fd3505685c27c07f6e6742da48da9ad9546e3cfc2a5e7c11164 WHIRLPOOL 305322e991e9640b80147dd5ceac9dd6dae93a07610f807bbf01c0fdf37cba67ea41a1b2720c8a43da0161c57e0a522086f135efc712fb0106497a21288a872a
 DIST vim-patches-7.4.488.patch.bz2 755739 SHA256 831bd6338a5169d90b82c313ea73256a70325ad8b721e2b7052d9d5ec5ff2fde SHA512 53a1041e2baa6477b179fd7879ca76867a8fff9cc21a7e843519fb96c3f880f6053760a7465d68c84ee4d7f6cb42cc2017152789a4b57db7953d20bbfa7dd4aa WHIRLPOOL 0bfc8d839e1d886ac8339edf01bb84e46f8c1d3754791d565d3b4050ebf678b548792c8d94b1c8f09824ebbee52fb1df9c65670b63fa860032278b318b89db66
@@ -17,17 +18,18 @@ EBUILD vim-7.4.527.ebuild 11944 SHA256 deeb77a5c2ac1eafc87a9ffc8bea469b4e87b0a1e
 EBUILD vim-7.4.542.ebuild 11998 SHA256 bbb865bb61e76172a80ff39b8e1b98caca4edaebd5b3abc3394ecb8876fd6547 SHA512 f212de529f4c45b30ed89fb198e56767996eac11cf3b884984bc6ffdd071c9e4065b817dc4bf929c1e628594e1c4261d74e0e6e1ef80e52548e5dc348652744a WHIRLPOOL 17d5024c8c04f2daf2fc0e1e7bbd4adf6094c086c1c5f8dd604059dd19442b8250c86c2d69286dd4c3ee03454fc2b8a697dd1e30f3c91d8a8c3e2d41d54869ff
 EBUILD vim-7.4.560.ebuild 11832 SHA256 51b0399b4894cbf76e827929f0cbfa54aaecfbc3b01a02a4b598ac4d25e79106 SHA512 e0a530629a5d60466499a6cc0d721fe09a081921dc736dc08f8a5aa73e32e8e008dd6b5da935aec1cc82fdacb154bc5c07d03cdf9170c1119b40f632f14726b9 WHIRLPOOL 83c9704c91cb41fd2e06065a135cac822717d22fc55ad79f39b8fb21c09274f34f2fb54c5fbbb7a07d305d72615ea50950fc8939fbe6e12fe1b3df1ddac28f77
 EBUILD vim-7.4.591.ebuild 11779 SHA256 e25dbd9ffe65042da99f72c4919bb4c9a47780a290c77dc6e0bbd7fa4117ea9a SHA512 939b1bf8b0effac50326fb6c17bc7047745fb91a861d2246074a19c975aaf8591491618d77df71a57cb6a4b6edce305e9f62261529fcda414c8a4be0d6973ce1 WHIRLPOOL 11e06083d957e58c7562c709c0d0fa0f38f5dc59d001e91685b22b25c18029b885eea5e227c26c8e0a6d2148fb93bf7af833bd8fe78dbd79e0b318a04fd82bee
-EBUILD vim-9999.ebuild 11775 SHA256 18632b8d1cae286f8d20a1eb6ffbc767ef6e44bc55af271978273fa2027525d7 SHA512 cba27b3878ac03cbedf89200a7bcc1cbe79621d43cf0e52cb2cd31f85829ff219d2caddf6f58f7c57fceb35d8903d252ad7f1fc99913936207854e264bf52a2a WHIRLPOOL 0e85ab87a9a0858edf392125c0519dc3f8656841dbc65e6c5c8696401b226d5c080cb2dc24555fa77a051d554234e3c497002b99e2699f6f4b127fd338ed57af
-MISC ChangeLog 65960 SHA256 3b73ef0534d69f587b9eb0b694830d5503a95523703b73ce2231f58cb13fa692 SHA512 7c02b1ae09a3b901e4a78e7c31483f7925cc1215c687383fb6b67758311a878d613c47fdb90ac92b585d59106dea1e62e6b390baca603a2d817569a78cd1acc9 WHIRLPOOL 8cc7899aef4f684dab57e86f8d1654f8572bbabdfa037d5fa5029faf8b9097d6f2edd29951703d8ea7bbcf99d443e57de80a3ee65f2648e00180f9952398a553
+EBUILD vim-7.4.622.ebuild 11820 SHA256 cefb7334c251f8752e6232788e89bee47d9cdde8be76f70d065f2ec7593f5ac1 SHA512 80f42043e3ca599b3a3f946623f461240759ee2e61c65b2ab51bdf476808e363bb1e6651dc282dd77b2c8d3c8a2e7cbf87d9ee8af7f6c35fc391ec4678f43d5f WHIRLPOOL 06d7824913bf9ed1393ec18abed371c966eabdeda57205aca4dde7e0098b3b3f944e6b4c8ee3dfc66ba6ecca89607c115d51434ee4b97a79348d24f07d144ac8
+EBUILD vim-9999.ebuild 11816 SHA256 cb22de2219f97d030d5c7f82187439bec7036c700104d67a8a7f654f65c998b7 SHA512 2eb5c28671bbc0e0f09da8e2c289bd79151ac3d17ba21c319c3404c6828f66d7e241e7b315430daffd8c8023d24633f55667a1816fb2383f326a5f93db92c697 WHIRLPOOL 9ee9d3ba0858a743196ef5c03f7d77e0fd299e36c5c02dbac5ee2ef7b76e27a6e3a33e91198624a7e13c3203f1f23d1515a634dbcf149573fbe397cca08b8753
+MISC ChangeLog 66150 SHA256 64743b25b1bede52ed766c1376a94e88843aba70fbb9bc78e8b56eb8c1ad07f1 SHA512 a73bc2e8d8290602a1c1a2e6d92a305386afbb5e75832662bcdc91c1b1a58c78818cfcb69059576ce38213187c1ae807a61aa77846cd59d9ef4eceb7069d3029 WHIRLPOOL b6ee472cd9efa8fb0bed350d9110dd6f345e68929d47d4d343f05ffb287334b3151893d70c71bb006cb42379ebcec374bd242003105152d446bd1c6aa9c336cf
 MISC metadata.xml 611 SHA256 ca72f78f706a782fd43a809be03a88ae31684a281697c8668e08210084af78c0 SHA512 2566bee4ccd952830492057b31e0dd02743554748a798ef3a7df3bb44014162e5137d62fd915e28b5b4efe2c70d135baa3e0397cf60ad624ea587c3e2207bd6d WHIRLPOOL cb89aba309663ba96731451d92377a60b00347b7e8f76caac0b373459911e4b9980a015db1588750f433b5d490a0bb7f3000689ca8ea3dab5d1823d1873adec1
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
-iQEcBAEBCAAGBQJUxs0hAAoJEEqz6FtPBkyjg2oIAKOd6oBSe4YxIw7CnrkdXPEy
-vAs83LgrDsfl1cuxzRYXI6YUn3sp+7C2VzG/cEmoc3+3miqBwKt6Mr59lb4AewNt
-Ueqv5Tc4Yaj3a1mkm9kdAWE4FPEsisMPBBCkh9xEz4N/BgGOnipirdiXowngoLKp
-RFml0Kyq27+HuOrS1Adc5ZEaumf+eUy4r/HwCfu4wZIWdvNUcInWj5fO00zu3SZJ
-46woTt6ggaVwoH05ZmOuKfhdqcqekkbM89vencSriZCGCpV4XkdDsNjIVaRfZMC+
-LZ6UHJUi/ZOa9h6ZgZJxlj1P6osOx5SmmA7oh4cB6wk6s8ZIUABb7Y4EjYB2LS4=
-=mwWA
+iQEcBAEBCAAGBQJU1XZTAAoJEEqz6FtPBkyjRUwH/2szjWxwEeGpPDHGY9rXEAQM
+3tc1UBV/5pieKMAJ/wlEiwKt6b0jDQlshocpEajh1RdLXs6u92ioZB60qIWrW+ts
+HL0vyXi8482JGg0H49IANfwhpx4JMAV5Hr40eOoCNngP2udAnfcJKUrww/DpIcsX
+t1ZeN1kS9OytX3Evbhb4iiEvxWOycJO7tn85bAVywf4Fsh7rAY2mdsu+A71IJ1uO
+YcNlq276w8Vv3MU9OFRFrqtAWwohtBrq72S73imhqm1m4DK2P7qZAOtoD4jRvH+N
+Kfnlz8wTE61C/Pf6bFmWuUQdNi0DUEUppL6h451BqTYURRYuCUGfW3FQc7GZTNs=
+=8chT
 -----END PGP SIGNATURE-----
diff --git a/app-editors/vim/vim-7.4.622.ebuild b/app-editors/vim/vim-7.4.622.ebuild
new file mode 100644 (file)
index 0000000..5fe5010
--- /dev/null
@@ -0,0 +1,394 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-editors/vim/vim-7.4.622.ebuild,v 1.1 2015/02/07 02:19:57 radhermit Exp $
+
+EAPI=5
+VIM_VERSION="7.4"
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+PYTHON_REQ_USE=threads
+inherit eutils vim-doc flag-o-matic fdo-mime versionator bash-completion-r1 python-r1
+
+if [[ ${PV} == 9999* ]] ; then
+       inherit mercurial
+       EHG_REPO_URI="https://vim.googlecode.com/hg/"
+       EHG_PROJECT="vim"
+else
+       VIM_ORG_PATCH="vim-${PV}.patch.xz"
+       SRC_URI="ftp://ftp.vim.org/pub/vim/unix/vim-${VIM_VERSION}.tar.bz2
+               http://dev.gentoo.org/~radhermit/vim/${VIM_ORG_PATCH}
+               http://dev.gentoo.org/~radhermit/vim/vim-7.4.542-gentoo-patches.tar.bz2"
+       KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~hppa-hpux ~ia64-hpux ~x86-interix ~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="http://www.vim.org/"
+
+SLOT="0"
+LICENSE="vim"
+IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux tcl vim-pager"
+REQUIRED_USE="
+       luajit? ( lua )
+       python? (
+               || ( $(python_gen_useflags '*') )
+               ?? ( $(python_gen_useflags 'python2*') )
+               ?? ( $(python_gen_useflags 'python3*') )
+       )
+"
+
+RDEPEND="
+       >=app-admin/eselect-vi-1.1
+       >=sys-libs/ncurses-5.2-r2
+       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 )
+               !luajit? ( dev-lang/lua[deprecated] )
+       )
+       !minimal? (
+               ~app-editors/vim-core-${PV}
+               dev-util/ctags
+       )
+       perl? ( dev-lang/perl:= )
+       python? ( ${PYTHON_DEPS} )
+       racket? ( dev-scheme/racket )
+       ruby? ( || ( dev-lang/ruby:2.2 dev-lang/ruby:2.1 dev-lang/ruby:2.0 ) )
+       selinux? ( sys-libs/libselinux )
+       tcl? ( dev-lang/tcl )
+       X? ( x11-libs/libXt )
+"
+DEPEND="${RDEPEND}
+       sys-devel/autoconf
+       nls? ( sys-devel/gettext )
+"
+
+S=${WORKDIR}/vim${VIM_VERSION/.}
+
+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
+       export HOME="${T}"/home
+}
+
+src_prepare() {
+       if [[ ${PV} != 9999* ]] ; then
+               if [[ -f "${WORKDIR}"/${VIM_ORG_PATCH%.xz} ]] ; then
+                       # Apply any patches available from vim.org for this version
+                       epatch "${WORKDIR}"/${VIM_ORG_PATCH%.xz}
+               fi
+
+               if [[ -d "${WORKDIR}"/patches/ ]]; then
+                       # Gentoo patches to fix runtime issues, cross-compile errors, etc
+                       EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" \
+                               epatch "${WORKDIR}"/patches/
+               fi
+       fi
+
+       # Fixup a script to use awk instead of nawk
+       sed -i '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
+       echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
+
+       # 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 '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.in || 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 's/ libc\.h / /' "${S}"/src/configure.in || 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" ; done
+
+       # conditionally make the manpager.sh script
+       if use vim-pager ; then
+               cat <<-END > "${S}"/runtime/macros/manpager.sh
+                       #!/bin/sh
+                       sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
+                                       vim \\
+                                               -c 'let no_plugin_maps = 1' \\
+                                               -c 'set nolist nomod ft=man' \\
+                                               -c 'let g:showmarks_enable=0' \\
+                                               -c 'runtime! macros/less.vim' -
+                       END
+       fi
+
+       # Try to avoid sandbox problems. Bug #114475.
+       if [[ -d "${S}"/src/po ]] ; then
+               sed -i '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
+                       "${S}"/src/po/Makefile
+       fi
+
+       if version_is_at_least 7.3.122 ; then
+               cp "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk
+       fi
+
+       # Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
+       if version_is_at_least 7.3 ; then
+               sed -i "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:"     \
+                       "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
+       fi
+
+       epatch_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.in 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 -f src/auto/configure
+       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
+               [[ -e ${file} ]] && addwrite $file
+       done
+
+       if use minimal ; then
+               myconf=(
+                       --with-features=tiny
+                       --disable-nls
+                       --disable-multibyte
+                       --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
+                       --enable-multibyte
+                       $(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 racket mzschemeinterp)
+                       $(use_enable ruby rubyinterp)
+                       $(use_enable selinux)
+                       $(use_enable tcl tclinterp)
+               )
+
+               if use python ; then
+                       py_add_interp() {
+                               local v
+
+                               [[ ${EPYTHON} == python3* ]] && v=3
+                               myconf+=(
+                                       --enable-python${v}interp
+                                       vi_cv_path_python${v}="${PYTHON}"
+                               )
+                       }
+
+                       python_foreach_impl py_add_interp
+               else
+                       myconf+=(
+                               --disable-pythoninterp
+                               --disable-python3interp
+                       )
+               fi
+
+               # --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 '/# define FEAT_CSCOPE/d' src/feature.h || \
+                               die "couldn't disable cscope"
+               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 Portage do the stripping. Some people like that.
+       export ac_cv_prog_STRIP="$(type -P true ) faking strip"
+
+       # Keep Gentoo 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() {
+       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
+
+       # We've got to call make test from within testdir, since the Makefiles
+       # don't pass through our VIMPROG argument
+       cd "${S}"/src/testdir
+
+       # Test 49 won't work inside a portage environment
+       einfo "Test 49 isn't sandbox-friendly, so it will be skipped."
+       sed -i 's~test49.out~~g' Makefile
+
+       # We don't want to rebuild vim before running the tests
+       sed -i 's,: \$(VIMPROG),: ,' Makefile
+
+       # Don't try to do the additional GUI test
+       emake -j1 VIMPROG=../vim nongui
+}
+
+# Make convenience symlinks, hopefully without stepping on toes.  Some
+# of these links are "owned" by the vim ebuild when it is installed,
+# but they might be good for gvim as well (see bug 45828)
+update_vim_symlinks() {
+       local f syms
+       syms="vimdiff rvim rview"
+       einfo "Calling eselect vi update..."
+       # Call this with --if-unset to respect user's choice (bug 187449)
+       eselect vi update --if-unset
+
+       # Make or remove convenience symlink, vim -> gvim
+       if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
+               ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null
+       elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
+               rm "${EROOT}"/usr/bin/vim
+       fi
+
+       # Make or remove convenience symlinks to vim
+       if [[ -f "${EROOT}"/usr/bin/vim ]]; then
+               for f in ${syms}; do
+                       ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null
+               done
+       else
+               for f in ${syms}; do
+                       if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
+                               rm -f "${EROOT}"/usr/bin/${f}
+                       fi
+               done
+       fi
+
+       # This will still break if you merge then remove the vi package,
+       # but there's only so much you can do, eh?  Unfortunately we don't
+       # have triggers like are done in rpm-land.
+}
+
+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
+
+       newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
+       # keep in sync with 'complete ... -F' list
+       bashcomp_alias vim ex vi view rvim rview vimdiff
+
+       # We shouldn't be installing the ex or view man page symlinks, as they
+       # are managed by eselect-vi
+       rm -f "${ED}"/usr/share/man/man1/{ex,view}.1
+}
+
+pkg_postinst() {
+       # Update documentation tags (from vim-doc.eclass)
+       update_vim_helptags
+
+       if [[ -z ${REPLACING_VERSIONS} ]] ; then
+               if use X ; then
+                       echo
+                       elog "The 'X' USE flag enables vim <-> X communication, like"
+                       elog "updating the xterm titlebar. It does not install a GUI."
+               fi
+               echo
+               elog "To install a GUI version of vim, use the app-editors/gvim"
+               elog "package."
+               echo
+               elog "Vim 7 includes an integrated spell checker. You need to install"
+               elog "word list files before you can use it. There are ebuilds for"
+               elog "some of these named app-vim/vim-spell-*. If your language of"
+               elog "choice is not included, please consult vim-spell.eclass for"
+               elog "instructions on how to make a package."
+               echo
+               ewarn "Note that the English word lists are no longer installed by"
+               ewarn "default."
+       fi
+
+       # Make convenience symlinks
+       update_vim_symlinks
+}
+
+pkg_postrm() {
+       # Update documentation tags (from vim-doc.eclass)
+       update_vim_helptags
+
+       # Make convenience symlinks
+       update_vim_symlinks
+}
index 4c931618c8dc045ec4871287981926d6fbf1f226..92eb3c2aa2a0d550b707b5384d6719ed8f73ef50 100644 (file)
@@ -1,12 +1,12 @@
 # Copyright 1999-2015 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-editors/vim/vim-9999.ebuild,v 1.24 2015/01/22 23:17:27 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-editors/vim/vim-9999.ebuild,v 1.25 2015/02/07 02:19:56 radhermit Exp $
 
 EAPI=5
 VIM_VERSION="7.4"
 PYTHON_COMPAT=( python{2_7,3_3,3_4} )
 PYTHON_REQ_USE=threads
-inherit eutils vim-doc flag-o-matic fdo-mime versionator bash-completion-r1 python-single-r1
+inherit eutils vim-doc flag-o-matic fdo-mime versionator bash-completion-r1 python-r1
 
 if [[ ${PV} == 9999* ]] ; then
        inherit mercurial
@@ -27,8 +27,12 @@ SLOT="0"
 LICENSE="vim"
 IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux tcl vim-pager"
 REQUIRED_USE="
-       python? ( ${PYTHON_REQUIRED_USE} )
        luajit? ( lua )
+       python? (
+               || ( $(python_gen_useflags '*') )
+               ?? ( $(python_gen_useflags 'python2*') )
+               ?? ( $(python_gen_useflags 'python3*') )
+       )
 "
 
 RDEPEND="
@@ -69,8 +73,6 @@ pkg_setup() {
        # Gnome sandbox silliness. bug #114475.
        mkdir -p "${T}"/home
        export HOME="${T}"/home
-
-       use python && python-single-r1_pkg_setup
 }
 
 src_prepare() {
@@ -214,13 +216,17 @@ src_configure() {
                )
 
                if use python ; then
-                       if [[ ${EPYTHON} == python3* ]] ; then
-                               myconf+=( --enable-python3interp )
-                               export vi_cv_path_python3="${PYTHON}"
-                       else
-                               myconf+=( --enable-pythoninterp )
-                               export vi_cv_path_python="${PYTHON}"
-                       fi
+                       py_add_interp() {
+                               local v
+
+                               [[ ${EPYTHON} == python3* ]] && v=3
+                               myconf+=(
+                                       --enable-python${v}interp
+                                       vi_cv_path_python${v}="${PYTHON}"
+                               )
+                       }
+
+                       python_foreach_impl py_add_interp
                else
                        myconf+=(
                                --disable-pythoninterp