-# TODO: ngtpc2/nghttp3 when ready (packages released, support working in curl) or quiche
+# TODO: ngtpc2/nghttp3 or quiche or msh3 for HTTP3?
#
# Conditional build:
%bcond_without ssh # SSH support
%bcond_without kerberos5 # Heimdal Kerberos 5 support
%bcond_without ldap # LDAP support
%bcond_without http2 # HTTP/2.0 support (nghttp2 based)
+%bcond_with http3 # HTTP/3.0 support (nghttp3/ngtcp2 based)
%if "%{pld_release}" != "ac"
%bcond_without ares # c-ares (asynchronous DNS operations) library support
%bcond_without rtmp # Real Time Media Protocol support
Summary(ru.UTF-8): Утилита для получения файлов с серверов FTP, HTTP и других
Summary(uk.UTF-8): Утиліта для отримання файлів з серверів FTP, HTTP та інших
Name: curl
-Version: 7.82.0
+Version: 8.2.1
Release: 1
License: MIT-like
Group: Applications/Networking
-Source0: https://curl.haxx.se/download/%{name}-%{version}.tar.xz
-# Source0-md5: ce05eb61ef7c398feb7dbe23122d0bd9
+Source0: https://curl.se/download/%{name}-%{version}.tar.xz
+# Source0-md5: 556576a795bdd2c7d10de6886480065f
Patch0: %{name}-ac.patch
Patch1: %{name}-krb5flags.patch
-URL: http://curl.haxx.se/
+URL: https://curl.se/
BuildRequires: autoconf >= 2.57
BuildRequires: automake
%{?with_ares:BuildRequires: c-ares-devel >= 1.17.0}
BuildRequires: libidn2-devel
BuildRequires: libpsl-devel
%{?with_rtmp:BuildRequires: librtmp-devel}
-%{?with_ssh:BuildRequires: libssh2-devel >= 1.2.8}
+%{?with_ssh:BuildRequires: libssh2-devel >= 1.11.0}
BuildRequires: libtool
BuildRequires: nettle-devel
-%{?with_http2:BuildRequires: nghttp2-devel >= 1.12.0}
+%{?with_http2:BuildRequires: nghttp2-devel >= 1.15.0}
+%{?with_http3:BuildRequires: nghttp3-devel}
+# with gnutls or openssl crypto, conforming to chosen curl crypto library
+%{?with_http3:BuildRequires: ngtcp2-devel}
%{?with_ldap:BuildRequires: openldap-devel}
BuildRequires: pkgconfig
BuildRequires: rpm >= 4.4.9-56
BuildRequires: zlib-devel
BuildRequires: zstd-devel
Requires: %{name}-libs = %{version}-%{release}
-Obsoletes: libcurl2
+Obsoletes: libcurl2 < 7.12
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Group: Libraries
%{?with_ares:Requires: c-ares >= 1.17.0}
%{?with_gnutls:Requires: gnutls-libs >= 3.1.10}
-%{?with_ssh:Requires: libssh2 >= 1.2.8}
-%{?with_http2:Requires: nghttp2-libs >= 1.12.0}
+%{?with_ssh:Requires: libssh2 >= 1.11.0}
+%{?with_http2:Requires: nghttp2-libs >= 1.15.0}
%if %{with ssl} && %{without gnutls}
Requires: libbrotli >= 1.0.0
Requires: openssl >= 1.0.1
Summary(ru.UTF-8): Файлы для разработки с использованием библиотеки curl
Summary(uk.UTF-8): Файли для розробки з використанням бібліотеки curl
Group: Development/Libraries
-Requires: %{name}-libs = %{version}-%{release}
+Requires: %{name}-libs%{?_isa} = %{version}-%{release}
%{?with_ares:Requires: c-ares-devel}
%{?with_gsasl:Requires: gsasl-devel}
%{?with_kerberos5:Requires: heimdal-devel}
Requires: libidn2-devel
Requires: libpsl-devel
%{?with_rtmp:Requires: librtmp-devel}
-%{?with_ssh:Requires: libssh2-devel >= 1.2.8}
-%{?with_http2:Requires: nghttp2-devel >= 1.12.0}
+%{?with_ssh:Requires: libssh2-devel >= 1.11.0}
+%{?with_http2:Requires: nghttp2-devel >= 1.15.0}
%{?with_ldap:Requires: openldap-devel}
%if %{with ssl}
%if %{with gnutls}
%endif
Requires: zlib-devel
Requires: zstd-devel
-Obsoletes: libcurl2-devel
+Obsoletes: libcurl2-devel < 7.12
%description devel
Header files and development documentation for curl library.
%configure \
ac_cv_header_gss_h=no \
%{__enable_disable ares} \
- %{__enable_disable gsasl} \
+ %{__with_without gsasl libgsasl} \
+ --enable-headers-api \
--enable-ipv6 \
%{__enable_disable ldap} \
%{__enable_disable ldap ldaps} \
--disable-silent-rules \
+ --enable-websockets \
%if %{with ssl}
--with-ca-bundle=/etc/certs/ca-certificates.crt \
%if %{with gnutls}
%{__with_without kerberos5 gssapi %{_prefix}} \
%{__with_without rtmp librtmp} \
%{__with_without http2 nghttp2} \
+ %{__with_without http3 nghttp3} \
+ %{__with_without http3 ngtcp2} \
%{__with_without ssh libssh2}
%{__make}