From f845056a2599a591d2a00362c37ce474f1cb17fc40dba8c242d7b3702a9bead1 Mon Sep 17 00:00:00 2001 From: OBS User unknown Date: Tue, 24 Apr 2007 21:36:59 +0000 Subject: [PATCH] OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/vim?expand=0&rev=9 --- missing-vim-client | 3 ++ vim.changes | 11 ++++++ vim.spec | 84 ++++++++++++++++++++++++++++++++++------------ 3 files changed, 77 insertions(+), 21 deletions(-) create mode 100644 missing-vim-client diff --git a/missing-vim-client b/missing-vim-client new file mode 100644 index 0000000..3795632 --- /dev/null +++ b/missing-vim-client @@ -0,0 +1,3 @@ +#!/bin/sh +echo "You do not have a valid vim binary package installed. Please install either \"vim\", \"vim-enhanced\" or \"gvim\"." >&2 +exit 1 diff --git a/vim.changes b/vim.changes index e7e3820..f6fc96b 100644 --- a/vim.changes +++ b/vim.changes @@ -1,3 +1,14 @@ +------------------------------------------------------------------- +Mon Apr 23 13:48:24 CEST 2007 - mrueckert@suse.de + +- another run on the package layout. this should finally work with + all package manager. although it will allow you to install vim-base + without a vim_client package. +- added %{_datadir}/vim/current/tools/missing-vim-client: + this script will be used as the default binary if only vim-base + is installed. this avoids dangling symlinks and gives the user + an hint how to solve the problem. + ------------------------------------------------------------------- Thu Apr 5 16:58:46 CEST 2007 - mkoenig@suse.de diff --git a/vim.spec b/vim.spec index 06aa0a0..3454652 100644 --- a/vim.spec +++ b/vim.spec @@ -12,7 +12,7 @@ Name: vim Version: 7.0 -Release: 61 +Release: 64 # License: Other License(s), see package Group: Productivity/Editors/Vi @@ -23,8 +23,10 @@ BuildRequires: db-devel gettext-devel gpm gtk2-devel libacl-devel ncurses-devel %define pkg_version 7.0 %define official_ptchlvl 188 %define VIM_SUBDIR vim70 +# %define make make VIMRCLOC=/etc VIMRUNTIMEDIR=/usr/share/vim/current MAKE="make -e" %{?jobs:-j%jobs} -%define vim_prereq %{name} = %{version} +# +%define vim_prereq %{name}-base = %{version} %if 0%{?with_splitted_gvim} %define gvim_prereq g%{name}-base = %{version} %else @@ -33,13 +35,14 @@ BuildRequires: db-devel gettext-devel gpm gtk2-devel libacl-devel ncurses-devel # PreReq: sh-utils fileutils PreReq: update-alternatives -Requires: vim_client +PreReq: %{vim_prereq} +# +Provides: vim_client +Provides: vi_clone +# %if 0%{?suse_version} >= 1010 Recommends: vim-data = %{version} %endif -Obsoletes: vim7-base -Provides: vi_clone -Obsoletes: vim7 # URL: http://www.vim.org/ Source: ftp://ftp.vim.org/pub/vim/unix/vim-%{pkg_version}.tar.bz2 @@ -60,6 +63,7 @@ Source14: vitmp.1 Source15: vim132 Source16: gvim.png Source17: apparmor.vim +Source18: missing-vim-client Patch0: %{name}-7.0-official_patches_001-%{official_ptchlvl}.bz2 Patch1: %{name}-7.0-no_nb.patch Patch3: %{name}-7.0-filetype_ycp.patch @@ -129,15 +133,13 @@ Authors: -------- Bram Moolenaar -%package normal +%package base Group: Productivity/Editors/Vi PreReq: %{vim_prereq} -Provides: vim_client -#Obsoletes: vim < 7.0.0 # Summary: Vi IMproved -%description normal +%description base Vim (Vi IMproved) is an almost compatible version of the UNIX editor vi. Almost every possible command can be performed using only ASCII characters. Only the 'Q' command is missing (you do not need it). Many @@ -149,7 +151,9 @@ of UNIX. For SuSE Linux, Vim is used as /usr/bin/vi. -Package vim-normal contains the normal vim version. +Package vim contains the common files needed for all different vim +versions. You still need to select at least one of the vim-normal, +vim-enhanced or gvim packages. @@ -162,7 +166,6 @@ Group: Productivity/Editors/Vi PreReq: %{vim_prereq} Provides: vi_clone Provides: vim_client -Obsoletes: vim7-fat Obsoletes: vim-fat # Summary: A version of the VIM editor which includes recent enhancements @@ -190,7 +193,6 @@ Authors: Group: Productivity/Editors/Vi PreReq: %{vim_prereq} Requires: gvim_client -Obsoletes: vim7-base # Summary: dummy package for a subpackage only build in the buildservice @@ -209,7 +211,6 @@ PreReq: %{gvim_prereq} Provides: vim_client Provides: gvim_client Provides: vi_clone -Obsoletes: gvim7 # Summary: dummy package for a subpackage only build in the buildservice @@ -232,7 +233,6 @@ Provides: gvim-enhanced = %{version}-%{release} Provides: gvim_client Provides: vim_client Provides: vi_clone -Obsoletes: gvim7 # Summary: A GUI for Vi @@ -360,7 +360,7 @@ done %{__install} -D -m 0755 gvim-enhanced %{buildroot}%{_bindir}/gvim-enhanced %endif # compat symlinks -%{__ln_s} -f /bin/vim-normal %{buildroot}/bin/vim +%{__ln_s} -f %{_datadir}/vim/current/tools/missing-vim-client %{buildroot}/bin/vim %{__ln_s} -f /bin/vim %{buildroot}/bin/vi %{__ln_s} -f /bin/vim %{buildroot}%{_bindir}/vim %{__ln_s} -f /bin/vim %{buildroot}%{_bindir}/vi @@ -395,15 +395,22 @@ done %{__install} -D -m 0644 \ README.SuSE README.Japanese-XIM runtime/gvimrc_example.vim suse.gvimrc \ %{buildroot}%{_docdir}/gvim/ +# +# stupid helper +%{__install} -m 0755 %{S:18} %{buildroot}%{_datadir}/vim/current/tools/missing-vim-client %clean %{__rm} -rf %{buildroot} # link name | name | binary | priority -%post normal +%post /usr/sbin/update-alternatives --install \ /bin/vim vim /bin/vim-normal 15 +%post base +/usr/sbin/update-alternatives --install \ + /bin/vim vim %{_datadir}/vim/current/tools/missing-vim-client 0 + %post enhanced /usr/sbin/update-alternatives --install \ /bin/vim vim %{_bindir}/vim-enhanced 20 @@ -422,11 +429,16 @@ done %{_bindir}/gvim gvim %{_bindir}/gvim-enhanced 10 %endif -%preun normal +%preun if [ "$1" = 0 ] ; then /usr/sbin/update-alternatives --remove vim /bin/vim-normal fi +%preun base +if [ "$1" = 0 ] ; then + /usr/sbin/update-alternatives --remove vim %{_datadir}/vim/current/tools/missing-vim-client +fi + %preun enhanced if [ "$1" = 0 ] ; then /usr/sbin/update-alternatives --remove vim %{_bindir}/vim-enhanced @@ -444,11 +456,11 @@ if [ "$1" = 0 ] ; then fi %endif -%files normal +%files %defattr(-,root,root,-) /bin/vim-normal -%files +%files base %defattr(-,root,root,-) %config(noreplace) /etc/vimrc # symlinks @@ -522,6 +534,9 @@ fi %dir %{_datadir}/vim/%{VIM_SUBDIR}/syntax/ %dir %{_datadir}/vim/%{VIM_SUBDIR}/tools/ %dir %{_datadir}/vim/%{VIM_SUBDIR}/tutor/ +# stupid helper +# THIS BREAKS THE BUILD: %{_datadir}/vim/current/tools/missing-vim-client +%{_datadir}/vim/%{VIM_SUBDIR}/tools/missing-vim-client %files data %defattr(-,root,root,-) @@ -539,7 +554,26 @@ fi %{_datadir}/vim/%{VIM_SUBDIR}/print/* %{_datadir}/vim/%{VIM_SUBDIR}/spell/* %{_datadir}/vim/%{VIM_SUBDIR}/syntax/* -%{_datadir}/vim/%{VIM_SUBDIR}/tools/* +%{_datadir}/vim/%{VIM_SUBDIR}/tools/blink.c +%{_datadir}/vim/%{VIM_SUBDIR}/tools/ccfilter.1 +%{_datadir}/vim/%{VIM_SUBDIR}/tools/ccfilter.c +%{_datadir}/vim/%{VIM_SUBDIR}/tools/ccfilter_README.txt +%{_datadir}/vim/%{VIM_SUBDIR}/tools/efm_filter.pl +%{_datadir}/vim/%{VIM_SUBDIR}/tools/efm_filter.txt +%{_datadir}/vim/%{VIM_SUBDIR}/tools/efm_perl.pl +%{_datadir}/vim/%{VIM_SUBDIR}/tools/mve.awk +%{_datadir}/vim/%{VIM_SUBDIR}/tools/mve.txt +%{_datadir}/vim/%{VIM_SUBDIR}/tools/pltags.pl +%{_datadir}/vim/%{VIM_SUBDIR}/tools/README.txt +%{_datadir}/vim/%{VIM_SUBDIR}/tools/ref +%{_datadir}/vim/%{VIM_SUBDIR}/tools/shtags.1 +%{_datadir}/vim/%{VIM_SUBDIR}/tools/shtags.pl +%{_datadir}/vim/%{VIM_SUBDIR}/tools/vim132 +%{_datadir}/vim/%{VIM_SUBDIR}/tools/vimm +%{_datadir}/vim/%{VIM_SUBDIR}/tools/vimspell.sh +%{_datadir}/vim/%{VIM_SUBDIR}/tools/vimspell.txt +%{_datadir}/vim/%{VIM_SUBDIR}/tools/vim_vs_net.cmd +%{_datadir}/vim/%{VIM_SUBDIR}/tools/xcmdsrv_client.c %{_datadir}/vim/%{VIM_SUBDIR}/tutor/* %{_datadir}/vim/%{VIM_SUBDIR}/bugreport.vim %{_datadir}/vim/%{VIM_SUBDIR}/delmenu.vim @@ -594,6 +628,14 @@ fi %endif %changelog +* Mon Apr 23 2007 - mrueckert@suse.de +- another run on the package layout. this should finally work with + all package manager. although it will allow you to install vim-base + without a vim_client package. +- added %%{_datadir}/vim/current/tools/missing-vim-client: + this script will be used as the default binary if only vim-base + is installed. this avoids dangling symlinks and gives the user + an hint how to solve the problem. * Thu Apr 05 2007 - mkoenig@suse.de - Keep %%ghost for gvimrc only * Tue Apr 03 2007 - mkoenig@suse.de