]> git.pld-linux.org Git - packages/curl.git/blame - curl.spec
up to 8.7.1 (fixes CVE-2024-2004 CVE-2024-2379 CVE-2024-2398 CVE-2024-2466)
[packages/curl.git] / curl.spec
CommitLineData
5ac17805 1# TODO: ngtpc2/nghttp3 or quiche or msh3 for HTTP3?
195ea5a8
JB
2#
3# Conditional build:
3b3132c7 4%bcond_without static_libs # static library
358ad66a
JB
5%bcond_without ssh # SSH support
6%bcond_without ssl # SSL support
7%bcond_with gnutls # GnuTLS instead of OpenSSL
eef5da07 8%bcond_without gsasl # SCRAM support with gsasl
358ad66a
JB
9%bcond_without kerberos5 # Heimdal Kerberos 5 support
10%bcond_without ldap # LDAP support
8424568c 11%bcond_without http2 # HTTP/2.0 support (nghttp2 based)
40f52e62 12%bcond_with http3 # HTTP/3.0 support (nghttp3/ngtcp2 based)
de17b215 13%if "%{pld_release}" != "ac"
358ad66a
JB
14%bcond_without ares # c-ares (asynchronous DNS operations) library support
15%bcond_without rtmp # Real Time Media Protocol support
de17b215 16%else
358ad66a
JB
17%bcond_with ares # c-ares (asynchronous DNS operations) library support
18%bcond_with rtmp # Real Time Media Protocol support
de17b215
ER
19%endif
20
f7f276d9 21Summary: A utility for getting files from remote servers (FTP, HTTP, and others)
ce380d80
ER
22Summary(es.UTF-8): Un cliente para bajar archivos de servidores (FTP, HTTP, y otros)
23Summary(pl.UTF-8): Narzędzie do ściągania plików z serwerów (FTP, HTTP i innych)
24Summary(pt_BR.UTF-8): Busca URL (suporta FTP, TELNET, LDAP, GOPHER, DICT, HTTP e HTTPS)
25Summary(ru.UTF-8): Утилита для получения файлов с серверов FTP, HTTP и других
26Summary(uk.UTF-8): Утиліта для отримання файлів з серверів FTP, HTTP та інших
5767e1a7 27Name: curl
38061d22 28Version: 8.7.1
5a3e596f 29Release: 1
c091c0ac 30License: MIT-like
5767e1a7 31Group: Applications/Networking
c3310c39 32Source0: https://curl.se/download/%{name}-%{version}.tar.xz
38061d22 33# Source0-md5: f4f37253c5f1ad9ee85fa6215fdfeb42
d0cec3a8
JB
34Patch0: %{name}-ac.patch
35Patch1: %{name}-krb5flags.patch
c3310c39 36URL: https://curl.se/
c091c0ac 37BuildRequires: autoconf >= 2.57
66cf63f1 38BuildRequires: automake
0da7572a 39%{?with_ares:BuildRequires: c-ares-devel >= 1.17.0}
eef5da07 40%{?with_gsasl:BuildRequires: gsasl-devel}
f73c4120 41%{?with_kerberos5:BuildRequires: heimdal-devel}
8a129a6b 42BuildRequires: libbrotli-devel >= 1.0.0
04f3f89d 43BuildRequires: libidn2-devel
e80259d2 44BuildRequires: libpsl-devel
9defadab 45%{?with_rtmp:BuildRequires: librtmp-devel}
797e6289 46%{?with_ssh:BuildRequires: libssh2-devel >= 1.11.0}
c091c0ac 47BuildRequires: libtool
0f90f9c0 48BuildRequires: nettle-devel
92e8c508 49%{?with_http2:BuildRequires: nghttp2-devel >= 1.15.0}
40f52e62
JB
50%{?with_http3:BuildRequires: nghttp3-devel}
51# with gnutls or openssl crypto, conforming to chosen curl crypto library
52%{?with_http3:BuildRequires: ngtcp2-devel}
588be88f 53%{?with_ldap:BuildRequires: openldap-devel}
c260acfc 54BuildRequires: pkgconfig
de17b215 55BuildRequires: rpm >= 4.4.9-56
4416762d 56BuildRequires: rpm-build >= 4.6
838a6eda 57BuildRequires: rpmbuild(macros) >= 1.527
5559a124
AM
58%if %{with ssl}
59%if %{with gnutls}
e37f03dc 60BuildRequires: gnutls-devel >= 3.1.10
5559a124 61%else
549c5328 62BuildRequires: openssl-devel >= 1.0.1
5559a124
AM
63%endif
64%endif
d04a5e91 65BuildRequires: tar >= 1:1.22
eef5da07 66BuildRequires: xz
6903f0dc 67BuildRequires: zlib-devel
0ee795f8 68BuildRequires: zstd-devel
3fb47407 69Requires: %{name}-libs = %{version}-%{release}
ada22f67 70Obsoletes: libcurl2 < 7.12
8aa4e5ec 71BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
81714278 72
73%description
655b91ad 74cURL is a tool for getting files with URL syntax, supporting FTP,
75HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and LDAP. cURL supports HTTP
76POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies,
77cookies, user+password authentication and a busload of other useful
78tricks. The main use for curl is when you want to get or send files
79automatically to or from a site using one of the supported protocols.
80
81cURL is a tool for getting files from FTP, HTTP, Gopher, Telnet, and
82Dict servers, using any of the supported protocols. cURL is designed
83to work without user interaction or any kind of interactivity. cURL
84offers many useful capabilities, like proxy support, user
e566d906 85authentication, FTP upload, HTTP post, and file transfer resume.
81714278 86
d63bcf1b
JR
87%description -l pl.UTF-8
88cURL jest narzędziem do ściągania plików o składni URL. Obsługuje FTP,
89HTTP, HTTPS, GOPHER, TELNET, DICT, FILE i LDAP. cURL obsługuje również
90HTTP POST, HTTP PUT, załadowywanie (uploading) FTP, załadowywanie HTTP
655b91ad 91oparte na formularzu, serwery proksy, ciasteczka, autoryzacja
d63bcf1b
JR
92użytkownik/hasło oraz wiele innych użytecznych sztuczek. Curla używa
93się głównie wtedy, kiedy chce się automatycznie ściągnąć lub wysłać
94pliki z/na serwer używając jednego z dostępnych protokołów.
95%{?with_ssl:Ten pakiet obsługuje także SSL.}
1310544e 96
d63bcf1b
JR
97%description -l pt_BR.UTF-8
98Curl é um cliente para baixar/enviar arquivos de/para servidores
99usando um dos protocolos suportados. É projetado para funcionar sem a
100interação do usuário.
1310544e 101
d63bcf1b
JR
102Curl trabalha com proxy, autenticação, FTP put, HTTP post, e pode
103continuar transferências interrompidas, e mais...
1310544e 104
d63bcf1b
JR
105%description -l ru.UTF-8
106curl - это клиент с множеством поддерживаемых протоколов для получения
107файлов с серверов, спроектированный для работы как в неинтерактивном
108режиме, так и с возможностью диалога с пользователем.
f05b825f 109
d63bcf1b
JR
110curl поддерживает много полезных возможностей, среди которых поддержка
111прокси, авторизация пользователя, закачивание по FTP, поддержка HTTP
112POST, восстановление прерванной пересылки и многое другое.
f05b825f 113
d63bcf1b
JR
114curl - це кл╕╓нт з багатьма п╕дтримуваними протоколами для отримання
115файл╕в з сервер╕в, спроектований для роботи як в не╕нтерактивному
116режим╕, так ╕ з можлив╕стю д╕алогу з користувачем.
f05b825f 117
d63bcf1b
JR
118curl п╕дтриму╓ багато корисних можливостей, серед яких п╕дтримка
119прокс╕, авторизац╕я користувача, в╕двантаження по FTP, HTTP POST,
120в╕дновлення перервано╖ пересилки та багато ╕ншого.
f05b825f 121
814b6f7d
JB
122%package libs
123Summary: curl library
ce380d80 124Summary(pl.UTF-8): Biblioteka curl
814b6f7d 125Group: Libraries
0da7572a 126%{?with_ares:Requires: c-ares >= 1.17.0}
e37f03dc 127%{?with_gnutls:Requires: gnutls-libs >= 3.1.10}
91abd229 128%{?with_ssh:Requires: libssh2%{?_isa} >= 1.11.0}
92e8c508 129%{?with_http2:Requires: nghttp2-libs >= 1.15.0}
fddc44fa 130%if %{with ssl} && %{without gnutls}
00b2a6eb 131Requires: libbrotli >= 1.0.0
549c5328 132Requires: openssl >= 1.0.1
fddc44fa 133%endif
dfeb0d8d
PG
134Suggests: ca-certificates
135Conflicts: ca-certificates < 20080809-4
814b6f7d
JB
136
137%description libs
138curl library.
139
d63bcf1b 140%description libs -l pl.UTF-8
814b6f7d
JB
141Biblioteka curl.
142
1f54b511 143%package devel
144Summary: Header files and development documentation for curl library
ce380d80
ER
145Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja do biblioteki curl
146Summary(pt_BR.UTF-8): Arquivos de cabeçalho e bibliotecas de desenvolvimento
147Summary(ru.UTF-8): Файлы для разработки с использованием библиотеки curl
148Summary(uk.UTF-8): Файли для розробки з використанням бібліотеки curl
1f54b511 149Group: Development/Libraries
fc3747d0 150Requires: %{name}-libs%{?_isa} = %{version}-%{release}
bd2c841c 151%{?with_ares:Requires: c-ares-devel}
eef5da07 152%{?with_gsasl:Requires: gsasl-devel}
f73c4120 153%{?with_kerberos5:Requires: heimdal-devel}
72fe5a16 154Requires: libbrotli-devel >= 1.0.0
04f3f89d 155Requires: libidn2-devel
e80259d2 156Requires: libpsl-devel
70778617 157%{?with_rtmp:Requires: librtmp-devel}
91abd229 158%{?with_ssh:Requires: libssh2-devel%{?_isa} >= 1.11.0}
92e8c508 159%{?with_http2:Requires: nghttp2-devel >= 1.15.0}
588be88f 160%{?with_ldap:Requires: openldap-devel}
5559a124
AM
161%if %{with ssl}
162%if %{with gnutls}
e37f03dc 163Requires: gnutls-devel >= 3.1.10
5559a124
AM
164%else
165Requires: openssl-devel >= 0.9.7c
166%endif
167%endif
5e1699d5 168Requires: zlib-devel
0ee795f8 169Requires: zstd-devel
ada22f67 170Obsoletes: libcurl2-devel < 7.12
1f54b511 171
172%description devel
173Header files and development documentation for curl library.
174
d63bcf1b
JR
175%description devel -l pl.UTF-8
176Pliki nagłówkowe i dokumentacja do biblioteki curl.
cec38cdf 177
d63bcf1b
JR
178%description devel -l pt_BR.UTF-8
179Arquivos de cabeçalho e bibliotecas de desenvolvimento.
1310544e 180
d63bcf1b
JR
181%description devel -l ru.UTF-8
182Этот пакет содержит файлы, необходимые для разработки программ с
183использованием библиотеки curl.
f05b825f 184
d63bcf1b
JR
185%description devel -l uk.UTF-8
186Цей пакет містить файли, необхідні для розробки програм з
187використанням бібліотеки curl.
f05b825f 188
1f54b511 189%package static
190Summary: Static version of curl library
ce380d80
ER
191Summary(pl.UTF-8): Statyczna wersja biblioteki curl
192Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com o curl
193Summary(ru.UTF-8): Статические библиотеки для разработки с использованием библиотеки curl
194Summary(uk.UTF-8): Статичні бібліотеки для розробки з використанням бібліотеки curl
1f54b511 195Group: Development/Libraries
6e6a5186 196Requires: %{name}-devel = %{version}-%{release}
1f54b511 197
198%description static
d06d2fe1 199Static version of curl library.
1f54b511 200
d63bcf1b 201%description static -l pl.UTF-8
cec38cdf 202Statyczna wersja biblioteki curl.
b73e2a73 203
d63bcf1b
JR
204%description static -l pt_BR.UTF-8
205Bibliotecas estáticas para desenvolvimento com o curl.
1310544e 206
d63bcf1b
JR
207%description static -l ru.UTF-8
208Этот пакет содержит статическую библиотеку для разработки программ с
209использованием библиотеки curl.
f05b825f 210
d63bcf1b
JR
211%description static -l uk.UTF-8
212Цей пакет містить статичну бібліотеку для розробки програм з
213використанням бібліотеки curl.
f05b825f 214
8a62d0ef
AG
215%package -n fish-completion-%{name}
216Summary: Fish completion for curl command
217Summary(pl.UTF-8): Dopełnianie parametrów w fish dla polecenia curl
218Group: Applications/Shells
219Requires: %{name} = %{version}-%{release}
220Requires: fish
4416762d 221BuildArch: noarch
8a62d0ef
AG
222
223%description -n fish-completion-%{name}
224Fish completion for curl command.
225
226%description -n fish-completion-%{name} -l pl.UTF-8
227Dopełnianie parametrów w fish dla polecenia curl.
228
e80259d2
JB
229%package -n zsh-completion-curl
230Summary: ZSH completion for curl command
231Summary(pl.UTF-8): Dopełnianianie parametrów w ZSH dla polecenia curl
232Group: Applications/Shells
233Requires: %{name} = %{version}-%{release}
234Requires: zsh
4416762d 235BuildArch: noarch
e80259d2
JB
236
237%description -n zsh-completion-curl
238ZSH completion for curl command.
239
240%description -n zsh-completion-curl -l pl.UTF-8
241Dopełnianianie parametrów w ZSH dla polecenia curl.
242
81714278 243%prep
13caa23a 244%setup -q
d0cec3a8 245%patch0 -p1
d4dc980e 246%patch1 -p1
81714278 247
358ad66a 248%{__rm} m4/lt*.m4 m4/libtool.m4
36cd7270 249
81714278 250%build
c091c0ac 251%{__libtoolize}
03613829 252%{__aclocal} -I m4
d4dc980e
AM
253%{__autoconf}
254%{__autoheader}
c091c0ac 255%{__automake}
e566d906 256%configure \
ef822e11 257 ac_cv_header_gss_h=no \
3b3132c7 258 %{__enable_disable static_libs static} \
e80259d2 259 %{__enable_disable ares} \
61894594 260 %{__with_without gsasl libgsasl} \
5ac17805 261 --enable-headers-api \
e80259d2
JB
262 --enable-ipv6 \
263 %{__enable_disable ldap} \
264 %{__enable_disable ldap ldaps} \
265 --disable-silent-rules \
68afca49 266 --enable-websockets \
5559a124 267%if %{with ssl}
03613829 268 --with-ca-bundle=/etc/certs/ca-certificates.crt \
5559a124 269%if %{with gnutls}
8210eba8 270 --with-gnutls --without-openssl \
5559a124 271%else
8210eba8 272 --with-openssl=%{_prefix} \
5559a124 273%endif
0eee87e5 274%else
8210eba8 275 --without-ssl \
5559a124 276%endif
8a62d0ef 277 --with-fish-functions-dir=%{fish_compdir} \
38061d22 278 --with-zsh-functions-dir=%{zsh_compdir} \
838a6eda 279 %{__with_without kerberos5 gssapi %{_prefix}} \
838a6eda
JK
280 %{__with_without rtmp librtmp} \
281 %{__with_without http2 nghttp2} \
40f52e62
JB
282 %{__with_without http3 nghttp3} \
283 %{__with_without http3 ngtcp2} \
e80259d2 284 %{__with_without ssh libssh2}
a436679a 285
c2167492 286%{__make}
81714278 287
288%install
5767e1a7 289rm -rf $RPM_BUILD_ROOT
08c6da60 290
56f17d66
AM
291%{__make} install \
292 DESTDIR=$RPM_BUILD_ROOT
293
4f6d4393
JB
294%{__make} -C scripts install \
295 DESTDIR=$RPM_BUILD_ROOT
296
08c6da60
JB
297# obsoleted by pkg-config
298%{__rm} $RPM_BUILD_ROOT%{_libdir}/libcurl.la
299
34ca770a 300# no longer in upstream but a lot of apps tries to include it so we create fake one
925b36ff
AM
301[ -e $RPM_BUILD_ROOT%{_includedir}/curl/types.h ] && exit 1
302echo '#warning curl/types.h IS OBSOLETE FROM 2004. STOP USING IT' > $RPM_BUILD_ROOT%{_includedir}/curl/types.h
34ca770a 303
81714278 304%clean
305rm -rf $RPM_BUILD_ROOT
81714278 306
3fb47407
ER
307%post libs -p /sbin/ldconfig
308%postun libs -p /sbin/ldconfig
1f54b511 309
81714278 310%files
5767e1a7 311%defattr(644,root,root,755)
4c2e4e93 312%doc CHANGES COPYING README docs/{BUGS.md,FAQ,FEATURES.md,HISTORY.md,KNOWN_BUGS,SSLCERTS.md,THANKS,TODO,TheArtOfHttpScripting.md}
c091c0ac 313%attr(755,root,root) %{_bindir}/curl
c091c0ac 314%{_mandir}/man1/curl.1*
1f54b511 315
814b6f7d
JB
316%files libs
317%defattr(644,root,root,755)
318%attr(755,root,root) %{_libdir}/libcurl.so.*.*.*
b3964ccb 319%attr(755,root,root) %ghost %{_libdir}/libcurl.so.4
814b6f7d 320
1f54b511 321%files devel
322%defattr(644,root,root,755)
c6b65fdb 323%doc docs/{CONTRIBUTE.md,INTERNALS.md}
c091c0ac
JB
324%attr(755,root,root) %{_bindir}/curl-config
325%attr(755,root,root) %{_libdir}/libcurl.so
c091c0ac 326%{_includedir}/curl
8ad78925 327%{_pkgconfigdir}/libcurl.pc
1399f3ff 328%{_aclocaldir}/libcurl.m4
c091c0ac 329%{_mandir}/man1/curl-config.1*
b3964ccb
JB
330%{_mandir}/man3/curl_*.3*
331%{_mandir}/man3/libcurl*.3*
0efd10e8 332%{_mandir}/man3/CURLINFO_*.3*
67744768 333%{_mandir}/man3/CURLOPT_*.3*
eb7a78c8 334%{_mandir}/man3/CURLMOPT_*.3*
fae826e9 335%{_mandir}/man3/CURLSHOPT_*.3*
1f54b511 336
3b3132c7 337%if %{with static_libs}
1f54b511 338%files static
339%defattr(644,root,root,755)
c091c0ac 340%{_libdir}/libcurl.a
3b3132c7 341%endif
e80259d2 342
8a62d0ef
AG
343%files -n fish-completion-%{name}
344%defattr(644,root,root,755)
4416762d 345%{fish_compdir}/curl.fish
8a62d0ef 346
e80259d2
JB
347%files -n zsh-completion-curl
348%defattr(644,root,root,755)
38061d22 349%{zsh_compdir}/_curl
This page took 0.524227 seconds and 4 git commands to generate.