]> git.pld-linux.org Git - packages/vim.git/blobdiff - vim.spec
cleanups, less macros
[packages/vim.git] / vim.spec
index 1725353a832e8398e4011181e7e99be5d9170960..71d824013377641ee402e854981cb4025b028f15 100644 (file)
--- a/vim.spec
+++ b/vim.spec
@@ -1,3 +1,5 @@
+# TODO
+# - use upstream gvim.desktop as base for our gvim .desktop files (more translations)
 #
 # Conditional build:
 %bcond_without static          # don't build static version
@@ -7,6 +9,7 @@
 %bcond_without gnome           # don't build GNOME-based gvim support
 %bcond_without heavy           # don't build heavy (full-featured GNOME-based gvim/vim)
 %bcond_without gui             # don't build any GUI
+%bcond_without light           # don't build light (minimal, ncurses, but not static)
 %bcond_with    perl            # with Perl interp in vim package
 %bcond_with    python          # with Python interp in vim package
 %bcond_with    ruby            # with Ruby interp in vim package
 %endif
 
 # Command to check for latest patch:
-# wget ftp://ftp.vim.org/pub/editors/vim/patches/7.3/MD5SUMS -O sources
+# wget ftp://ftp.vim.org/pub/editors/vim/patches/7.4/MD5SUMS -O sources
 # tail -n1 sources | awk '{print $2}'
-# VCS Commits: https://code.google.com/p/vim/source/browse/
+# VCS Commits: https://github.com/vim/vim/commits/master
 
-%define                ver             7.3
-%define                patchlevel      1251
-%define                rel             1
+%define                ver             7.4.979
+%define                rel             0.1
 Summary:       Vi IMproved - a Vi clone
 Summary(de.UTF-8):     VIsual editor iMproved
 Summary(es.UTF-8):     Editor visual incrementado
@@ -40,13 +42,15 @@ Summary(ru.UTF-8):  Visual editor IMproved - Единственно Правил
 Summary(tr.UTF-8):     Gelişmiş bir vi sürümü
 Summary(uk.UTF-8):     Visual editor IMproved - Єдино Вірний Редактор :)
 Name:          vim
-Version:       %{ver}.%{patchlevel}
+Version:       %{ver}
+# keep macro for release, otherwise people tend to increment Epoch instead
 Release:       %{rel}
 Epoch:         4
 License:       Charityware
 Group:         Applications/Editors/Vim
-Source0:       ftp://ftp.vim.org/pub/vim/unix/%{name}-%{ver}.tar.bz2
-# Source0-md5: 5b9510a17074e2b37d8bb38ae09edbf2
+#Source0:      ftp://ftp.vim.org/pub/vim/unix/%{name}-%{ver}.tar.bz2
+Source0:       https://github.com/vim/vim/archive/v%{ver}.tar.gz
+# Source0-md5: dc289e3d5dd1b25e1e976ce7e704b47c
 Source1:       http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
 # Source1-md5: bc4d1e115ca506ad7751b9bd2b773a7f
 Source2:       http://skawina.eu.org/mikolaj/usr_doc_pl.zip
@@ -56,13 +60,12 @@ Source11:   g%{name}-motif.desktop
 Source12:      g%{name}-gtk.desktop
 Source13:      g%{name}-gnome.desktop
 Source14:      %{name}.desktop
+Source15:      update-source.sh
 # syntax files
 # http://www.vim.org/scripts/script.php?script_id=1491 (0.7.5)
 Source20:      javascript.vim
 # http://www.vim.org/scripts/script.php?script_id=447 (20040206)
 Source22:      exim.vim
-# http://www.vim.org/scripts/script.php?script_id=1571 (0.9.7)
-Source23:      php.vim
 # color schemes
 # http://www.vim.org/scripts/script.php?script_id=415 (1.15)
 Source30:      zenburn.vim
@@ -72,7 +75,6 @@ Source31:     borland.vim
 Source32:      oceandeep.vim
 # http://www.vim.org/scripts/script.php?script_id=1464 (2.6.3)
 Source33:      moria.vim
