%define rescue %{nil} Summary: The VIM editor. Name: vim Version: 6.1 %define alpha %{nil} %define vimversion vim61%{alpha} %define rel 2 %if "%{alpha}" != "" Release: 0.%{alpha}.%{rel}%{rescue} %else Release: %{rel}%{rescue} %endif License: freeware Group: Applications/Editors Source0: ftp://ftp.vim.org/pub/vim/unix/vim-%{version}%{alpha}.tar.bz2 Source1: ftp://ftp.vim.org/pub/vim/unreleased/extra/vim-%{version}%{alpha}-lang.tar.bz2 Source2: gvim.desktop Source3: vimrc Patch0: vim-4.2-speed_t.patch Patch1: vim-5.1-vimnotvi.patch Patch2: vim-5.6a-paths.patch Patch3: vim-6.0-fixkeys.patch Patch4: vim-6.0-specsyntax.patch Patch5: vim-6.0r-crv.patch Patch10: xxd-locale.patch Patch11: vim-6.0-gcc31.patch Buildroot: %{_tmppath}/%{name}-%{version}-root Buildrequires: python-devel perl gtk+-devel Epoch: 1 %description VIM (VIsual editor iMproved) is an updated and improved version of the vi editor. Vi was the first real screen-based editor for UNIX, and is still very popular. VIM improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. %package common Summary: The common files needed by any version of the VIM editor. Group: Applications/Editors %description common VIM (VIsual editor iMproved) is an updated and improved version of the vi editor. Vi was the first real screen-based editor for UNIX, and is still very popular. VIM improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. The vim-common package contains files which every VIM binary will need in order to run. If you are installing any version of the VIM editor, you'll also need to the vim-common package installed. %package minimal Summary: A minimal version of the VIM editor. Group: Applications/Editors Requires: vim-common Obsoletes: vim %description minimal VIM (VIsual editor iMproved) is an updated and improved version of the vi editor. Vi was the first real screen-based editor for UNIX, and is still very popular. VIM improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. The vim-minimal package includes a minimal version of VIM, which is installed into /bin/vi for use when only the root partition is present. %package enhanced Summary: A version of the VIM editor which includes recent enhancements. Group: Applications/Editors Requires: vim-common Obsoletes: vim-color %description enhanced VIM (VIsual editor iMproved) is an updated and improved version of the vi editor. Vi was the first real screen-based editor for UNIX, and is still very popular. VIM improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. The vim-enhanced package contains a version of VIM with extra, recently introduced features like Python and Perl interpreters. Install the vim-enhanced package if you'd like to use a version of the VIM editor which includes recently added enhancements like interpreters for the Python and Perl scripting languages. You'll also need to install the vim-common package. %package X11 Summary: The VIM version of the vi editor for the X Window System. Group: Applications/Editors Requires: vim-common %description X11 VIM (VIsual editor iMproved) is an updated and improved version of the vi editor. Vi was the first real screen-based editor for UNIX, and is still very popular. VIM improves on vi by adding new features: multiple windows, multi-level undo, block highlighting and more. VIM-X11 is a version of the VIM editor which will run within the X Window System. If you install this package, you can run VIM as an X application with a full GUI interface and mouse support. Install the vim-X11 package if you'd like to try out a version of vi with graphics and mouse capabilities. You'll also need to install the vim-common package. %prep %setup -q -n %{vimversion} %patch0 -p1 -b .4.2 %patch1 -p1 -b .vim # fix rogue dependencies from sample code chmod -x runtime/tools/mve.awk %patch2 -p1 -b .paths find . -name \*.paths | xargs rm -f %patch3 -p1 -b .fixkeys %patch4 -p1 -b .highlite %patch5 -p1 -b .crv %patch10 -p1 -b .xxdloc %patch11 -p1 -b .gcc31 perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk %build %if "%{rescue}" == "" cd src perl -pi -e "s,\\\$VIMRUNTIME,/usr/share/vim/%{vimversion},g" os_unix.h perl -pi -e "s,\\\$VIM,/usr/share/vim/%{vimversion}/macros,g" os_unix.h export CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" export CXXFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" %configure --with-features=huge --enable-pythoninterp --enable-perlinterp --disable-tclinterp --with-x=yes --enable-gui=gnome --exec-prefix=/usr/X11R6 --enable-xim --enable-multibyte --enable-fontset perl -pi -e "s,-I/usr/local/include,,g" auto/config.mk # FIXME: remove once perl is fixed make cp vim gvim make clean %configure --prefix=/usr --with-features=huge --enable-pythoninterp \ --enable-perlinterp --disable-tclinterp --with-x=no --enable-gui=no \ --exec-prefix=/usr --enable-multibyte --enable-fontset perl -pi -e "s,-I/usr/local/include,,g" auto/config.mk # FIXME: remove once perl is fixed make cp vim enhanced-vim make clean %configure --prefix='${DEST}'/usr --with-features=tiny --with-x=no \ --disable-pythoninterp --disable-perlinterp --disable-tclinterp \ --with-tlib=termcap --enable-gui=no --disable-gpm --exec-prefix=/ perl -pi -e "s,-I/usr/local/include,,g" auto/config.mk # FIXME: remove once perl is fixed make %else # Rescue disk version - somewhat more featureful than vim-minimal, # but not quite a vim-enhanced %configure --prefix='${DEST}'/usr --with-features=small --with-x=no \ --disable-pythoninterp --disable-perlinterp --disable-tclinterp \ --with-tlib=ncurses --enable-gui=no --disable-gpm --exec-prefix=/ perl -pi -e "s,-I/usr/local/include,,g" auto/config.mk # FIXME: remove once perl is fixed perl -pi -e "s,-O2,-O2 -Os,g" auto/config.mk make %endif %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/bin mkdir -p $RPM_BUILD_ROOT/usr/{bin,share/vim,X11R6/bin} cd src %makeinstall BINDIR=/bin DESTDIR=$RPM_BUILD_ROOT mv $RPM_BUILD_ROOT/bin/xxd $RPM_BUILD_ROOT/usr/bin make installmacros DESTDIR=$RPM_BUILD_ROOT %if "%{rescue}" == "" install -s -m755 gvim $RPM_BUILD_ROOT/usr/X11R6/bin install -s -m755 enhanced-vim $RPM_BUILD_ROOT/usr/bin/vim %endif ( cd $RPM_BUILD_ROOT mv ./bin/vimtutor ./usr/bin mv ./bin/vim ./bin/vi rm -f ./bin/rvim ln -sf vi ./bin/view ln -sf vi ./bin/ex ln -sf vi ./bin/rvi ln -sf vi ./bin/rview %if "%{rescue}" == "" ln -sf vim ./usr/bin/ex ln -sf vim ./usr/bin/rvim ln -sf vim ./usr/bin/vimdiff ln -sf gvim ./usr/X11R6/bin/gview ln -sf gvim ./usr/X11R6/bin/gex ln -sf gvim ./usr/X11R6/bin/evim %else ln -sf vi ./bin/vim ln -sf vi ./usr/bin/ex %endif perl -pi -e "s,$RPM_BUILD_ROOT,," .%{_mandir}/man1/vim.1 .%{_mandir}/man1/vimtutor.1 rm -f .%{_mandir}/man1/rvim.1 ln -sf vim.1.gz .%{_mandir}/man1/vi.1.gz ln -sf vim.1.gz .%{_mandir}/man1/rvi.1.gz %if "%{rescue}" == "" ln -sf vim.1.gz .%{_mandir}/man1/gvim.1.gz ln -sf vim.1.gz .%{_mandir}/man1/evim.1.gz ln -sf vim.1.gz .%{_mandir}/man1/rvim.1.gz ln -sf vim.1.gz .%{_mandir}/man1/vimdiff.1.gz ln -sf gvim ./usr/X11R6/bin/vimx mkdir -p ./etc/X11/applnk/Applications cp %{SOURCE2} ./etc/X11/applnk/Applications/gvim.desktop %endif install -s -m644 %{SOURCE3} ./usr/share/vim/%{vimversion}/macros/ # Extract trick to translated menus tar xjvf %{SOURCE1} '*/runtime/lang/*' -C ./ ( cd %{vimversion}/runtime; tar cf - lang/* )| \ ( cd ./usr/share/vim/%{vimversion}/ ; tar xvf - ) # ja_JP.ujis is obsolete, ja_JP.eucJP is recommended. ( cd ./usr/share/vim/%{vimversion}/lang; \ ln -sf menu_ja_jp.ujis.vim menu_ja_jp.eucjp.vim ) ) # Dependency cleanups chmod 644 $RPM_BUILD_ROOT/usr/share/vim/%{vimversion}/doc/vim2html.pl \ $RPM_BUILD_ROOT/usr/share/vim/%{vimversion}/tools/*.pl \ $RPM_BUILD_ROOT/usr/share/vim/%{vimversion}/tools/vim132 chmod 644 ../runtime/doc/vim2html.pl %if "%{rescue}" == "" mkdir -p $RPM_BUILD_ROOT/etc/profile.d cat >$RPM_BUILD_ROOT/etc/profile.d/vim.sh <&1 >/dev/null; then # aliases are bash only alias vi=vim fi EOF cat >$RPM_BUILD_ROOT/etc/profile.d/vim.csh < 6.1-2 - Rebuild with new perl * Sun Mar 24 2002 Bernhard Rosenkraenzer 6.1-1 - Update to 6.1 (pure bugfix release) * Mon Mar 11 2002 Bernhard Rosenkraenzer 6.0-14 - Patchlevel 270 - Move vimtutor to /usr/bin and vim-enhanced (#60772) * Mon Jan 28 2002 Bernhard Rosenkraenzer 6.0-13 - Patchlevel 152 - Add symlinks for evim, rvim and vimdiff as described in vim docs * Tue Jan 22 2002 Bernhard Rosenkraenzer 6.0-12 - Patchlevel 149 * Tue Jan 22 2002 Bernhard Rosenkraenzer 6.0-11 - Patchlevel 147 * Thu Dec 27 2001 Bernhard Rosenkraenzer 6.0-9 - Patchlevel 101 * Mon Nov 26 2001 Bernhard Rosenkraenzer 6.0-8 - Patchlevel 93 * Mon Nov 5 2001 Bernhard Rosenkraenzer 6.0-7 - 6.0pl78 - Move desktop file (Utilities -> Applications), #53503 * Thu Nov 1 2001 Bernhard Rosenkraenzer 6.0-6 - 6.0pl61 * Wed Oct 31 2001 Bernhard Rosenkraenzer - 6.0pl44 * Mon Oct 29 2001 Bernhard Rosenkraenzer 6.0-5 - 6.0pl36 - Fix build with gcc 3.1 * Tue Oct 23 2001 Bernhard Rosenkraenzer 6.0-4 - 6.0pl21 - Don't show an error message when trying to "return" to a line that no longer exists (#54551) * Mon Oct 22 2001 Bernhard Rosenkraenzer 6.0-3 - 6.0pl19 * Sun Sep 30 2001 Bernhard Rosenkraenzer 6.0-2 - 6.0pl11 * Wed Sep 26 2001 Bernhard Rosenkraenzer 6.0-1 - 6.0 * Thu Sep 13 2001 Bernhard Rosenkraenzer 6.0-0.av.1 - 6.0av - Use -Os in rescue mode * Tue Sep 4 2001 Bernhard Rosenkraenzer 6.0-0.au.1 - Update to 6.0au - Allow rescue build * Tue Aug 28 2001 Bernhard Rosenkraenzer 6.0-0.at.1 - vim 6.0at - Increase epoch so we can update 7.2 systems * Fri Jun 1 2001 Bernhard Rosenkraenzer 6.0-0.33 - 6.0ah - Add a bash alias for vi=vim to the vim-enhanced package, too many people have complained about "missing features in vi even though I installed vim-enhanced". * Mon May 21 2001 Bernhard Rosenkraenzer 6.0-0.32 - 6.0ag - Make xxd locale aware (#37073) * Mon May 14 2001 Bernhard Rosenkraenzer 6.0-0.31 - 6.0af * Mon May 7 2001 Bernhard Rosenkraenzer 6.0-0.30 - 6.0ae * Mon Apr 30 2001 Bernhard Rosenkraenzer - 6.0ad - XML .xsd files are still xml files - use the right syntax highlighting (RFE#38224) * Sun Apr 15 2001 Bernhard Rosenkraenzer - 6.0aa * Fri Mar 30 2001 Bernhard Rosenkraenzer - Fix large file handling (#34061) * Mon Feb 26 2001 Trond Eivind Glomsrød - use %%{_tmppath} * Thu Feb 15 2001 Yukihiro Nakai - vimrc update for 6.0v * Mon Feb 12 2001 Bernhard Rosenkraenzer - Fix "lba32" keyword in lilo.conf syntax highlighting - Fix build with current glibc * Fri Feb 2 2001 Bernhard Rosenkraenzer - Fix crontab -e in vim-minimal (#25376) * Tue Jan 30 2001 Bernhard Rosenkraenzer - Fix segfault on q, up, up, q (Bug #25261) * Mon Jan 22 2001 Bernhard Rosenkraenzer - Set minlines=500 as default in PHP syntax highlighting (RFE #24374) - Don't symlink gvimrc to vimrc (Bug #22518) - Add symlinks gview -> gvim and gex -> gvim in -X11 (RFE #24394) - 6.0t * Mon Jan 15 2001 Bernhard Rosenkraenzer - More fixes to rpm specfile syntax highlighting: - recognize %%ifnarch - recognize "j" as a tar option - recognize %{_libdir} * Sun Jan 14 2001 Bernhard Rosenkraenzer - 6.0s * Wed Jan 3 2001 Bernhard Rosenkraenzer - 6.0r - Restore crv patch (this should fix #23135 for whoever is seeing it; I'm not). * Tue Dec 19 2000 Yukihiro Nakai - Symbolic link to menu_ja_jp.ujis.vim to menu_ja_jp.eucjp.vim * Mon Dec 18 2000 Yukihiro Nakai - Delete i18n patch (already implmented by author) - Add menu i18n patch - Update vimrc to support CJK - Add menu translations. * Sun Dec 17 2000 Bernhard Rosenkraenzer - 6.0q * Sun Dec 17 2000 Yukihiro Nakai - Add --enable-fontset to configure options. - Add i18nrc patch and resources. * Tue Dec 12 2000 Bernhard Rosenkraenzer - 6.0p, new ncurses * Mon Dec 11 2000 Karsten Hopp - rebuilt to fix permissions of /usr/share/doc/ and /usr/share/vim * Mon Nov 13 2000 Bernhard Rosenkraenzer - 6.0m * Thu Nov 9 2000 Bernhard Rosenkraenzer - 6.0l * Mon Oct 30 2000 Bernhard Rosenkraenzer - 6.0k * Tue Oct 17 2000 Bernhard Rosenkraenzer - 6.0i - add new desktop file w/ translations * Thu Aug 31 2000 Bernhard Rosenkraenzer - 6.0h * Wed Aug 30 2000 Bernhard Rosenkraenzer - 6.0g * Mon Aug 14 2000 Bernhard Rosenkraenzer - 6.0f * Wed Aug 9 2000 Bernhard Rosenkraenzer - 6.0e * Sun Jul 23 2000 Bernhard Rosenkraenzer - 6.0c - get rid of the DESTDIR patch, no longer needed * Sun Jul 16 2000 Bernhard Rosenkraenzer - 6.0b * Mon Jul 10 2000 Bernhard Rosenkraenzer - 6.0a * Sun Jun 25 2000 Bernhard Rosenkraenzer - 5.7 release - some more fixes to .spec file syntax highlighting rules... About time it recognizes %%{_mandir}... * Sun Jun 18 2000 Bernhard Rosenkraenzer - 5.7a * Sat Jun 3 2000 Bernhard Rosenkränzer - patchlevel 74 - add %%makeinstall macro recognition to .spec file syntax highlighting rules - fix up Makefiles * Fri Apr 14 2000 Bernhard Rosenkränzer - patchlevel 66 - fix compilation with perl 5.6.0 * Mon Mar 20 2000 Bernhard Rosenkränzer - patchlevel 12 * Tue Mar 07 2000 Preston Brown - fix home/end in vimrc (we did a term = rxvt, totally wrong) * Tue Feb 29 2000 Preston Brown - change F1-F4 keybindings for xterm builtin terminfo to match real terminfo * Thu Feb 17 2000 Bill Nottingham - kill autoindent * Mon Feb 07 2000 Preston Brown - wmconfig -> desktop * Sat Feb 5 2000 Bernhard Rosenkränzer - Patchlevel 11 - handle compressed man pages - fix man page symlinks * Wed Feb 2 2000 Bill Nottingham - eliminate dependencies on X in vim-enhanced, and ncurses/gpm in vim-minimal * Fri Jan 28 2000 Bill Nottingham - eliminate dependencies on csh and perl in vim-common * Wed Jan 19 2000 Bernhard Rosenrkänzer - Use awk, not nawk * Tue Jan 18 2000 Bernhard Rosenrkänzer - 5.6 - patch 5.6.001 - remove /usr/bin/vi - if you want vim, type vim * Tue Jan 11 2000 Bernhard Rosenkränzer - 5.6a - Remove dependency on nawk (introduced by base update) - some tweaks to make updating easier * Tue Nov 9 1999 Bernhard Rosenkränzer - 5.5 - fix path to vimrc * Tue Jul 27 1999 Michael K. Johnson - moved from athena to gtk widgets for X version - removed vim.1 from X11 filelist because X11 depends on vim-common anyway - fixed rogue dependencies from sample files * Tue Jul 27 1999 Jeff Johnson - update to 5.4. * Thu Jul 22 1999 Jeff Johnson - man page had buildroot pollution (#3629). * Thu Mar 25 1999 Preston Brown - with recent termcap/terminfo fixes, regular vim works in xterm/console - in color, so vim-color package removed. * Tue Mar 23 1999 Erik Troan - removed "set backupdir=/tmp/vim_backup" from default vimrc * Sun Mar 21 1999 Cristian Gafton - auto rebuild in the new build environment (release 5) * Thu Dec 17 1998 Michael Maher - built pacakge for 6.0 * Tue Sep 15 1998 Michael Maher - removed '--with-tlib=termcap' so that color-vim works * Wed Sep 2 1998 Jeff Johnson - update to 5.3. * Mon Aug 10 1998 Jeff Johnson - merge in Toshio's changes - color-vim: changed "--disable-p" to "--disable-perlinterp --with-tlib=termcap" - added minimal rvi/rview and man pages. - move Obsoletes to same package as executable. * Thu Aug 06 1998 Toshio Kuratomi - Break the package apart similar to the way the netscape package was broken down to handle navigator or communicator: The vim package is Obsolete, now there is vim-common with all the common files, and a package for each binary: vim-minimal (has /bin/vi compiled with no frills), vim-enhanced (has /usr/bin/vim with extra perl and python interpreters), and vim-X11 (has /usr/X11R6/bin/gvim compiled with GUI support.) - Enable the perl and python interpreters in the gui version (gvim). * Tue Jun 30 1998 Michael Maher - Fixed tutor help. - cvim package added. Thanks to Stevie Wills for finding this one :-) * Thu May 07 1998 Prospector System - translations modified for de, fr, tr * Fri May 01 1998 Donnie Barnes - added patch to turn off the "vi compatibility" by default. You can still get it via the -C command line option * Thu Apr 23 1998 Donnie Barnes - removed perl and python interpreters (sorry, but those don't belong in a /bin/vi and having two vi's seemed like overkill...complain to suggest@redhat.com if you care) * Fri Apr 17 1998 Donnie Barnes - fixed buildroot bug * Sat Apr 11 1998 Donnie Barnes - updated from 4.6 to 5.1 - moved to buildroot * Sun Nov 09 1997 Donnie Barnes - fixed missing man page * Wed Oct 22 1997 Donnie Barnes - added wmconfig entry to vim-X11 * Mon Oct 20 1997 Donnie Barnes - upgraded from 4.5 to 4.6 * Fri Jun 13 1997 Erik Troan - built against glibc * Tue Mar 25 1997 Michael K. Johnson - Upgraded to 4.5 - Added ex symlinks * Tue Mar 11 1997 Michael K. Johnson - Added view symlink.