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