patch 9.1.0104: Linking fails with -lto because of PERL_CFLAGS

Commit: 
https://github.com/vim/vim/commit/2f9aef42af94f6d68f37f6e9b8cb878e88ed12bf
Author: Christian Brabandt <[email protected]>
Date:   Mon Feb 12 23:12:26 2024 +0100

    patch 9.1.0104: Linking fails with -lto because of PERL_CFLAGS
    
    Problem:  Linking fails with -lto because of PERL_CFLAGS
              (Zoltan Toth)
    Solution: Filter out -flto argument from Perl CFLAGS.
    
    fixes: #14012
    
    Signed-off-by: Christian Brabandt <[email protected]>

diff --git a/src/auto/configure b/src/auto/configure
index 70ebb33c4..5c1464835 100755
--- a/src/auto/configure
+++ b/src/auto/configure
@@ -6494,10 +6494,11 @@ printf "%s
" "$vi_cv_perl_xsubpp" >&6; }
       fi
 
 
-                              perlcppflags=`$vi_cv_path_perl -Mlib=$srcdir 
-MExtUtils::Embed \
+                                    perlcppflags=`$vi_cv_path_perl 
-Mlib=$srcdir -MExtUtils::Embed \
                -e 'ccflags;perl_inc;print"
"' | sed -e 's/-fno[^ ]*//' \
                -e 's/-fdebug-prefix-map[^ ]*//g' \
                -e 's/-pipe //' \
+               -e 's/-flto\(=auto\)\? //' \
                -e 's/-W[^ ]*//g' \
                -e 's/-D_FORTIFY_SOURCE=.//g'`
             perllibs=`cd $srcdir; $vi_cv_path_perl -MExtUtils::Embed -e 
'ldopts' | \
@@ -10402,9 +10403,12 @@ system ("touch conf.gtktest");
 tmp_version = g_strdup("$min_gtk_version");
 if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
    printf("%s, bad version string
", "$min_gtk_version");
+   g_free(tmp_version);
    exit(1);
  }
 
+g_free(tmp_version);
+
 if ((gtk_major_version > major) ||
     ((gtk_major_version == major) && (gtk_minor_version > minor)) ||
     ((gtk_major_version == major) && (gtk_minor_version == minor) &&
diff --git a/src/configure.ac b/src/configure.ac
index ebe0d08f6..664f21940 100644
--- a/src/configure.ac
+++ b/src/configure.ac
@@ -1163,11 +1163,13 @@ if test "$enable_perlinterp" = "yes" -o 
"$enable_perlinterp" = "dynamic"; then
       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.
-      dnl remove -pipe and -Wxxx, it confuses cproto
+      dnl Remove -pipe and -Wxxx, it confuses cproto
+      dnl Remove -flto[=auto], it causes link failures for clang
       perlcppflags=`$vi_cv_path_perl -Mlib=$srcdir -MExtUtils::Embed \
                -e 'ccflags;perl_inc;print"
"' | sed -e 's/-fno[[^ ]]*//' \
                -e 's/-fdebug-prefix-map[[^ ]]*//g' \
                -e 's/-pipe //' \
+               -e 's/-flto\(=auto\)\? //' \
                -e 's/-W[[^ ]]*//g' \
                -e 's/-D_FORTIFY_SOURCE=.//g'`
       dnl Remove "-lc", it breaks on FreeBSD when using "-pthread".
diff --git a/src/version.c b/src/version.c
index e28a32695..17a789948 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 */
+/**/
+    104,
 /**/
     103,
 /**/

-- 
-- 
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/E1rZeoN-00BT9w-2o%40256bit.org.

Raspunde prin e-mail lui