1 |
%define major 4 |
2 |
%define libname %mklibname %{name} %{major} |
3 |
%define develname %mklibname %{name} -d |
4 |
%define with_tests 1 |
5 |
|
6 |
Summary: Gets a file from a FTP, GOPHER or HTTP server |
7 |
Name: curl |
8 |
Version: 7.40.0 |
9 |
%define subrel 14 |
10 |
Release: %mkrel 3 |
11 |
Epoch: 1 |
12 |
License: BSD-like |
13 |
Group: Networking/Other |
14 |
URL: http://curl.haxx.se |
15 |
Source0: http://curl.haxx.se/download/%{name}-%{version}.tar.lzma |
16 |
Source1: http://curl.haxx.se/download/%{name}-%{version}.tar.lzma.asc |
17 |
Patch4: %{name}-7.30.0-multilib.patch |
18 |
Patch6: %{name}-7.26.0-do-not-build-examples.patch |
19 |
Patch7: %{name}-7.36.0-debug.patch |
20 |
Patch8: curl-7.41.0-CVE-2015-3143.patch |
21 |
Patch9: curl-7.41.0-CVE-2015-3144.patch |
22 |
Patch10: curl-7.41.0-CVE-2015-3145.patch |
23 |
Patch11: curl-7.41.0-CVE-2015-3148.patch |
24 |
Patch12: curl-7.42.0-CVE-2015-3153.patch |
25 |
Patch13: curl-7.42.1-CVE-2015-3236.patch |
26 |
Patch14: curl-7.42.1-CVE-2015-3237.patch |
27 |
Patch15: curl-7.40.0-CVE-2016-0755.patch |
28 |
Patch16: curl-7.40.0-git-cookie-expire.patch |
29 |
Patch17: curl-7.47.1-CVE-2016-5419.patch |
30 |
Patch18: curl-7.47.1-CVE-2016-5420.patch |
31 |
Patch19: curl-7.47.1-CVE-2016-5421.patch |
32 |
Patch20: curl-7.40.0-CVE-2016-7167.patch |
33 |
Patch21: curl-7.50.3-CVE-2016-8615.patch |
34 |
Patch22: curl-7.40.0-CVE-2016-8616.patch |
35 |
Patch23: curl-7.40.0-CVE-2016-8617.patch |
36 |
Patch24: curl-7.50.3-CVE-2016-8618.patch |
37 |
Patch25: curl-7.50.3-CVE-2016-8619.patch |
38 |
Patch26: curl-7.40.0-CVE-2016-8620.patch |
39 |
Patch27: curl-7.40.0-CVE-2016-8621.patch |
40 |
Patch28: curl-7.40.0-CVE-2016-8622.patch |
41 |
Patch29: curl-7.40.0-CVE-2016-8623.patch |
42 |
Patch30: curl-7.40.0-CVE-2016-8624.patch |
43 |
Patch31: curl-7.40.0-CVE-2016-9586.patch |
44 |
Patch32: curl-7.40.0-CVE-2017-1000100.patch |
45 |
Patch33: curl-7.40.0-CVE-2017-1000101.patch |
46 |
Patch34: curl-7.40.0-CVE-2017-7407.patch |
47 |
Patch35: curl-7.40.0-CVE-2017-1000254.patch |
48 |
Patch36: curl-7.56.0-CVE-2017-1000257.patch |
49 |
Patch37: curl-7.56.1.CVE-2017-8816.patch |
50 |
Patch38: curl-7.40.0-CVE-2017-8817.patch |
51 |
|
52 |
BuildRequires: groff-for-man |
53 |
BuildRequires: openssl-devel |
54 |
BuildRequires: zlib-devel |
55 |
BuildRequires: libssh2-devel |
56 |
BuildRequires: openldap-devel |
57 |
BuildRequires: krb5-devel |
58 |
##BuildRequires: c-ares-devel |
59 |
# (misc) required for testing |
60 |
BuildRequires: stunnel |
61 |
Provides: webfetch |
62 |
Requires: %{libname} = %{epoch}:%{version}-%{release} |
63 |
|
64 |
%description |
65 |
curl is a client to get documents/files from servers, using any of the |
66 |
supported protocols. The command is designed to work without user |
67 |
interaction or any kind of interactivity. |
68 |
|
69 |
curl offers a busload of useful tricks like proxy support, user |
70 |
authentication, ftp upload, HTTP post, file transfer resume and more. |
71 |
|
72 |
This version is compiled with SSL (https) support. |
73 |
|
74 |
%package -n %{libname} |
75 |
Summary: A library of functions for file transfer |
76 |
Group: Networking/Other |
77 |
Requires: rootcerts >= 1:20070713.00 |
78 |
|
79 |
%description -n %{libname} |
80 |
libcurl is a library of functions for sending and receiving files through |
81 |
various protocols, including http and ftp. |
82 |
|
83 |
You should install this package if you plan to use any applications that |
84 |
use libcurl. |
85 |
|
86 |
%package -n %{develname} |
87 |
Summary: Header files and static libraries for libcurl |
88 |
Group: Development/C |
89 |
Requires: %{libname} = %{epoch}:%{version}-%{release} |
90 |
Provides: %{name}-devel = %{epoch}:%{version}-%{release} |
91 |
Provides: lib%{name}-devel = %{epoch}:%{version}-%{release} |
92 |
Provides: libcurl%{major}-devel = %{epoch}:%{version}-%{release} |
93 |
Obsoletes: %mklibname %{name} 4 -d |
94 |
Provides: %mklibname %{name} 4 -d |
95 |
|
96 |
%description -n %{develname} |
97 |
libcurl is a library of functions for sending and receiving files through |
98 |
various protocols, including http and ftp. |
99 |
|
100 |
You should install this package if you wish to develop applications that |
101 |
use libcurl. |
102 |
|
103 |
%package examples |
104 |
Summary: Example files for %{name} development |
105 |
Group: Development/C |
106 |
BuildArch: noarch |
107 |
Requires: %{name}-devel = %{epoch}:%{version}-%{release} |
108 |
|
109 |
%description examples |
110 |
Example files for %{name} development. |
111 |
|
112 |
%prep |
113 |
%setup -q |
114 |
%apply_patches |
115 |
|
116 |
%build |
117 |
autoreconf -fiv |
118 |
|
119 |
%configure2_5x \ |
120 |
--disable-static \ |
121 |
--with-ssl \ |
122 |
--without-gnutls \ |
123 |
--with-zlib \ |
124 |
--with-lber-lib=lber \ |
125 |
--with-ssh2 \ |
126 |
--with-random \ |
127 |
--enable-hidden-symbols \ |
128 |
--enable-optimize \ |
129 |
--enable-nonblocking \ |
130 |
--enable-thread \ |
131 |
--enable-crypto-auth \ |
132 |
--enable-libgcc \ |
133 |
--enable-ldaps \ |
134 |
--enable-ipv6 \ |
135 |
--with-ca-bundle=%{_sysconfdir}/pki/tls/certs/ca-bundle.crt \ |
136 |
--with-gssapi=%{_prefix} \ |
137 |
--disable-ares |
138 |
|
139 |
# we don't want them in curl-examples: |
140 |
rm -r docs/examples/.deps |
141 |
|
142 |
%make |
143 |
|
144 |
%if %with_tests |
145 |
# disable tests that want to connect/run sshd, which is quite impossible |
146 |
%check |
147 |
make test TEST_Q='-a -p -v !flaky !SCP !SFTP !SOCKS4 !SOCKS5 !TFTP !198 !2034 !557' |
148 |
%endif |
149 |
|
150 |
%install |
151 |
%makeinstall_std |
152 |
|
153 |
# [july 2008] HACK. to be replaced by a real fix |
154 |
sed -i -e 's!-Wl,--as-needed!!' -e 's!-Wl,--no-undefined!!' %{buildroot}%{_bindir}/%{name}-config |
155 |
sed -i -e 's!-Wl,--as-needed!!' -e 's!-Wl,--no-undefined!!' %{buildroot}%{_libdir}/pkgconfig/*.pc |
156 |
|
157 |
%multiarch_binaries %{buildroot}%{_bindir}/%{name}-config |
158 |
|
159 |
find %{buildroot} -name *.la -delete |
160 |
|
161 |
%files |
162 |
%{_bindir}/curl |
163 |
%{_mandir}/man1/curl.1* |
164 |
|
165 |
%files -n %{libname} |
166 |
%{_libdir}/*.so.%{major}* |
167 |
|
168 |
%files -n %{develname} |
169 |
%doc docs/BUGS docs/KNOWN_BUGS docs/CONTRIBUTE docs/FAQ CHANGES |
170 |
%doc docs/FEATURES docs/RESOURCES docs/TODO docs/THANKS docs/INTERNALS |
171 |
%{_bindir}/curl-config |
172 |
%{multiarch_bindir}/curl-config |
173 |
%{_datadir}/aclocal/libcurl.m4 |
174 |
%{_libdir}/libcurl.so |
175 |
%{_includedir}/curl |
176 |
%{_libdir}/pkgconfig/*.pc |
177 |
%{_mandir}/man1/curl-config.1* |
178 |
%{_mandir}/man3/* |
179 |
|
180 |
%files examples |
181 |
%defattr(-,root,root,644) |
182 |
%doc docs/examples |