# HG changeset patch # User Christian Brabandt # Date 1707777003 -3600 # Node ID dd5023389a98ee26dc0134e5243be54279f0ea17 # Parent 7e082c79b5f4d3fdba273b103d1a22a0672bf3d6 patch 9.1.0104: Linking fails with -lto because of PERL_CFLAGS Commit: https://github.com/vim/vim/commit/2f9aef42af94f6d68f37f6e9b8cb878e88ed12bf Author: Christian Brabandt 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 diff --git a/src/auto/configure b/src/auto/configure --- a/src/auto/configure +++ b/src/auto/configure @@ -6494,10 +6494,11 @@ printf "%s\n" "$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"\n"' | 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, µ) != 3) { printf("%s, bad version string\n", "$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 --- a/src/configure.ac +++ b/src/configure.ac @@ -1163,11 +1163,13 @@ if test "$enable_perlinterp" = "yes" -o 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"\n"' | 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 --- a/src/version.c +++ b/src/version.c @@ -705,6 +705,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 104, +/**/ 103, /**/ 102,