summaryrefslogtreecommitdiffstats
path: root/source/ap/vim
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/vim')
-rw-r--r--source/ap/vim/12575.patch239
-rwxr-xr-xsource/ap/vim/vim-gvim.SlackBuild3
-rwxr-xr-xsource/ap/vim/vim.SlackBuild3
3 files changed, 245 insertions, 0 deletions
diff --git a/source/ap/vim/12575.patch b/source/ap/vim/12575.patch
new file mode 100644
index 000000000..46f6000b4
--- /dev/null
+++ b/source/ap/vim/12575.patch
@@ -0,0 +1,239 @@
+From 51230c2eeb53a752b652a727c041dc82b0e95ac8 Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 08:55:47 +0200
+Subject: [PATCH 1/9] if_perl.xs: define version for a workaround
+
+---
+ src/if_perl.xs | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/if_perl.xs b/src/if_perl.xs
+index c69ed9ef1fb9..a86fda4d6c0f 100644
+--- a/src/if_perl.xs
++++ b/src/if_perl.xs
+@@ -40,7 +40,7 @@
+ /* Work around for perl-5.18.
+ * Don't include "perl\lib\CORE\inline.h" for now,
+ * include it after Perl_sv_free2 is defined. */
+-#ifdef DYNAMIC_PERL
++#if (PERL_REVISION == 5) && (PERL_VERSION == 18)
+ # define PERL_NO_INLINE_FUNCTIONS
+ #endif
+
+
+From c363deb7bf404c5c3ea8f4cb41ab8234b3e0626b Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 09:49:54 +0200
+Subject: [PATCH 2/9] fixup: more build errors with Perl 5.37.x
+
+---
+ src/if_perl.xs | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/if_perl.xs b/src/if_perl.xs
+index a86fda4d6c0f..7200e8a0b362 100644
+--- a/src/if_perl.xs
++++ b/src/if_perl.xs
+@@ -56,6 +56,7 @@
+ #ifdef __GNUC__
+ # pragma GCC diagnostic push
+ # pragma GCC diagnostic ignored "-Wunused-variable"
++# pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
+ #endif
+
+ #include <EXTERN.h>
+@@ -710,7 +711,7 @@ S_POPMARK(pTHX)
+ # endif
+
+ /* perl-5.34 needs Perl_SvTRUE_common; used in SvTRUE_nomg_NN */
+-# if (PERL_REVISION == 5) && (PERL_VERSION >= 34)
++# if (PERL_REVISION == 5) && (PERL_VERSION == 34)
+ PERL_STATIC_INLINE bool
+ Perl_SvTRUE_common(pTHX_ SV * sv, const bool sv_2bool_is_fallback)
+ {
+@@ -737,7 +738,7 @@ Perl_SvTRUE_common(pTHX_ SV * sv, const bool sv_2bool_is_fallback)
+ # endif
+
+ /* perl-5.32 needs Perl_SvTRUE */
+-# if (PERL_REVISION == 5) && (PERL_VERSION >= 32)
++# if (PERL_REVISION == 5) && (PERL_VERSION == 32)
+ PERL_STATIC_INLINE bool
+ Perl_SvTRUE(pTHX_ SV *sv) {
+ if (!LIKELY(sv))
+
+From e8329c517704e3bb5cc8c4c5d4907f710a45a897 Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 10:14:00 +0200
+Subject: [PATCH 3/9] CI: use latest Perl provided by homebrew
+
+---
+ .github/workflows/ci.yml | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
+index 4e6f23ba80c1..cdef7127c1e5 100644
+--- a/.github/workflows/ci.yml
++++ b/.github/workflows/ci.yml
+@@ -275,7 +275,6 @@ jobs:
+ run: |
+ brew install lua
+ echo "LUA_PREFIX=/usr/local" >> $GITHUB_ENV
+- brew uninstall perl
+
+ - name: Set up environment
+ run: |
+
+From 59a5820047bf2ea98caf28337d8496914dfe1ece Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 10:20:30 +0200
+Subject: [PATCH 4/9] use --enable-perlinterp=dynamic
+
+It's needed on newer Perl Versions, static not working
+---
+ .github/workflows/ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
+index cdef7127c1e5..a8e4afeba6dc 100644
+--- a/.github/workflows/ci.yml
++++ b/.github/workflows/ci.yml
+@@ -288,7 +288,7 @@ jobs:
+ normal)
+ ;;
+ huge)
+- echo "CONFOPT=--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
++ echo "CONFOPT=--enable-perlinterp=dynamic --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
+ ;;
+ esac
+ ) >> $GITHUB_ENV
+
+From 6db6bed75f48c016d0346edf90ac539a57d5cc5c Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 10:30:03 +0200
+Subject: [PATCH 5/9] avoid "-Werror" and "-Wshadow" on macOS
+
+---
+ src/if_perl.xs | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/if_perl.xs b/src/if_perl.xs
+index 7200e8a0b362..6ed41e9d797b 100644
+--- a/src/if_perl.xs
++++ b/src/if_perl.xs
+@@ -57,6 +57,8 @@
+ # pragma GCC diagnostic push
+ # pragma GCC diagnostic ignored "-Wunused-variable"
+ # pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
++# pragma GCC diagnostic ignored "-Werror"
++# pragma GCC diagnostic ignored "-Wshadow"
+ #endif
+
+ #include <EXTERN.h>
+
+From c76e323263a9b5c7ca807c18bf026d2ca2af81aa Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 10:36:01 +0200
+Subject: [PATCH 6/9] Remove unknown "pragma GCC diagnostic ignored"
+
+---
+ src/if_perl.xs | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/src/if_perl.xs b/src/if_perl.xs
+index 6ed41e9d797b..57ea34aaf7cd 100644
+--- a/src/if_perl.xs
++++ b/src/if_perl.xs
+@@ -57,7 +57,6 @@
+ # pragma GCC diagnostic push
+ # pragma GCC diagnostic ignored "-Wunused-variable"
+ # pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
+-# pragma GCC diagnostic ignored "-Werror"
+ # pragma GCC diagnostic ignored "-Wshadow"
+ #endif
+
+
+From 9551bbfe3c1cdfad115c00a6e35585a2684e328e Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Thu, 22 Jun 2023 10:42:29 +0200
+Subject: [PATCH 7/9] use --enable-perlinterp again
+
+should work now
+---
+ .github/workflows/ci.yml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
+index a8e4afeba6dc..cdef7127c1e5 100644
+--- a/.github/workflows/ci.yml
++++ b/.github/workflows/ci.yml
+@@ -288,7 +288,7 @@ jobs:
+ normal)
+ ;;
+ huge)
+- echo "CONFOPT=--enable-perlinterp=dynamic --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
++ echo "CONFOPT=--enable-perlinterp --enable-python3interp --enable-rubyinterp --enable-luainterp --enable-tclinterp"
+ ;;
+ esac
+ ) >> $GITHUB_ENV
+
+From 6abf8cdab0bf03ea05cec19d538d4387d730a933 Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Fri, 23 Jun 2023 08:22:23 +0000
+Subject: [PATCH 8/9] fixup: move to right place PERL_CFLAGS; workaround for
+ perl-5.18 and later.
+
+---
+ ci/config.mk.sed | 2 +-
+ src/if_perl.xs | 4 +---
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/ci/config.mk.sed b/ci/config.mk.sed
+index 51e7ec903d99..d27a03bee7c5 100644
+--- a/ci/config.mk.sed
++++ b/ci/config.mk.sed
+@@ -1,3 +1,3 @@
+ /^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
+-/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function/
++/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function -Wincompatible-pointer-types -Wshadow/
+ /^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter/
+diff --git a/src/if_perl.xs b/src/if_perl.xs
+index 57ea34aaf7cd..804531a2adb3 100644
+--- a/src/if_perl.xs
++++ b/src/if_perl.xs
+@@ -40,7 +40,7 @@
+ /* Work around for perl-5.18.
+ * Don't include "perl\lib\CORE\inline.h" for now,
+ * include it after Perl_sv_free2 is defined. */
+-#if (PERL_REVISION == 5) && (PERL_VERSION == 18)
++#if (PERL_REVISION == 5) && (PERL_VERSION >= 18)
+ # define PERL_NO_INLINE_FUNCTIONS
+ #endif
+
+@@ -56,8 +56,6 @@
+ #ifdef __GNUC__
+ # pragma GCC diagnostic push
+ # pragma GCC diagnostic ignored "-Wunused-variable"
+-# pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
+-# pragma GCC diagnostic ignored "-Wshadow"
+ #endif
+
+ #include <EXTERN.h>
+
+From 9e9e45a9cb8245d06add5bfa3179821e8c8a0c00 Mon Sep 17 00:00:00 2001
+From: Philip H <47042125+pheiduck@users.noreply.github.com>
+Date: Fri, 23 Jun 2023 10:28:33 +0200
+Subject: [PATCH 9/9] config.mk.sed: use -Wno-shadow
+
+---
+ ci/config.mk.sed | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ci/config.mk.sed b/ci/config.mk.sed
+index d27a03bee7c5..f672edd9e438 100644
+--- a/ci/config.mk.sed
++++ b/ci/config.mk.sed
+@@ -1,3 +1,3 @@
+ /^CFLAGS[[:blank:]]*=/s/$/ -Wall -Wextra -Wshadow -Werror/
+-/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function -Wincompatible-pointer-types -Wshadow/
++/^PERL_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-function -Wno-shadow/
+ /^RUBY_CFLAGS_EXTRA[[:blank:]]*=/s/$/ -Wno-error=unused-parameter/
diff --git a/source/ap/vim/vim-gvim.SlackBuild b/source/ap/vim/vim-gvim.SlackBuild
index 0c9462b41..9db541193 100755
--- a/source/ap/vim/vim-gvim.SlackBuild
+++ b/source/ap/vim/vim-gvim.SlackBuild
@@ -111,6 +111,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Patch for perl-5.38.0:
+cat $CWD/12575.patch | patch -p1 --verbose || exit 1
+
config_vim --with-x --enable-gui=gtk3 || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/ap/vim/vim.SlackBuild b/source/ap/vim/vim.SlackBuild
index 580b44a24..28efb9dbd 100755
--- a/source/ap/vim/vim.SlackBuild
+++ b/source/ap/vim/vim.SlackBuild
@@ -152,6 +152,9 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \+
+# Patch for perl-5.38.0:
+cat $CWD/12575.patch | patch -p1 --verbose || exit 1
+
config_vim --without-x --disable-gui || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1