-%patchset_source -f ftp://ftp.vim.org/pub/editors/vim/patches/%{ver}/%{ver}.%03g 1 %{patchlevel}
 Patch0:                %{name}-sysconfdir.patch
 Patch1:                %{name}-visual.patch
 Patch2:                %{name}-paths.patch
@@ -86,10 +88,8 @@ Patch9:              %{name}-modprobe.patch
 Patch10:       %{name}-doubleparenthesis.patch
 Patch11:       %{name}-syntax-fstab.patch
 Patch12:       010_all_%{name}-6.3-vixie.patch
-Patch13:       013_all_%{name}-7.0-cron-vars-79981.patch
 Patch14:       020_all_%{name}-7.0-fstab-tmpfs-size.patch
 Patch15:       021_all_%{name}-7.0-fstab-bogus-errors.patch
-Patch16:       024_all_%{name}-6.3-bash-83565.patch
 Patch17:       027_all_%{name}-7.0-automake-substitutions-93378.patch
 Patch18:       %{name}-smarty.patch
 Patch19:       %{name}-tutor-lessdeps.patch
@@ -98,29 +98,30 @@ Patch21:    %{name}-filetypes.patch
 Patch22:       %{name}-man_installation.patch
 Patch23:       %{name}-vimrc.patch
 Patch24:       %{name}-syntax-exports.patch
-Patch25:       %{name}-syntax-sshconfig.patch
-Patch102:      %{name}-gtkfilechooser.patch
-Patch104:      %{name}-home_etc.patch
-Patch105:      %{name}-autopaste.patch
-Patch106:      %{name}-ft-cron.patch
-Patch108:      %{name}-phpscript.patch
-Patch109:      %{name}-pam.patch
-Patch110:      %{name}-ft-bash.patch
-Patch112:      %{name}-localedir.patch
-Patch113:      %{name}-locales.patch
-Patch114:      %{name}-rtdir.patch
-Patch115:      %{name}-ft-mib.patch
-Patch116:      %{name}-ft-lib-udevrules.patch
-Patch117:      %{name}-ft-mysql.patch
-Patch118:      %{name}-ft-gyp.patch
+Patch25:       sudoers-include.patch
+Patch26:       %{name}-home_etc.patch
+Patch27:       %{name}-autopaste.patch
+Patch28:       %{name}-ft-cron.patch
+Patch29:       %{name}-phpscript.patch
+Patch30:       %{name}-pam.patch
+Patch32:       %{name}-localedir.patch
+Patch33:       %{name}-locales.patch
+Patch34:       %{name}-rtdir.patch
+Patch35:       %{name}-ft-mib.patch
+Patch36:       %{name}-ft-lib-udevrules.patch
+Patch37:       %{name}-ft-mysql.patch
+Patch38:       %{name}-ft-gyp.patch
+Patch39:       %{name}-revert-7.4.165-noundo.patch
+Patch40:       bug-512.patch
 URL:           http://www.vim.org/
 BuildRequires: acl-devel
 BuildRequires: autoconf
-BuildRequires: gettext-devel
 BuildRequires: gpm-devel
 %if "%{pld_release}" == "ac"
 %{?with_athena:BuildRequires:  XFree86-devel}
+BuildRequires: gettext-devel
 %else
+BuildRequires: gettext-tools
 %{?with_athena:BuildRequires:  xorg-lib-libXaw-devel}
 %endif
 %if %{with gtk} || %{with heavy}
@@ -130,14 +131,15 @@ BuildRequires:    gtk+2-devel >= 2:2.6.0
 %if %{with selinux} || %{with heavy}
 BuildRequires: libselinux-devel
 %endif
+%{?with_motif:BuildRequires:   motif-devel}
 BuildRequires: ncurses-devel
-%{?with_motif:BuildRequires:   openmotif-devel}
 BuildRequires: pkgconfig
 %if %{with perl} || %{with heavy}
 BuildRequires: perl-devel
 %endif
 %if %{with python} || %{with heavy}
 BuildRequires: python-devel
