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