Accepting request 506883 from devel:libraries:c_c++
1 OBS-URL: https://build.opensuse.org/request/show/506883 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/curl?expand=0&rev=124
This commit is contained in:
commit
83a85c14f7
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:cd6aa6039f13e0b06e0a93e1b93754f6dc07f444812bb6c32be75a8f28c4070a
|
||||
size 2084912
|
@ -1,11 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEzBAABCgAdFiEEJ+3q8i86vOtQ25oSXMkI/bceEsIFAlj2+VgACgkQXMkI/bce
|
||||
EsL64ggArqbQBdEOW1mDk2+89N7cvUH3D464INWi+E8ub3UZagOy0819VaHw7Zkn
|
||||
1ijkK5FS/FU97Ep8PHOpgAQgjMBFlolzTgRuv7rQEJLTiD77c85o/c4wMJ5rheXJ
|
||||
I3hReQUUEO7B+g+aC+qca/pelRdvKw84h9YI1me0yL5+M6rqKuY8kvFhISnTm2q8
|
||||
wqGbhTIoeil2nPvTXpKmcNu+3Uvv38luEGxFn+NpiiT1hGWLc82n4aLXISV3sjUu
|
||||
kBwCop+H3I2/KVIMtJ/BjlDEkgqveHfClIVAaw7J89PhuVXgLQhPhTrNhY6xrs65
|
||||
JW0avsaMq7vEkTwY4K4+wfbl07QVJg==
|
||||
=EHd1
|
||||
-----END PGP SIGNATURE-----
|
3
curl-7.54.1.tar.lzma
Normal file
3
curl-7.54.1.tar.lzma
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2b7af34d4900887e0b4e0a9f545b9511ff774d07151ae4976485060d3e1bdb6e
|
||||
size 2101798
|
11
curl-7.54.1.tar.lzma.asc
Normal file
11
curl-7.54.1.tar.lzma.asc
Normal file
@ -0,0 +1,11 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
|
||||
iQEzBAABCgAdFiEEJ+3q8i86vOtQ25oSXMkI/bceEsIFAllA1CcACgkQXMkI/bce
|
||||
EsIvtQf8CSC7sFHaJzQY0JqrGQwbtO6DT5OShv1lEHlzg/2KC8/yp94n/U9eBkdt
|
||||
7/EPnFJ6hY+CVCMSv+LvpEyNTbkqBjwtshlDQTgDiPkSt265Z3qxayITN8fdDZnJ
|
||||
ylnDb9c1InprXuqLlhbtWILC25ZcC39dQFWIJcsmfd3ylml4VK7Z9tEhEN8W71MR
|
||||
OaQyqSu9jjO5nTof7dVu2aAhG50EoqjuCKUuYfWIJcEM2Lo4RDnicZNrZaOyxuu2
|
||||
EKeE9lmnNejgUzPN1WZ2ySocDdZzdA5CTjAbaRwAXBT840OZSUEqktrR4C2ECrTq
|
||||
rbhBlEwUKuPNvGpkGymaHf6vQFAqGQ==
|
||||
=gmuC
|
||||
-----END PGP SIGNATURE-----
|
91
curl-invalid-free.patch
Normal file
91
curl-invalid-free.patch
Normal file
@ -0,0 +1,91 @@
|
||||
From 19e775b499c5c3cc7ec717af7c1e764f42817369 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Stenberg <daniel@haxx.se>
|
||||
Date: Sun, 18 Jun 2017 17:54:55 +0200
|
||||
Subject: [PATCH] PIPELINING_SERVER_BL: cleanup the internal list use
|
||||
|
||||
The list was freed incorrectly since the llist refactor of
|
||||
cbae73e1dd959. Aded test 1550 to verify that it works and avoid future
|
||||
regressions.
|
||||
|
||||
Reported-by: Pascal Terjan
|
||||
|
||||
Fixes #1584
|
||||
---
|
||||
lib/pipeline.c | 37 +++++++++++++++----------------------
|
||||
tests/data/Makefile.inc | 1 +
|
||||
tests/data/test1550 | 29 +++++++++++++++++++++++++++++
|
||||
tests/libtest/Makefile.inc | 8 ++++++++
|
||||
tests/libtest/lib1550.c | 39 +++++++++++++++++++++++++++++++++++++++
|
||||
5 files changed, 92 insertions(+), 22 deletions(-)
|
||||
create mode 100644 tests/data/test1550
|
||||
create mode 100644 tests/libtest/lib1550.c
|
||||
|
||||
diff --git a/lib/pipeline.c b/lib/pipeline.c
|
||||
index b8d2037452..4d41b04139 100644
|
||||
--- a/lib/pipeline.c
|
||||
+++ b/lib/pipeline.c
|
||||
@@ -230,28 +230,27 @@ CURLMcode Curl_pipeline_set_site_blacklist(char **sites,
|
||||
return CURLM_OK;
|
||||
}
|
||||
|
||||
+struct blacklist_node {
|
||||
+ struct curl_llist_element list;
|
||||
+ char server_name[1];
|
||||
+};
|
||||
+
|
||||
bool Curl_pipeline_server_blacklisted(struct Curl_easy *handle,
|
||||
char *server_name)
|
||||
{
|
||||
if(handle->multi && server_name) {
|
||||
- struct curl_llist *blacklist =
|
||||
+ struct curl_llist *list =
|
||||
Curl_multi_pipelining_server_bl(handle->multi);
|
||||
|
||||
- if(blacklist) {
|
||||
- struct curl_llist_element *curr;
|
||||
-
|
||||
- curr = blacklist->head;
|
||||
- while(curr) {
|
||||
- char *bl_server_name;
|
||||
-
|
||||
- bl_server_name = curr->ptr;
|
||||
- if(strncasecompare(bl_server_name, server_name,
|
||||
- strlen(bl_server_name))) {
|
||||
- infof(handle, "Server %s is blacklisted\n", server_name);
|
||||
- return TRUE;
|
||||
- }
|
||||
- curr = curr->next;
|
||||
+ struct curl_llist_element *e = list->head;
|
||||
+ while(e) {
|
||||
+ struct blacklist_node *bl = (struct blacklist_node *)e;
|
||||
+ if(strncasecompare(bl->server_name, server_name,
|
||||
+ strlen(bl->server_name))) {
|
||||
+ infof(handle, "Server %s is blacklisted\n", server_name);
|
||||
+ return TRUE;
|
||||
}
|
||||
+ e = e->next;
|
||||
}
|
||||
|
||||
DEBUGF(infof(handle, "Server %s is not blacklisted\n", server_name));
|
||||
@@ -259,11 +258,6 @@ bool Curl_pipeline_server_blacklisted(struct Curl_easy *handle,
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
-struct blacklist_node {
|
||||
- struct curl_llist_element list;
|
||||
- char server_name[1];
|
||||
-};
|
||||
-
|
||||
CURLMcode Curl_pipeline_set_server_blacklist(char **servers,
|
||||
struct curl_llist *list)
|
||||
{
|
||||
@@ -286,8 +280,7 @@ CURLMcode Curl_pipeline_set_server_blacklist(char **servers,
|
||||
}
|
||||
strcpy(n->server_name, *servers);
|
||||
|
||||
- Curl_llist_insert_next(list, list->tail, n->server_name,
|
||||
- &n->list);
|
||||
+ Curl_llist_insert_next(list, list->tail, n, &n->list);
|
||||
servers++;
|
||||
}
|
||||
}
|
2029
curl-mini.changes
Normal file
2029
curl-mini.changes
Normal file
File diff suppressed because it is too large
Load Diff
229
curl-mini.spec
Normal file
229
curl-mini.spec
Normal file
@ -0,0 +1,229 @@
|
||||
#
|
||||
# spec file for package curl-mini
|
||||
#
|
||||
# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
##### WARNING: please do not edit this auto generated spec file. Use the curl.spec! #####
|
||||
%define bootstrap 1
|
||||
##### WARNING: please do not edit this auto generated spec file. Use the curl.spec! #####
|
||||
%define mini -mini
|
||||
|
||||
%bcond_with mozilla_nss
|
||||
# need ssl always for python-pycurl
|
||||
%bcond_without openssl
|
||||
|
||||
%if 0%{?bootstrap}
|
||||
%bcond_with testsuite
|
||||
%else
|
||||
%bcond_without testsuite
|
||||
%endif
|
||||
|
||||
Name: curl-mini
|
||||
Version: 7.54.1
|
||||
Release: 0
|
||||
Summary: A Tool for Transferring Data from URLs
|
||||
License: curl
|
||||
Group: Productivity/Networking/Web/Utilities
|
||||
Url: https://curl.haxx.se/
|
||||
Source: https://curl.haxx.se/download/curl-%{version}.tar.lzma
|
||||
Source2: https://curl.haxx.se/download/curl-%{version}.tar.lzma.asc
|
||||
Source3: baselibs.conf
|
||||
Source4: https://daniel.haxx.se/mykey.asc#/curl.keyring
|
||||
Patch0: libcurl-ocloexec.patch
|
||||
Patch1: dont-mess-with-rpmoptflags.diff
|
||||
Patch2: curl-secure-getenv.patch
|
||||
Patch3: curl-invalid-free.patch
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
%if !0%{?bootstrap}
|
||||
BuildRequires: groff
|
||||
BuildRequires: krb5-mini-devel
|
||||
BuildRequires: libidn2-devel
|
||||
BuildRequires: lzma
|
||||
BuildRequires: openldap2-devel
|
||||
BuildRequires: pkgconfig(libmetalink)
|
||||
BuildRequires: pkgconfig(libnghttp2)
|
||||
BuildRequires: pkgconfig(libpsl)
|
||||
BuildRequires: pkgconfig(libssh2)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
%else
|
||||
Requires: this-is-only-for-build-envs
|
||||
Conflicts: curl
|
||||
# The -mini package is sufficient for the build hosts
|
||||
Provides: curl = %{version}
|
||||
%endif
|
||||
Requires: libcurl4%{?mini} = %{version}
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%if %{with openssl}
|
||||
BuildRequires: pkgconfig(libssl)
|
||||
%endif
|
||||
%if %{with mozilla_nss}
|
||||
BuildRequires: mozilla-nss-devel
|
||||
%endif
|
||||
#BuildRequires: openssh
|
||||
%if 0%{?_with_stunnel:1}
|
||||
# used by the testsuite
|
||||
BuildRequires: stunnel
|
||||
%endif
|
||||
# bug437293
|
||||
%ifarch ppc64
|
||||
Obsoletes: curl-64bit
|
||||
%endif
|
||||
|
||||
%description
|
||||
Curl is a client to get documents and files from or send documents to a
|
||||
server using any of the supported protocols (HTTP, HTTPS, FTP, FTPS,
|
||||
TFTP, DICT, TELNET, LDAP, or FILE). The command is designed to work
|
||||
without user interaction or any kind of interactivity.
|
||||
|
||||
%package -n libcurl4%{?mini}
|
||||
Summary: Version 4 of cURL shared library
|
||||
Group: Productivity/Networking/Web/Utilities
|
||||
%if 0%{?bootstrap}
|
||||
Requires: this-is-only-for-build-envs
|
||||
Conflicts: libcurl4
|
||||
%endif
|
||||
|
||||
%description -n libcurl4%{?mini}
|
||||
The cURL shared library version 4 for accessing data using different
|
||||
network protocols.
|
||||
|
||||
%package -n libcurl%{?mini}-devel
|
||||
Summary: A Tool for Transferring Data from URLs
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: glibc-devel
|
||||
Requires: libcurl4%{?mini} = %{version}
|
||||
# curl-devel (v 7.15.5) was last used in 10.2
|
||||
Provides: curl-devel <= 7.15.5
|
||||
Obsoletes: curl-devel < 7.16.2
|
||||
%if 0%{?bootstrap}
|
||||
Requires: this-is-only-for-build-envs
|
||||
Provides: libcurl-devel = %{version}-%{release}
|
||||
Conflicts: libcurl-devel
|
||||
%endif
|
||||
|
||||
%description -n libcurl%{?mini}-devel
|
||||
Curl is a client to get documents and files from or send documents to a
|
||||
server using any of the supported protocols (HTTP, HTTPS, FTP, GOPHER,
|
||||
DICT, TELNET, LDAP, or FILE). The command is designed to work without
|
||||
user interaction or any kind of interactivity.
|
||||
|
||||
%prep
|
||||
%setup -q -n curl-%version
|
||||
%patch0
|
||||
%patch1
|
||||
%patch2
|
||||
%patch3 -p1
|
||||
|
||||
%build
|
||||
# curl complains if macro definition is contained in CFLAGS
|
||||
# see m4/xc-val-flgs.m4
|
||||
CPPFLAGS="-D_FORTIFY_SOURCE=2"
|
||||
CFLAGS=$(echo "%{optflags}" | sed -e 's/-D_FORTIFY_SOURCE=2//')
|
||||
export CPPFLAGS CFLAGS
|
||||
export CFLAGS="$CFLAGS -fPIE"
|
||||
export LDFLAGS="$LDFLAGS -pie"
|
||||
autoreconf -fiv
|
||||
# local hack to make curl-config --libs stop printing libraries it depends on
|
||||
# (currently, libtool sets link_all_deplibs=(yes|unknown) everywhere,
|
||||
# will hopefully change in the future)
|
||||
sed -i 's/\(link_all_deplibs=\)unknown/\1no/' configure
|
||||
%configure \
|
||||
--enable-ipv6 \
|
||||
%if %{with openssl}
|
||||
--with-ssl \
|
||||
--with-ca-fallback \
|
||||
--without-ca-path \
|
||||
--without-ca-bundle \
|
||||
%else
|
||||
--without-ssl \
|
||||
%if %{with mozilla_nss}
|
||||
--with-nss \
|
||||
%endif
|
||||
%endif
|
||||
%if !0%{?bootstrap}
|
||||
--with-gssapi=%{_libexecdir}/mit \
|
||||
--with-libidn2 \
|
||||
--with-libssh2 \
|
||||
--with-libmetalink \
|
||||
%endif
|
||||
--enable-hidden-symbols \
|
||||
--disable-static \
|
||||
--enable-threaded-resolver
|
||||
|
||||
# if this fails, the above sed hack did not work
|
||||
./libtool --config | grep -q link_all_deplibs=no
|
||||
# enable-hidden-symbols needs gcc4 and causes that curl exports only its API
|
||||
make %{?_smp_mflags} V=1
|
||||
|
||||
%if %{with testsuite}
|
||||
%check
|
||||
pushd tests
|
||||
make %{?_smp_mflags}
|
||||
# make sure the testsuite runs don't race on MP machines in autobuild
|
||||
if test -z "$BUILD_INCARNATION" -a -r /.buildenv; then
|
||||
. /.buildenv
|
||||
fi
|
||||
if test -z "$BUILD_INCARNATION"; then
|
||||
BUILD_INCARNATION=0
|
||||
fi
|
||||
|
||||
base=$((8990 + $BUILD_INCARNATION * 20))
|
||||
# bug940009 do not run flaky tests for any architecture
|
||||
# at least test 1510 do fail for i586 and ppc64le
|
||||
perl ./runtests.pl -a -b$base '!flaky' || exit
|
||||
|
||||
popd
|
||||
%endif
|
||||
|
||||
%install
|
||||
%make_install
|
||||
rm -f %{buildroot}%{_libdir}/libcurl.la
|
||||
install -Dm 0644 docs/libcurl/libcurl.m4 %{buildroot}%{_datadir}/aclocal/libcurl.m4
|
||||
pushd scripts
|
||||
make %{?_smp_mflags} DESTDIR=%{buildroot} install
|
||||
popd
|
||||
|
||||
%post -n libcurl4%{?mini} -p /sbin/ldconfig
|
||||
%postun -n libcurl4%{?mini} -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc README RELEASE-NOTES
|
||||
%doc docs/{BUGS,FAQ,FEATURES,MANUAL,RESOURCES,TODO,TheArtOfHttpScripting}
|
||||
%{_bindir}/curl
|
||||
%{_datadir}/zsh/site-functions/_curl
|
||||
%{_mandir}/man1/curl.1%{ext_man}
|
||||
%dir %{_datadir}/zsh
|
||||
%dir %{_datadir}/zsh/site-functions
|
||||
|
||||
%files -n libcurl4%{?mini}
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/libcurl.so.4*
|
||||
|
||||
%files -n libcurl%{?mini}-devel
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/curl-config
|
||||
%{_includedir}/curl
|
||||
%dir %{_datadir}/aclocal/
|
||||
%{_datadir}/aclocal/libcurl.m4
|
||||
%{_libdir}/libcurl.so
|
||||
%{_libdir}/pkgconfig/libcurl.pc
|
||||
%{_mandir}/man1/curl-config.1%{ext_man}
|
||||
%{_mandir}/man3/*
|
||||
%doc docs/libcurl/symbols-in-versions
|
||||
|
||||
%changelog
|
48
curl.changes
48
curl.changes
@ -1,3 +1,51 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 28 13:50:08 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Update License to 'curl' as per review on OBS sr#505976.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jun 23 10:49:11 UTC 2017 - dimstar@opensuse.org
|
||||
|
||||
- Have the -mini packages conflict the real ones.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 20 11:30:01 UTC 2017 - idonmez@suse.com
|
||||
|
||||
- Add curl-invalid-free.patch to fix an invalid free in
|
||||
curl_multi_setopt function.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jun 14 11:19:16 UTC 2017 - idonmez@suse.com
|
||||
|
||||
- Update to 7.54.1
|
||||
Changes:
|
||||
* curl now shows release date in --version output
|
||||
Bugfixes:
|
||||
* Fixes CVE-2017-9502: default protocol drive letter
|
||||
buffer overflow bsc#1044243
|
||||
* openssl: fix memory leak in servercert
|
||||
* curl: set a 100K buffer size by default
|
||||
* nss: do not leak PKCS #11 slot while loading a key
|
||||
* nss: load libnssckbi.so if no other trust is specified
|
||||
* curl: use utimes instead of obsolescent utime when available
|
||||
* url: fixed a memory leak on OOM while setting CURLOPT_BUFFERSIZE
|
||||
* CURLOPT_BUFFERSIZE: 1024 bytes is now the minimum size
|
||||
* curl: non-boolean command line args reject --no- prefixes
|
||||
* telnet: Write full buffer instead of byte-by-byte
|
||||
* curl: remove --environment and tool_writeenv.c
|
||||
* curl: generate the --help output
|
||||
* curl.1: clarify --config
|
||||
* curl.1: mention --oauth2-bearer's argument
|
||||
* ssh: fix memory leak in disconnect due to timeout
|
||||
* redirect: store the "would redirect to" URL when max redirs is reached
|
||||
* file: make speedcheck use current time for checks
|
||||
* urlglob: fix division by zero
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jun 13 13:08:21 UTC 2017 - lnussel@suse.de
|
||||
|
||||
- Create curl-mini for bootstrapping (boo#1042919)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 19 08:17:17 UTC 2017 - idonmez@suse.com
|
||||
|
||||
|
72
curl.spec
72
curl.spec
@ -16,36 +16,54 @@
|
||||
#
|
||||
|
||||
|
||||
%bcond_without openssl
|
||||
%define bootstrap 0
|
||||
%define mini %nil
|
||||
|
||||
%bcond_with mozilla_nss
|
||||
# need ssl always for python-pycurl
|
||||
%bcond_without openssl
|
||||
|
||||
%if 0%{?bootstrap}
|
||||
%bcond_with testsuite
|
||||
%else
|
||||
%bcond_without testsuite
|
||||
%endif
|
||||
|
||||
Name: curl
|
||||
Version: 7.54.0
|
||||
Version: 7.54.1
|
||||
Release: 0
|
||||
Summary: A Tool for Transferring Data from URLs
|
||||
License: BSD-3-Clause and MIT
|
||||
License: curl
|
||||
Group: Productivity/Networking/Web/Utilities
|
||||
Url: https://curl.haxx.se/
|
||||
Source: https://curl.haxx.se/download/%{name}-%{version}.tar.lzma
|
||||
Source2: https://curl.haxx.se/download/%{name}-%{version}.tar.lzma.asc
|
||||
Source: https://curl.haxx.se/download/curl-%{version}.tar.lzma
|
||||
Source2: https://curl.haxx.se/download/curl-%{version}.tar.lzma.asc
|
||||
Source3: baselibs.conf
|
||||
Source4: https://daniel.haxx.se/mykey.asc#/%{name}.keyring
|
||||
Source4: https://daniel.haxx.se/mykey.asc#/curl.keyring
|
||||
Patch0: libcurl-ocloexec.patch
|
||||
Patch1: dont-mess-with-rpmoptflags.diff
|
||||
Patch2: curl-secure-getenv.patch
|
||||
Patch3: curl-invalid-free.patch
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
%if !0%{?bootstrap}
|
||||
BuildRequires: groff
|
||||
BuildRequires: krb5-mini-devel
|
||||
BuildRequires: libidn2-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: lzma
|
||||
BuildRequires: openldap2-devel
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: pkgconfig(libmetalink)
|
||||
BuildRequires: pkgconfig(libnghttp2)
|
||||
BuildRequires: pkgconfig(libpsl)
|
||||
BuildRequires: pkgconfig(libssh2)
|
||||
BuildRequires: pkgconfig(zlib)
|
||||
Requires: libcurl4 = %{version}
|
||||
%else
|
||||
Requires: this-is-only-for-build-envs
|
||||
Conflicts: curl
|
||||
# The -mini package is sufficient for the build hosts
|
||||
Provides: curl = %{version}
|
||||
%endif
|
||||
Requires: libcurl4%{?mini} = %{version}
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
%if %{with openssl}
|
||||
BuildRequires: pkgconfig(libssl)
|
||||
@ -69,34 +87,44 @@ server using any of the supported protocols (HTTP, HTTPS, FTP, FTPS,
|
||||
TFTP, DICT, TELNET, LDAP, or FILE). The command is designed to work
|
||||
without user interaction or any kind of interactivity.
|
||||
|
||||
%package -n libcurl4
|
||||
%package -n libcurl4%{?mini}
|
||||
Summary: Version 4 of cURL shared library
|
||||
Group: Productivity/Networking/Web/Utilities
|
||||
%if 0%{?bootstrap}
|
||||
Requires: this-is-only-for-build-envs
|
||||
Conflicts: libcurl4
|
||||
%endif
|
||||
|
||||
%description -n libcurl4
|
||||
%description -n libcurl4%{?mini}
|
||||
The cURL shared library version 4 for accessing data using different
|
||||
network protocols.
|
||||
|
||||
%package -n libcurl-devel
|
||||
%package -n libcurl%{?mini}-devel
|
||||
Summary: A Tool for Transferring Data from URLs
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: glibc-devel
|
||||
Requires: libcurl4 = %{version}
|
||||
Requires: libcurl4%{?mini} = %{version}
|
||||
# curl-devel (v 7.15.5) was last used in 10.2
|
||||
Provides: curl-devel <= 7.15.5
|
||||
Obsoletes: curl-devel < 7.16.2
|
||||
%if 0%{?bootstrap}
|
||||
Requires: this-is-only-for-build-envs
|
||||
Provides: libcurl-devel = %{version}-%{release}
|
||||
Conflicts: libcurl-devel
|
||||
%endif
|
||||
|
||||
%description -n libcurl-devel
|
||||
%description -n libcurl%{?mini}-devel
|
||||
Curl is a client to get documents and files from or send documents to a
|
||||
server using any of the supported protocols (HTTP, HTTPS, FTP, GOPHER,
|
||||
DICT, TELNET, LDAP, or FILE). The command is designed to work without
|
||||
user interaction or any kind of interactivity.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%setup -q -n curl-%version
|
||||
%patch0
|
||||
%patch1
|
||||
%patch2
|
||||
%patch3 -p1
|
||||
|
||||
%build
|
||||
# curl complains if macro definition is contained in CFLAGS
|
||||
@ -124,13 +152,15 @@ sed -i 's/\(link_all_deplibs=\)unknown/\1no/' configure
|
||||
--with-nss \
|
||||
%endif
|
||||
%endif
|
||||
%if !0%{?bootstrap}
|
||||
--with-gssapi=%{_libexecdir}/mit \
|
||||
--with-libidn2 \
|
||||
--with-libssh2 \
|
||||
--with-libmetalink \
|
||||
%endif
|
||||
--enable-hidden-symbols \
|
||||
--disable-static \
|
||||
--enable-threaded-resolver \
|
||||
--with-libmetalink
|
||||
--enable-threaded-resolver
|
||||
|
||||
# if this fails, the above sed hack did not work
|
||||
./libtool --config | grep -q link_all_deplibs=no
|
||||
@ -165,8 +195,8 @@ pushd scripts
|
||||
make %{?_smp_mflags} DESTDIR=%{buildroot} install
|
||||
popd
|
||||
|
||||
%post -n libcurl4 -p /sbin/ldconfig
|
||||
%postun -n libcurl4 -p /sbin/ldconfig
|
||||
%post -n libcurl4%{?mini} -p /sbin/ldconfig
|
||||
%postun -n libcurl4%{?mini} -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
@ -178,11 +208,11 @@ popd
|
||||
%dir %{_datadir}/zsh
|
||||
%dir %{_datadir}/zsh/site-functions
|
||||
|
||||
%files -n libcurl4
|
||||
%files -n libcurl4%{?mini}
|
||||
%defattr(-,root,root)
|
||||
%{_libdir}/libcurl.so.4*
|
||||
|
||||
%files -n libcurl-devel
|
||||
%files -n libcurl%{?mini}-devel
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/curl-config
|
||||
%{_includedir}/curl
|
||||
|
15
pre_checkin.sh
Normal file
15
pre_checkin.sh
Normal file
@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
|
||||
# This script is based on libcdio_spec-prepare.sh (thanks to sbrabec@suse.cz)
|
||||
# create a -mini spec for systemd for bootstrapping
|
||||
|
||||
ORIG_SPEC=curl
|
||||
EDIT_WARNING="##### WARNING: please do not edit this auto generated spec file. Use the ${ORIG_SPEC}.spec! #####\n"
|
||||
sed "s/^%define bootstrap .*$/${EDIT_WARNING}%define bootstrap 1/;
|
||||
s/^%define mini .*$/${EDIT_WARNING}%define mini -mini/;
|
||||
s/^Name:.*/&-mini/
|
||||
" < ${ORIG_SPEC}.spec > ${ORIG_SPEC}-mini.spec
|
||||
cp ${ORIG_SPEC}.changes ${ORIG_SPEC}-mini.changes
|
||||
#cp ${ORIG_SPEC}-rpmlintrc ${ORIG_SPEC}-mini-rpmlintrc
|
||||
|
||||
osc service localrun format_spec_file
|
Loading…
x
Reference in New Issue
Block a user