]>
Commit | Line | Data |
---|---|---|
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 | 21 | Summary: A utility for getting files from remote servers (FTP, HTTP, and others) |
ce380d80 ER |
22 | Summary(es.UTF-8): Un cliente para bajar archivos de servidores (FTP, HTTP, y otros) |
23 | Summary(pl.UTF-8): Narzędzie do ściągania plików z serwerów (FTP, HTTP i innych) | |
24 | Summary(pt_BR.UTF-8): Busca URL (suporta FTP, TELNET, LDAP, GOPHER, DICT, HTTP e HTTPS) | |
25 | Summary(ru.UTF-8): Утилита для получения файлов с серверов FTP, HTTP и других | |
26 | Summary(uk.UTF-8): Утиліта для отримання файлів з серверів FTP, HTTP та інших | |
5767e1a7 | 27 | Name: curl |
38061d22 | 28 | Version: 8.7.1 |
5a3e596f | 29 | Release: 1 |
c091c0ac | 30 | License: MIT-like |
5767e1a7 | 31 | Group: Applications/Networking |
c3310c39 | 32 | Source0: https://curl.se/download/%{name}-%{version}.tar.xz |
38061d22 | 33 | # Source0-md5: f4f37253c5f1ad9ee85fa6215fdfeb42 |
d0cec3a8 JB |
34 | Patch0: %{name}-ac.patch |
35 | Patch1: %{name}-krb5flags.patch | |
c3310c39 | 36 | URL: https://curl.se/ |
c091c0ac | 37 | BuildRequires: autoconf >= 2.57 |
66cf63f1 | 38 | BuildRequires: 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 | 42 | BuildRequires: libbrotli-devel >= 1.0.0 |
04f3f89d | 43 | BuildRequires: libidn2-devel |
e80259d2 | 44 | BuildRequires: libpsl-devel |
9defadab | 45 | %{?with_rtmp:BuildRequires: librtmp-devel} |
797e6289 | 46 | %{?with_ssh:BuildRequires: libssh2-devel >= 1.11.0} |
c091c0ac | 47 | BuildRequires: libtool |
0f90f9c0 | 48 | BuildRequires: 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 | 54 | BuildRequires: pkgconfig |
de17b215 | 55 | BuildRequires: rpm >= 4.4.9-56 |
4416762d | 56 | BuildRequires: rpm-build >= 4.6 |
838a6eda | 57 | BuildRequires: rpmbuild(macros) >= 1.527 |
5559a124 AM |
58 | %if %{with ssl} |
59 | %if %{with gnutls} | |
e37f03dc | 60 | BuildRequires: gnutls-devel >= 3.1.10 |
5559a124 | 61 | %else |
549c5328 | 62 | BuildRequires: openssl-devel >= 1.0.1 |
5559a124 AM |
63 | %endif |
64 | %endif | |
d04a5e91 | 65 | BuildRequires: tar >= 1:1.22 |
eef5da07 | 66 | BuildRequires: xz |
6903f0dc | 67 | BuildRequires: zlib-devel |
0ee795f8 | 68 | BuildRequires: zstd-devel |
3fb47407 | 69 | Requires: %{name}-libs = %{version}-%{release} |
ada22f67 | 70 | Obsoletes: libcurl2 < 7.12 |
8aa4e5ec | 71 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
81714278 | 72 | |
73 | %description | |
655b91ad | 74 | cURL is a tool for getting files with URL syntax, supporting FTP, |
75 | HTTP, HTTPS, GOPHER, TELNET, DICT, FILE and LDAP. cURL supports HTTP | |
76 | POST, HTTP PUT, FTP uploading, HTTP form based upload, proxies, | |
77 | cookies, user+password authentication and a busload of other useful | |
78 | tricks. The main use for curl is when you want to get or send files | |
79 | automatically to or from a site using one of the supported protocols. | |
80 | ||
81 | cURL is a tool for getting files from FTP, HTTP, Gopher, Telnet, and | |
82 | Dict servers, using any of the supported protocols. cURL is designed | |
83 | to work without user interaction or any kind of interactivity. cURL | |
84 | offers many useful capabilities, like proxy support, user | |
e566d906 | 85 | authentication, FTP upload, HTTP post, and file transfer resume. |
81714278 | 86 | |
d63bcf1b JR |
87 | %description -l pl.UTF-8 |
88 | cURL jest narzędziem do ściągania plików o składni URL. Obsługuje FTP, | |
89 | HTTP, HTTPS, GOPHER, TELNET, DICT, FILE i LDAP. cURL obsługuje również | |
90 | HTTP POST, HTTP PUT, załadowywanie (uploading) FTP, załadowywanie HTTP | |
655b91ad | 91 | oparte na formularzu, serwery proksy, ciasteczka, autoryzacja |
d63bcf1b JR |
92 | użytkownik/hasło oraz wiele innych użytecznych sztuczek. Curla używa |
93 | się głównie wtedy, kiedy chce się automatycznie ściągnąć lub wysłać | |
94 | pliki 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 |
98 | Curl é um cliente para baixar/enviar arquivos de/para servidores | |
99 | usando um dos protocolos suportados. É projetado para funcionar sem a | |
100 | interação do usuário. | |
1310544e | 101 | |
d63bcf1b JR |
102 | Curl trabalha com proxy, autenticação, FTP put, HTTP post, e pode |
103 | continuar transferências interrompidas, e mais... | |
1310544e | 104 | |
d63bcf1b JR |
105 | %description -l ru.UTF-8 |
106 | curl - это клиент с множеством поддерживаемых протоколов для получения | |
107 | файлов с серверов, спроектированный для работы как в неинтерактивном | |
108 | режиме, так и с возможностью диалога с пользователем. | |
f05b825f | 109 | |
d63bcf1b JR |
110 | curl поддерживает много полезных возможностей, среди которых поддержка |
111 | прокси, авторизация пользователя, закачивание по FTP, поддержка HTTP | |
112 | POST, восстановление прерванной пересылки и многое другое. | |
f05b825f | 113 | |
d63bcf1b JR |
114 | curl - це кл╕╓нт з багатьма п╕дтримуваними протоколами для отримання |
115 | файл╕в з сервер╕в, спроектований для роботи як в не╕нтерактивному | |
116 | режим╕, так ╕ з можлив╕стю д╕алогу з користувачем. | |
f05b825f | 117 | |
d63bcf1b JR |
118 | curl п╕дтриму╓ багато корисних можливостей, серед яких п╕дтримка |
119 | прокс╕, авторизац╕я користувача, в╕двантаження по FTP, HTTP POST, | |
120 | в╕дновлення перервано╖ пересилки та багато ╕ншого. | |
f05b825f | 121 | |
814b6f7d JB |
122 | %package libs |
123 | Summary: curl library | |
ce380d80 | 124 | Summary(pl.UTF-8): Biblioteka curl |
814b6f7d | 125 | Group: 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 | 131 | Requires: libbrotli >= 1.0.0 |
549c5328 | 132 | Requires: openssl >= 1.0.1 |
fddc44fa | 133 | %endif |
dfeb0d8d PG |
134 | Suggests: ca-certificates |
135 | Conflicts: ca-certificates < 20080809-4 | |
814b6f7d JB |
136 | |
137 | %description libs | |
138 | curl library. | |
139 | ||
d63bcf1b | 140 | %description libs -l pl.UTF-8 |
814b6f7d JB |
141 | Biblioteka curl. |
142 | ||
1f54b511 | 143 | %package devel |
144 | Summary: Header files and development documentation for curl library | |
ce380d80 ER |
145 | Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja do biblioteki curl |
146 | Summary(pt_BR.UTF-8): Arquivos de cabeçalho e bibliotecas de desenvolvimento | |
147 | Summary(ru.UTF-8): Файлы для разработки с использованием библиотеки curl | |
148 | Summary(uk.UTF-8): Файли для розробки з використанням бібліотеки curl | |
1f54b511 | 149 | Group: Development/Libraries |
fc3747d0 | 150 | Requires: %{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 | 154 | Requires: libbrotli-devel >= 1.0.0 |
04f3f89d | 155 | Requires: libidn2-devel |
e80259d2 | 156 | Requires: 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 | 163 | Requires: gnutls-devel >= 3.1.10 |
5559a124 AM |
164 | %else |
165 | Requires: openssl-devel >= 0.9.7c | |
166 | %endif | |
167 | %endif | |
5e1699d5 | 168 | Requires: zlib-devel |
0ee795f8 | 169 | Requires: zstd-devel |
ada22f67 | 170 | Obsoletes: libcurl2-devel < 7.12 |
1f54b511 | 171 | |
172 | %description devel | |
173 | Header files and development documentation for curl library. | |
174 | ||
d63bcf1b JR |
175 | %description devel -l pl.UTF-8 |
176 | Pliki nagłówkowe i dokumentacja do biblioteki curl. | |
cec38cdf | 177 | |
d63bcf1b JR |
178 | %description devel -l pt_BR.UTF-8 |
179 | Arquivos 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 |
190 | Summary: Static version of curl library | |
ce380d80 ER |
191 | Summary(pl.UTF-8): Statyczna wersja biblioteki curl |
192 | Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com o curl | |
193 | Summary(ru.UTF-8): Статические библиотеки для разработки с использованием библиотеки curl | |
194 | Summary(uk.UTF-8): Статичні бібліотеки для розробки з використанням бібліотеки curl | |
1f54b511 | 195 | Group: Development/Libraries |
6e6a5186 | 196 | Requires: %{name}-devel = %{version}-%{release} |
1f54b511 | 197 | |
198 | %description static | |
d06d2fe1 | 199 | Static version of curl library. |
1f54b511 | 200 | |
d63bcf1b | 201 | %description static -l pl.UTF-8 |
cec38cdf | 202 | Statyczna wersja biblioteki curl. |
b73e2a73 | 203 | |
d63bcf1b JR |
204 | %description static -l pt_BR.UTF-8 |
205 | Bibliotecas 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} |
216 | Summary: Fish completion for curl command | |
217 | Summary(pl.UTF-8): Dopełnianie parametrów w fish dla polecenia curl | |
218 | Group: Applications/Shells | |
219 | Requires: %{name} = %{version}-%{release} | |
220 | Requires: fish | |
4416762d | 221 | BuildArch: noarch |
8a62d0ef AG |
222 | |
223 | %description -n fish-completion-%{name} | |
224 | Fish completion for curl command. | |
225 | ||
226 | %description -n fish-completion-%{name} -l pl.UTF-8 | |
227 | Dopełnianie parametrów w fish dla polecenia curl. | |
228 | ||
e80259d2 JB |
229 | %package -n zsh-completion-curl |
230 | Summary: ZSH completion for curl command | |
231 | Summary(pl.UTF-8): Dopełnianianie parametrów w ZSH dla polecenia curl | |
232 | Group: Applications/Shells | |
233 | Requires: %{name} = %{version}-%{release} | |
234 | Requires: zsh | |
4416762d | 235 | BuildArch: noarch |
e80259d2 JB |
236 | |
237 | %description -n zsh-completion-curl | |
238 | ZSH completion for curl command. | |
239 | ||
240 | %description -n zsh-completion-curl -l pl.UTF-8 | |
241 | Dopeł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 | 289 | rm -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 |
302 | echo '#warning curl/types.h IS OBSOLETE FROM 2004. STOP USING IT' > $RPM_BUILD_ROOT%{_includedir}/curl/types.h | |
34ca770a | 303 | |
81714278 | 304 | %clean |
305 | rm -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 |