From 36fa5ee9ef55103d9edc0a206270f487f2539465 Mon Sep 17 00:00:00 2001 From: Aliaksey Kandratsenka Date: Mon, 6 Nov 2023 13:19:17 -0500 Subject: [PATCH] patch libtool.m4 for compiler_lib_search_path fix for qnx Amend github issue #1429 --- autogen.sh | 4 ++++ m4/libtool.patch | 26 ++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 m4/libtool.patch diff --git a/autogen.sh b/autogen.sh index 7c590a3..89d8eb9 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,3 +1,7 @@ #!/bin/sh autoreconf -i + +echo "patching m4/libtool.m4: See https://github.com/gperftools/gperftools/issues/1429#issuecomment-1794976863" + +(set -x; patch --forward -t --reject-file=- m4/libtool.m4 m4/libtool.patch && autoreconf -i) diff --git a/m4/libtool.patch b/m4/libtool.patch new file mode 100644 index 0000000..8318a2a --- /dev/null +++ b/m4/libtool.patch @@ -0,0 +1,26 @@ +commit 251dfb7dd328c01f3636022b47021eaef06a6cab +Author: Xiang.Lin +Date: Mon Nov 6 15:07:56 2023 +0800 + + libtool: fix empty "-L" in compiler_lib_search_path + + If compiler place space between "-L" and the path, the path will + be skipped and only have empty "-L" on final compiler_lib_search_path, + which will cause first library in postdeps following compiler_lib_search_path + be skipped accidentally. + +diff --git a/m4/libtool.m4 b/m4/libtool.m4 +index d034b12..4bd8282 100644 +--- a/m4/libtool.m4 ++++ b/m4/libtool.m4 +@@ -7584,8 +7584,8 @@ if AC_TRY_EVAL(ac_compile); then + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. +- if test x-L = "$p" || +- test x-R = "$p"; then ++ if test x-L = x"$p" || ++ test x-R = x"$p"; then + prev=$p + continue + fi