]> git.pld-linux.org Git - packages/vim.git/blobdiff - vim.spec
- up to 8.0.0022
[packages/vim.git] / vim.spec
index 8f2afff651d899e4bcba2f8e2093f8e6f68a2bf7..9bf17bc2c40ef85c666c0fe4d3a16d389c320610 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      161
+%define                ver             8.0.0022
 %define                rel             1
 Summary:       Vi IMproved - a Vi clone
 Summary(de.UTF-8):     VIsual editor iMproved
@@ -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: a1fcbd6d84b6ecf9c4ad061b4e24a9de
 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,9 +69,8 @@ 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
 Patch3:                %{name}-no_libelf.patch
 Patch4:                %{name}-egrep.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,9 +137,10 @@ 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
+BuildRequires: rpmbuild(macros) >= 1.718
 %if %{with ruby} || %{with heavy}
 BuildRequires: ruby-devel
 %endif
@@ -330,6 +332,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 +429,10 @@ Requires:  rpm-whiteout >= 1.3
 Requires:      vim-plugin-securemodelines
 Obsoletes:     gvim-bonobo
 Obsoletes:     vim-common
+Obsoletes:     vim-syntax-gitcommit
+Obsoletes:     vim-syntax-golang <= 1.3.3-1
+Obsoletes:     vim-syntax-lxc-docker <= 0.9.0-1
+Obsoletes:     vim-syntax-docker < 1.10.1
 Obsoletes:     vim-syntax-upstart
 %if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
@@ -500,8 +520,8 @@ zainstalować ten pakiet.
 Summary:       Context Vim documentation
 Summary(pl.UTF-8):     Dokumentacja kontekstowa do Vima
 Group:         Applications/Editors/Vim
+Requires(post,postun): /usr/bin/vim
 Requires:      %{name}-rt = %{epoch}:%{version}-%{release}
-Requires:      gzip
 %if "%{_rpmversion}" >= "5"
 BuildArch:     noarch
 %endif
@@ -718,13 +738,15 @@ 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
+
 %patch2 -p1
 %patch3 -p1
 %patch4 -p1
@@ -736,10 +758,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 +777,6 @@ jak również GUI GTK+2.
 %patch28 -p1
 %patch29 -p1
 %patch30 -p1
-%patch31 -p1
 %patch32 -p1
 %patch33 -p1
 %patch34 -p1
@@ -765,6 +784,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
@@ -787,6 +809,12 @@ cp -p %{SOURCE32} runtime/colors
 %{__mv} runtime/lang/menu_n{o,b}_no.latin1.vim
 %{__mv} runtime/lang/menu_n{o,b}_no.utf-8.vim
 
+# not info files but some binary files for Amiga:
+# Amiga Workbench drawer icon
+# Amiga Workbench project icon
+# Amiga Workbench tool icon
+find -name '*.info' | xargs rm -v
+
 %build
 cd src
 %{__autoconf}
@@ -806,9 +834,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 +866,7 @@ build vim.static \
        --disable-gui \
        --without-x \
        --with-features=small \
+       --disable-luainterp \
        --disable-perlinterp \
        --disable-pythoninterp \
        --disable-rubyinterp \
@@ -849,6 +879,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 +954,7 @@ build vim.heavy \
        --with-features=huge \
        --disable-gui \
        --without-x \
+       --enable-luainterp \
        --enable-perlinterp \
        --enable-pythoninterp \
        --enable-rubyinterp \
@@ -921,6 +967,7 @@ build gvim.heavy \
        --enable-gtk2-check \
        --enable-gnome-check \
        --with-x \
+       --enable-luainterp \
        --enable-perlinterp \
        --enable-pythoninterp \
        --enable-rubyinterp \
@@ -941,6 +988,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
@@ -954,13 +1004,6 @@ install -d $RPM_BUILD_ROOT{%{_sysconfdir}/vim,%{_bindir}} \
 
 %find_lang %{name}
 
