From a52f36cbb87e0a02e57e039e023eaf52c9b56500 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Tue, 28 Jul 2020 14:22:08 -0700 Subject: [PATCH] vim: update to 8.2 Removed multibyte options. They must now be enabled. Refreshed patches. Commented out autowrite as requested in https://github.com/openwrt/packages/pull/12177 Signed-off-by: Rosen Penev --- utils/vim/Makefile | 11 ++--- utils/vim/files/vimrc | 2 +- utils/vim/files/vimrc.full | 2 +- ...ompilation-date-in-SOURCE_DATE_EPOCH.patch | 44 +++++++++++-------- .../002-remove_helptags_generation.patch | 7 ++- utils/vim/patches/003-CVE-2019-12735.patch | 15 ------- 6 files changed, 37 insertions(+), 44 deletions(-) delete mode 100644 utils/vim/patches/003-CVE-2019-12735.patch diff --git a/utils/vim/Makefile b/utils/vim/Makefile index 3a0a5ff7b0..4400798764 100644 --- a/utils/vim/Makefile +++ b/utils/vim/Makefile @@ -8,13 +8,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:=vim -PKG_VERSION:=8.1 -PKG_RELEASE:=6 -VIMVER:=81 +PKG_VERSION:=8.2 +PKG_RELEASE:=1 +VIMVER:=82 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 PKG_SOURCE_URL:=http://ftp.vim.org/pub/vim/unix -PKG_HASH:=8b69fbd01c877dd8ecbbeca1dc66e5e927228d631ac4c2174b9307eb5c827c86 +PKG_HASH:=f087f821831b4fece16a0461d574ccd55a8279f64d635510a1e10225966ced3b PKG_MAINTAINER:=Marko Ratkaj PKG_CPE_ID:=cpe:/a:vim:vim @@ -156,7 +156,6 @@ ifneq ($(CONFIG_PACKAGE_vim),) define Build/Compile/vim $(call Build/Configure/Default, \ --with-features=tiny \ - --disable-multibyte \ ) +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ DESTDIR="$(PKG_INSTALL_DIR)" all @@ -168,7 +167,6 @@ ifneq ($(CONFIG_PACKAGE_vim-full),) define Build/Compile/vim-full $(call Build/Configure/Default, \ --with-features=normal \ - --enable-multibyte \ ) +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ DESTDIR="$(PKG_INSTALL_DIR)" all @@ -180,7 +178,6 @@ ifneq ($(CONFIG_PACKAGE_vim-fuller),) define Build/Compile/vim-fuller $(call Build/Configure/Default, \ --with-features=big \ - --enable-multibyte \ ) +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) \ DESTDIR="$(PKG_INSTALL_DIR)" all diff --git a/utils/vim/files/vimrc b/utils/vim/files/vimrc index b8cea29385..d744cfed8a 100644 --- a/utils/vim/files/vimrc +++ b/utils/vim/files/vimrc @@ -1,7 +1,7 @@ set showcmd " show (partial) command in status line set showmatch " show matching brackets set incsearch " incremental search -set autowrite " automatically save before commands like :next and :make +"set autowrite " automatically save before commands like :next and :make set nocompatible " use vim defaults instead of 100% vi compatibility set backspace=indent,eol,start " more powerful backspacing set autoindent " always set autoindenting on diff --git a/utils/vim/files/vimrc.full b/utils/vim/files/vimrc.full index 99f737e843..5cd36691a0 100644 --- a/utils/vim/files/vimrc.full +++ b/utils/vim/files/vimrc.full @@ -1,7 +1,7 @@ set showcmd " show (partial) command in status line set showmatch " show matching brackets set incsearch " incremental search -set autowrite " automatically save before commands like :next and :make +"set autowrite " automatically save before commands like :next and :make set nocompatible " use Vim defaults instead of 100% vi compatibility set backspace=indent,eol,start " more powerful backspacing set autoindent " always set autoindenting on diff --git a/utils/vim/patches/001-support-defining-compilation-date-in-SOURCE_DATE_EPOCH.patch b/utils/vim/patches/001-support-defining-compilation-date-in-SOURCE_DATE_EPOCH.patch index 75f1a7995a..cb429860a1 100644 --- a/utils/vim/patches/001-support-defining-compilation-date-in-SOURCE_DATE_EPOCH.patch +++ b/utils/vim/patches/001-support-defining-compilation-date-in-SOURCE_DATE_EPOCH.patch @@ -19,11 +19,11 @@ preprocessor's __DATE__/__TIME__ symbols will be used. --- src/config.h.in | 3 +++ src/configure.ac | 10 ++++++++++ - src/version.c | 6 ++++++ - 3 files changed, 19 insertions(+) + src/version.c | 8 ++++++++ + 3 files changed, 21 insertions(+) diff --git a/src/config.h.in b/src/config.h.in -index e692d40..d3aa1a2 100644 +index 5c8c7e5..436a0b7 100644 --- a/src/config.h.in +++ b/src/config.h.in @@ -30,6 +30,9 @@ @@ -37,12 +37,12 @@ index e692d40..d3aa1a2 100644 #undef HAVE_ATTRIBUTE_UNUSED diff --git a/src/configure.ac b/src/configure.ac -index e287124..5a16797 100644 +index 8751b2e..cd43387 100644 --- a/src/configure.ac +++ b/src/configure.ac -@@ -29,6 +29,16 @@ dnl in autoconf needs it, where it uses STDC_HEADERS. - AC_HEADER_STDC - AC_HEADER_SYS_WAIT +@@ -62,6 +62,16 @@ if test x"$ac_cv_prog_cc_c99" != xno; then + fi + fi +dnl If $SOURCE_DATE_EPOCH is present in the environment, use that as the +dnl "compiled" timestamp in :version's output. Attempt to get the formatted @@ -54,15 +54,15 @@ index e287124..5a16797 100644 + AC_DEFINE_UNQUOTED(BUILD_DATE, ["$BUILD_DATE"]) +fi + - dnl Check that the C99 features that Vim uses are supported: - if test x"$ac_cv_prog_cc_c99" != xno; then - dnl If the compiler doesn't explicitly support C99, then check + dnl Check for the flag that fails if stuff are missing. + + AC_MSG_CHECKING(--enable-fail-if-missing argument) diff --git a/src/version.c b/src/version.c -index 65f5a4b..9422657 100644 +index c8361eb..e51c738 100644 --- a/src/version.c +++ b/src/version.c -@@ -44,11 +44,17 @@ make_version(void) - * VAX C can't catenate strings in the preprocessor. +@@ -44,9 +44,13 @@ init_longVersion(void) + * VAX C can't concatenate strings in the preprocessor. */ strcpy(longVersion, VIM_VERSION_LONG_DATE); +#ifdef BUILD_DATE @@ -74,8 +74,16 @@ index 65f5a4b..9422657 100644 +#endif strcat(longVersion, ")"); } -+# elif defined(BUILD_DATE) -+char *longVersion = VIM_VERSION_LONG_DATE BUILD_DATE ")"; - # else - char *longVersion = VIM_VERSION_LONG_DATE __DATE__ " " __TIME__ ")"; - # endif + +@@ -54,7 +58,11 @@ init_longVersion(void) + void + init_longVersion(void) + { ++#ifdef BUILD_DATE ++ char *date_time = BUILD_DATE; ++#else + char *date_time = __DATE__ " " __TIME__; ++#endif + char *msg = _("%s (%s, compiled %s)"); + size_t len = strlen(msg) + + strlen(VIM_VERSION_LONG_ONLY) diff --git a/utils/vim/patches/002-remove_helptags_generation.patch b/utils/vim/patches/002-remove_helptags_generation.patch index c3d77385a7..8ea06b55e0 100644 --- a/utils/vim/patches/002-remove_helptags_generation.patch +++ b/utils/vim/patches/002-remove_helptags_generation.patch @@ -1,10 +1,13 @@ --- a/runtime/doc/Makefile +++ b/runtime/doc/Makefile -@@ -317,7 +317,6 @@ all: tags vim.man evim.man vimdiff.man v +@@ -323,10 +323,6 @@ all: tags vim.man evim.man vimdiff.man vimtutor.man xxd.man $(CONVERTED) # Use Vim to generate the tags file. Can only be used when Vim has been # compiled and installed. Supports multiple languages. vimtags: $(DOCS) -- $(VIMEXE) -u NONE -esX -c "helptags ++t ." -c quit +- @if command -v $(VIMEXE); then \ +- $(VIMEXE) --clean -eX -u doctags.vim >/dev/null && \ +- echo "help tags updated"; \ +- else echo "vim executable $(VIMEXE) not found; help tags not updated"; fi # Use "doctags" to generate the tags file. Only works for English! tags: doctags $(DOCS) diff --git a/utils/vim/patches/003-CVE-2019-12735.patch b/utils/vim/patches/003-CVE-2019-12735.patch deleted file mode 100644 index bf29ce91d2..0000000000 --- a/utils/vim/patches/003-CVE-2019-12735.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- a/src/getchar.c -+++ b/src/getchar.c -@@ -1407,6 +1407,12 @@ openscript( - emsg(_(e_nesting)); - return; - } -+ -+ // Disallow sourcing a file in the sandbox, the commands would be executed -+ // later, possibly outside of the sandbox. -+ if (check_secure()) -+ return; -+ - #ifdef FEAT_EVAL - if (ignore_script) - /* Not reading from script, also don't open one. Warning message? */