Date: Sunday, January 15, 2023 @ 22:16:26
  Author: freswa
Revision: 466661

upgpkg: elfutils 0.188-2: binutils 2.40 rebuild

Added:
  elfutils/trunk/curl_7.85_compat.patch
Modified:
  elfutils/trunk/PKGBUILD

------------------------+
 PKGBUILD               |   18 ++++++++++----
 curl_7.85_compat.patch |   60 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 73 insertions(+), 5 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2023-01-15 21:43:03 UTC (rev 466660)
+++ PKGBUILD    2023-01-15 22:16:26 UTC (rev 466661)
@@ -13,11 +13,14 @@
 license=(LGPL3 GPL3)
 makedepends=(bzip2 curl gcc-libs libarchive libmicrohttpd sqlite xz zlib zstd)
 options=(staticlibs)
-source=(https://sourceware.org/$pkgbase/ftp/$pkgver/$pkgbase-$pkgver.tar.bz2{,.sig})
+source=(https://sourceware.org/$pkgbase/ftp/$pkgver/$pkgbase-$pkgver.tar.bz2{,.sig}
+        curl_7.85_compat.patch)
 
sha512sums=('585551b2d937d19d1becfc2f28935db1dd1a3d25571a62f322b70ac8da98c1a741a55d070327705df6c3e2ee026652e0b9a3c733b050a0b0ec5f2fc75d5b74b5'
-            'SKIP')
+            'SKIP'
+            
'8f731bf2451ffd195a7da939d469486272873fa9fd19c2dc03a5311814840d7a7242b82de42162efc36404bee9a4fb3a6b85e0eb9fbb81e3c15f989cdd288c37')
 
b2sums=('6b0474f1436eaf6af73b735b9b2ddd5448ab9c03fbaa0be745a31c89ae8f15b0e21a651409c38643ca125794ce82c19d7b46db4a079f3e72cb919d643560e7a4'
-        'SKIP')
+        'SKIP'
+        
'92b92aefc011b4be7ed00baca28c3447003baa864be58482bf0c220dcd6ad75133c6e34731eaf7e3cc97dbb3e1f85d1fce88cb532c3da37b36802d2c6e7a9e36')
 validpgpkeys=(
   '47CC0331081B8BC6D0FD4DA08370665B57816A6A'  # Mark J. Wielaard 
<[email protected]>
   'EC3CFE88F6CA0788774F5C1D1AA44BE649DE760A'  # Mark Wielaard <[email protected]>
@@ -34,9 +37,14 @@
 }
 
 prepare() {
+  cd $pkgbase-$pkgver
+  # Use CURLOPT_PROTOCOLS_STR for libcurl >= 7.85.0
+  # 
https://sourceware.org/git/?p=elfutils.git;a=commit;h=6560fb26a62ef135a804357ef4f15a47de3e49b3
+  patch -Np1 < ../curl_7.85_compat.patch
+  cd ..
+
   # remove failing test due to missing glibc debug package during test: 
https://bugs.archlinux.org/task/74875
   sed -e 's/run-backtrace-native.sh//g' -i $pkgbase-$pkgver/tests/Makefile.am
-
   (
     cd $pkgbase-$pkgver
     autoreconf -fiv
@@ -43,9 +51,9 @@
   )
 
   cp -av $pkgbase-$pkgver $pkgbase-test-$pkgver
-
 }
 
+
 build() {
   local configure_options=(
     --prefix=/usr

Added: curl_7.85_compat.patch
===================================================================
--- curl_7.85_compat.patch                              (rev 0)
+++ curl_7.85_compat.patch      2023-01-15 22:16:26 UTC (rev 466661)
@@ -0,0 +1,60 @@
+diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
+index a16165bd1..1ce456327 100644
+--- a/debuginfod/debuginfod-client.c
++++ b/debuginfod/debuginfod-client.c
+@@ -1336,8 +1336,13 @@ debuginfod_query_server (debuginfod_client *c,
+
+       /* Only allow http:// + https:// + file:// so we aren't being
+        redirected to some unsupported protocol.  */
++#if CURL_AT_LEAST_VERSION(7, 85, 0)
++      curl_easy_setopt_ck(data[i].handle, CURLOPT_PROTOCOLS_STR,
++                        "http,https,file");
++#else
+       curl_easy_setopt_ck(data[i].handle, CURLOPT_PROTOCOLS,
+                         (CURLPROTO_HTTP | CURLPROTO_HTTPS | CURLPROTO_FILE));
++#endif
+       curl_easy_setopt_ck(data[i].handle, CURLOPT_URL, data[i].url);
+       if (vfd >= 0)
+       curl_easy_setopt_ck(data[i].handle, CURLOPT_ERRORBUFFER,
+diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
+index 8873fcc8c..692aeccec 100644
+--- a/debuginfod/debuginfod-client.c
++++ b/debuginfod/debuginfod-client.c
+@@ -1456,7 +1456,7 @@ debuginfod_query_server (debuginfod_client *c,
+              deflate-compressing proxies, this number is likely to be
+              unavailable, so -1 may show. */
+           CURLcode curl_res;
+-#ifdef CURLINFO_CONTENT_LENGTH_DOWNLOAD_T
++#if CURL_AT_LEAST_VERSION(7, 55, 0)
+           curl_off_t cl;
+           curl_res = curl_easy_getinfo(target_handle,
+                                        CURLINFO_CONTENT_LENGTH_DOWNLOAD_T,
+@@ -1491,7 +1491,7 @@ debuginfod_query_server (debuginfod_client *c,
+           if (target_handle) /* we've committed to a server; report its 
download progress */
+             {
+               CURLcode curl_res;
+-#ifdef CURLINFO_SIZE_DOWNLOAD_T
++#if CURL_AT_LEAST_VERSION(7, 55, 0)
+               curl_off_t dl;
+               curl_res = curl_easy_getinfo(target_handle,
+                                            CURLINFO_SIZE_DOWNLOAD_T,
+diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
+index 692aeccec..a16165bd1 100644
+--- a/debuginfod/debuginfod-client.c
++++ b/debuginfod/debuginfod-client.c
+@@ -105,6 +105,13 @@ void debuginfod_end (debuginfod_client *c) { }
+   #include <fts.h>
+ #endif
+
++/* Older curl.h don't define CURL_AT_LEAST_VERSION.  */
++#ifndef CURL_AT_LEAST_VERSION
++  #define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z))
++  #define CURL_AT_LEAST_VERSION(x,y,z) \
++    (LIBCURL_VERSION_NUM >= CURL_VERSION_BITS(x, y, z))
++#endif
++
+ #include <pthread.h>
+
+ static pthread_once_t init_control = PTHREAD_ONCE_INIT;
+--
+2.31.1

Reply via email to