diff options
author | Tim Harder <radhermit@gentoo.org> | 2013-08-13 21:52:03 +0000 |
---|---|---|
committer | Tim Harder <radhermit@gentoo.org> | 2013-08-13 21:52:03 +0000 |
commit | 0e30bdd225a882650362ef5f4d3504daee6a80af (patch) | |
tree | 0583c2a582475a2e22a058452b7b9140813c55c2 /app-editors | |
parent | Don't run xsltproc needlessly when installing for non native ABI wrt #480924 ... (diff) | |
download | historical-0e30bdd225a882650362ef5f4d3504daee6a80af.tar.gz historical-0e30bdd225a882650362ef5f4d3504daee6a80af.tar.bz2 historical-0e30bdd225a882650362ef5f4d3504daee6a80af.zip |
Version bump (bug #480512), rename livecd useflag to minimal (fixes bug #474516), migrate away from the vim eclass.
Package-Manager: portage-2.2.0/cvs/Linux x86_64
Manifest-Sign-Key: 0x4AB3E85B4F064CA3
Diffstat (limited to 'app-editors')
-rw-r--r-- | app-editors/vim-core/ChangeLog | 9 | ||||
-rw-r--r-- | app-editors/vim-core/Manifest | 20 | ||||
-rw-r--r-- | app-editors/vim-core/vim-core-7.4.ebuild | 232 | ||||
-rw-r--r-- | app-editors/vim-core/vim-core-9999.ebuild | 229 |
4 files changed, 476 insertions, 14 deletions
diff --git a/app-editors/vim-core/ChangeLog b/app-editors/vim-core/ChangeLog index 4371bac90c30..9f6229e16c82 100644 --- a/app-editors/vim-core/ChangeLog +++ b/app-editors/vim-core/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-editors/vim-core # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/vim-core/ChangeLog,v 1.422 2013/07/20 05:17:30 radhermit Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-editors/vim-core/ChangeLog,v 1.423 2013/08/13 21:51:54 radhermit Exp $ + +*vim-core-7.4 (13 Aug 2013) + + 13 Aug 2013; Tim Harder <radhermit@gentoo.org> +vim-core-7.4.ebuild, + vim-core-9999.ebuild: + Version bump (bug #480512), rename livecd useflag to minimal (fixes bug + #474516), migrate away from the vim eclass. 20 Jul 2013; Tim Harder <radhermit@gentoo.org> vim-core-9999.ebuild: Update VIM_VERSION. diff --git a/app-editors/vim-core/Manifest b/app-editors/vim-core/Manifest index 4f8bc5032ca3..356265d240b9 100644 --- a/app-editors/vim-core/Manifest +++ b/app-editors/vim-core/Manifest @@ -5,6 +5,7 @@ AUX vimrc-r3 6047 SHA256 ec156b3f51aadbf20ad17248d918e61153f08fb14402c05b1255042 AUX vimrc-r4 6919 SHA256 9c59acc4c486a2aca5c6e5e297f13521a8ec57ebd540ec9ab846112fbb3e5c39 SHA512 f4ea9d2865e400d9b205ee8924b1152fa38434d1b73c67bcfceda18f737db8c8763701e12a3608465ef5409e74bfe6b5581a500577c826a16f3112bea49d63a9 WHIRLPOOL 7c7263db7b219cb845e15968c268c25614610696d6e5b6c508662b30640392aeb9f823ef4f74873ad2785dd354eb32ea612794ddab896f63bd4a24c53b38f182 AUX xxd-completion 461 SHA256 580064ca4db3ac149fd89c743bd9946241220c211721f978f7a3ef97b3c171df SHA512 fc92426ea657e86ff765aa5a60736cdc70db938156dd8946db0a30c54d3f557bd8af421f1713bd750e779ccacd73f8f290a12a5e71ed48259fe1e6dece2de19c WHIRLPOOL 65324afb44612f1dd8f8850b7caa8524cff055d83aaad74c5b5030787463d0a95dbe0ce1b91c1a7b7f3e6954db3c0608ac2a2e1e75572af94e83758237b18447 DIST vim-7.3.tar.bz2 9080692 SHA256 5c5d5d6e07f1bbc49b6fe3906ff8a7e39b049928b68195b38e3e3d347100221d SHA512 5560351fb005aae0be435a59de0218a8b4f494c8211a026838e8735a98d5010c395b9da6ec8c1ea31c75a94da7c6071f3eb0b7e5426f5beb75cc0d56ddb8d5b2 WHIRLPOOL 4ae549b9c6dcac34a676fa27dc1fb51e925d874fba932817eed8aeff56ad94d2dc4314219a94876b70776263575e1577bd80fb60a019bbd784c96ed74a5df822 +DIST vim-7.4.tar.bz2 9843297 SHA256 d0f5a6d2c439f02d97fa21bd9121f4c5abb1f6cd8b5a79d3ca82867495734ade SHA512 65d55da556ee283a364b376d251b70e430b7a157bb5a8ee89565060ff9937907966d416cffd33f701b3314d0fdf16efe00065f66bc8459469f5ae2f713418e0e WHIRLPOOL 914fc2c4fd485196410d853990bb5cc4c0071bc36dc0794655ec05cc0b5f7d2971dea780cc7293fcfbd4495a30a7437a3b1e33a2b6795c10a9f05a2eac3ca6f4 DIST vim-core-7.3-gentoo-patches-r1.tar.bz2 4672 SHA256 8bd628a2376f5b5c38cb7bc12c8fb4fe70bb4b92df274a5c11c7838b4dfc9a23 SHA512 c2c704d576c7d1a36aab637f4f571da38869f0f1b2e5690c9e3fd1dad07c19c23080cb80a7ae47652186304deed86143e18812344df5d39dfbce9b9597b0a274 WHIRLPOOL 51bd5a2d57c6223b67cfd1f3aa896d188ea70ee476955ff54d18ad87b069ee78e0014d888b94142adf471527d2c311dc13261b5c0cb5976f6ffac87c64c83ee1 DIST vim-core-7.3-gentoo-patches-r2.tar.bz2 3063 SHA256 cba8a43aea20457b9177be978ac875155288e6e83f05a3193f5dd381d56ec3c4 SHA512 0f4c12057dec787e10d38c3581181b7fe28f032fbc131674a37904afe196938b2e2de8611ee49c9f817cbf9ece5a537edb048a82442aad01500f6e2ad2617968 WHIRLPOOL 0c3cdf536b2ad9d1470fd78f5256b198470e864d05125c67a70e0de873cf2df353769750e7f41c8db0fb56a12a38ea7aa02e27278c1d216b7419cb213618baa6 DIST vim-core-7.3-gentoo-patches-r3.tar.bz2 3379 SHA256 2e0b38221b69d13c43cafb8c71f5be322785b12168278541a6006378c722e650 SHA512 7bebe548d1f65309f022bd459eb10364300cef9363298bf492c960730865b30b789392b123803fd3c3a5a3fb8543b9a83535c593b587a3e1f00290e9d2295714 WHIRLPOOL e75285549df9f4a9fa49cac19f0592ff4e5c87a07075dedd59f4806a104147bd9259de3e714b81b6d91bbbec9613c5f8dc3308649c8a38914cf29db22d539ac1 @@ -47,17 +48,18 @@ EBUILD vim-core-7.3.646.ebuild 992 SHA256 7038e6a166239a3ed97059e69d773ee76d3b0a EBUILD vim-core-7.3.762.ebuild 981 SHA256 90dc7fe6f060aa0832fb14635707c51bef58dea713fef0e1b475299ece29d3fa SHA512 b413a8c456ac6f1f0974701c05729ecde3ab3919e60b993ed4aa064f20abfbdaf1d556b588e6575708438fd5c94bba0576a5725e9c8346783684166db83f554d WHIRLPOOL 63b8bc9acc28d07a8eb180c5a88510cd59b570d318b24f437a16c32f2430cb3eaf5b3f298734c1e249b82f937c36bd8fa8095154c31f5184b59f2c2fd9bc5261 EBUILD vim-core-7.3.905.ebuild 1054 SHA256 ed1055a936450ad9a334bf226cd0246f7b7cae184f402388da1d2b925f1f27d3 SHA512 3f7db5b96318cec5d29196450a143fb3761a0b1840fed93969addf86601a9035e5f843c7a681593e93adb65550977330a1e375dd676422cfee667feb1a2b7452 WHIRLPOOL 93f39652c6580cdd7f7313592c6498f6a4a5377247df52e110a780bd92ccb8e90f3549c4c8b6c97c52f9149611e0bd6e43b2bea760ed7b6187d4f428afa89472 EBUILD vim-core-7.3.931.ebuild 1045 SHA256 f4961ff7d7ac5dd5489faac899de2e21f30adfc8456c07f5927c3178283064c2 SHA512 750441bf0fc65f4358a4eb8c638f5f2412a86108ae059c8e057b645be9740049e561528aabcf325893eca3b90610a2964ee19d8fc0f750d972a21d08f7bf2387 WHIRLPOOL b1a79a17a0c7ab9167b2af25c1598e5ed37d36732d90747221b3a5749541fc52158ad5db14e03de46d7f9d67e637c8856ef460a976a27615662fc276e72e0a64 -EBUILD vim-core-9999.ebuild 331 SHA256 904d6d4f76df18076a051ad3842cafe86656428db0c0cd4b6e3933a1eabd3795 SHA512 26d62220f7c641f7cdae4173aefe1c8101c7afaca1264e5d5f4c187af4f681f4ea7c56b3c38bf9702f55ffa4298873499061dcfccda7ecca15b0ebbbf1fd00a2 WHIRLPOOL d3a38f529b40f9d6815ba9506893c44062a107065868ad3babdd87e5cb4f58c3395a463140460626fdc961f839db30450312ae91949ea7d9a273ddcef6a2e907 -MISC ChangeLog 56809 SHA256 9aa1f9a703c8683a8418231d1e23b379264607abc47e3a7e79f080057baa5286 SHA512 4aa1b2de403d602bb576ab7c532b9d7198579b69e8e362cb01ebaf34f4436ca06cc992a34e80072981a7e50d322f9e1955011f54e9deecc2ae06ea92331a7f91 WHIRLPOOL 938ec2885df75b4f467d0fecaf20e969ab2780e122bde890813b1d06fb4e1dec582fb9481d367ce826f4167c1b4b059997a05296a12a146532d38a2a672e5677 +EBUILD vim-core-7.4.ebuild 7362 SHA256 b686130f538c155e4db89763c2c28351d5ba2b9d6dd3a7d64d5a6e45727652e2 SHA512 c36616a3c1fd3c2abc10fc965b921889e5b40514a87d9998d5a3b9c1bd55e1b9f9a7158669f2ed793a58e74b69cdb194acced99a1e9656dfeabf93be4f0df415 WHIRLPOOL d8c79b2e6f1c27a82dcbba4ec659c5add41399a989dac881e77f7f8ba831f7879a5d4b20b0c31736ffc14023887241454365a1179b641a7ea65454e63bb4a9a3 +EBUILD vim-core-9999.ebuild 7361 SHA256 5cb26c32e124c274b56e369a1b19dc8c9067cbc184fa651b00b2b34f2c2ed9e6 SHA512 ee3e663b65ec4a165b41a899d86728adbfd0ede4530e36ebfe76526929afade3da1278c8b642d155fd4c2e229901e5b49a7c9228b5ae61d1bbe3a669fc7b5628 WHIRLPOOL 59402df3b3796768978e17b151e4e43f437c13377ef14a58129c3ba9b0bbd3a6b03a6d7983f9cd9980cff0ee595e5881af86c8fd3208593a5062a4f943cef9f2 +MISC ChangeLog 57054 SHA256 476aa0aea3368e96f8e8ef12e40c77c2f812748ee18f7d5e4842a598bee1e9d7 SHA512 9d3677007b7aa12b39d11db1bc9a3e7757a7cad4bfb0f169ab82900b0b6e6f3c80d602d68dc4b65029d3a67d9c735a6cf22df43a0338fbd24fa3378232038aa4 WHIRLPOOL b2f34c884b2155351aaecce71fa4a621af052e0e33297343b0be1ebbdc409d0cf97fc8dda7c1e5ef5ccc234e16dff79a7da51cdcc41964e1a99931aefb88e2dd MISC metadata.xml 156 SHA256 64d20c782589b423a6e75ba6fff7edead1ec8fbae742d27dd57f5299e8328500 SHA512 7dc1d902106e794e1a12bde5dcacb8b7143584cba9c61e72ac5728dd952663144c1b0efc949fbbc9fcec03b396b5e060e8263eaad7d70cd82d6d5b350c62f0c1 WHIRLPOOL 4381a5d144e783e5979d394720b32f7d95818a8571f748e72c5ece965c4e0375b1aec0c34f6f506a9f9fc255f1b69a220fdb74d1dbb8aabc92ec48afa44ab883 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (GNU/Linux) -iQEcBAEBCAAGBQJR6h1uAAoJEEqz6FtPBkyj3K4IALm96hgQqkoveSq5wTr8EvoX -U/Vy/ekW98YFoSyKp6a9iWD4sDAuHq9lwDBNCykGgss7RFKa77iD7s8Z1W3GoJ2F -/dH+0zHJuBiZO5YyFDnvb5PE00IAzgBOSCGgI6fcXGDoTDFwTYW85jiHodflyulm -vTtzF22CnJ/TKlpIE5daBAb+oR/ws9fa/3ljhupyPvDE81+eSG7CqIZM6ctQ4lp7 -lYDG8TLHubhntr92HwQm3A+wZnmt8T9XruBlI8w6Z70kyYV3T4Ka6hGDbKkXqZ0S -rI8NwYkIGoFo2WZYAnrIzQxj2qUjCKzUvwco8mVvXuZKJghOBpkGUt3I4DhTjXI= -=rd/z +iQEcBAEBCAAGBQJSCqp/AAoJEEqz6FtPBkyjnRsIAJHIBJbYrqPzxrhD2+6rql7p +F0lMCL1xn7seVUYe7+erw404eEcssVKtZKVrPYVN2viHZGD+CdsxnU6LZVpMx/r+ +B9bnFNXN2kNBw8t9O2QQEQJCfYmpjGmiPVsUoRI1E9Eg89o5OkP/u9UzJj11Rx/o +LrX8zP/QGiakTst+JF6H+1KYzpvYt2ndOjCbb3b5Z0mRNBFYl7MHK4wkrabITkVE +hd9+W8UNThhAX37ior1qqz1nQjkfzak2Zcu6u9IHz/YXfEcXZD2mKiZCCdBykHVY +zT1X+z5jQ8ZBU5r7S34IZmxVSiaPWw4gR6OJOffigBmdC6vTKFGmlQdxK5r7O8U= +=cjlD -----END PGP SIGNATURE----- diff --git a/app-editors/vim-core/vim-core-7.4.ebuild b/app-editors/vim-core/vim-core-7.4.ebuild new file mode 100644 index 000000000000..52df293d2e32 --- /dev/null +++ b/app-editors/vim-core/vim-core-7.4.ebuild @@ -0,0 +1,232 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-editors/vim-core/vim-core-7.4.ebuild,v 1.1 2013/08/13 21:51:54 radhermit Exp $ + +EAPI=5 +VIM_VERSION="7.4" +inherit eutils vim-doc flag-o-matic versionator bash-completion-r1 prefix + +if [[ ${PV} == 9999* ]] ; then + inherit mercurial + EHG_REPO_URI="https://vim.googlecode.com/hg/" + EHG_PROJECT="vim" +else + VIM_ORG_PATCHES="vim-patches-${PV}.patch.bz2" + + SRC_URI="ftp://ftp.vim.org/pub/vim/unix/vim-${VIM_VERSION}.tar.bz2 + http://dev.gentoo.org/~radhermit/vim/${PN}-7.3-gentoo-patches-r3.tar.bz2" + #http://dev.gentoo.org/~radhermit/vim/${VIM_ORG_PATCHES}" + KEYWORDS="~alpha ~amd64 ~arm ~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 and gvim shared files" +HOMEPAGE="http://www.vim.org/" + +SLOT="0" +LICENSE="vim" +IUSE="nls acl minimal" + +DEPEND="sys-devel/autoconf" + +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_PATCHES%.bz2} ]] ; then + # Apply any patches available from vim.org for this version + epatch "${WORKDIR}"/${VIM_ORG_PATCHES%.bz2} + fi + + if [[ -d "${WORKDIR}"/gentoo/patches-core/ ]]; then + # Patches for vim-core only (runtime/*) + EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" \ + epatch "${WORKDIR}"/gentoo/patches-core/ + 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" + + # Patch to build with ruby-1.8.0_pre5 and following + sed -i 's/defout/stdout/g' "${S}"/src/if_ruby.c + + # 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 -e \ + '/-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 +} + +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 + + # 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} \ + --with-features=tiny \ + --enable-gui=no \ + --without-x \ + --disable-darwin \ + --disable-perlinterp \ + --disable-pythoninterp \ + --disable-rubyinterp \ + --disable-gpm \ + --disable-selinux \ + $(use_enable nls) \ + $(use_enable acl) \ + ${myconf} +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake tools +} + +src_test() { :; } + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + dodir /usr/{bin,share/{man/man1,vim}} + cd src || die "cd src failed" + emake \ + installruntime \ + installmanlinks \ + installmacros \ + installtutor \ + installtutorbin \ + installtools \ + install-languages \ + install-icons \ + DESTDIR="${D}" \ + BINDIR="${EPREFIX}"/usr/bin \ + MANDIR="${EPREFIX}"/usr/share/man \ + DATADIR="${EPREFIX}"/usr/share + + keepdir ${vimfiles}/keymap + + # default vimrc is installed by vim-core since it applies to + # both vim and gvim + insinto /etc/vim/ + newins "${FILESDIR}"/vimrc-r4 vimrc + eprefixify "${ED}"/etc/vim/vimrc + + if use minimal ; then + # To save space, install only a subset of the files. + # Helps minimalize the livecd, bug 65144. + eshopts_push -s extglob + + rm -fr "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} + rm -fr "${ED}${vimfiles}"/{macros,print,tools,tutor} + rm "${ED}"/usr/bin/vimtutor + + local keep_colors="default" + ignore=$(rm -fr "${ED}${vimfiles}"/colors/!(${keep_colors}).vim ) + + local keep_syntax="conf|crontab|fstab|inittab|resolv|sshdconfig" + # tinkering with the next line might make bad things happen ... + keep_syntax="${keep_syntax}|syntax|nosyntax|synload" + ignore=$(rm -fr "${ED}${vimfiles}"/syntax/!(${keep_syntax}).vim ) + + eshopts_pop + fi + + # These files might have slight security issues, so we won't + # install them. See bug #77841. We don't mind if these don't + # exist. + rm "${ED}${vimfiles}"/tools/{vimspell.sh,tcltags} 2>/dev/null + + newbashcomp "${FILESDIR}"/xxd-completion xxd + + # 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 +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags +} diff --git a/app-editors/vim-core/vim-core-9999.ebuild b/app-editors/vim-core/vim-core-9999.ebuild index e8b994e7427d..4f180097e90f 100644 --- a/app-editors/vim-core/vim-core-9999.ebuild +++ b/app-editors/vim-core/vim-core-9999.ebuild @@ -1,11 +1,232 @@ # Copyright 1999-2013 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-editors/vim-core/vim-core-9999.ebuild,v 1.2 2013/07/20 05:17:30 radhermit Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-editors/vim-core/vim-core-9999.ebuild,v 1.3 2013/08/13 21:51:54 radhermit Exp $ EAPI=5 -VIM_VERSION="7.4a" -inherit vim +VIM_VERSION="7.4" +inherit eutils vim-doc flag-o-matic versionator bash-completion-r1 prefix -VIMRC_FILE_SUFFIX="-r4" +if [[ ${PV} == 9999* ]] ; then + inherit mercurial + EHG_REPO_URI="https://vim.googlecode.com/hg/" + EHG_PROJECT="vim" +else + VIM_ORG_PATCHES="vim-patches-${PV}.patch.bz2" + + SRC_URI="ftp://ftp.vim.org/pub/vim/unix/vim-${VIM_VERSION}.tar.bz2 + http://dev.gentoo.org/~radhermit/vim/${PN}-7.3-gentoo-patches-r3.tar.bz2 + http://dev.gentoo.org/~radhermit/vim/${VIM_ORG_PATCHES}" + KEYWORDS="~alpha ~amd64 ~arm ~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 and gvim shared files" +HOMEPAGE="http://www.vim.org/" + +SLOT="0" +LICENSE="vim" +IUSE="nls acl minimal" + +DEPEND="sys-devel/autoconf" + +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_PATCHES%.bz2} ]] ; then + # Apply any patches available from vim.org for this version + epatch "${WORKDIR}"/${VIM_ORG_PATCHES%.bz2} + fi + + if [[ -d "${WORKDIR}"/gentoo/patches-core/ ]]; then + # Patches for vim-core only (runtime/*) + EPATCH_SUFFIX="patch" EPATCH_FORCE="yes" \ + epatch "${WORKDIR}"/gentoo/patches-core/ + 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" + + # Patch to build with ruby-1.8.0_pre5 and following + sed -i 's/defout/stdout/g' "${S}"/src/if_ruby.c + + # 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 -e \ + '/-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 +} + +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 + + # 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} \ + --with-features=tiny \ + --enable-gui=no \ + --without-x \ + --disable-darwin \ + --disable-perlinterp \ + --disable-pythoninterp \ + --disable-rubyinterp \ + --disable-gpm \ + --disable-selinux \ + $(use_enable nls) \ + $(use_enable acl) \ + ${myconf} +} + +src_compile() { + # The following allows emake to be used + emake -j1 -C src auto/osdef.h objects + + emake tools +} + +src_test() { :; } + +src_install() { + local vimfiles=/usr/share/vim/vim${VIM_VERSION/.} + + dodir /usr/{bin,share/{man/man1,vim}} + cd src || die "cd src failed" + emake \ + installruntime \ + installmanlinks \ + installmacros \ + installtutor \ + installtutorbin \ + installtools \ + install-languages \ + install-icons \ + DESTDIR="${D}" \ + BINDIR="${EPREFIX}"/usr/bin \ + MANDIR="${EPREFIX}"/usr/share/man \ + DATADIR="${EPREFIX}"/usr/share + + keepdir ${vimfiles}/keymap + + # default vimrc is installed by vim-core since it applies to + # both vim and gvim + insinto /etc/vim/ + newins "${FILESDIR}"/vimrc-r4 vimrc + eprefixify "${ED}"/etc/vim/vimrc + + if use minimal ; then + # To save space, install only a subset of the files. + # Helps minimalize the livecd, bug 65144. + eshopts_push -s extglob + + rm -fr "${ED}${vimfiles}"/{compiler,doc,ftplugin,indent} + rm -fr "${ED}${vimfiles}"/{macros,print,tools,tutor} + rm "${ED}"/usr/bin/vimtutor + + local keep_colors="default" + ignore=$(rm -fr "${ED}${vimfiles}"/colors/!(${keep_colors}).vim ) + + local keep_syntax="conf|crontab|fstab|inittab|resolv|sshdconfig" + # tinkering with the next line might make bad things happen ... + keep_syntax="${keep_syntax}|syntax|nosyntax|synload" + ignore=$(rm -fr "${ED}${vimfiles}"/syntax/!(${keep_syntax}).vim ) + + eshopts_pop + fi + + # These files might have slight security issues, so we won't + # install them. See bug #77841. We don't mind if these don't + # exist. + rm "${ED}${vimfiles}"/tools/{vimspell.sh,tcltags} 2>/dev/null + + newbashcomp "${FILESDIR}"/xxd-completion xxd + + # 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 +} + +pkg_postrm() { + # Update documentation tags (from vim-doc.eclass) + update_vim_helptags +} |