+BuildRequires: rpm-pythonprov
 %endif
 BuildRequires: rpm >= 4.4.9-56
 BuildRequires: rpmbuild(macros) >= 1.426
@@ -237,8 +239,8 @@ fleira.
 VIM (Vi IMproved) è una versione aggiornata e perfezionata dell'editor
 vi. Vi è stato il primo editor per UNIX realmente basato su video ed è
 ancora molto diffuso. VIM perfeziona vi aggiungendo nuove funzioni:
-finestre multiple, funzione \"annulla\" multilivello, evidenziazione
-dei blocchi e altro.
+finestre multiple, funzione "annulla" multilivello, evidenziazione dei
+blocchi e altro.
 
 %description -l pl.UTF-8
 Edytor tekstu podobny do Vi. Ważne ulepszenia: możliwość pracy w wielu
@@ -332,6 +334,40 @@ tartalmazza, amelyben benne van a Perl, Python, Ruby és Tcl támogatás.
 Pakiet ten dostarcza w pełni funkcjonalną wersję Vima, czyli
 zawierającą obsługę skryptów w językach Perl, Python, Ruby oraz Tcl.
 
+%package light
+Summary:       Minimal build of Vim
+Summary(pl.UTF-8):     Minimalna wersja vima
+Group:         Applications/Editors/Vim
+Provides:      vi-editor
+Provides:      vi
+Provides:      vim-editor = %{epoch}:%{version}-%{release}
+
+%description light
+This package provides light featured version of Vim.
+
+%description light -l pl.UTF-8
+Pakiet ten dostarcza minimalną wersję Vima.
+
+%package -n vimx
+Summary:       Vi IMproved - a Vi clone
+Summary(pl.UTF-8):     Vi IMproved - klon edytora Vi
+Group:         X11/Applications/Editors
+Requires:      %{name}-rt = %{epoch}:%{version}-%{release}
+Provides:      vi-editor
+Provides:      vi
+Provides:      vim-editor = %{epoch}:%{version}-%{release}
+Obsoletes:     vim-enhanced
+Obsoletes:     vim-ispell
+Obsoletes:     vim-plugin-multvals
+
+%description -n vimx
+This package provides console version of Vim, with support for basic
+X11 features like system clipboard.
+
+%description -n vimx -l pl.UTF-8
+Pakiet ten dostarcza konsolową wersję Vima, posiadającą wsparcie dla
+podstawowych funckcji X11, takich jak systemowy schowek.
+
 %package static
 Summary:       Statically linked Vim
 Summary(hu.UTF-8):     A Vim statikus verziója
@@ -395,6 +431,8 @@ Requires:   rpm-whiteout >= 1.3
 Requires:      vim-plugin-securemodelines
 Obsoletes:     gvim-bonobo
 Obsoletes:     vim-common
+Obsoletes:     vim-syntax-gitcommit
+Obsoletes:     vim-syntax-upstart
 %if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
 %endif
@@ -699,11 +737,7 @@ zawierającą obsługę skryptów w językach Perl, Python, Ruby oraz Tcl
 jak również GUI GTK+2.
 
 %prep
-%setup -q -n %{name}73
-
-# official patches
-%patchset_patch 1 %{patchlevel}
-
+%setup -q -n vim-%{ver}
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
@@ -717,10 +751,8 @@ jak również GUI GTK+2.
 %patch10 -p1
 %patch11 -p1
 %patch12 -p1
-%patch13 -p1
 %patch14 -p1
 %patch15 -p1
-%patch16 -p0
 %patch17 -p0
 %patch18 -p1
 %patch19 -p1
@@ -730,30 +762,26 @@ jak również GUI GTK+2.
 %patch23 -p1
 %patch24 -p1
 %patch25 -p1
-
-# home etc
-%{?with_home_etc:%patch104 -p1}
+%{?with_home_etc:%patch26 -p1}
 
 # autopaste patch - automatically switch to paste mode
 # when `really fast typing' situation happens
