]> git.pld-linux.org Git - packages/vim.git/blobdiff - vim.spec
- add Lua support
[packages/vim.git] / vim.spec
index 6e2c3f6dd98f0b2f70bd21a5a8cc21a1c72e1de1..3c0813a9a9112fc6fb7b097cc07f79b2d812cbae 100644 (file)
--- a/vim.spec
+++ b/vim.spec
@@ -7,6 +7,8 @@
 %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    lua             # with Lua interp in vim package
 %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
 # Command to check for latest patch:
 # 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.4
-%define                patchlevel      182
-%define                rel             1
+%define                ver             7.4.979
+%define                rel             4
 Summary:       Vi IMproved - a Vi clone
 Summary(de.UTF-8):     VIsual editor iMproved
 Summary(es.UTF-8):     Editor visual incrementado
@@ -40,22 +41,19 @@ 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: 607e135c559be642f210094ad023dc65
+#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
 # Source2-md5: ff96284b1c913d55cf0877839b34d490
-Source10:      g%{name}-athena.desktop
-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)
@@ -71,7 +69,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
@@ -85,10 +82,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
@@ -103,7 +98,6 @@ Patch27:     %{name}-autopaste.patch
 Patch28:       %{name}-ft-cron.patch
 Patch29:       %{name}-phpscript.patch
 Patch30:       %{name}-pam.patch
-Patch31:       %{name}-ft-bash.patch
 Patch32:       %{name}-localedir.patch
 Patch33:       %{name}-locales.patch
 Patch34:       %{name}-rtdir.patch
@@ -111,14 +105,18 @@ 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:       desktop.patch
+Patch41:       %{name}-lua.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}
@@ -128,6 +126,9 @@ BuildRequires:      gtk+2-devel >= 2:2.6.0
 %if %{with selinux} || %{with heavy}
 BuildRequires: libselinux-devel
 %endif
+%if %{with lua} || %{with heavy}
+BuildRequires: lua52-devel
+%endif
 %{?with_motif:BuildRequires:   motif-devel}
 BuildRequires: ncurses-devel
 BuildRequires: pkgconfig
@@ -136,6 +137,7 @@ 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
@@ -168,6 +170,8 @@ Provides:   vim-editor = %{epoch}:%{version}-%{release}
 Obsoletes:     vim-enhanced
 Obsoletes:     vim-ispell
 Obsoletes:     vim-plugin-multvals
+Obsoletes:     vim-syntax-golang <= 1.3.3-1
+Obsoletes:     vim-syntax-lxc-docker <= 0.9.0-1
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 # configure redefines it to =1
@@ -330,6 +334,20 @@ 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
@@ -413,6 +431,7 @@ 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
@@ -718,10 +737,12 @@ 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}74
+%setup -q
 
-# official patches
-%patchset_patch 1 %{patchlevel}
+cp -p runtime/gvim.desktop gvim-athena.desktop
+cp -p runtime/gvim.desktop gvim-gnome.desktop
+cp -p runtime/gvim.desktop gvim-gtk.desktop
+cp -p runtime/gvim.desktop gvim-motif.desktop
 
 %patch0 -p1
 %patch1 -p1
@@ -736,10 +757,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
@@ -757,7 +776,6 @@ jak również GUI GTK+2.
 %patch28 -p1
 %patch29 -p1
 %patch30 -p1
-%patch31 -p1
 %patch32 -p1
 %patch33 -p1
 %patch34 -p1
@@ -765,6 +783,9 @@ jak również GUI GTK+2.
 %patch36 -p1
 %patch37 -p1
 %patch38 -p1
+%patch39 -p1
+%patch40 -p1
+%patch41 -p1
 
 cp -p %{SOURCE20} runtime/syntax
 cp -p %{SOURCE22} runtime/syntax
