patch 9.0.2083: Perl: xsubpp may be in non-standard location

Commit: 
https://github.com/vim/vim/commit/1b1c9f272ddfa5f1d7d903cd9d59320cb97bfd4b
Author: Zdenek Dohnal <[email protected]>
Date:   Thu Nov 2 20:19:06 2023 +0100

    patch 9.0.2083: Perl: xsubpp may be in non-standard location
    
    Problem:  Perl: xsubpp may be in non-standard location
    Solution: Add --with-subpp configure option
    
    configure.ac: Add --with-xsubpp configure option
    
    Some environments (such as flatpaks) cannot count on xsubpp being
    in the common Perl directory, so a configure option should be used for
    clean solution.
    
    closes: #13470
    
    Signed-off-by: Zdenek Dohnal <[email protected]>
    Signed-off-by: Christian Brabandt <[email protected]>

diff --git a/src/auto/configure b/src/auto/configure
index b86b3912e..8582298ca 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -836,6 +836,7 @@ with_luajit
 enable_mzschemeinterp
 with_plthome
 enable_perlinterp
+with_xsubpp
 enable_pythoninterp
 with_python_command
 with_python_config_dir
@@ -1569,6 +1570,7 @@ Optional Packages:
   --with-lua-prefix=PFX   Prefix where Lua is installed.
   --with-luajit           Link with LuaJIT instead of Lua.
   --with-plthome=PLTHOME   Use PLTHOME.
+  --with-xsubpp=PATH  path to the xsubpp command
   --with-python-command=NAME  name of the Python 2 command (default: python2 
or python)
   --with-python-config-dir=PATH  Python's config directory (deprecated)
   --with-python3-command=NAME  name of the Python 3 command (default: python3 
or python)
@@ -6455,12 +6457,42 @@ printf "%s
" "OK" >&6; }
       vi_cv_perllib=`$vi_cv_path_perl -MConfig -e 'print $Config{privlibexp}'`
 
       vi_cv_perl_extutils=unknown_perl_extutils_path
-      for extutils_rel_path in ExtUtils vendor_perl/ExtUtils; do
-       xsubpp_path="$vi_cv_perllib/$extutils_rel_path/xsubpp"
-       if test -f "$xsubpp_path"; then
-         vi_cv_perl_xsubpp="$xsubpp_path"
-       fi
-      done
+
+      { printf "%s
" "$as_me:${as_lineno-$LINENO}: checking --with-xsubpp path" >&5
+printf %s "checking --with-xsubpp path... " >&6; }
+      vi_cv_perl_xsubpp=
+
+# Check whether --with-xsubpp was given.
+if test ${with_xsubpp+y}
+then :
+  withval=$with_xsubpp;
+            if test -f "$withval"
+            then
+             vi_cv_perl_xsubpp="$withval"
+            fi
+
+fi
+
+
+      if test "x$vi_cv_perl_xsubpp" = "x"
+      then
+       for extutils_rel_path in ExtUtils vendor_perl/ExtUtils; do
+         xsubpp_path="$vi_cv_perllib/$extutils_rel_path/xsubpp"
+         if test -f "$xsubpp_path"; then
+           vi_cv_perl_xsubpp="$xsubpp_path"
+         fi
+       done
+      fi
+
+      if test "x$vi_cv_perl_xsubpp" = "x"
+      then
+        { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: empty" >&5
+printf "%s
" "empty" >&6; }
+      else
+        { printf "%s
" "$as_me:${as_lineno-$LINENO}: result: $vi_cv_perl_xsubpp" >&5
+printf "%s
" "$vi_cv_perl_xsubpp" >&6; }
+      fi
+
 
                               perlcppflags=`$vi_cv_path_perl -Mlib=$srcdir 
-MExtUtils::Embed \
                -e 'ccflags;perl_inc;print"
"' | sed -e 's/-fno[^ ]*//' \
diff --git a/src/configure.ac b/src/configure.ac
index dfbe51237..2ee9b0182 100644
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -1132,13 +1132,34 @@ if test "$enable_perlinterp" = "yes" -o 
"$enable_perlinterp" = "dynamic"; then
       vi_cv_perllib=`$vi_cv_path_perl -MConfig -e 'print $Config{privlibexp}'`
       AC_SUBST(vi_cv_perllib)
       vi_cv_perl_extutils=unknown_perl_extutils_path
-      for extutils_rel_path in ExtUtils vendor_perl/ExtUtils; do
-       xsubpp_path="$vi_cv_perllib/$extutils_rel_path/xsubpp"
-       if test -f "$xsubpp_path"; then
-         vi_cv_perl_xsubpp="$xsubpp_path"
-       fi
-      done
+
+      AC_MSG_CHECKING(--with-xsubpp path)
+      vi_cv_perl_xsubpp=
+      AC_ARG_WITH(xsubpp, [  --with-xsubpp=PATH  path to the xsubpp command], [
+            if test -f "$withval"
+            then
+             vi_cv_perl_xsubpp="$withval"
+            fi
+      ])
+
+      if test "x$vi_cv_perl_xsubpp" = "x"
+      then
+       for extutils_rel_path in ExtUtils vendor_perl/ExtUtils; do
+         xsubpp_path="$vi_cv_perllib/$extutils_rel_path/xsubpp"
+         if test -f "$xsubpp_path"; then
+           vi_cv_perl_xsubpp="$xsubpp_path"
+         fi
+       done
+      fi
+
+      if test "x$vi_cv_perl_xsubpp" = "x"
+      then
+        AC_MSG_RESULT(empty)
+      else
+        AC_MSG_RESULT($vi_cv_perl_xsubpp)
+      fi
       AC_SUBST(vi_cv_perl_xsubpp)
+
       dnl Remove "-fno-something", it breaks using cproto.
       dnl Remove "-fdebug-prefix-map", it isn't supported by clang.
       dnl Remove "FORTIFY_SOURCE", it will be defined twice.
diff --git a/src/version.c b/src/version.c
index 1d0573e24..6bac0de53 100644
--- a/src/version.c
+++ b/src/version.c
@@ -704,6 +704,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    2083,
 /**/
     2082,
 /**/

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/E1qydOG-0000Of-4l%40256bit.org.

Raspunde prin e-mail lui