-%patch105 -p1
-
-%patch106 -p1
-
-%patch108 -p1
-%patch109 -p1
-%patch110 -p1
-%patch112 -p1
-%patch113 -p1
-%patch114 -p1
-%patch115 -p1
-%patch116 -p1
-%patch117 -p1
-%patch118 -p1
+%patch27 -p1
+%patch28 -p1
+%patch29 -p1
+%patch30 -p1
+%patch32 -p1
+%patch33 -p1
+%patch34 -p1
+%patch35 -p1
+%patch36 -p1
+%patch37 -p1
+%patch38 -p1
+%patch39 -p1
+%patch40 -p1
 
 cp -p %{SOURCE20} runtime/syntax
 cp -p %{SOURCE22} runtime/syntax
-cp -p %{SOURCE23} runtime/syntax
 cp -p %{SOURCE30} runtime/colors
 cp -p %{SOURCE31} runtime/colors
 cp -p %{SOURCE32} runtime/colors
@@ -792,7 +820,7 @@ build() {
                --with-tlib="ncursesw"
 %endif
 
-       %{__make} distclean
+       %{__make} -j1 distclean
        # add common options, can override (disable) if needed with args
        %configure \
                --%{!?with_perl:dis}%{?with_perl:en}able-perlinterp \
@@ -835,11 +863,30 @@ build vim.static \
 LDFLAGS="%{rpmldflags}"
 %endif
 
+%if %{with light}
+build vim.light \
+       --disable-gui \
+       --without-x \
+       --with-features=small \
+       --disable-perlinterp \
+       --disable-pythoninterp \
+       --disable-rubyinterp \
+       --disable-tclinterp \
+       --disable-cscope \
+       --disable-gpm \
+       --disable-nls
+%endif
+
 build vim.ncurses \
        --disable-gui \
        --without-x \
        --with-features=huge
 
+build vimx \
+       --disable-gui \
+       --with-x \
+       --with-features=huge
+
 %if %{with athena}
 build gvim.athena \
        --with-features=huge \
@@ -922,9 +969,13 @@ install -d $RPM_BUILD_ROOT{%{_sysconfdir}/vim,%{_bindir}} \
 %{__make} -j1 install \
        DESTDIR=$RPM_BUILD_ROOT
 
-# not supported locales added by 7.3.764
+# generic gvim from upstream, but we have bunch of subpackages
+%{__rm} $RPM_BUILD_ROOT%{_desktopdir}/gvim.desktop
+
+# not supported locales added by 7.3.764 or later
 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/cs.cp1250
 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ja.sjis
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ja.euc-jp
 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/pl.UTF-8
 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/pl.cp1250
 %{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ru.cp1251
@@ -950,6 +1001,7 @@ install -p src/bin/vim.static      $RPM_BUILD_ROOT/bin/vi
 install -p src/bin/vim.ncurses $RPM_BUILD_ROOT/bin/vi
 ln -sf /bin/vi         $RPM_BUILD_ROOT%{_bindir}/vim
 %endif
+install -p src/bin/vimx        $RPM_BUILD_ROOT%{_bindir}/vimx
 install -p src/xxd/xxd $RPM_BUILD_ROOT%{_bindir}/xxd
 install -p src/vimtutor        $RPM_BUILD_ROOT%{_bindir}/vimtutor
 
@@ -997,6 +1049,9 @@ cp -p %{SOURCE12}  $RPM_BUILD_ROOT%{_desktopdir}
 install -p src/bin/vim.heavy   $RPM_BUILD_ROOT%{_bindir}
 install -p src/bin/gvim.heavy  $RPM_BUILD_ROOT%{_bindir}
 %endif
+%if %{with light}
+install -p src/bin/vim.light   $RPM_BUILD_ROOT%{_bindir}
+%endif
 
 install -d $RPM_BUILD_ROOT%{_pixmapsdir}
 cp -p runtime/vim48x48.png $RPM_BUILD_ROOT%{_pixmapsdir}/vim.png
@@ -1069,6 +1124,9 @@ rm -rf $RPM_BUILD_ROOT
 %lang(it) %{_mandir}/it/man1/rvim.1*
 %lang(it) %{_mandir}/it/man1/vim.1*
 %lang(it) %{_mandir}/it/man1/vimdiff.1*
+%lang(ja) %{_mandir}/ja/man1/rvim.1*
+%lang(ja) %{_mandir}/ja/man1/vim.1*
+%lang(ja) %{_mandir}/ja/man1/vimdiff.1*
 %lang(pl) %{_mandir}/pl/man1/rvim.1*
 %lang(pl) %{_mandir}/pl/man1/vim.1*
 %lang(pl) %{_mandir}/pl/man1/vimdiff.1*
@@ -1105,6 +1163,9 @@ rm -rf $RPM_BUILD_ROOT
 %lang(it) %{_mandir}/it/man1/ex.1*
 %lang(it) %{_mandir}/it/man1/view.1*
 %lang(it) %{_mandir}/it/man1/rview.1*
+%lang(ja) %{_mandir}/ja/man1/ex.1*
+%lang(ja) %{_mandir}/ja/man1/view.1*
+%lang(ja) %{_mandir}/ja/man1/rview.1*
 %lang(pl) %{_mandir}/pl/man1/vi.1*
 %lang(pl) %{_mandir}/pl/man1/ex.1*
 %lang(pl) %{_mandir}/pl/man1/view.1*
@@ -1120,6 +1181,7 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man1/xxd.1*
 %lang(fr) %{_mandir}/fr/man1/xxd.1*
 %lang(it) %{_mandir}/it/man1/xxd.1*
+%lang(ja) %{_mandir}/ja/man1/xxd.1*
 %lang(pl) %{_mandir}/pl/man1/xxd.1*
 %lang(ru) %{_mandir}/ru/man1/xxd.1*
 
@@ -1130,6 +1192,10 @@ rm -rf $RPM_BUILD_ROOT
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vim/gvimrc
 
 %dir %{_datadir}/vim
+%dir %{_datadir}/vim/doc
+%verify(not md5 mtime size) %{_datadir}/vim/doc/tags
+%lang(pl) %verify(not md5 mtime size) %{_datadir}/vim/doc/tags-pl
+%verify(not md5 mtime size) %{_datadir}/vim/vimfiles/doc/tags
 
 %dir %{_datadir}/vim/vimfiles
 %dir %{_datadir}/vim/vimfiles/doc
@@ -1148,7 +1214,6 @@ rm -rf $RPM_BUILD_ROOT
 %dir %{_datadir}/vim/vimfiles/plugin
 %dir %{_datadir}/vim/vimfiles/spell
 %dir %{_datadir}/vim/vimfiles/syntax
-%verify(not md5 mtime size) %{_datadir}/vim/vimfiles/doc/tags
 
 %{_datadir}/vim/*.vim
 
@@ -1230,6 +1295,7 @@ rm -rf $RPM_BUILD_ROOT
 %lang(zh_TW) %{_datadir}/vim/lang/menu_*taiwan*
 
 %dir %{_datadir}/vim/spell
+%{_datadir}/vim/spell/spell.vim
 %lang(he) %{_datadir}/vim/spell/he.*
 %lang(yi) %{_datadir}/vim/spell/yi.*
 
@@ -1259,15 +1325,11 @@ rm -rf $RPM_BUILD_ROOT
 
 %files doc
 %defattr(644,root,root,755)
-%dir %{_datadir}/vim/doc
-
 # English
 %{_datadir}/vim/doc/*.txt.gz
-%verify(not md5 mtime size) %{_datadir}/vim/doc/tags
 
 # Polish
 %lang(pl) %{_datadir}/vim/doc/*.plx.gz
-%lang(pl) %verify(not md5 mtime size) %{_datadir}/vim/doc/tags-pl
 
 %files tutor
 %defattr(644,root,root,755)
@@ -1281,8 +1343,8 @@ rm -rf $RPM_BUILD_ROOT
 %lang(el) %{_datadir}/vim/tutor/README.el.cp737.txt
 %lang(el) %{_datadir}/vim/tutor/README.el.txt
 
-%lang(bj) %{_datadir}/vim/tutor/tutor.bj
-%lang(bj) %{_datadir}/vim/tutor/tutor.bj.utf-8
+%lang(de) %{_datadir}/vim/tutor/tutor.bar
+%lang(de) %{_datadir}/vim/tutor/tutor.bar.utf-8
 %lang(ca) %{_datadir}/vim/tutor/tutor.ca
 %lang(ca) %{_datadir}/vim/tutor/tutor.ca.utf-8
 %lang(cs) %{_datadir}/vim/tutor/tutor.cs
@@ -1312,6 +1374,8 @@ rm -rf $RPM_BUILD_ROOT
 %lang(ja) %{_datadir}/vim/tutor/tutor.ja.utf-8
 %lang(ko) %{_datadir}/vim/tutor/tutor.ko.euc
 %lang(ko) %{_datadir}/vim/tutor/tutor.ko.utf-8
+%lang(nl) %{_datadir}/vim/tutor/tutor.nl
+%lang(nl) %{_datadir}/vim/tutor/tutor.nl.utf-8
 %lang(nb) %{_datadir}/vim/tutor/tutor.nb
 %lang(nb) %{_datadir}/vim/tutor/tutor.nb.utf-8
 %lang(pl) %{_datadir}/vim/tutor/tutor.pl
@@ -1330,22 +1394,35 @@ rm -rf $RPM_BUILD_ROOT
 %lang(tr) %{_datadir}/vim/tutor/tutor.tr.iso9
 %lang(tr) %{_datadir}/vim/tutor/tutor.tr.utf-8
 %lang(vi) %{_datadir}/vim/tutor/tutor.vi.utf-8
+%lang(zh_CN) %{_datadir}/vim/tutor/tutor.zh_cn.utf-8
 %lang(zh_TW) %{_datadir}/vim/tutor/tutor.zh.big5
 %lang(zh_TW) %{_datadir}/vim/tutor/tutor.zh.euc
 %lang(zh_TW) %{_datadir}/vim/tutor/tutor.zh.utf-8
+%lang(zh_TW) %{_datadir}/vim/tutor/tutor.zh_tw.utf-8
 
 %{_mandir}/man1/vimtutor.1*
 %lang(fr) %{_mandir}/fr/man1/vimtutor.1*
 %lang(it) %{_mandir}/it/man1/vimtutor.1*
+%lang(ja) %{_mandir}/ja/man1/vimtutor.1*
 %lang(pl) %{_mandir}/pl/man1/vimtutor.1*
 %lang(ru) %{_mandir}/ru/man1/vimtutor.1*
 
+%files -n vimx
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/vimx
+
 %if %{with heavy}
 %files heavy
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_bindir}/vim.heavy
 %endif
 
+%if %{with light}
+%files light
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/vim.light
+%endif
+
 %files spell-en
 %defattr(644,root,root,755)
 %{_datadir}/vim/spell/en.*.*
@@ -1391,6 +1468,10 @@ rm -rf $RPM_BUILD_ROOT
 %lang(it) %{_mandir}/it/man1/evim.1*
 %lang(it) %{_mandir}/it/man1/gvi*
 %lang(it) %{_mandir}/it/man1/rgv*
+%lang(ja) %{_mandir}/ja/man1/eview.1*
+%lang(ja) %{_mandir}/ja/man1/evim.1*
+%lang(ja) %{_mandir}/ja/man1/gvi*
+%lang(ja) %{_mandir}/ja/man1/rgv*
 %lang(pl) %{_mandir}/pl/man1/eview.1*
 %lang(pl) %{_mandir}/pl/man1/evim.1*
 %lang(pl) %{_mandir}/pl/man1/gvi*
This page took 0.713581 seconds and 4 git commands to generate.