@@ -806,9 +827,10 @@ build() {
                --with-tlib="ncursesw"
 %endif
 
-       %{__make} distclean
+       %{__make} -j1 distclean
        # add common options, can override (disable) if needed with args
        %configure \
+               --%{!?with_lua:dis}%{?with_lua:en}able-luainterp \
                --%{!?with_perl:dis}%{?with_perl:en}able-perlinterp \
                --%{!?with_python:dis}%{?with_python:en}able-pythoninterp \
                --%{!?with_ruby:dis}%{?with_ruby:en}able-rubyinterp \
@@ -837,6 +859,7 @@ build vim.static \
        --disable-gui \
        --without-x \
        --with-features=small \
+       --disable-luainterp \
        --disable-perlinterp \
        --disable-pythoninterp \
        --disable-rubyinterp \
@@ -849,6 +872,21 @@ build vim.static \
 LDFLAGS="%{rpmldflags}"
 %endif
 
+%if %{with light}
+build vim.light \
+       --disable-gui \
+       --without-x \
+       --with-features=small \
+       --disable-luainterp \
+       --disable-perlinterp \
+       --disable-pythoninterp \
+       --disable-rubyinterp \
+       --disable-tclinterp \
+       --disable-cscope \
+       --disable-gpm \
+       --disable-nls
+%endif
+
 build vim.ncurses \
        --disable-gui \
        --without-x \
@@ -909,6 +947,7 @@ build vim.heavy \
        --with-features=huge \
        --disable-gui \
        --without-x \
+       --enable-luainterp \
        --enable-perlinterp \
        --enable-pythoninterp \
        --enable-rubyinterp \
@@ -921,6 +960,7 @@ build gvim.heavy \
        --enable-gtk2-check \
        --enable-gnome-check \
        --with-x \
+       --enable-luainterp \
        --enable-perlinterp \
        --enable-pythoninterp \
        --enable-rubyinterp \
@@ -941,6 +981,9 @@ install -d $RPM_BUILD_ROOT{%{_sysconfdir}/vim,%{_bindir}} \
 %{__make} -j1 install \
        DESTDIR=$RPM_BUILD_ROOT
 
+# 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
@@ -989,22 +1032,21 @@ ln -sf vi  $RPM_BUILD_ROOT/bin/ex
 ln -sf vi  $RPM_BUILD_ROOT/bin/view
 ln -sf vi  $RPM_BUILD_ROOT/bin/rview
 
-cp -p %{SOURCE14}      $RPM_BUILD_ROOT%{_desktopdir}
-
 %if %{with athena}
-install -p src/bin/gvim.athena $RPM_BUILD_ROOT%{_bindir}/gvim.athena
-cp -p %{SOURCE10}      $RPM_BUILD_ROOT%{_desktopdir}
+install -p src/bin/gvim.athena $RPM_BUILD_ROOT%{_bindir}/gvim.athena
+cp -p gvim-athena.desktop $RPM_BUILD_ROOT%{_desktopdir}
 %endif
 %if %{with motif}
-install -p src/bin/gvim.motif  $RPM_BUILD_ROOT%{_bindir}/gvim.motif
-cp -p %{SOURCE11}      $RPM_BUILD_ROOT%{_desktopdir}
+install -p src/bin/gvim.motif $RPM_BUILD_ROOT%{_bindir}/gvim.motif
+cp -p gvim-motif.desktop $RPM_BUILD_ROOT%{_desktopdir}
 %endif
 %if %{with gnome}
-install -p src/bin/gvim.gnome  $RPM_BUILD_ROOT%{_bindir}/gvim.gnome
-cp -p %{SOURCE13}      $RPM_BUILD_ROOT%{_desktopdir}
+install -p src/bin/gvim.gnome $RPM_BUILD_ROOT%{_bindir}/gvim.gnome
+cp -p gvim-gnome.desktop $RPM_BUILD_ROOT%{_desktopdir}
 %endif
 %if %{with gtk}
 install -p src/bin/gvim.gtk    $RPM_BUILD_ROOT%{_bindir}/gvim.gtk
+cp -p gvim-gtk.desktop $RPM_BUILD_ROOT%{_desktopdir}
 ln -sf gvim.gtk                $RPM_BUILD_ROOT%{_bindir}/gvim
 ln -sf gvim            $RPM_BUILD_ROOT%{_bindir}/eview
 ln -sf gvim            $RPM_BUILD_ROOT%{_bindir}/evim
@@ -1012,12 +1054,14 @@ ln -sf gvim             $RPM_BUILD_ROOT%{_bindir}/gview
 ln -sf gvim            $RPM_BUILD_ROOT%{_bindir}/gvimdiff
 ln -sf gvim            $RPM_BUILD_ROOT%{_bindir}/rgview
 ln -sf gvim            $RPM_BUILD_ROOT%{_bindir}/rgvim
-cp -p %{SOURCE12}      $RPM_BUILD_ROOT%{_desktopdir}
 %endif
 %if %{with heavy}
 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
@@ -1099,7 +1143,7 @@ rm -rf $RPM_BUILD_ROOT
 %lang(ru) %{_mandir}/ru/man1/rvim.1*
 %lang(ru) %{_mandir}/ru/man1/vim.1*
 %lang(ru) %{_mandir}/ru/man1/vimdiff.1*
-%{_desktopdir}/%{name}.desktop
+%{_desktopdir}/vim.desktop
 
 %if %{with static}
 %files static
@@ -1159,6 +1203,9 @@ rm -rf $RPM_BUILD_ROOT
 
 %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
@@ -1177,7 +1224,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
 
@@ -1291,11 +1337,9 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 # 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)
@@ -1383,6 +1427,12 @@ rm -rf $RPM_BUILD_ROOT
 %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.*.*
This page took 1.183932 seconds and 4 git commands to generate.