diff options
| -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 | ||
