diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-07-24 10:38:24 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-07-25 22:59:00 +0100 |
commit | 960ddcc609b313d99d4e3deaa247a4b49c4f8d6a (patch) | |
tree | 64e845ce8b547f155fd3a7751170915cae7eca62 /meta/recipes-support/vim | |
parent | 25248acfdf92465b360ca464725b679ac5200d8d (diff) | |
download | poky-960ddcc609b313d99d4e3deaa247a4b49c4f8d6a.tar.gz |
vim: Upgrade 9.0.0021 -> 9.0.0063
Pulls in several CVE fixes.
Added a patch to avoid timer_create cross compile issue (and submitted upstream).
Also submit the race fix upstream.
We disable timer_create in the native case since some systems have it
and some don't so this makes us consistent.
(From OE-Core rev: d0c1de084c7ce030d47a428e4bbfbc4ce2996057)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-support/vim')
-rw-r--r-- | meta/recipes-support/vim/files/crosscompile.patch | 51 | ||||
-rw-r--r-- | meta/recipes-support/vim/files/racefix.patch | 12 | ||||
-rw-r--r-- | meta/recipes-support/vim/vim.inc | 9 |
3 files changed, 66 insertions, 6 deletions
diff --git a/meta/recipes-support/vim/files/crosscompile.patch b/meta/recipes-support/vim/files/crosscompile.patch new file mode 100644 index 0000000000..583d3fc7b0 --- /dev/null +++ b/meta/recipes-support/vim/files/crosscompile.patch | |||
@@ -0,0 +1,51 @@ | |||
1 | configure.ac: Fix create_timer solaris test for cross compiling | ||
2 | |||
3 | A runtime test was added for create_timer however this meant cross compiling | ||
4 | would no longer work. Allow a cache value to be specified to allow cross | ||
5 | compiling again. | ||
6 | |||
7 | Signed-off-by: Richard Purdie richard.purdie@linuxfoundation.org | ||
8 | |||
9 | Upstream-Status: Submitted [https://github.com/vim/vim/pull/10777] | ||
10 | |||
11 | Index: git/src/configure.ac | ||
12 | =================================================================== | ||
13 | --- git.orig/src/configure.ac | ||
14 | +++ git/src/configure.ac | ||
15 | @@ -3814,7 +3814,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM( | ||
16 | dnl Check for timer_create. It probably requires the 'rt' library. | ||
17 | dnl Run the program to find out if timer_create(CLOCK_MONOTONIC) actually | ||
18 | dnl works, on Solaris timer_create() exists but fails at runtime. | ||
19 | -AC_MSG_CHECKING([for timer_create]) | ||
20 | +AC_CACHE_CHECK([for timer_create], [vim_cv_timer_create], | ||
21 | save_LIBS="$LIBS" | ||
22 | LIBS="$LIBS -lrt" | ||
23 | AC_RUN_IFELSE([AC_LANG_PROGRAM([ | ||
24 | @@ -3831,7 +3831,7 @@ static void set_flag(union sigval sv) {} | ||
25 | if (timer_create(CLOCK_MONOTONIC, &action, &timer_id) < 0) | ||
26 | exit(1); // cannot create a monotonic timer | ||
27 | ])], | ||
28 | - AC_MSG_RESULT(yes; with -lrt); AC_DEFINE(HAVE_TIMER_CREATE), | ||
29 | + AC_MSG_NOTICE(timer_create with -lrt); vim_cv_timer_create=yes, | ||
30 | LIBS="$save_LIBS" | ||
31 | AC_RUN_IFELSE([AC_LANG_PROGRAM([ | ||
32 | #include<signal.h> | ||
33 | @@ -3847,8 +3847,16 @@ static void set_flag(union sigval sv) {} | ||
34 | if (timer_create(CLOCK_MONOTONIC, &action, &timer_id) < 0) | ||
35 | exit(1); // cannot create a monotonic timer | ||
36 | ])], | ||
37 | - AC_MSG_RESULT(yes); AC_DEFINE(HAVE_TIMER_CREATE), | ||
38 | - AC_MSG_RESULT(no))) | ||
39 | + vim_cv_timer_create=yes, | ||
40 | + vim_cv_timer_create=no), | ||
41 | + AC_MSG_ERROR(cross-compiling: please set 'vim_cv_timer_create') | ||
42 | + ) | ||
43 | +) | ||
44 | + | ||
45 | +if test "x$vim_cv_timer_create" = "xyes" ; then | ||
46 | + AC_DEFINE(HAVE_TIMER_CREATE) | ||
47 | +fi | ||
48 | + | ||
49 | |||
50 | AC_CACHE_CHECK([whether stat() ignores a trailing slash], [vim_cv_stat_ignores_slash], | ||
51 | [ | ||
diff --git a/meta/recipes-support/vim/files/racefix.patch b/meta/recipes-support/vim/files/racefix.patch index 1cb8fb442f..34bd37d650 100644 --- a/meta/recipes-support/vim/files/racefix.patch +++ b/meta/recipes-support/vim/files/racefix.patch | |||
@@ -1,9 +1,13 @@ | |||
1 | po/Makefile: Avoid race over LINGUAS file | ||
2 | |||
1 | The creation of the LINGUAS file is duplicated for each desktop file | 3 | The creation of the LINGUAS file is duplicated for each desktop file |
2 | which can lead the commands to race against each other. Rework | 4 | which can lead the commands to race against each other. One target might |
3 | the makefile to avoid this as the expense of leaving the file on disk. | 5 | remove it before another has been able to use it. Rework the makefile to |
6 | avoid this as the expense of leaving the file on disk. | ||
7 | |||
8 | Signed-off-by: Richard Purdie richard.purdie@linuxfoundation.org | ||
4 | 9 | ||
5 | Upstream-Status: Pending | 10 | Upstream-Status: Submitted [https://github.com/vim/vim/pull/10776] |
6 | RP 2021/2/15 | ||
7 | 11 | ||
8 | Index: git/src/po/Makefile | 12 | Index: git/src/po/Makefile |
9 | =================================================================== | 13 | =================================================================== |
diff --git a/meta/recipes-support/vim/vim.inc b/meta/recipes-support/vim/vim.inc index 7e2c624bc1..31229534e4 100644 --- a/meta/recipes-support/vim/vim.inc +++ b/meta/recipes-support/vim/vim.inc | |||
@@ -19,10 +19,11 @@ SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \ | |||
19 | file://0001-src-Makefile-improve-reproducibility.patch \ | 19 | file://0001-src-Makefile-improve-reproducibility.patch \ |
20 | file://no-path-adjust.patch \ | 20 | file://no-path-adjust.patch \ |
21 | file://racefix.patch \ | 21 | file://racefix.patch \ |
22 | file://crosscompile.patch \ | ||
22 | " | 23 | " |
23 | 24 | ||
24 | PV .= ".0021" | 25 | PV .= ".0063" |
25 | SRCREV = "5e59ea54c0c37c2f84770f068d95280069828774" | 26 | SRCREV = "d61efa50f8f5b9d9dcbc136705cc33874f0fdcb3" |
26 | 27 | ||
27 | # Remove when 8.3 is out | 28 | # Remove when 8.3 is out |
28 | UPSTREAM_VERSION_UNKNOWN = "1" | 29 | UPSTREAM_VERSION_UNKNOWN = "1" |
@@ -95,6 +96,10 @@ EXTRA_OECONF = " \ | |||
95 | STRIP=/bin/true \ | 96 | STRIP=/bin/true \ |
96 | " | 97 | " |
97 | 98 | ||
99 | # Some host distros don't have it, disable consistently | ||
100 | EXTRA_OECONF:append:class-native = " vim_cv_timer_create=no" | ||
101 | EXTRA_OECONF:append:class-target = " vim_cv_timer_create=yes" | ||
102 | |||
98 | do_install() { | 103 | do_install() { |
99 | autotools_do_install | 104 | autotools_do_install |
100 | 105 | ||