Gentoo Archives: gentoo-commits

From: Tim Harder <radhermit@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-editors/vim/
Date: Wed, 06 Jun 2018 02:32:02
Message-Id: 1528252296.3c08fa1b0bac40d49eb5b540b20d9fd30fc5a18b.radhermit@gentoo
1 commit: 3c08fa1b0bac40d49eb5b540b20d9fd30fc5a18b
2 Author: Tim Harder <radhermit <AT> gentoo <DOT> org>
3 AuthorDate: Wed Jun 6 02:28:56 2018 +0000
4 Commit: Tim Harder <radhermit <AT> gentoo <DOT> org>
5 CommitDate: Wed Jun 6 02:31:36 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3c08fa1b
7
8 app-editors/vim: version bump to 8.1.0034
9
10 app-editors/vim/Manifest | 1 +
11 app-editors/vim/vim-8.1.0034.ebuild | 311 ++++++++++++++++++++++++++++++++++++
12 2 files changed, 312 insertions(+)
13
14 diff --git a/app-editors/vim/Manifest b/app-editors/vim/Manifest
15 index 1625bab72a6..0d430aa4e51 100644
16 --- a/app-editors/vim/Manifest
17 +++ b/app-editors/vim/Manifest
18 @@ -3,3 +3,4 @@ DIST vim-8.0.1298.tar.gz 13395459 BLAKE2B 4b6e3c4443cd675dc3727e8609b89c422f66c7
19 DIST vim-8.0.1428.tar.gz 13415243 BLAKE2B 88f86c371d0a644212b9e4dc1a15d61244847037f36262a225c361bfc2799b741c128de21ac92bb3fb4a4955894e46d34dc01baa7cbf58f1371d772b36887103 SHA512 f635c53c7e2ca808dc1cb424e6e4b16d8c41c66a86c3c7584444dab3d2482904795fea7c071d65862ae6ac6b2b66b7ad5ac832e1e30f4624d46f220c6f41e2e9
20 DIST vim-8.0.1645.tar.gz 13535252 BLAKE2B a5c7463e85eed12825bdf46d15eb7e7513d62831eba76cbb90af875010b33662b7a6ef2c4c5cecddface415d75e97caf0a670e69835ecd3b4a89704f3b18b905 SHA512 367b9e205e776f84fcfbb92725afd5e7aa66898110d46dbea1a33f7b74c239559e829b5104c45360539c8f2b23c375ed59ccea7ee35a5dd10770400d9a7be085
21 DIST vim-8.0.1699.tar.gz 13546105 BLAKE2B cabf29d5a89c55e2fe3bc5e39eb499412f5907ddf856f8644b466f1e0fbffefff3cd801b6bc5e49e62ffdf8805b0556058b9a913015a9f9fbe1a4f580132fd49 SHA512 b0fe8e1dc05fdc3758896caf4746da40988ca7604d77dbe78c47525cbf8f0d7e6c05f690687268eda581009050d4e02e93fb4d30734cbbab4cfd6a8a1488c1e7
22 +DIST vim-8.1.0034.tar.gz 13652586 BLAKE2B 98dac6b37c04ea8c15f0b0e2e4145d6529138e0532e92751fd07be04a2180519135d386dfc19e7f12c8eb37b3e15ee81ba357680d453afab56d96299b69cb511 SHA512 b2b85035c6c60a09e903d8f6deb500e42ab8bfc2f9a5b959d0055a8e02dab3a91d5460fd5028e6634c5ef6ab034186b7155e341fa25e84b9851290708e892d19
23
24 diff --git a/app-editors/vim/vim-8.1.0034.ebuild b/app-editors/vim/vim-8.1.0034.ebuild
25 new file mode 100644
26 index 00000000000..bd6149fa03b
27 --- /dev/null
28 +++ b/app-editors/vim/vim-8.1.0034.ebuild
29 @@ -0,0 +1,311 @@
30 +# Copyright 1999-2018 Gentoo Foundation
31 +# Distributed under the terms of the GNU General Public License v2
32 +
33 +EAPI=6
34 +VIM_VERSION="8.1"
35 +PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
36 +PYTHON_REQ_USE="threads"
37 +USE_RUBY="ruby22 ruby23 ruby24 ruby25"
38 +
39 +inherit vim-doc flag-o-matic versionator bash-completion-r1 python-single-r1 ruby-single
40 +
41 +if [[ ${PV} == 9999* ]] ; then
42 + inherit git-r3
43 + EGIT_REPO_URI="https://github.com/vim/vim.git"
44 +else
45 + SRC_URI="https://github.com/vim/vim/archive/v${PV}.tar.gz -> ${P}.tar.gz
46 + https://dev.gentoo.org/~radhermit/vim/vim-8.0.0938-gentoo-patches.tar.bz2"
47 + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
48 +fi
49 +
50 +DESCRIPTION="Vim, an improved vi-style text editor"
51 +HOMEPAGE="https://vim.sourceforge.io/ https://github.com/vim/vim"
52 +
53 +SLOT="0"
54 +LICENSE="vim"
55 +IUSE="X acl cscope debug gpm lua luajit minimal nls perl python racket ruby selinux tcl terminal vim-pager"
56 +REQUIRED_USE="
57 + luajit? ( lua )
58 + python? ( ${PYTHON_REQUIRED_USE} )
59 +"
60 +
61 +RDEPEND="
62 + >=app-eselect/eselect-vi-1.1
63 + >=sys-libs/ncurses-5.2-r2:0=
64 + nls? ( virtual/libintl )
65 + acl? ( kernel_linux? ( sys-apps/acl ) )
66 + cscope? ( dev-util/cscope )
67 + gpm? ( >=sys-libs/gpm-1.19.3 )
68 + lua? (
69 + luajit? ( dev-lang/luajit:2= )
70 + !luajit? ( dev-lang/lua:0[deprecated] )
71 + )
72 + !minimal? (
73 + ~app-editors/vim-core-${PV}
74 + dev-util/ctags
75 + )
76 + perl? ( dev-lang/perl:= )
77 + python? ( ${PYTHON_DEPS} )
78 + racket? ( dev-scheme/racket )
79 + ruby? ( ${RUBY_DEPS} )
80 + selinux? ( sys-libs/libselinux )
81 + tcl? ( dev-lang/tcl:0= )
82 + X? ( x11-libs/libXt )
83 +"
84 +
85 +DEPEND="
86 + ${RDEPEND}
87 + sys-devel/autoconf
88 + nls? ( sys-devel/gettext )
89 +"
90 +
91 +pkg_setup() {
92 + # people with broken alphabets run into trouble. bug 82186.
93 + unset LANG LC_ALL
94 + export LC_COLLATE="C"
95 +
96 + # Gnome sandbox silliness. bug #114475.
97 + mkdir -p "${T}"/home || die "mkdir failed"
98 + export HOME="${T}"/home
99 +
100 + use python && python-single-r1_pkg_setup
101 +}
102 +
103 +src_prepare() {
104 + if [[ ${PV} != 9999* ]] ; then
105 + # Gentoo patches to fix runtime issues, cross-compile errors, etc
106 + eapply "${WORKDIR}"/patches/
107 + fi
108 +
109 + # Fixup a script to use awk instead of nawk
110 + sed -i -e \
111 + '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' \
112 + "${S}"/runtime/tools/mve.awk || die "mve.awk sed failed"
113 +
114 + # Read vimrc and gvimrc from /etc/vim
115 + echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' \
116 + >> "${S}"/src/feature.h || die "echo failed"
117 + echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' \
118 + >> "${S}"/src/feature.h || die "echo failed"
119 +
120 + # Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
121 + # Hopefully this pattern won't break for a while at least.
122 + # This fixes bug 29398 (27 Sep 2003 agriffis)
123 + sed -i -e \
124 + 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
125 + "${S}"/runtime/doc/syntax.txt \
126 + "${S}"/runtime/doc/tagsrch.txt \
127 + "${S}"/runtime/doc/usr_29.txt \
128 + "${S}"/runtime/menu.vim \
129 + "${S}"/src/configure.ac || die 'sed failed'
130 +
131 + # Don't be fooled by /usr/include/libc.h. When found, vim thinks
132 + # this is NeXT, but it's actually just a file in dev-libs/9libs
133 + # This fixes bug 43885 (20 Mar 2004 agriffis)
134 + sed -i -e \
135 + 's/ libc\.h / /' \
136 + "${S}"/src/configure.ac || die 'sed failed'
137 +
138 + # gcc on sparc32 has this, uhm, interesting problem with detecting EOF
139 + # correctly. To avoid some really entertaining error messages about stuff
140 + # which isn't even in the source file being invalid, we'll do some trickery
141 + # to make the error never occur. bug 66162 (02 October 2004 ciaranm)
142 + find "${S}" -name '*.c' | while read c; do
143 + echo >> "$c" || die "echo failed"
144 + done
145 +
146 + # conditionally make the manpager.sh script
147 + if use vim-pager; then
148 + cat > "${S}"/runtime/macros/manpager.sh <<-_EOF_ || die "cat EOF failed"
149 + #!/bin/sh
150 + sed -e 's/\x1B\[[[:digit:]]\+m//g' | col -b | \\
151 + vim \\
152 + -c 'let no_plugin_maps = 1' \\
153 + -c 'set nolist nomod ft=man ts=8' \\
154 + -c 'let g:showmarks_enable=0' \\
155 + -c 'runtime! macros/less.vim' -
156 + _EOF_
157 + fi
158 +
159 + # Try to avoid sandbox problems. Bug #114475.
160 + if [[ -d "${S}"/src/po ]]; then
161 + sed -i -e \
162 + '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
163 + "${S}"/src/po/Makefile || die "sed failed"
164 + fi
165 +
166 + cp -v "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk || die "cp failed"
167 +
168 + sed -i -e \
169 + "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
170 + "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
171 +
172 + eapply_user
173 +}
174 +
175 +src_configure() {
176 + local myconf=()
177 +
178 + # Fix bug 37354: Disallow -funroll-all-loops on amd64
179 + # Bug 57859 suggests that we want to do this for all archs
180 + filter-flags -funroll-all-loops
181 +
182 + # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
183 + # everyone since previous flag filtering bugs have turned out to affect
184 + # multiple archs...
185 + replace-flags -O3 -O2
186 +
187 + # Fix bug 18245: Prevent "make" from the following chain:
188 + # (1) Notice configure.ac is newer than auto/configure
189 + # (2) Rebuild auto/configure
190 + # (3) Notice auto/configure is newer than auto/config.mk
191 + # (4) Run ./configure (with wrong args) to remake auto/config.mk
192 + sed -i 's# auto/config\.mk:#:#' src/Makefile || die "Makefile sed failed"
193 + rm src/auto/configure || die "rm failed"
194 + emake -j1 -C src autoconf
195 +
196 + # This should fix a sandbox violation (see bug 24447). The hvc
197 + # things are for ppc64, see bug 86433.
198 + for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc*; do
199 + if [[ -e "${file}" ]]; then
200 + addwrite $file
201 + fi
202 + done
203 +
204 + if use minimal; then
205 + myconf=(
206 + --with-features=tiny
207 + --disable-nls
208 + --disable-multibyte
209 + --disable-acl
210 + --enable-gui=no
211 + --without-x
212 + --disable-darwin
213 + --disable-luainterp
214 + --disable-perlinterp
215 + --disable-pythoninterp
216 + --disable-mzschemeinterp
217 + --disable-rubyinterp
218 + --disable-selinux
219 + --disable-tclinterp
220 + --disable-gpm
221 + )
222 + else
223 + use debug && append-flags "-DDEBUG"
224 +
225 + myconf=(
226 + --with-features=huge
227 + --enable-multibyte
228 + $(use_enable acl)
229 + $(use_enable cscope)
230 + $(use_enable gpm)
231 + $(use_enable lua luainterp)
232 + $(usex lua "--with-lua-prefix=${EPREFIX}/usr" "")
233 + $(use_with luajit)
234 + $(use_enable nls)
235 + $(use_enable perl perlinterp)
236 + $(use_enable python pythoninterp)
237 + $(use_enable python python3interp)
238 + $(use_enable racket mzschemeinterp)
239 + $(use_enable ruby rubyinterp)
240 + $(use_enable selinux)
241 + $(use_enable tcl tclinterp)
242 + $(use_enable terminal)
243 + )
244 +
245 + # --with-features=huge forces on cscope even if we --disable it. We need
246 + # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
247 + if ! use cscope; then
248 + sed -i -e \
249 + '/# define FEAT_CSCOPE/d' src/feature.h || die "sed failed"
250 + fi
251 +
252 + # don't test USE=X here ... see bug #19115
253 + # but need to provide a way to link against X ... see bug #20093
254 + myconf+=(
255 + --enable-gui=no
256 + --disable-darwin
257 + $(use_with X x)
258 + )
259 + fi
260 +
261 + # let package manager strip binaries
262 + export ac_cv_prog_STRIP="$(type -P true ) faking strip"
263 +
264 + # keep prefix env contained within the EPREFIX
265 + use prefix && myconf+=( --without-local-dir )
266 +
267 + econf \
268 + --with-modified-by=Gentoo-${PVR} \
269 + "${myconf[@]}"
270 +}
271 +
272 +src_compile() {
273 + # The following allows emake to be used
274 + emake -j1 -C src auto/osdef.h objects
275 +
276 + emake
277 +}
278 +
279 +src_test() {
280 + einfo
281 + einfo "Starting vim tests. Several error messages will be shown"
282 + einfo "while the tests run. This is normal behaviour and does not"
283 + einfo "indicate a fault."
284 + einfo
285 + ewarn "If the tests fail, your terminal may be left in a strange"
286 + ewarn "state. Usually, running 'reset' will fix this."
287 + einfo
288 +
289 + # Don't let vim talk to X
290 + unset DISPLAY
291 +
292 + emake -j1 -C src/testdir nongui
293 +}
294 +
295 +# Call eselect vi update with --if-unset
296 +# to respect user's choice (bug 187449)
297 +eselect_vi_update() {
298 + einfo "Calling eselect vi update..."
299 + eselect vi update --if-unset
300 + eend $?
301 +}
302 +
303 +src_install() {
304 + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
305 +
306 + # Note: Do not install symlinks for 'vi', 'ex', or 'view', as these are
307 + # managed by eselect-vi
308 + dobin src/vim
309 + dosym vim /usr/bin/vimdiff
310 + dosym vim /usr/bin/rvim
311 + dosym vim /usr/bin/rview
312 + if use vim-pager ; then
313 + dosym ${vimfiles}/macros/less.sh /usr/bin/vimpager
314 + dosym ${vimfiles}/macros/manpager.sh /usr/bin/vimmanpager
315 + insinto ${vimfiles}/macros
316 + doins runtime/macros/manpager.sh
317 + fperms a+x ${vimfiles}/macros/manpager.sh
318 + fi
319 +
320 + newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
321 +
322 + # keep in sync with 'complete ... -F' list
323 + bashcomp_alias vim ex vi view rvim rview vimdiff
324 +}
325 +
326 +pkg_postinst() {
327 + # Update documentation tags (from vim-doc.eclass)
328 + update_vim_helptags
329 +
330 + # Call eselect vi update
331 + eselect_vi_update
332 +}
333 +
334 +pkg_postrm() {
335 + # Update documentation tags (from vim-doc.eclass)
336 + update_vim_helptags
337 +
338 + # Call eselect vi update
339 + eselect_vi_update
340 +}