summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2022-01-24 08:50:36 +0100
committerStephan Bergmann <sbergman@redhat.com>2022-01-24 10:15:28 +0100
commit9b2c6bbcc330cd19d41ed25f95589c700d435b2c (patch)
treedacc06262d98065e3f0b271492d7e9e5d1a2c0ae
parent9c27377389e0495e8a7cc1ad6b1289649db5b0fa (diff)
external/curl: Fix manipulation of LD_LIBRARY_PATH
This fixes the same issue as <https://github.com/curl/curl/commit/e39421cef31f13a19b6bef5c644978e0c54e4e16> "curl-functions.m4: fix LIBRARY_PATH adjustment to avoid eval", just in a less intrusive way so that we can get away with just fixing the resulting configure rather than having to run any Autotools reconfiguration commands. 40a84af1bdd7b3c414a8a78ca32b0951c03f9976 "upgrade to curl-7.81.0" caused <https://ci.libreoffice.org/job/lo_ubsan/2272/> to fail with the cryptic [...] > checking for gethostbyname in -lnetwork... no > checking for gethostbyname in -lnet... no > configure: error: couldn't find libraries for gethostbyname() > /home/tdf/lode/jenkins/workspace/lo_ubsan/external/curl/ExternalProject_curl.mk:41: recipe for target '/home/tdf/lode/jenkins/workspace/lo_ubsan/workdir/ExternalProject/curl/build' failed > make[1]: *** [/home/tdf/lode/jenkins/workspace/lo_ubsan/workdir/ExternalProject/curl/build] Error 1 because somewhere in the middle of curl's configure LD_LIBRARY_PATH got garbled because of this issue, so that invoking /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang started to fail with > /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found (required by /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang) > /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang) > /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by /home/tdf/lode/opt_private/clang-llvmorg-9.0.1/bin/clang) (because that clang is built against a local GCC and libstdc++, so needs LD_LIBRARY_PATH to be set up properly to find the latter), which caused the gethostbyname check to fail (as seen when looking into that build's workdir/UnpackedTarball/curl/config.log). Change-Id: I3d45018cdfdb22b98c0dec0757e754a172a811de Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128850 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
-rw-r--r--external/curl/UnpackedTarball_curl.mk1
-rw-r--r--external/curl/configure-eval-fix.patch.0146
2 files changed, 147 insertions, 0 deletions
diff --git a/external/curl/UnpackedTarball_curl.mk b/external/curl/UnpackedTarball_curl.mk
index b89b000228c9..7a8f5a265341 100644
--- a/external/curl/UnpackedTarball_curl.mk
+++ b/external/curl/UnpackedTarball_curl.mk
@@ -26,6 +26,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,curl,\
external/curl/curl-7.26.0_win-proxy.patch \
external/curl/zlib.patch.0 \
external/curl/configurable-z-option.patch.0 \
+ external/curl/configure-eval-fix.patch.0 \
))
ifeq ($(SYSTEM_NSS),)
diff --git a/external/curl/configure-eval-fix.patch.0 b/external/curl/configure-eval-fix.patch.0
new file mode 100644
index 000000000000..616f3fb607ad
--- /dev/null
+++ b/external/curl/configure-eval-fix.patch.0
@@ -0,0 +1,146 @@
+--- configure
++++ configure
+@@ -17942,7 +17942,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -18230,7 +18230,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -19676,7 +19676,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -22525,7 +22525,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -24251,7 +24251,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -34015,7 +34015,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -34479,7 +34479,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -37507,7 +37507,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -39014,7 +39014,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -39259,7 +39259,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -39527,7 +39527,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -39787,7 +39787,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -40833,7 +40833,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -41238,7 +41238,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -43189,7 +43189,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"
+@@ -43305,7 +43305,7 @@
+ *) library_path_var=LD_LIBRARY_PATH ;;
+ esac
+
+- eval "old=$$library_path_var"
++ eval "old=\$$library_path_var"
+ eval "$library_path_var=\$CURL_LIBRARY_PATH:\$old"
+
+ eval "export $library_path_var"