Gentoo Archives: gentoo-commits

From: "Tim Harder (radhermit)" <radhermit@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-editors/gvim: gvim-7.4.155.ebuild ChangeLog
Date: Thu, 23 Jan 2014 10:32:49
Message-Id: 20140123103246.78D4E2004C@flycatcher.gentoo.org
1 radhermit 14/01/23 10:32:46
2
3 Modified: ChangeLog
4 Added: gvim-7.4.155.ebuild
5 Log:
6 Version bump.
7
8 (Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key 4AB3E85B4F064CA3)
9
10 Revision Changes Path
11 1.421 app-editors/gvim/ChangeLog
12
13 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/gvim/ChangeLog?rev=1.421&view=markup
14 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/gvim/ChangeLog?rev=1.421&content-type=text/plain
15 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/gvim/ChangeLog?r1=1.420&r2=1.421
16
17 Index: ChangeLog
18 ===================================================================
19 RCS file: /var/cvsroot/gentoo-x86/app-editors/gvim/ChangeLog,v
20 retrieving revision 1.420
21 retrieving revision 1.421
22 diff -u -r1.420 -r1.421
23 --- ChangeLog 23 Dec 2013 10:59:13 -0000 1.420
24 +++ ChangeLog 23 Jan 2014 10:32:46 -0000 1.421
25 @@ -1,6 +1,11 @@
26 # ChangeLog for app-editors/gvim
27 -# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
28 -# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/ChangeLog,v 1.420 2013/12/23 10:59:13 hasufell Exp $
29 +# Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
30 +# $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/ChangeLog,v 1.421 2014/01/23 10:32:46 radhermit Exp $
31 +
32 +*gvim-7.4.155 (23 Jan 2014)
33 +
34 + 23 Jan 2014; Tim Harder <radhermit@g.o> +gvim-7.4.155.ebuild:
35 + Version bump.
36
37 23 Dec 2013; Julian Ospald <hasufell@g.o> gvim-7.4.22.ebuild,
38 gvim-7.4.41.ebuild, gvim-7.4.52.ebuild, gvim-7.4.94.ebuild,
39
40
41
42 1.1 app-editors/gvim/gvim-7.4.155.ebuild
43
44 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/gvim/gvim-7.4.155.ebuild?rev=1.1&view=markup
45 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-editors/gvim/gvim-7.4.155.ebuild?rev=1.1&content-type=text/plain
46
47 Index: gvim-7.4.155.ebuild
48 ===================================================================
49 # Copyright 1999-2014 Gentoo Foundation
50 # Distributed under the terms of the GNU General Public License v2
51 # $Header: /var/cvsroot/gentoo-x86/app-editors/gvim/gvim-7.4.155.ebuild,v 1.1 2014/01/23 10:32:46 radhermit Exp $
52
53 EAPI=5
54 VIM_VERSION="7.4"
55 PYTHON_COMPAT=( python{2_6,2_7,3_2,3_3} )
56 PYTHON_REQ_USE=threads
57 inherit eutils vim-doc flag-o-matic fdo-mime versionator bash-completion-r1 prefix python-single-r1
58
59 if [[ ${PV} == 9999* ]] ; then
60 inherit mercurial
61 EHG_REPO_URI="https://vim.googlecode.com/hg/"
62 EHG_PROJECT="vim"
63 else
64 VIM_ORG_PATCHES="vim-patches-${PV}.patch.bz2"
65
66 SRC_URI="ftp://ftp.vim.org/pub/vim/unix/vim-${VIM_VERSION}.tar.bz2
67 http://dev.gentoo.org/~radhermit/vim/${VIM_ORG_PATCHES}"
68 KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
69 fi
70
71 DESCRIPTION="GUI version of the Vim text editor"
72 HOMEPAGE="http://www.vim.org/"
73
74 SLOT="0"
75 LICENSE="vim"
76 IUSE="acl aqua cscope debug gnome gtk lua luajit motif neXt netbeans nls perl python racket ruby selinux session tcl"
77 REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
78
79 RDEPEND="~app-editors/vim-core-${PV}
80 >=app-admin/eselect-vi-1.1
81 >=sys-libs/ncurses-5.2-r2
82 x11-libs/libXext
83 x11-libs/libXt
84 acl? ( kernel_linux? ( sys-apps/acl ) )
85 !aqua? (
86 gtk? (
87 >=x11-libs/gtk+-2.6:2
88 x11-libs/libXft
89 gnome? ( >=gnome-base/libgnomeui-2.6 )
90 )
91 !gtk? (
92 motif? ( >=x11-libs/motif-2.3:0 )
93 !motif? (
94 neXt? ( x11-libs/neXtaw )
95 !neXt? ( x11-libs/libXaw )
96 )
97 )
98 )
99 cscope? ( dev-util/cscope )
100 lua? (
101 luajit? ( dev-lang/luajit )
102 !luajit? ( dev-lang/lua )
103 )
104 nls? ( virtual/libintl )
105 perl? ( dev-lang/perl )
106 python? ( ${PYTHON_DEPS} )
107 racket? ( dev-scheme/racket )
108 ruby? ( || ( dev-lang/ruby:2.0 dev-lang/ruby:1.9 dev-lang/ruby:1.8 ) )
109 selinux? ( sys-libs/libselinux )
110 session? ( x11-libs/libSM )
111 tcl? ( dev-lang/tcl )"
112 DEPEND="${RDEPEND}
113 >=app-admin/eselect-vi-1.1
114 dev-util/ctags
115 sys-devel/autoconf
116 virtual/pkgconfig
117 nls? ( sys-devel/gettext )"
118
119 S=${WORKDIR}/vim${VIM_VERSION/.}
120
121 pkg_setup() {
122 # people with broken alphabets run into trouble. bug 82186.
123 unset LANG LC_ALL
124 export LC_COLLATE="C"
125
126 # Gnome sandbox silliness. bug #114475.
127 mkdir -p "${T}"/home
128 export HOME="${T}"/home
129
130 use python && python-single-r1_pkg_setup
131 }
132
133 src_prepare() {
134 if [[ ${PV} != 9999* ]] ; then
135 if [[ -f "${WORKDIR}"/${VIM_ORG_PATCHES%.bz2} ]] ; then
136 # Apply any patches available from vim.org for this version
137 epatch "${WORKDIR}"/${VIM_ORG_PATCHES%.bz2}
138 fi
139 fi
140
141 # Fixup a script to use awk instead of nawk
142 sed -i '1s|.*|#!'"${EPREFIX}"'/usr/bin/awk -f|' "${S}"/runtime/tools/mve.awk \
143 || die "mve.awk sed failed"
144
145 # Read vimrc and gvimrc from /etc/vim
146 echo '#define SYS_VIMRC_FILE "'${EPREFIX}'/etc/vim/vimrc"' >> "${S}"/src/feature.h
147 echo '#define SYS_GVIMRC_FILE "'${EPREFIX}'/etc/vim/gvimrc"' >> "${S}"/src/feature.h
148
149 # Use exuberant ctags which installs as /usr/bin/exuberant-ctags.
150 # Hopefully this pattern won't break for a while at least.
151 # This fixes bug 29398 (27 Sep 2003 agriffis)
152 sed -i 's/\<ctags\("\| [-*.]\)/exuberant-&/g' \
153 "${S}"/runtime/doc/syntax.txt \
154 "${S}"/runtime/doc/tagsrch.txt \
155 "${S}"/runtime/doc/usr_29.txt \
156 "${S}"/runtime/menu.vim \
157 "${S}"/src/configure.in || die 'sed failed'
158
159 # Don't be fooled by /usr/include/libc.h. When found, vim thinks
160 # this is NeXT, but it's actually just a file in dev-libs/9libs
161 # This fixes bug 43885 (20 Mar 2004 agriffis)
162 sed -i 's/ libc\.h / /' "${S}"/src/configure.in || die 'sed failed'
163
164 # gcc on sparc32 has this, uhm, interesting problem with detecting EOF
165 # correctly. To avoid some really entertaining error messages about stuff
166 # which isn't even in the source file being invalid, we'll do some trickery
167 # to make the error never occur. bug 66162 (02 October 2004 ciaranm)
168 find "${S}" -name '*.c' | while read c ; do echo >> "$c" ; done
169
170 # Try to avoid sandbox problems. Bug #114475.
171 if [[ -d "${S}"/src/po ]] ; then
172 sed -i '/-S check.vim/s,..VIM.,ln -s $(VIM) testvim \; ./testvim -X,' \
173 "${S}"/src/po/Makefile
174 fi
175
176 if version_is_at_least 7.3.122 ; then
177 cp "${S}"/src/config.mk.dist "${S}"/src/auto/config.mk
178 fi
179
180 # Bug #378107 - Build properly with >=perl-core/ExtUtils-ParseXS-3.20.0
181 if version_is_at_least 7.3 ; then
182 sed -i "s:\\\$(PERLLIB)/ExtUtils/xsubpp:${EPREFIX}/usr/bin/xsubpp:" \
183 "${S}"/src/Makefile || die 'sed for ExtUtils-ParseXS failed'
184 fi
185 }
186
187 src_configure() {
188 local myconf
189
190 # Fix bug 37354: Disallow -funroll-all-loops on amd64
191 # Bug 57859 suggests that we want to do this for all archs
192 filter-flags -funroll-all-loops
193
194 # Fix bug 76331: -O3 causes problems, use -O2 instead. We'll do this for
195 # everyone since previous flag filtering bugs have turned out to affect
196 # multiple archs...
197 replace-flags -O3 -O2
198
199 # Fix bug 18245: Prevent "make" from the following chain:
200 # (1) Notice configure.in is newer than auto/configure
201 # (2) Rebuild auto/configure
202 # (3) Notice auto/configure is newer than auto/config.mk
203 # (4) Run ./configure (with wrong args) to remake auto/config.mk
204 sed -i 's/ auto.config.mk:/:/' src/Makefile || die "Makefile sed failed"
205 rm -f src/auto/configure
206 emake -j1 -C src autoconf
207
208 # This should fix a sandbox violation (see bug 24447). The hvc
209 # things are for ppc64, see bug 86433.
210 for file in /dev/pty/s* /dev/console /dev/hvc/* /dev/hvc* ; do
211 [[ -e ${file} ]] && addwrite $file
212 done
213
214 use debug && append-flags "-DDEBUG"
215
216 myconf="--with-features=huge --disable-gpm --enable-multibyte"
217 myconf+=" $(use_enable acl)"
218 myconf+=" $(use_enable cscope)"
219 myconf+=" $(use_enable lua luainterp)"
220 myconf+=" $(use_with luajit)"
221 myconf+=" $(use_enable netbeans)"
222 myconf+=" $(use_enable nls)"
223 myconf+=" $(use_enable perl perlinterp)"
224 myconf+=" $(use_enable racket mzschemeinterp)"
225 myconf+=" $(use_enable ruby rubyinterp)"
226 myconf+=" $(use_enable selinux)"
227 myconf+=" $(use_enable session xsmp)"
228 myconf+=" $(use_enable tcl tclinterp)"
229
230 if use python ; then
231 if [[ ${EPYTHON} == python3* ]] ; then
232 myconf+=" --enable-python3interp"
233 export vi_cv_path_python3="${PYTHON}"
234 else
235 myconf+=" --enable-pythoninterp"
236 export vi_cv_path_python="${PYTHON}"
237 fi
238 else
239 myconf+=" --disable-pythoninterp --disable-python3interp"
240 fi
241
242 # --with-features=huge forces on cscope even if we --disable it. We need
243 # to sed this out to avoid screwiness. (1 Sep 2004 ciaranm)
244 if ! use cscope ; then
245 sed -i '/# define FEAT_CSCOPE/d' src/feature.h || \
246 die "couldn't disable cscope"
247 fi
248
249 # gvim's GUI preference order is as follows:
250 # aqua CARBON (not tested)
251 # -aqua gtk gnome GNOME2
252 # -aqua gtk -gnome GTK2
253 # -aqua -gtk motif MOTIF
254 # -aqua -gtk -motif neXt NEXTAW
255 # -aqua -gtk -motif -neXt ATHENA
256 echo ; echo
257 if use aqua ; then
258 einfo "Building gvim with the Carbon GUI"
259 myconf+=" --enable-darwin --enable-gui=carbon"
260 elif use gtk ; then
261 myconf+=" --enable-gtk2-check"
262 if use gnome ; then
263 einfo "Building gvim with the Gnome 2 GUI"
264 myconf+=" --enable-gui=gnome2"
265 else
266 einfo "Building gvim with the gtk+-2 GUI"
267 myconf+=" --enable-gui=gtk2"
268 fi
269 elif use motif ; then
270 einfo "Building gvim with the MOTIF GUI"
271 myconf+=" --enable-gui=motif"
272 elif use neXt ; then
273 einfo "Building gvim with the neXtaw GUI"
274 myconf+=" --enable-gui=nextaw"
275 else
276 einfo "Building gvim with the Athena GUI"
277 myconf+=" --enable-gui=athena"
278 fi
279 echo ; echo
280
281 # Let Portage do the stripping. Some people like that.
282 export ac_cv_prog_STRIP="$(type -P true ) faking strip"
283
284 # Keep Gentoo Prefix env contained within the EPREFIX
285 use prefix && myconf+=" --without-local-dir"
286
287 if [[ ${CHOST} == *-interix* ]]; then
288 # avoid finding of this function, to avoid having to patch either
289 # configure or the source, which would be much more hackish.
290 # after all vim does it right, only interix is badly broken (again)
291 export ac_cv_func_sigaction=no
292 fi
293
294 econf \
295 --with-modified-by=Gentoo-${PVR} \
296 --with-vim-name=gvim --with-x \
297 ${myconf}
298 }
299
300 src_compile() {
301 # The following allows emake to be used
302 emake -j1 -C src auto/osdef.h objects
303
304 emake
305 }
306
307 src_test() {
308 echo
309 einfo "Starting vim tests. Several error messages will be shown"
310 einfo "while the tests run. This is normal behaviour and does not"
311 einfo "indicate a fault."
312 echo
313 ewarn "If the tests fail, your terminal may be left in a strange"
314 ewarn "state. Usually, running 'reset' will fix this."
315 echo
316
317 # Don't let vim talk to X
318 unset DISPLAY
319
320 # We've got to call make test from within testdir, since the Makefiles
321 # don't pass through our VIMPROG argument
322 cd "${S}"/src/testdir
323
324 # Test 49 won't work inside a portage environment
325 einfo "Test 49 isn't sandbox-friendly, so it will be skipped."
326 sed -i 's~test49.out~~g' Makefile
327
328 # We don't want to rebuild vim before running the tests
329 sed -i 's,: \$(VIMPROG),: ,' Makefile
330
331 # Make gvim not try to connect to X. See :help gui-x11-start
332 # in vim for how this evil trickery works.
333 ln -s "${S}"/src/gvim "${S}"/src/testvim
334
335 # Don't try to do the additional GUI test
336 emake -j1 VIMPROG=../testvim nongui
337 }
338
339 # Make convenience symlinks, hopefully without stepping on toes. Some
340 # of these links are "owned" by the vim ebuild when it is installed,
341 # but they might be good for gvim as well (see bug 45828)
342 update_vim_symlinks() {
343 has "${EAPI:-0}" 0 1 2 && use !prefix && EROOT="${ROOT}"
344 local f syms
345 syms="vimdiff rvim rview"
346 einfo "Calling eselect vi update..."
347 # Call this with --if-unset to respect user's choice (bug 187449)
348 eselect vi update --if-unset
349
350 # Make or remove convenience symlink, vim -> gvim
351 if [[ -f "${EROOT}"/usr/bin/gvim ]]; then
352 ln -s gvim "${EROOT}"/usr/bin/vim 2>/dev/null
353 elif [[ -L "${EROOT}"/usr/bin/vim && ! -f "${EROOT}"/usr/bin/vim ]]; then
354 rm "${EROOT}"/usr/bin/vim
355 fi
356
357 # Make or remove convenience symlinks to vim
358 if [[ -f "${EROOT}"/usr/bin/vim ]]; then
359 for f in ${syms}; do
360 ln -s vim "${EROOT}"/usr/bin/${f} 2>/dev/null
361 done
362 else
363 for f in ${syms}; do
364 if [[ -L "${EROOT}"/usr/bin/${f} && ! -f "${EROOT}"/usr/bin/${f} ]]; then
365 rm -f "${EROOT}"/usr/bin/${f}
366 fi
367 done
368 fi
369
370 # This will still break if you merge then remove the vi package,
371 # but there's only so much you can do, eh? Unfortunately we don't
372 # have triggers like are done in rpm-land.
373 }
374
375 src_install() {
376 local vimfiles=/usr/share/vim/vim${VIM_VERSION/.}
377
378 dobin src/gvim
379 dosym gvim /usr/bin/gvimdiff
380 dosym gvim /usr/bin/evim
381 dosym gvim /usr/bin/eview
382 dosym gvim /usr/bin/gview
383 dosym gvim /usr/bin/rgvim
384 dosym gvim /usr/bin/rgview
385
386 dodir /usr/share/man/man1
387 echo ".so vim.1" > "${ED}"/usr/share/man/man1/gvim.1
388 echo ".so vim.1" > "${ED}"/usr/share/man/man1/gview.1
389 echo ".so vimdiff.1" > "${ED}"/usr/share/man/man1/gvimdiff.1
390
391 insinto /etc/vim
392 newins "${FILESDIR}"/gvimrc-r1 gvimrc
393 eprefixify "${ED}"/etc/vim/gvimrc
394
395 newmenu "${FILESDIR}"/gvim.desktop-r2 gvim.desktop
396 doicon "${FILESDIR}"/gvim.xpm
397
398 # bash completion script, bug #79018.
399 newbashcomp "${FILESDIR}"/${PN}-completion ${PN}
400
401 # We shouldn't be installing the ex or view man page symlinks, as they
402 # are managed by eselect-vi
403 rm -f "${ED}"/usr/share/man/man1/{ex,view}.1
404 }
405
406 pkg_postinst() {
407 # Update documentation tags (from vim-doc.eclass)
408 update_vim_helptags
409
410 # Update fdo mime stuff, bug #78394
411 fdo-mime_mime_database_update
412
413 if [[ -z ${REPLACING_VERSIONS} ]] ; then
414 echo
415 elog "Vim 7 includes an integrated spell checker. You need to install"
416 elog "word list files before you can use it. There are ebuilds for"
417 elog "some of these named app-vim/vim-spell-*. If your language of"
418 elog "choice is not included, please consult vim-spell.eclass for"
419 elog "instructions on how to make a package."
420 echo
421 ewarn "Note that the English word lists are no longer installed by"
422 ewarn "default."
423 echo
424 fi
425
426 # Make convenience symlinks
427 update_vim_symlinks
428 }
429
430 pkg_postrm() {
431 # Update documentation tags (from vim-doc.eclass)
432 update_vim_helptags
433
434 # Update fdo mime stuff, bug #78394
435 fdo-mime_mime_database_update
436
437 # Make convenience symlinks
438 update_vim_symlinks
439 }