-# use compressed docs, see :help gzip-helpfile
-%{__gzip} -9 $RPM_BUILD_ROOT%{_datadir}/vim/doc/*.txt
-%{__sed} -i -e 's=\(\t.*\.txt\)\t=\1.gz\t=' $RPM_BUILD_ROOT%{_datadir}/vim/doc/tags
-
-%{__gzip} -9 $RPM_BUILD_ROOT%{_datadir}/vim/doc/*.??x
-%{__sed} -i -e 's=\(\t.*\.plx\)\t=\1.gz\t=' $RPM_BUILD_ROOT%{_datadir}/vim/doc/tags-pl
-
 %{__rm} $RPM_BUILD_ROOT%{_bindir}/*
 
 %if %{with static}
@@ -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
@@ -1047,6 +1091,12 @@ rm -rf $RPM_BUILD_ROOT
 %postun
 [ ! -x /usr/bin/update-desktop-database ] || %update_desktop_database
 
+%post doc
+%vim_doc_helptags
+
+%postun doc
+%vim_doc_helptags
+
 %post -n gvim-athena
 [ ! -x /usr/bin/update-desktop-database ] || %update_desktop_database
 
@@ -1099,7 +1149,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 +1209,11 @@ 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
+# X11 colours definition for colour name lookup
+%{_datadir}/vim/rgb.txt
 
 %dir %{_datadir}/vim/vimfiles
 %dir %{_datadir}/vim/vimfiles/doc
@@ -1177,11 +1232,11 @@ 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
 
 %dir %{_datadir}/vim/autoload
+%{_datadir}/vim/autoload/*complete.vim
 %doc %{_datadir}/vim/autoload/README.txt
 
 %dir %{_datadir}/vim/ftdetect
@@ -1199,6 +1254,8 @@ rm -rf $RPM_BUILD_ROOT
 %doc %{_datadir}/vim/keymap/README.txt
 %{_datadir}/vim/keymap/*.vim
 
+%{_datadir}/vim/pack
+
 %dir %{_datadir}/vim/plugin
 %doc %{_datadir}/vim/plugin/README.txt
 
@@ -1277,6 +1334,7 @@ rm -rf $RPM_BUILD_ROOT
 %defattr(644,root,root,755)
 %{_datadir}/vim/plugin/*.vim
 %{_datadir}/vim/autoload/*.vim
+%exclude %{_datadir}/vim/autoload/*complete.vim
 %{_datadir}/vim/autoload/xml
 %{_datadir}/vim/compiler
 %{_datadir}/vim/macros
@@ -1290,12 +1348,10 @@ rm -rf $RPM_BUILD_ROOT
 %files doc
 %defattr(644,root,root,755)
 # English
-%{_datadir}/vim/doc/*.txt.gz
-%verify(not md5 mtime size) %{_datadir}/vim/doc/tags
+%{_datadir}/vim/doc/*.txt
 
 # Polish
-%lang(pl) %{_datadir}/vim/doc/*.plx.gz
-%lang(pl) %verify(not md5 mtime size) %{_datadir}/vim/doc/tags-pl
+%lang(pl) %{_datadir}/vim/doc/*.plx
 
 %files tutor
 %defattr(644,root,root,755)
@@ -1311,6 +1367,7 @@ rm -rf $RPM_BUILD_ROOT
 
 %lang(de) %{_datadir}/vim/tutor/tutor.bar
 %lang(de) %{_datadir}/vim/tutor/tutor.bar.utf-8
+%lang(bg) %{_datadir}/vim/tutor/tutor.bg.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
@@ -1355,10 +1412,13 @@ rm -rf $RPM_BUILD_ROOT
 %lang(sk) %{_datadir}/vim/tutor/tutor.sk
 %lang(sk) %{_datadir}/vim/tutor/tutor.sk.cp1250
 %lang(sk) %{_datadir}/vim/tutor/tutor.sk.utf-8
+%lang(sr) %{_datadir}/vim/tutor/tutor.sr.cp1250
+%lang(sr) %{_datadir}/vim/tutor/tutor.sr.utf-8
 %lang(sv) %{_datadir}/vim/tutor/tutor.sv
 %lang(sv) %{_datadir}/vim/tutor/tutor.sv.utf-8
 %lang(tr) %{_datadir}/vim/tutor/tutor.tr.iso9
 %lang(tr) %{_datadir}/vim/tutor/tutor.tr.utf-8
+%lang(uk) %{_datadir}/vim/tutor/tutor.uk.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
@@ -1383,6 +1443,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 0.104374 seconds and 4 git commands to generate.